44 lines
881 B
Plaintext
44 lines
881 B
Plaintext
DEFINE mov____%edi,%ebp 89fd
|
|
DEFINE mov____%esp,%edi 89e7
|
|
:_start
|
|
push___%ebp
|
|
mov____%esp,%ebp
|
|
sub____$i32,%esp %0x1054
|
|
mov____$i8,%eax !0
|
|
mov____%eax,0x32 &GLOBAL___stdin
|
|
mov____$i8,%eax !1
|
|
mov____%eax,0x32 &GLOBAL___stdout
|
|
mov____$i8,%eax !2
|
|
mov____%eax,0x32 &GLOBAL___stderr
|
|
mov____%ebp,%eax
|
|
add____$i8,%eax !4
|
|
movzbl_(%eax),%eax
|
|
add____$i8,%eax !3
|
|
shl____$i8,%eax !0x02
|
|
add____%ebp,%eax
|
|
mov____%eax,0x32 &GLOBAL_environ
|
|
|
|
mov____%esp,%edi ; M2-Planet calling convention pushes forward
|
|
mov____%ebp,%eax ; argc
|
|
add____$i8,%eax !4
|
|
movzbl_(%eax),%eax
|
|
push___%eax
|
|
|
|
mov____%ebp,%eax ; argv
|
|
add____$i8,%eax !8
|
|
push___%eax
|
|
|
|
mov____0x32,%eax &GLOBAL_environ
|
|
push___%eax
|
|
|
|
mov____%edi,%ebp ; M2-Planet calling convention
|
|
call32 %FUNCTION_main
|
|
add____$i8,%esp !0x0
|
|
test___%eax,%eax
|
|
mov____%eax,%ebx
|
|
mov____$i32,%eax %1
|
|
int____$0x80
|
|
hlt
|
|
leave
|
|
ret
|