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

Disassembly:
sub esp, 0x5c
push ebx
push ebp
push esi
mov esi, dword [esp + 0x74]
push edi
lea edi, [esi*8]
push edi
call fcn.00612db9
mov ebp, eax
push edi
mov dword [esp + 0x44], ebp
call fcn.00612db9
mov ebx, eax
push edi
mov dword [esp + 0x34], ebx
call fcn.00612db9
lea ecx, [ebp + esi*4]
add esp, 0xc
lea edi, [ebx + esi*4]
lea ebp, [eax + esi*4]
test esi, esi
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], ecx
mov dword [esp + 0x30], edi
mov dword [esp + 0x48], ebp
jle 0x488787
mov edx, ebp
sub ecx, edi
sub edx, edi
mov eax, edi
mov dword [esp + 0x24], edx
mov dword [esp + 0x38], esi
mov edx, dword [esp + 0x24]
mov dword [ecx + eax], 0
mov dword [eax], 0
mov dword [edx + eax], 0
mov edx, dword [esp + 0x38]
add eax, 4
dec edx
mov dword [esp + 0x38], edx
jne 0x488761
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x34], 0
test eax, eax
jle 0x488bb0
mov eax, dword [esp + 0x74]
lea ecx, [esi + esi*2]
mov dword [esp + 0x68], ecx
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x38], eax
mov dword [esp + 0x4c], ecx
mov edx, dword [esp + 0x38]
test esi, esi
mov dword [esp + 0x40], edx
jle 0x488870
mov edx, dword [esp + 0x3c]
mov esi, dword [esp + 0x14]
sub edx, ebx
sub esi, ebx
mov dword [esp + 0x1c], edx
mov edx, dword [esp + 0x10]
sub edx, ebx
sub edi, ebx
mov dword [esp + 0x20], edx
mov edx, dword [esp + 0x78]
mov eax, ebx
sub ebp, ebx
mov dword [esp + 0x74], edx
xor edx, edx
mov ebx, dword [esi + eax]
mov dl, byte [ecx]
add ecx, 3
add eax, 4
lea edx, [edx + edx*4]
lea edx, [edx + edx*4]
shl edx, 6
add edx, ebx
mov ebx, dword [esp + 0x1c]
mov dword [ebx + eax - 4], edx
xor edx, edx
mov dl, byte [ecx - 2]
mov ebx, dword [edi + eax - 4]
lea edx, [edx + edx*4]
lea edx, [edx + edx*4]
shl edx, 6
add edx, ebx
mov dword [eax - 4], edx
xor edx, edx
mov dl, byte [ecx - 1]
mov ebx, dword [eax + ebp - 4]
lea edx, [edx + edx*4]
lea edx, [edx + edx*4]
shl edx, 6
add edx, ebx
mov ebx, dword [esp + 0x20]
mov dword [ebx + eax - 4], edx
mov edx, dword [esp + 0x74]
mov dword [esi + eax - 4], 0
mov dword [edi + eax - 4], 0
mov dword [eax + ebp - 4], 0
dec edx
mov dword [esp + 0x74], edx
jne 0x4887ea
mov ebx, dword [esp + 0x28]
mov esi, dword [esp + 0x78]
mov ebp, dword [esp + 0x48]
mov edi, dword [esp + 0x30]
test esi, esi
mov dword [esp + 0x2c], 0
jle 0x488b83
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x3c]
mov edi, dword [esp + 0x10]
lea esi, [ebx + 4]
lea eax, [edx - 4]
mov dword [esp + 0x74], edi
mov dword [esp + 0x70], eax
mov eax, ecx
sub eax, ebx
mov dword [esp + 0x1c], eax
mov eax, edi
sub eax, ebx
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x14]
sub eax, ebx
mov dword [esp + 0x5c], eax
mov eax, edx
sub eax, ebx
mov dword [esp + 0x60], eax
mov eax, ebp
sub eax, ebx
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x14]
sub eax, edx
mov dword [esp + 0x50], eax
mov eax, ebp
sub eax, edx
mov edx, edi
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x14]
sub eax, edx
sub ecx, edx
mov dword [esp + 0x54], eax
mov eax, ebp
sub eax, edx
mov dword [esp + 0x44], ecx
mov dword [esp + 0x58], eax
jmp 0x4888fa
mov edi, dword [esp + 0x74]
mov ecx, dword [esp + 0x44]
mov ecx, dword [edi + ecx]
test ecx, ecx
jge 0x48890b
mov dword [esp + 0x18], 0
jmp 0x488932
cmp ecx, 0x639c0
jle 0x48891d
mov dword [esp + 0x18], 0xff
jmp 0x488932
mov eax, 0x51eb851f
imul ecx
sar edx, 9
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov ecx, dword [esi - 4]
test ecx, ecx
jge 0x48893d
xor ecx, ecx
jmp 0x48895f
cmp ecx, 0x639c0
jle 0x48894c
mov ecx, 0xff
jmp 0x48895f
mov eax, 0x51eb851f
imul ecx
sar edx, 9
mov eax, edx
shr eax, 0x1f
add edx, eax
mov ecx, edx
mov edx, dword [edi]
test edx, edx
jge 0x488969
xor edx, edx
jmp 0x488989
cmp edx, 0x639c0
jle 0x488978
mov edx, 0xff
jmp 0x488989
mov eax, 0x51eb851f
imul edx
sar edx, 9
mov eax, edx
shr eax, 0x1f
add edx, eax
mov ebp, dword [esp + 0x80]
mov eax, dword [esp + 0x18]
push ebp
push eax
push ecx
push edx
call fcn.00488630
mov edx, dword [esp + 0x54]
mov cl, al
mov eax, dword [esp + 0x50]
and ecx, 0xff
add esp, 0x10
mov byte [eax], cl
mov edx, dword [edi + edx]
inc eax
test edx, edx
mov dword [esp + 0x40], eax
jge 0x4889c2
xor eax, eax
jmp 0x4889e4
cmp edx, 0x639c0
jle 0x4889d1
mov eax, 0xff
jmp 0x4889e4
mov eax, 0x51eb851f
imul edx
sar edx, 9
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, edx
lea edx, [ebp + ecx*2]
and eax, 0xff
lea ebp, [ecx + edx]
xor ecx, ecx
mov edx, dword [esi - 4]
mov cl, byte [ebp]
sub eax, ecx
mov ecx, dword [esp + 0x84]
imul eax, ecx
test edx, edx
mov edi, eax
jge 0x488a0e
xor eax, eax
jmp 0x488a30
cmp edx, 0x639c0
jle 0x488a1d
mov eax, 0xff
jmp 0x488a30
mov eax, 0x51eb851f
imul edx
sar edx, 9
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, edx
xor edx, edx
and eax, 0xff
mov dl, byte [ebp + 1]
sub eax, edx
imul eax, ecx
mov ecx, eax
mov eax, dword [esp + 0x74]
mov edx, dword [eax]
test edx, edx
jge 0x488a4f
xor eax, eax
jmp 0x488a71
cmp edx, 0x639c0
jle 0x488a5e
mov eax, 0xff
jmp 0x488a71
mov eax, 0x51eb851f
imul edx
sar edx, 9
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, edx
xor edx, edx
and eax, 0xff
mov dl, byte [ebp + 2]
mov ebp, dword [esp + 0x78]
sub eax, edx
mov edx, dword [esp + 0x2c]
imul eax, dword [esp + 0x84]
inc edx
cmp edx, ebp
mov dword [esp + 0x18], edx
jge 0x488ac5
mov edx, dword [esp + 0x1c]
lea ebp, [edi*8]
sub ebp, edi
add dword [edx + esi], ebp
mov ebp, dword [esi]
lea edx, [ecx*8]
sub edx, ecx
add ebp, edx
mov edx, dword [esp + 0x20]
mov dword [esi], ebp
lea ebp, [eax*8]
sub ebp, eax
add dword [edx + esi], ebp
mov edx, dword [esp + 0x34]
mov ebp, dword [esp + 0x7c]
inc edx
cmp edx, ebp
jge 0x488b4c
mov edx, dword [esp + 0x2c]
test edx, edx
jle 0x488afb
mov ebx, dword [esp + 0x50]
mov edx, dword [esp + 0x70]
lea ebp, [edi + edi*2]
add dword [ebx + edx], ebp
mov ebp, dword [edx]
lea ebx, [ecx + ecx*2]
add ebp, ebx
mov ebx, dword [esp + 0x24]
mov dword [edx], ebp
lea ebp, [eax + eax*2]
add dword [ebx + edx], ebp
mov ebp, dword [esp + 0x74]
mov edx, dword [esp + 0x54]
lea ebx, [edi + edi*4]
add dword [edx + ebp], ebx
mov edx, dword [esp + 0x70]
lea ebx, [ecx + ecx*4]
add dword [edx + 4], ebx
mov edx, dword [esp + 0x58]
lea ebx, [eax + eax*4]
add dword [edx + ebp], ebx
mov edx, dword [esp + 0x18]
cmp edx, dword [esp + 0x78]
jge 0x488b46
mov edx, dword [esp + 0x5c]
mov ebx, dword [edx + esi]
add ebx, edi
mov dword [edx + esi], ebx
mov edx, dword [esp + 0x60]
mov edi, dword [edx + esi]
add edi, ecx
mov ecx, dword [esp + 0x64]
mov dword [edx + esi], edi
add dword [ecx + esi], eax
mov ebx, dword [esp + 0x28]
jmp 0x488b50
mov ebp, dword [esp + 0x74]
mov edi, dword [esp + 0x70]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x78]
add ebp, 4
add edi, 4
add esi, 4
cmp eax, ecx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x74], ebp
mov dword [esp + 0x70], edi
jl 0x4888f2
mov ebp, dword [esp + 0x48]
mov edi, dword [esp + 0x30]
mov esi, ecx
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0x34]
add ecx, edx
mov edx, dword [esp + 0x38]
inc eax
add edx, esi
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], edx
mov edx, dword [esp + 0x7c]
cmp eax, edx
mov dword [esp + 0x4c], ecx
jl 0x4887b2
mov eax, dword [esp + 0x3c]
push eax
call fcn.00612e45
push ebx
call fcn.00612e45
mov ecx, dword [esp + 0x18]
push ecx
call fcn.00612e45
add esp, 0xc
mov al, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5c
ret