Function at 0x53ff90
Capabilities:
Link many functions at runtime

Disassembly:
insd dword es:[edi], dx
jae 0x4fe2d1
add al, bl
clc
inc ebp
add byte [eax], dl
js 0x4fe329
add byte [eax + edi*2], bl
push edx
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x4308ffff], al
popal
jo 0x4fe350
arpl word [ecx + 0x74], bp
jns 0x4fe2cc
clc
inc ebp
add byte [eax], cl
add byte [eax], al
inc dword [eax + 0x78]
push edx
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x4305ffff], al
outsd dx, dword [esi]
jne 0x4fe380
je 0x4fe350
clc
inc ebp
add byte [eax + edi*2 + 0x52], cl
add byte [eax], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x4907ffff], al
jae 0x4fe376
insd dword es:[edi], dx
jo 0x4fe3a8
jns 0x4fe3b2
ror byte [edi], 1
invalid
add byte [eax + 0x4c04ffff], al
dec esp
imul esi, dword [ebx + 0x74], 0x4fd148
or al, 0x78
push edx
add byte [eax], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x5005ffff], al
dec esp
imul esi, dword [ebx + 0x74], 0x4fd0e4
sbb al, 0
dec edi
add byte [eax + eax], bl
add bh, bh
add byte [eax], al
add byte [eax], al
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax - 0x80000000], al
invalid
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x4f08ffff], al
dec edi
outsb dx, byte [esi]
dec esi
outsd dx, dword [esi]
je 0x4fe421
jns 0x4fe34b
nop
shl bl, 0x4f
add byte [ecx], dl
and byte [ecx + eax*2 + 0x72], dl
jb 0x4fe428
jns 0x4fe405
push ebx
jns 0x4fe43f
je 0x4fe433
insd dword es:[edi], dx
inc ebx
insb byte es:[edi], dx
popal
jae 0x4fe448
jae 0x4fe406
push esp
push edx
inc edi
jb 0x4fe44e
jne 0x4fe451
add al, 0
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add al, al
in al, 0x4f
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
shl ah, 0x4f
add byte [eax], al
add byte [eax], al
add byte [eax - 0x1c], ah
dec edi
add byte [eax], al
add byte [eax], al
add byte [esi - 0x1c], ch
dec edi
in al, 0x4f
add byte [eax], cl
add byte [eax], al
add byte [eax], ch
inc dword [ebp]
mov ah, 0x6e
inc esi
add byte [esi + ebp*2 + 0x71a80046], bh
inc esi
add byte [eax - 0x3fffb98f], ah
sub bh, bh
inc ebp
add byte [esi + ebp*2 + 0x6ebc0046], dh
inc esi
add byte [eax - 0x5fffb98f], ch
jno 0x4fe481
add al, al
jno 0x4fe485
add ah, al
jno 0x4fe489
add al, cl
jno 0x4fe48d
add byte [ecx + esi*2 + 0x6c840046], bh
mov esp, 0x84004671
insb byte es:[edi], dx
inc esi
add byte [esp + ebp*2 + 0x6d880046], bl
inc esi
add ah, al
insb byte es:[edi], dx
inc esi
add byte [eax - 0x3bffb993], cl
inc esi
add ah, al
inc esi
add byte [eax], al
add byte [ecx], al
add byte [esp + 0x42004f], dl
hlt
inc ebx
insb byte es:[edi], dx
popal
jae 0x4fe4fa
jae 0x4fe4b8
push esp
push esp
push edx
inc edi
inc edi
jb 0x4fe500
jne 0x4fe503
sub byte ds:[eax], al
and al, 0x84
push edx
add byte [eax], cl
dec ebp
outsd dx, dword [esi]
jbe 0x4fe504
dec esi
js 0x4fe517
add eax, dword [eax]
cmp al, 0xf8
inc ebp
add byte [eax], cl
add byte [ecx], al
or byte [esp + 0x4f], bh
add al, 0x53
insb byte es:[edi], dx
add al, byte [eax]
add al, byte [eax]
add al, byte [eax]
shl ah, 0x4f
add byte [edi], al
and eax, 0x756e4554
insd dword es:[edi], dx
jb 0x4fe52b
je 0x4fe53b
jb 0x4fe50a
push ebx
jns 0x4fe544
je 0x4fe538
insd dword es:[edi], dx
inc ebx
insb byte es:[edi], dx
popal
jae 0x4fe54d
jae 0x4fe50b
push esp
push edx
inc edi
jb 0x4fe553
jne 0x4fe556
pop eax
in al, 0x4f
add byte [eax + 0x4607], ah
add byte [ebx], bl
push ebx
jns 0x4fe568
je 0x4fe55c
insd dword es:[edi], dx
inc edi
outsb dx, byte gs:[esi]
jb 0x4fe568
arpl word [ebx + 0x2e], si
jae 0x4fe530
inc ebx
outsd dx, dword [esi]
insb byte es:[edi], dx
insb byte es:[edi], dx
arpl word gs:[ecx + ebp*2 + 0x6f], si
outsd dx, dword [esi]
outsb dx, byte [esi]
jae 0x4fe50e
add byte [ecx], al
add byte [edx], al
sbb al, 0xe5
dec edi
add byte [edx], al
add byte [edx], al
add byte [eax], al
add byte [ebp + ebp*4 + 0x4f], dh
add byte [eax], al
add byte [eax], al
inc byte [eax]
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax], al
add byte [eax + 0x4307ffff], al
jne 0x4fe5ac
jb 0x4fe5a1
outsb dx, byte gs:[esi]
outsb dx, byte [esi]
je 0x4fe4cf
nop
cwde
in eax, 0x4f
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
jo 0x4fe538
add byte [eax], al
add byte [eax - 0x1a], dh
dec edi
add byte [eax], al
add byte [eax], al
add byte [eax + 0x4fe5], ah
add byte [eax], al
mov al, byte [0x4fe5]
add byte [eax], al
add byte [eax], al
mov esi, 0x8004fe5
add byte [eax], al
add byte [esi + 0x8004fe5], bh
add byte [eax], al
add byte [eax], ch
inc dword [ebp]
mov ah, 0x6e
inc esi
add byte [esi + ebp*2 + 0x71a80046], bh
inc esi
add byte [eax - 0x3fffb98f], ah
sub bh, bh
inc ebp
add byte [esi + ebp*2 + 0x6ebc0046], dh
inc esi
add byte [eax - 0x5fffb98f], ch
jno 0x4fe5c1
add al, al
jno 0x4fe5c5
add ah, al
jno 0x4fe5c9
add al, cl
jno 0x4fe5cd
add byte [ecx + esi*2 + 0x6c840046], bh
inc esi
add byte [esp + ebp*2 - 0x7d2fffba], bl
push edx
add ah, al
inc esi
add ah, bh
adc byte [edx], 0
add byte [ebx], al
add ah, ah
in eax, 0x4f
add byte [ebp], cl
invalid
or esp, esi
dec edi
add byte [edx], al
hlt
outsb dx, byte [esi]
jne 0x4fe631
jb 0x4fe628
jb 0x4fe628
bound ebp, qword [ebp + 0x3c]
push ebx
cmp al, 0x53
jns 0x4fe641
jae 0x4fe643
je 0x4fe635
insd dword es:[edi], dx
insd dword es:[edi], dx
inc ebx
insb byte es:[edi], dx
popal
jae 0x4fe64a
jae 0x4fe608
push esp
push edx
inc edi
jb 0x4fe650
jne 0x4fe653
daa
add al, dl
adc byte [edx], 7
inc esp
jae 0x4fe663
jb 0x4fe660
jns 0x4fe5f6
add byte [eax], al
add byte [eax], al
add byte [eax], cl
add byte [ecx], al
or byte [esi + 0x4f], ch
add byte [eax], al
or byte [eax], al
add dword [eax], ecx
insb byte es:[edi], dx
out 0x4f, al
add byte [eax], al
add byte [ebx + edx*2], al
insb byte es:[edi], dx
add al, byte [eax]
add al, byte [eax]
sub eax, 0x5282f400
add byte [edx], al
add byte [0x5282f400], ch
add byte [0x45746547], cl
outsb dx, byte [esi]
jne 0x4fe686
jb 0x4fe67d
je 0x4fe68d
jb 0x4fe623
add byte [esp + 0x8004f], bh
add dword [eax], ecx
insb byte es:[edi], dx
out 0x4f, al
dec edi
add byte [eax], cl
add byte [ecx], al
or byte [esi + 0x4f], ch
add byte [eax], al
add byte [ebx + edx*2], al
insb byte es:[edi], dx
add al, byte [eax]
add al, byte [eax]
xor al, byte [eax]
cld
add byte [edx], al
add byte [edx], dh
add ah, bh
adc byte [edx], 7
push esp
outsd dx, dword [esi]
inc ecx
jb 0x4fe6b6
jb 0x4fe6a6
popal
jns 0x4fe64a
add byte [ebx + 0x8004f], bh
add cl, byte [eax]
dec edi
add byte [eax], cl
add byte [edx], al
or byte [esi + 0x4f], ch
insb byte es:[edi], dx
out 0x4f, al
add byte [eax], al
add byte [ebx + edx*2], al
insb byte es:[edi], dx
add al, byte [eax]
inc eax
mov esp, 0x1004fe3
dec edi
add byte [ecx], al
add byte [ecx], al
add dword [edx], eax
add byte [edx], al
add byte [eax + 0x4fe67090], dl
add byte [edi], al
and eax, 0x756e4554
insd dword es:[edi], dx
jb 0x4fe6db
bound ebp, qword [ebp + 0x3c]
push ebx
cmp al, 0x53
jns 0x4fe6f4
je 0x4fe6e8
insd dword es:[edi], dx
inc ebx
insb byte es:[edi], dx
popal
jae 0x4fe6fd
jae 0x4fe6bb
push esp
push edx
inc edi
jb 0x4fe703
jne 0x4fe706
cwde
in eax, 0x4f
add byte [eax + 0x4607], ah
add byte [ebx], bl
push ebx
jns 0x4fe718
je 0x4fe70c
insd dword es:[edi], dx
insd dword es:[edi], dx
inc edi
outsb dx, byte gs:[esi]
jb 0x4fe718
arpl word [ebx + 0x2e], si
inc ebx
outsd dx, dword [esi]
insb byte es:[edi], dx
insb byte es:[edi], dx
arpl word gs:[ecx + ebp*2 + 0x6f], si
outsb dx, byte [esi]
jae 0x4fe6be
add byte [eax], al
add byte [edx], al
add byte [eax], al
add byte [eax - 0x19336f70], dl
dec edi
add byte [ecx], dl
sub byte [esp + ecx*2 + 0x69], dl
jae 0x4fe747
cmp al, 0x53
jns 0x4fe74a
je 0x4fe73e
insd dword es:[edi], dx
inc ebx
inc ebx
insb byte es:[edi], dx
popal
jae 0x4fe753
jae 0x4fe711
push esp
push edx
inc edi
jb 0x4fe759
jne 0x4fe75c
popal
jb 0x4fe763
popal
jns 0x4fe763
push sp
add al, 0
add byte [eax], al
add byte [eax], al
add byte [eax], al
add bh, bh
invalid
lodsd eax, dword [esi]
dec edi
add byte [ebx], bl
push ebx
jns 0x4fe77d
sbb edx, dword [ebx + 0x79]
jae 0x4fe77f
je 0x4fe771
insd dword es:[edi], dx
insd dword es:[edi], dx
inc edi
outsb dx, byte gs:[esi]
jb 0x4fe77d
arpl word [ebx + 0x2e], si
inc ebx
outsd dx, dword [esi]
insb byte es:[edi], dx
insb byte es:[edi], dx
arpl word gs:[ecx + ebp*2 + 0x6f], si
outsb dx, byte [esi]
jae 0x4fe797
lodsd eax, dword [esi]
dec edi
add byte [edx], al
add byte [edi], ch
dec edi
add byte [edi], cl
and ecx, dword [ecx + 0x43]
outsd dx, dword [esi]
insd dword es:[edi], dx
jo 0x4fe795
jb 0x4fe79b
jb 0x4fe774
push ebx
jns 0x4fe7ae
je 0x4fe7a2
insd dword es:[edi], dx
inc ebx
insb byte es:[edi], dx
popal
jae 0x4fe7b7
jae 0x4fe775
push esp
push edx
inc edi
inc edi
jb 0x4fe7bd
jne 0x4fe7c0
fcom dword ds:[eax]
inc esi
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
sbb byte [ebx + 0x79], dl
jae 0x4fe7df
add byte [eax], al
add byte [eax], bl
push ebx
jns 0x4fe7dd
je 0x4fe7d1
insd dword es:[edi], dx
insd dword es:[edi], dx
inc edi
outsb dx, byte gs:[esi]
jb 0x4fe7dd
arpl word [ebx + 0x2e], si
jae 0x4fe7a5
inc esp
popaw
jne 0x4fe7e9
je 0x4fe7f2
add dword [eax], eax
invalid
je 0x4fe800
outsd dx, dword [esi]
outsb dx, byte [esi]
dec esi
outsd dx, dword [esi]
je 0x4fe806
jns 0x4fe7e5
jbe 0x4fe807
outsb dx, byte [esi]
je 0x4fe7e1
push ebx
jns 0x4fe81b
je 0x4fe80f
insd dword es:[edi], dx
inc ebx
insb byte es:[edi], dx
popal
jae 0x4fe824
jae 0x4fe7e2
push esp
push edx
inc edi
inc edi
jb 0x4fe82a
jne 0x4fe82d
add byte ds:[ebx], al
or byte [esi], al
push ebx
outsb dx, byte gs:[esi]
jb 0x4fe7d0
push esp
dec edi
bound ebp, qword [edx + 0x65]
arpl word [edx + ecx + 4], si
dec ecx
or al, byte [ecx + ecx*2]
add al, 0x49
je 0x4fe83a
insd dword es:[edi], dx
or dword [edx + edx*2 + 0x65], edx
inc edi
push edx
inc edi
jb 0x4fe84d
outsd dx, dword [esi]
jne 0x4fe850
jo 0x4fe7e1
add byte [esi], al
push es
inc ecx
arpl word [ecx + ebp*2 + 0x6f], si
outsb dx, byte [esi]
pop ss
imul ebp, dword [edi + 0x6e], 0x6f435417
push esp
inc ebx
outsd dx, dword [esi]
insb byte es:[edi], dx
insb byte es:[edi], dx
arpl word gs:[ecx + ebp*2 + 0x6f], si
outsd dx, dword [esi]
outsb dx, byte [esi]
dec esi
outsd dx, dword [esi]
je 0x4fe861
imul sp, word [ebx + 0x61], 0x6974
outsd dx, dword [esi]
outsb dx, byte [esi]
add byte [eax + 0x74004607], ah
lodsd eax, dword [esi]
dec edi
add byte [ebx + 0x4a], bl
add byte [ebx], dl
call 0x51e862
add byte [eax], al
add byte [eax], al
add byte [eax], al
add ecx, dword [eax]
dec edi
add byte [edx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ebx], al
or byte [eax + 0x6004607], ah
mov al, byte [0x6004607]
push ebx
outsb dx, byte gs:[esi]
jb 0x4fe829
jb 0x4fe829
add byte [edx], cl
je 0x4fe7d8
lodsd eax, dword [esi]
dec edi
add byte [ecx + ecx*2], al
add al, 0x49
je 0x4fe896
insd dword es:[edi], dx
add al, byte [eax]
add byte [ebx + 0x4a], bl
add byte [esi], al
inc ecx
arpl word [ecx + ebp*2 + 0x6f], si
outsb dx, byte [esi]
add al, byte [eax]
nop
nop
dec eax
call 0x2963e899
push esp
dec esp
imul esi, dword [ebx + 0x74], 0x7379533c
jae 0x4fe8c3
cmp al, 0x53
push ebx
jns 0x4fe8c6
je 0x4fe8ba
insd dword es:[edi], dx
inc ebx
insb byte es:[edi], dx
popal
jae 0x4fe8cf
jae 0x4fe88d
push esp
push edx
inc edi
jb 0x4fe8d5
jne 0x4fe8d8
push eax
popal
jb 0x4fe8e0
popal
jns 0x4fe8e0
push sp
enter 0x4fe6, 0
add al, byte [eax]
nop
nop
nop
sub al, 0x4f
add byte [edi], cl
and eax, 0x756e4549
insd dword es:[edi], dx
jb 0x4fe8eb
bound ebp, qword [ebp + 0x3c]
push ebx
cmp al, 0x53
jns 0x4fe904
je 0x4fe8f8
insd dword es:[edi], dx
inc ebx
insb byte es:[edi], dx
popal
jae 0x4fe90d
jae 0x4fe8cb
push esp
push edx
inc edi
jb 0x4fe913
jne 0x4fe916
or al, 0x11
inc esi
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
push es
push ebx
jns 0x4fe933
je 0x4fe927
insd dword es:[edi], dx
add dword [eax], eax
invalid
inc dword [edx]
add byte [eax - 0x172f6f70], dl
nop
shr al, 1
dec edi
add byte [edi], cl
sub dl, byte [esp + ecx*2 + 0x69]
jae 0x4fe94b
cmp al, 0x53
push ebx
jns 0x4fe94e
je 0x4fe942
insd dword es:[edi], dx
inc ebx
insb byte es:[edi], dx
popal
jae 0x4fe957
jae 0x4fe915
push esp
push edx
inc edi
inc edi
jb 0x4fe95d
jne 0x4fe960
push esp
inc ebp
insd dword es:[edi], dx
jo 0x4fe96b
jns 0x4fe93f
inc esi
jne 0x4fe969
arpl ax, bx
adc byte [esi], al
inc eax
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ebx], bl
push ebx
add byte [eax], al
add byte [eax], al
sbb edx, dword [ebx + 0x79]
jae 0x4fe98a
jns 0x4fe988
je 0x4fe97c
insd dword es:[edi], dx
insd dword es:[edi], dx
inc edi
outsb dx, byte gs:[esi]
jb 0x4fe988
arpl word [ebx + 0x2e], si
inc ebx
outsd dx, dword [esi]
insb byte es:[edi], dx
insb byte es:[edi], dx
arpl word gs:[ecx + ebp*2 + 0x6f], si
arpl word [ecx + ebp*2 + 0x6f], si
outsb dx, byte [esi]
jae 0x4fe92f
add bh, bh
inc dword [edx]
add byte [eax + 0x4fe98c], dl
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
invalid
nop
mov ecx, gs
dec edi
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [edx + ebp*8 + 0x4f], ah
add byte [ecx + ebp*8 - 0x1640ffb1], dl
add byte [eax], al
ljmp 0x4f
add byte [edi + 0x4fe9], bh
dec edi
add byte [eax], al
add byte [eax], al
add ch, dl
jmp 0x5fe9a9
add byte [eax], dl
add byte [eax], al
add byte [eax], al
in al, 0x4f
add byte [esi + ebp*2 + 0x6ebc0046], dh
inc esi
add byte [eax - 0x5fffb98f], ch
jno 0x4fe9b5
mov ah, 0x6e
inc esi
add byte [esi + ebp*2 + 0x71a80046], bh
inc esi
jno 0x4fe9b1
add byte [eax - 0x3fffb98f], ah
add al, al
jno 0x4fe9b9
add ah, al
jno 0x4fe9bd
add al, cl
jno 0x4fe9c1
add byte [ecx + esi*2 + 0x6c840046], bh
mov esp, 0x84004671
insb byte es:[edi], dx
inc esi
add byte [esp + ebp*2 + 0x6d880046], bl
mov byte [ebp + 0x46], ch
inc esi
add byte [eax - 0x72], dh
push edx
add byte [eax + 0x528e], dl
add byte [eax], al
add byte [eax], al
add byte [edx], al
add byte [eax], al
or al, 0xf9
dec edi
add byte [eax + eax], al
add byte [eax], al
add eax, 0x73694c46
je 0x4fe9ae
add byte [eax], al
fdivr st(0)
inc ebp
add byte [eax], cl
add byte [eax], al
add byte [esi], al
inc esi
dec ecx
outsb dx, byte [esi]
js 0x4fe9c0
add al, byte [eax]
add byte [eax], al
add byte [eax], al
add byte [edx], al
add byte [ecx], al
ljmp 0xfff4
add al, byte [eax]
add edx, ebp
dec edi
add byte [eax + eax - 0xc], al
push dword [esi]
ljmp 0xfff4
nop
add byte [ebp + 0x53], dl
push edi
push esi
sub esp, 0xc
mov edi, dword [esp + 0x20]
test edi, edi
je 0x5400c2
mov ebx, dword [esp + 0x24]
test ebx, ebx
je 0x5400c2
cmp dword [esp + 0x28], 0
je 0x5400c2
mov dword [esp], str.borlndmm
call sub.KERNEL32.DLL_GetModuleHandleA
sub esp, 4
mov esi, eax
test esi, esi
je 0x5400c2
mov ebp, dword [esp + 0x2c]
mov dword [esp], esi
mov dword [esp + 4], str._Borlndmm_SysGetMem_qqri
call sub.KERNEL32.DLL_GetProcAddress
sub esp, 8
mov dword [edi], eax
mov dword [esp], esi
mov dword [esp + 4], str._Borlndmm_SysFreeMem_qqrpv
call sub.KERNEL32.DLL_GetProcAddress
sub esp, 8
mov dword [ebx], eax
mov dword [esp], esi
mov dword [esp + 4], str._Borlndmm_SysReallocMem_qqrpvi
call sub.KERNEL32.DLL_GetProcAddress
sub esp, 8
mov ecx, dword [esp + 0x28]
mov dword [ecx], eax
mov dword [esp], esi
mov dword [esp + 4], str._Borlndmm_SysAllocMem_qqri
call sub.KERNEL32.DLL_GetProcAddress
sub esp, 8
mov dword [ebp], eax
mov dword [esp], esi
mov dword [esp + 4], str._Borlndmm_SysRegisterExpectedMemoryLeak_qqrpi
call sub.KERNEL32.DLL_GetProcAddress
sub esp, 8
mov ecx, dword [esp + 0x30]
mov dword [ecx], eax
mov dword [esp], esi
mov esi, dword [esp + 0x34]
mov dword [esp + 4], str._Borlndmm_SysUnregisterExpectedMemoryLeak_qqrpi
call sub.KERNEL32.DLL_GetProcAddress
sub esp, 8
mov dword [esi], eax
mov eax, dword [edi]
mov dword [0x5802b8], eax
cmp dword [ebp], 0
jne 0x540076
mov dword [ebp], 0x53ff60
mov eax, dword [esp + 0x30]
cmp dword [eax], 0
jne 0x540085
mov dword [eax], 0x53ff50
mov ecx, dword [esi]
test ecx, ecx
je 0x5400b2
cmp dword [edi], 0
je 0x5400c2
cmp dword [ebx], 0
je 0x5400c2
mov esi, dword [esp + 0x28]
cmp dword [esi], 0
je 0x5400c2
cmp dword [ebp], 0
je 0x5400c2
cmp dword [eax], 0
je 0x5400c2
xor eax, eax
test ecx, ecx
setne al
jmp 0x5400c4
mov dword [esi], 0x53ff50
mov ecx, 0x53ff50
cmp dword [edi], 0
jne 0x540090
xor eax, eax
add esp, 0xc
pop esi
pop edi
pop ebx
pop ebp
ret