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

Disassembly:
sub esp, 0x44
push ebx
mov ebx, dword [esp + 0x4c]
push ebp
xor ebp, ebp
push esi
mov esi, dword [esp + 0x5c]
push edi
mov edi, eax
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], ebp
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x30], ebp
mov dword [esp + 0x18], ebp
cmp esi, ebp
je 0x487267
mov eax, dword [esp + 0x64]
mov ecx, dword [eax]
mov dword [esp + 0x18], ecx
mov dword [eax], ebp
cmp dword [edi], ebp
jne 0x48728c
mov byte [edi + 4], 0
mov ecx, dword [ebx + 0x6c]
call fcn.0048c9b0
mov dword [edi], eax
cmp eax, ebp
jne 0x48728c
pop edi
pop esi
pop ebp
mov eax, 2
pop ebx
add esp, 0x44
ret 0x24
mov eax, dword [esp + 0x68]
mov dword [esp + 0x38], eax
cmp eax, ebp
je 0x4872a0
mov dword [esp + 0x34], 0x486b40
cmp esi, ebp
jne 0x4872bc
cmp dword [ebx + 0x68], ebp
jne 0x4872bc
mov ecx, dword [ebx + 0x6c]
mov eax, dword [ecx]
mov edx, 0x10010
call eax
mov dword [ebx + 0x68], eax
cmp eax, ebp
je 0x48727d
cmp byte [edi + 4], 0
jne 0x487300
mov ecx, dword [edi]
lea edx, [ebx + 8]
mov dword [esp + 0x14], 5
call fcn.0048a150
cmp eax, ebp
jne 0x487556
lea ecx, [esp + 0x14]
push ecx
mov ecx, dword [edi]
lea edx, [esp + 0x20]
call fcn.0048db00
cmp eax, ebp
jne 0x487556
mov dl, byte [esp + 0x1c]
mov byte [edi + 5], dl
mov byte [edi + 4], 1
nop
mov dword [edi + 8], ebp
mov dword [edi + 0xc], ebp
mov word [edi + 6], 0x101
mov eax, dword [ebx + 0x48]
mov edx, dword [ebx + 0x4c]
mov dword [esp + 0x10], ebp
mov dword [esp + 0x44], ebp
mov dword [esp + 0x48], ebp
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], edx
cmp dword [esp + 0x68], ebp
je 0x4873aa
mov eax, dword [ebx + 0x60]
mov ecx, dword [ebx + 0x64]
mov ebx, eax
and ebx, ecx
or esi, 0xffffffff
or ebp, 0xffffffff
cmp ebx, 0xffffffff
je 0x48735f
cmp ecx, dword [esp + 0x28]
jb 0x48735f
ja 0x487353
cmp eax, dword [esp + 0x24]
jb 0x48735f
sub eax, dword [esp + 0x24]
sbb ecx, dword [esp + 0x28]
mov esi, eax
mov ebp, ecx
mov ebx, dword [esp + 0x58]
mov eax, dword [ebx + 0x48]
mov ecx, eax
and ecx, edx
cmp ecx, 0xffffffff
je 0x48737d
cmp ebp, edx
jb 0x48737d
ja 0x487379
cmp esi, eax
jbe 0x48737d
mov esi, eax
xor ebp, ebp
mov ecx, dword [edi]
push ebp
push esi
call fcn.0048a290
mov edx, dword [ebx + 0x70]
mov eax, dword [ebx + 0x6c]
mov ecx, dword [edi]
push edx
push eax
push 0x200000
lea edx, [esp + 0x40]
call fcn.0048d870
test eax, eax
jne 0x487556
xor ebp, ebp
jmp 0x4873f6
mov esi, dword [esp + 0x70]
sub esi, dword [esp + 0x24]
mov ecx, eax
and ecx, edx
mov dword [esp + 0x10], esi
cmp ecx, 0xffffffff
je 0x4873d1
xor ecx, ecx
cmp ecx, edx
jb 0x4873d1
ja 0x4873cb
cmp esi, eax
jbe 0x4873d1
mov dword [esp + 0x10], eax
mov esi, eax
mov eax, dword [ebx + 0x70]
mov ecx, dword [ebx + 0x6c]
mov edx, dword [esp + 0x6c]
add edx, dword [esp + 0x24]
push eax
push ecx
mov ecx, dword [edi]
push 0x200000
push esi
call fcn.0048d890
cmp eax, ebp
jne 0x487556
mov edx, dword [esp + 0x60]
mov ecx, edx
neg ecx
sbb ecx, ecx
not ecx
and ecx, dword [esp + 0x5c]
mov dword [esp + 0x1c], ecx
lea ebx, [ebx]
mov dword [esp + 0x14], 0x10010
cmp edx, ebp
je 0x48742e
mov eax, dword [esp + 0x2c]
mov esi, dword [esp + 0x18]
sub esi, eax
mov dword [esp + 0x14], esi
add eax, edx
jmp 0x487431
mov eax, dword [ebx + 0x68]
push ecx
lea ecx, [esp + 0x18]
push ecx
push eax
call fcn.00486bc0
mov esi, eax
cmp esi, ebp
jne 0x4874a6
mov esi, dword [esp + 0x2c]
mov ebp, dword [esp + 0x14]
add esi, ebp
adc dword [esp + 0x30], 0
cmp dword [esp + 0x60], 0
mov dword [esp + 0x2c], esi
je 0x487463
mov edx, dword [esp + 0x64]
mov dword [edx], esi
mov eax, dword [edi + 8]
add eax, dword [esp + 0x24]
mov ecx, dword [edi + 0xc]
mov edx, dword [esp + 0x78]
adc ecx, dword [esp + 0x28]
test edx, edx
je 0x48748a
push dword [esp + 0x30]
push esi
push ecx
push eax
mov eax, dword [edx]
mov ecx, edx
call eax
test eax, eax
jne 0x48749f
xor esi, esi
test ebp, ebp
je 0x4874a4
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x60]
xor ebp, ebp
jmp 0x487410
mov esi, 0xa
xor ebp, ebp
mov ecx, dword [edi]
call fcn.0048d8e0
mov eax, dword [edi + 8]
add dword [esp + 0x24], eax
mov ecx, dword [edi + 0xc]
adc dword [esp + 0x28], ecx
cmp esi, ebp
jne 0x487532
cmp dword [esp + 0x68], ebp
je 0x4874cf
mov edx, dword [esp + 0x44]
mov esi, dword [esp + 0x48]
jmp 0x4874d5
mov edx, dword [esp + 0x10]
xor esi, esi
cmp eax, edx
jne 0x48753e
cmp ecx, esi
jne 0x48753e
cmp dword [esp + 0x68], ebp
jne 0x487526
mov ecx, dword [esp + 0x70]
xor eax, eax
cmp dword [esp + 0x24], ecx
jne 0x487300
cmp dword [esp + 0x28], eax
jne 0x487300
cmp dword [esp + 0x74], ebp
je 0x487554
mov edx, dword [esp + 0x60]
cmp edx, ebp
je 0x487560
mov ecx, dword [esp + 0x64]
mov eax, dword [ecx]
cmp eax, dword [esp + 0x18]
jb 0x48754d
pop edi
pop esi
pop ebp
mov eax, 7
pop ebx
add esp, 0x44
ret 0x24
cmp dword [esp + 0x4c], ebp
je 0x487300
jmp 0x4874fd
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x44
ret 0x24
pop edi
pop esi
pop ebp
mov eax, 0xb
pop ebx
add esp, 0x44
ret 0x24
mov byte [eax + edx], 0
inc eax
mov dword [ecx], eax
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x44
ret 0x24
mov ecx, dword [esp + 0x5c]
mov eax, dword [ecx]
push 1
lea edx, [esp + 0x64]
mov byte [esp + 0x64], 0
call eax
cmp eax, 1
je 0x487554
pop edi
pop esi
pop ebp
mov eax, 9
pop ebx
add esp, 0x44
ret 0x24