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

Disassembly:
push 0xffffffffffffffff
push 0x47ecf0
mov eax, dword fs:[0]
push eax
sub esp, 0x70
mov eax, dword [0x4983f8]
xor eax, esp
mov dword [esp + 0x6c], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4983f8]
xor eax, esp
push eax
lea eax, [esp + 0x84]
mov dword fs:[0], eax
mov eax, dword [esp + 0x94]
xor ebx, ebx
mov dword [esp + 0x1c], eax
mov eax, 0x49b110
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], edx
mov dword [esp + 0x20], ebx
lea ebp, [ebx + 2]
call fcn.00450600
mov eax, ebx
shl eax, 4
add eax, ebx
inc ebp
cmp dword [eax*4 + 0x4874ec], 0
jne 0x42f4e2
mov ecx, dword [esp + 0x1c]
lea edi, [ebx + 1]
push ecx
mov eax, edi
lea esi, [esp + 0x30]
add ebp, 3
call fcn.0042e7c0
push eax
mov dword [esp + 0x90], 0
call fcn.00423b20
add esp, 4
mov dword [esp + 0x8c], 0xffffffff
cmp dword [esp + 0x44], 8
mov dword [esp + 0x18], eax
jb 0x42f42e
mov edx, dword [esp + 0x30]
push edx
call fcn.00462b9f
add esp, 4
xor eax, eax
mov dword [esp + 0x44], 7
mov dword [esp + 0x40], 0
mov word [esp + 0x30], ax
cmp dword [esp + 0x18], eax
je 0x42f4e5
cmp edi, 0x12
je 0x42f47a
mov eax, dword [esp + 0x18]
lea edx, [eax + 1]
jmp 0x42f460
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x42f460
mov ecx, dword [esp + 0x18]
sub eax, edx
push ecx
add ebp, eax
call fcn.00462d5c
add esp, 4
jmp 0x42f4e5
mov ecx, dword [esp + 0x1c]
push ecx
mov eax, 0x12
lea esi, [esp + 0x4c]
call fcn.0042e7c0
or dword [esp + 0x20], 1
cmp dword [eax + 0x14], 6
jge 0x42f4a6
mov edx, dword [esp + 0x18]
cmp byte [edx], 0
mov byte [esp + 0x17], 1
jne 0x42f4ab
mov byte [esp + 0x17], 0
test byte [esp + 0x20], 1
je 0x42f4cb
and dword [esp + 0x20], 0xfffffffe
cmp dword [esp + 0x60], 8
jb 0x42f4cb
mov eax, dword [esp + 0x4c]
push eax
call fcn.00462b9f
add esp, 4
cmp byte [esp + 0x17], 0
je 0x42f4d3
inc ebp
mov ecx, dword [esp + 0x18]
push ecx
call fcn.00462d5c
add esp, 4
jmp 0x42f4e5
add ebp, 8
inc ebx
cmp ebx, 0x3e
jl 0x42f3cb
add ebp, 4
mov dword [esp + 0x18], ebp
mov ebp, 0x49bcdc
jmp 0x42f500
mov edi, dword [ebp]
cmp edi, dword [ebp + 4]
jbe 0x42f50d
call fcn.00463181
mov esi, dword [ebp - 0xc]
mov ebx, dword [ebp + 4]
cmp dword [ebp], ebx
ja 0x42f51c
cmp ebx, ebx
jbe 0x42f521
call fcn.00463181
mov eax, dword [ebp - 0xc]
test esi, esi
je 0x42f52c
cmp esi, eax
je 0x42f531
call fcn.00463181
cmp edi, ebx
je 0x42f579
test esi, esi
jne 0x42f571
call fcn.00463181
xor eax, eax
cmp edi, dword [eax + 0x10]
jb 0x42f54a
call fcn.00463181
mov edx, dword [edi]
mov eax, dword [edx + 4]
mov ecx, edi
call eax
add dword [esp + 0x18], eax
test esi, esi
jne 0x42f575
call fcn.00463181
xor eax, eax
cmp edi, dword [eax + 0x10]
jb 0x42f56c
call fcn.00463181
add edi, 0x3c
jmp 0x42f510
mov eax, dword [esi]
jmp 0x42f540
mov eax, dword [esi]
jmp 0x42f562
add ebp, 0x18
cmp ebp, 0x49bd0c
jl 0x42f500
mov ecx, dword [esp + 0x18]
push ecx
call fcn.00460f28
mov edx, dword [esp + 0x28]
mov ebp, eax
mov dword [edx], eax
mov byte [ebp], 0
inc ebp
mov byte [ebp], 0x3e
add esp, 4
inc ebp
xor ebx, ebx
mov eax, ebx
shl eax, 4
add eax, ebx
mov cl, byte [eax*4 + 0x4874ec]
lea eax, [eax*4 + 0x4874ec]
mov byte [ebp], cl
mov eax, dword [eax]
inc ebp
sub eax, 0
je 0x42f5ed
sub eax, 1
jne 0x42f6f3
mov edx, dword [esp + 0x1c]
lea eax, [ebx + 1]
push edx
call fcn.0042e940
mov dword [ebp], eax
mov dword [ebp + 4], edx
add ebp, 8
jmp 0x42f6f3
mov eax, dword [esp + 0x1c]
lea edi, [ebx + 1]
push eax
mov eax, edi
lea esi, [esp + 0x68]
call fcn.0042e7c0
mov dword [esp + 0x8c], 1
cmp edi, 0x12
jne 0x42f63e
mov eax, dword [esp + 0x78]
cmp eax, 6
jge 0x42f62d
xor ecx, ecx
test eax, eax
setne cl
mov eax, ecx
test eax, eax
je 0x42f62d
push 0x486fa8
jmp 0x42f632
push 0x487060
lea edi, [esp + 0x68]
call fcn.00408280
add esp, 4
lea edx, [esp + 0x64]
push edx
call fcn.00423b20
mov edi, eax
add esp, 4
test edi, edi
jne 0x42f65f
mov byte [ebp], al
inc ebp
mov byte [ebp], al
inc ebp
mov byte [ebp], al
inc ebp
jmp 0x42f6bd
mov eax, edi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x42f664
sub eax, edx
mov esi, eax
cdq
and edx, 0xff
add eax, edx
mov ecx, eax
sar ecx, 8
mov eax, ecx
cdq
and edx, 0xff
add eax, edx
sar eax, 8
mov byte [ebp], al
inc ebp
mov byte [ebp], cl
mov eax, esi
inc ebp
and eax, 0x800000ff
jns 0x42f6a3
dec eax
or eax, 0xffffff00
inc eax
push esi
mov byte [ebp], al
inc ebp
push edi
push ebp
call fcn.004657b0
add esp, 0xc
push edi
add ebp, esi
call fcn.00462d5c
add esp, 4
mov dword [esp + 0x8c], 0xffffffff
cmp dword [esp + 0x7c], 8
jb 0x42f6dc
mov ecx, dword [esp + 0x68]
push ecx
call fcn.00462b9f
add esp, 4
xor edx, edx
mov dword [esp + 0x7c], 7
mov dword [esp + 0x78], 0
mov word [esp + 0x68], dx
inc ebx
cmp ebx, 0x3e
jl 0x42f5a9
mov esi, 0x49bcdc
mov byte [ebp], 0
mov ecx, dword [esi + 4]
sub ecx, dword [esi]
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
inc ebp
add eax, edx
mov byte [ebp], al
mov ebx, dword [esi]
inc ebp
cmp ebx, dword [esi + 4]
jbe 0x42f72f
call fcn.00463181
mov edi, dword [esi - 0xc]
mov ecx, dword [esi + 4]
mov dword [esp + 0x1c], ecx
cmp dword [esi], ecx
ja 0x42f741
cmp ecx, ecx
jbe 0x42f74a
call fcn.00463181
mov ecx, dword [esp + 0x1c]
mov eax, dword [esi - 0xc]
test edi, edi
je 0x42f755
cmp edi, eax
je 0x42f75e
call fcn.00463181
mov ecx, dword [esp + 0x1c]
cmp ebx, ecx
je 0x42f7a5
test edi, edi
jne 0x42f79d
call fcn.00463181
xor eax, eax
cmp ebx, dword [eax + 0x10]
jb 0x42f777
call fcn.00463181
mov edx, dword [ebx]
mov eax, dword [edx + 8]
push ebp
mov ecx, ebx
call eax
mov ebp, eax
test edi, edi
jne 0x42f7a1
call fcn.00463181
xor eax, eax
cmp ebx, dword [eax + 0x10]
jb 0x42f798
call fcn.00463181
add ebx, 0x3c
jmp 0x42f732
mov eax, dword [edi]
jmp 0x42f76d
mov eax, dword [edi]
jmp 0x42f78e
add esi, 0x18
cmp esi, 0x49bd0c
jl 0x42f702
mov eax, 0x49b110
call fcn.00450610
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x28]
mov dword [edx], ecx
mov eax, 1
mov ecx, dword [esp + 0x84]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x6c]
xor ecx, esp
call fcn.00462baa
add esp, 0x7c
ret 4