Function at 0x52daf8
Capabilities:
Resolve function by parsing pe exports

Disassembly:
pop eax
push eax
push edx
inc esp
push esi
inc ecx
jnp 0x52d9c2
push edi
push 0x796c5c44
dec ebp
inc ecx
push eax
pop esp
dec ebp
push edi
dec eax
pop ecx
dec esp
pop esp
dec eax
push eax
pop eax
popal
dec ebx
inc eax
push ecx
push esp
js 0x52d9de
pop edx
pushal
outsd dx, dword [esi]
pushal
outsd dx, dword [esi]
inc esp
insd dword es:[edi], dx
pop edi
outsd dx, dword [esi]
pop esi
inc edx
arpl word [ebp + 0x4c], ax
outsb dx, byte [esi]
insb byte es:[edi], dx
dec ebp
pop edi
dec edi
push edx
bound edx, qword [ecx + 0x48]
dec ebx
dec esi
push esi
dec ecx
pop ebp
dec ebx
push ecx
dec ebp
jnp 0x52da14
pushal
insd dword es:[edi], dx
push ebx
dec edi
insb byte es:[edi], dx
inc ebx
jns 0x52da20
imul ebx, dword [eax + 0x67], 0x43
push esp
dec ebx
push esp
push esi
imul ebx, dword [edx + 0x6a], 0x64
pushal
dec ecx
mov ecx, 0x400
shr edx, 2
mov eax, edi
and eax, 0x800
cmp dword [esp + 0x34], 0x85cb58dd
jne 0x52da30
add byte [eax], al
add byte [ebx + 0x594800d8], al
sbb eax, 0
dec eax
pop ecx
fld dword gs:[eax]
bound ecx, qword [esi + 0x4d]
pop esp
imul ecx, dword [edx + 0x134e9c3], 0x428b6a45
add al, 0x74
add al, 0x62
dec esi
mov esi, dword [ebp + 0xc]
pop esp
outsd dx, dword [esi]
arpl word [esp + ecx + 0x57], ax
push ebx
push esp
push esi
push esp
imul sp, word [ebx + edx*2 - 0x18], 0x237
add byte [eax], al
dec esi
imul ecx, dword [esp + 0x4c], 0x55534065
bound ebx, qword [ebp + 0x4a]
push edx
pushal
bound eax, qword [ebp + 0x6a]
add eax, dword [eax + 0xe]
add byte [ebx + 0x6b], ah
inc ecx
je 0x52da11
inc esp
imul esp, dword [ebx], 0xffffffd1
and edx, ecx
cmp esi, 0x219e1df7
je 0x5f418a
or edx, eax
cmp edi, 0x97015d51
cmove esi, ebp
mov eax, edi
cmp ebx, 0x1e0b33cd
jne 0x52da8a
dec ecx
push 0x61625456
pop ebx
push 0x66
push esi
push edx
pop esp
imul edx, dword [eax + 0x46], 0x4679665e
push 0x796f4d43
push esi
push edi
dec eax
dec ecx
pop edx
pop ebp
pushal
pop ebp
pop edi
dec eax
pop edi
imul ecx, dword [ecx + 0x53], 0x68
insd dword es:[edi], dx
pushal
outsb dx, byte [esi]
pushal
pop ebp
jnp 0x52dacf
push edx
push edi
imul ebp, dword [ebx + 0x53], 0xc1234454
and eax, ecx
cmp eax, 0x5dc5e975
je 0x5f3bbe
shr edx, 2
cmp dword [esp + 0x4c], 0x8b7eec4d
cmove edx, edx
or eax, edx
cmp dword [esp + 0x10], 0x497dcc1f
cmove edx, ebp
mov ecx, edi
cmp dword [esp + 0x6c], 0xa1de0d55
je 0x51a9b8
shr eax, 2
cmp dword [esp + 0x38], 0x89f6c22f
jne 0x52daed
pop esp
push esi
push edi
inc edi
dec esi
push edi
push 0x5c4c4a48
pop bp
push ebx
dec edi
inc ebx
js 0x52db27
outsb dx, byte [esi]
push esp
push edx
outsb dx, byte [esi]
push ebp
push edx
inc esp
inc edx
push ecx
inc esp
pop esi
and ecx, 0x200
cmp eax, 0x394bf201
cmove ecx, ecx
or eax, ecx
cmp ebp, 0xa97696d
cmove ebx, edi
and edi, 0x180
cmp eax, 0x14e04a59
je 0x52db4e
shr eax, 3
cmp dword [esp + 0x40], 0x4b88e6f3
jne 0x52db3e
pop edx
pop esi
push esi
push esi
outsb dx, byte [esi]
outsd dx, dword [esi]
mov edx, dword [esp + 0xc]
inc edx
pop ebx
push esi
jne 0x52db35
pop ecx
popal
dec ebp
test ecx, ecx
inc ebx
pop ebx
pop eax
pushal
push 0xb
mov dword [ecx - 0x16efdb84], 0x750e4a27
push ss
or eax, edi
cmp dword [esp + 0x10], 0xe4a27e9
jne 0x52db60
pop ebp
dec ecx
inc esp
jns 0x52db9e
dec edi
pop esp
dec ecx
popal
insd dword es:[edi], dx
pop esp
inc ebx
push edi
outsb dx, byte [esi]
dec ecx
dec edx
push ebp
pop ebp
inc edx
inc esp
inc edx
shr eax, 3
shr eax, 3
cmp edi, 0xeccb4d89
je 0x52dbd4
or eax, ebx
cmp dword [esp + 0x5c], 0xfe9f7375
cmove ecx, edx
pop edi
cmp dword [esp + 0x38], 0x4b7c0d91
cmove eax, ebp
or eax, esi
cmp dword [esp - 0x1c], 0x76372e35
jne 0x52dbc2
pop ecx
pop ebp
push esp
pop ecx
pushaw
pushal
insd dword es:[edi], dx
inc ebp
push eax
pop eax
dec ebp
arpl word [ebx + 0x61], cx
dec ebx
popal
dec esp
jnp 0x52dc10
arpl word [ebp + 0x6b], bx
pop ebx
outsb dx, byte [esi]
pop eax
pop ebp
inc edx
pop ebx
outsd dx, dword [esi]
jns 0x52dbf1
push eax
outsb dx, byte [esi]
push esi
pop esi
pop ecx
insd dword es:[edi], dx
push eax
pop ecx
push ebx
push esp
inc ecx
push ecx
inc edi
pop eax
pop esp
dec esi
dec esp
pop esi
cmp eax, 0xf8389065
je 0x6301ba
pop ebx
cmp ebp, 0xb10114b
cmove eax, esi
pop ebp
cmp esi, 0xbbd06025
je 0x52db97
or ecx, dword [edi]
inc esp
invalid
ret
jl 0x52dc17
hlt
dec edi
insb byte es:[edi], dx
arpl word [ecx + 0x44], sp
push edx
outsd dx, dword [esi]
push ebx
inc ebx
pop edi
pop edx
pop esp
insd dword es:[di], dx
push ebp
push ebp
dec esi
push ebx
push esi
push esp
pop edi
jns 0x52dc6c
insb byte es:[edi], dx
pop esp
insb byte es:[edi], dx
imul ecx, dword [ebp + 0x4b], 0x575a5f51
pop ebx
pushal
push esp
pop ebp
inc eax
dec edx
dec esi
insd dword es:[edi], dx
push esi
popal
dec ebx
inc esi
push 0x604d6960
insb byte es:[edi], dx
push ecx
push eax
imul ebp, dword gs:[ecx + 0x62], 0x4a56676d
dec edx
dec ecx
pop ebx
pop eax
push 0x53544450
inc eax
insd dword es:[edi], dx
pop esi
push ebp
mov ebp, esp
cmp dword [esp + 0x28], 0x8ff0e4bd
je 0x52dc4e
push ecx
cmp dword [esp + 0x30], 0x5eb6f5a1
cmove edi, eax
xor byte [ecx + 0xf5eb6f5], ah
inc esp
clc
push ebx
cmp ecx, 0x79044497
jne 0x52dcb2
inc eax
dec eax
inc esp
inc ebp
imul eax, dword [eax + 0x65], 0x45485d68
dec esp
inc ecx
dec eax
inc esp
push esp
push ax
pop edi
push ecx
insd dword es:[edi], dx
dec edi
inc edi
pop edi
dec edi
push edi
js 0x52dce1
inc ebx
push 0x50
pop edi
dec edi
inc esp
pop edi
dec esp
inc edi
dec esi
popal
jns 0x52dcfd
pushal
jnp 0x52dcf0
jnp 0x52dd16
push esi
push ebx
popal
push edi
pop edx
push esi
cmp ecx, 0xa2a7e09d
jne 0x52dd20
mov dword [esp + 0x14], edx
jg 0x52dda3
pop ebx
push eax
lea esp, [esp + 8]
pop edx
push esi
mov word [eax], cx
test edx, edx
lea ecx, [ebp - 0x5c]
shl eax, 3
mov edx, dword [ebp - 0x788]
mov ecx, dword [ebp - 0x18]
push ebp
dec esi
pop ebp
pop edi
jne 0x52dcf2
cdq
ret
insb byte es:[edi], dx
push 0x6e536e62
bound ebp, qword [esi + 0x53]
outsb dx, byte [esi]
dec edx
insb byte es:[edi], dx
imul ecx, dword [ebx - 0x27], 0x55b5e9ee
pop ebx
push esp
push edi
dec ecx
inc esp
push 0x44
jnp 0x52dd67
bound eax, qword [ecx + 0x68]
inc esp
push esp
pop ebp
inc edi
popal
je 0x52de14
test cl, bh
add byte [eax], al
add byte [eax + 0x47], ah
pushal
inc edi
push edx
imul edx, dword [edi + edx*2 - 0x7f], 0x7c
and al, 0x14
mov bl, 0x33
invalid
push edi
cmp dword [esp + 0x14], 0xc2c433b3
je 0x52ddaa
mov edi, dword [ebp + 8]
cmp dword [esp + 0x64], 0xbbe2377d
je 0x5ed983
mov edx, 0x1000
cmp dword [esp + 0x20], 0xef6ea03d
jne 0x52dd77
push eax
pop ecx
jne 0x52d964
push dword [ebp + 0x10]
push 0x40546a45
pop esi
inc edi
push ecx
inc esp
pushal
add eax, 0x78464200
jnp 0x52ddd9
inc edx
inc esi
js 0x52dde6
insd dword es:[edi], dx
push ebx
mov eax, dword [ebp - 0x748]
pop edi
inc edx
test cl, cl
movzx eax, di
cmp ebp, 0x83c3351f
cmove ebp, edi
mov ebx, eax
cmp dword [esp + 0x68], 0x5457def3
cmove esi, edi
mov dword [ebp - 4], edx
cmp dword [esp + 0x2c], 0x48866fa5
jne 0x52dda7
push ecx
push ebx
dec ecx
outsb dx, byte [esi]
dec ebp
insb byte es:[edi], dx
pop esi
pop ecx
inc esi
pop esi
and ebx, edx
cmp dword [esp + 0x1c], 0x20be729
jne 0x52ddf4
jl 0x52ddd0
sbb al, 0x29
out 0xb, eax
add cl, byte [edi]
test dword [0x68000000], edi
xor byte [ecx + eax*2 - 0x26749e00], ch
dec edi
inc ebp
push eax
push str.InitializeCriticalSectionEx
bound ecx, qword [ebx + 0x50454fd9]
outsd dx, dword [esi]
push esi
imul edi, dword [ecx + 0x57], 0x686f4b5f
pop eax
lea ecx, [esi + 0x10]
cmp eax, ecx
popal
sub eax, 1
test esi, esi
in al, dx
or al, byte [eax]
jmp 0x52dde4
test cl, 0x10
push eax
push edi
adc byte [eax + 0x57], dl
push esp
push ebx
inc edi
push edi
outsb dx, byte [esi]
inc eax
inc edx
inc edi
pop ebp
push ebx
pop edx
mov ecx, eax
shl ebx, 2
cmp esi, 0x676abafd
jne 0x52de3c
push ebp
inc esi
pop eax
dec ebx
inc ebp
pop eax
jnp 0x52de4d
inc esp
insd dword es:[edi], dx
inc edx
pop ebp
dec esp
insd dword es:[edi], dx
pop ebp
push edx
dec ecx
pop ebx
push ebx
bound eax, qword [esp + edx*2 + 0x42]
inc bx
push esp
pop edi
imul ebp, dword [edx + 0x41], 0x4e
jnp 0x52de78
jns 0x52de81
imul ecx, dword [eax + 0x59], 0x40
dec esi
inc ebx
dec ecx
pop ebx
inc esp
push edx
pop ebx
inc edi
inc esi
dec eax
push ebp
pop ebx
inc ecx
pop edx
inc edx
pop edx
inc eax
push esi
mov edx, 0x200
cmp dword [esp + 0x24], 0x67d6f32f
jne 0x52de7d
push ecx
bound eax, qword [eax + 0x66]
dec ebp
inc eax
dec bp
dec esp
inc edi
inc esi
outsd dx, dword [esi]
push 0x6a
pushal
insd dword es:[edi], dx
inc edi
jns 0x52dec9
push esp
pop eax
pop ebp
inc eax
inc edi
pop eax
dec ebp
popal
bound edx, qword [ebp + 0x6c]
pop edi
inc ebx
push ebp
inc esp
inc esp
dec ebx
inc edi
bound ebp, qword [ecx + 0x42]
pop ecx
dec esi
js 0x52deee
inc edx
pop esp
insb byte es:[edi], dx
inc ecx
insd dword es:[edi], dx
pop esp
dec ecx
dec ecx
push 0
cmp dword [esp + 0x10], 0x3b09d70d
cmove ebx, ecx
pop esi
cmp dword [esp + 0x3c], 0xb08676af
cmove eax, edx
and ecx, 0x300
push 0x227
lea esp, [esp - 2]
mov word [esp], ax
lahf
lock xchg word [esp], ax
call 0x52deb4
and al, 0x10
or eax, 0xf3b09d7
inc esp
fstp dword [esi - 0x7f]
jl 0x52deb2
cmp al, 0xaf
jbe 0x52de18
mov al, 0xf
inc esp
ret 0xe181
add byte [eax], al
mov dword [esp], ebp
call 0x52dee3
jmp 0xe0b019df
push eax
inc esp
inc ecx
inc edx
dec esi
call fcn.0052c4ca
jnp 0x52df24
pop esi
dec esi
dec ebp
add byte [edi + 0x6a], dl
popal
push ebx
insb byte es:[edi], dx
jnp 0x52df44
pop edi
dec ebp
pop ebp
call 0x52dee9
mov dword [esp], esi
mov esi, 0xa9
cmove esi, dword [esp + 0xa]
add esi, ebp
add byte [eax], al
add byte [edi], cl
inc esp
je 0x52df19
or al, byte [ecx]
out dx, al
mov dword [esp + 0xa], esi
mov esi, dword [esp]
lea esp, [esp + 4]
mov ebp, dword [esp]
lea esp, [esp + 4]
lock xchg word [esp], ax
sahf
pop ax
ret
outsd dx, dword [esi]
pop ecx
push esp
dec edi
popal
pop ecx
inc esp
jnp 0x52df8c
imul ebp, dword [edi + 0x4c], 0x41
dec esp
inc ecx
dec edx
pop eax
push esp
dec ebp
pop esi
inc ebp
pushal
inc ebp
imul sp, word [ebx + 0x4a], 0x6b56
dec edx
push esi
imul ebx, dword [edx + 0x6b], 0x58
push ecx
push edx
outsb dx, byte [esi]
inc eax
outsd dx, dword [esi]
inc esp
jnp 0x52df86
dec eax
push 0x69485261
push eax
insd dword es:[edi], dx
push ecx
inc edi
dec eax
dec edi
dec eax
imul edx, dword [eax + 0x6d], 0x4f484751
dec ebx
inc ebx
inc ebp
push eax
pop edi
pop eax
push esi
push edx
inc eax
push ecx
pushal
inc ecx
dec edx
pop eax
push 0x40535044
push esi
pop di
pop esi
cmp ecx, edx
push 0x170
push ax
lahf
lock xchg word [esp], ax
lock xchg dword [esp], eax
push ecx
call fcn.0052dfc5
je 0x52e170
arpl word [esi + 0x5d], cx
imul edi, edi, 0x75
or al, ch
jnp 0x52df70
invalid
push 0x43
dec edx
pop esp
push edx
dec ebp
push ebp
push esp
jne 0x52e00b
imul edx, dword [ecx + 0x7b], 0x9204949
add byte [0x7f0], ah
push edi
dec eax
popal
dec ebx
inc ebp
jns 0x52e00c
inc ebx
push esp
pop esp
dec ecx
inc esp
dec esi
cdq
pop edx
pop esp
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test edi, 3
jbe 0x52dfd6
push esp
or al, byte [ecx]
jmp 0x249f67cd
push esp
and al, 8
push esp
xor esi, esi
pop ebp
imul ebp, dword [ebx + edi*2 + 0x51], 0x5e
mov byte [0x43490002], al
pop esi
pop ecx
outsd dx, dword [esi]
push ecx
dec ecx
and dword [ebp - 0x920], edx
pop edi
outsd dx, dword [esi]