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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4873f9
sub esp, 0x74
lea eax, [0x62fe20]
mov dword [esp], eax
call fcn.0040b470
mov eax, dword [esp + 4]
mov dword [esp + 0x4c], eax
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x90]
mov ebx, dword [esp + 0x88]
mov ebp, dword [esp + 0x80]
mov esi, dword [esp + 0x84]
mov edi, dword [esp + 0x7c]
jmp 0x487195
mov eax, dword [esp + 0x30]
lea esi, [eax - 0x10]
mov eax, esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, 0x10
mov ecx, dword [esp + 0x44]
lea edi, [ecx + esi]
lea ebp, [edx - 0x10]
mov ecx, dword [esp + 0x38]
lea edx, [ecx - 0x10]
mov ecx, edx
neg edx
sar edx, 0x1f
and edx, 0x10
mov ebx, dword [esp + 0x48]
add ebx, edx
mov edx, dword [esp + 0x34]
add edx, 0xfffffff0
mov esi, eax
mov eax, dword [esp + 0x4c]
mov eax, ecx
mov ecx, edx
mov edx, eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x38], edx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x30], esi
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x44], edi
cmp ecx, 0x10
jl 0x4872bb
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx]
mov ebx, dword [esp + 0x94]
test byte [ebx], al
mov ebp, dword [ecx + 4]
mov edx, dword [edx + 0x18]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov dword [esp + 8], 0x10
mov dword [esp + 0xc], 0x10
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], 0x10
mov dword [esp + 0x18], 0x10
call edx
nop
mov eax, dword [esp + 0x94]
movzx ecx, byte [eax + 0xf]
movzx edx, byte [eax + 0xe]
shl edx, 8
or ecx, edx
movzx edx, byte [eax + 0xd]
shl edx, 0x10
or ecx, edx
movzx edx, byte [eax + 0xc]
shl edx, 0x18
or edx, ecx
lea ecx, [edx + 1]
mov edx, ecx
shr ecx, 0x18
mov byte [eax + 0xc], cl
mov ecx, edx
shr edx, 0x10
mov byte [eax + 0xd], dl
mov edx, ecx
shr ecx, 8
mov byte [eax + 0xe], cl
mov byte [eax + 0xf], dl
nop
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x50], ecx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x54], edx
mov ebx, dword [esp + 0x30]
mov dword [esp + 0x58], ebx
mov ebp, dword [esp + 0x48]
mov dword [esp + 0x68], ebp
mov esi, dword [esp + 0x34]
mov dword [esp + 0x6c], esi
mov edi, dword [esp + 0x38]
mov dword [esp + 0x70], edi
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], 0x10
mov dword [esp + 0x64], 0x10
mov eax, dword [esp + 0x54]
mov esi, dword [esp + 0x50]
mov ebp, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x3c], eax
xor eax, eax
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x3c]
jmp 0x4873ac
cmp edx, 0x10
jae 0x487148
jmp 0x4873ce
test ecx, ecx
je 0x487396
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx]
mov ebx, dword [esp + 0x94]
test byte [ebx], al
mov ecx, dword [ecx + 4]
mov edx, dword [edx + 0x18]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x10
mov dword [esp + 0xc], 0x10
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], 0x10
mov dword [esp + 0x18], 0x10
call edx
nop
mov eax, dword [esp + 0x94]
movzx ecx, byte [eax + 0xf]
movzx edx, byte [eax + 0xe]
shl edx, 8
or ecx, edx
movzx edx, byte [eax + 0xd]
shl edx, 0x10
or ecx, edx
movzx edx, byte [eax + 0xc]
shl edx, 0x18
or edx, ecx
lea ecx, [edx + 1]
mov edx, ecx
shr ecx, 0x18
mov byte [eax + 0xc], cl
mov ecx, edx
shr edx, 0x10
mov byte [eax + 0xd], dl
mov edx, ecx
shr ecx, 8
mov byte [eax + 0xe], cl
mov byte [eax + 0xf], dl
mov eax, dword [esp + 0x44]
mov dword [esp], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], 0x10
mov dword [esp + 0x20], 0x10
call fcn.00487810
add esp, 0x74
ret
mov dword [esi + ebx*4], edx
lea edx, [ebx + 1]
mov ebx, dword [esp + 0x30]
mov dword [esp + 0x28], edx
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x28]
cmp ebx, 4
jge 0x4872ad
cmp ebx, ebp
jae 0x4873ef
mov edx, dword [edi + ebx*4]
cmp ebx, 0x10
jae 0x4873e3
xor edx, dword [ecx + ebx*4]
cmp ebx, eax
jb 0x48739a
jmp 0x4873da
mov eax, 0x10
mov ecx, edx
call fcn.0045f480
mov ecx, eax
mov eax, ebx
call fcn.0045f420
mov eax, ebx
mov ecx, 0x10
call fcn.0045f420
mov eax, ebx
mov ecx, ebp
call fcn.0045f420
nop
call fcn.0045df90
jmp fcn.004870f0