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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 4]
cmp eax, dword [ecx + 8]
jbe 0x42fbc0
sub esp, 0x84
mov ebx, dword fs:[0x14]
mov ebx, dword [ebx]
mov dword [esp + 0x80], ebx
mov ebx, dword [esp + 0x80]
mov ebp, dword [ebx + 0x18]
mov ebx, dword [ebp + 0x54]
mov dword [esp + 0x7c], ebx
mov ebx, dword [0x6bed34]
cmp ebx, 0
je 0x42f377
call fcn.0042f080
jmp 0x42f354
mov ebx, dword [esp + 0x7c]
mov ebp, dword [ebx + 0x944]
cmp ebp, 0
je 0x42f38b
call fcn.0042dee0
cmp byte [0x6cfc27], 0
je 0x42f3c0
cmp byte [0x6cfc28], 0
je 0x42f3c0
call fcn.00412ee0
mov eax, dword [esp]
xor ebp, ebp
cmp eax, ebp
je 0x42f3c0
mov dword [esp], eax
mov dword [esp + 4], 0
mov byte [esp + 8], 1
call fcn.0042c410
mov ebx, dword [esp + 0x7c]
mov dword [esp], ebx
call fcn.004356b0
mov eax, dword [esp + 4]
movzx ebx, byte [esp + 8]
xor ebp, ebp
cmp eax, ebp
je 0x42f3f0
mov dword [esp + 0x88], eax
mov byte [esp + 0x8c], bl
add esp, 0x84
ret
mov ebx, dword [0x6bed00]
cmp ebx, 0
je 0x42f459
mov ebx, 0x6becc0
mov dword [esp], ebx
add dword [esp], 0x10
call fcn.0040bec0
mov ebx, dword [esp + 0x7c]
mov dword [esp], ebx
mov dword [esp + 4], 0
call fcn.00434fe0
mov ebx, dword [esp + 8]
mov dword [esp + 0x6c], ebx
mov ebx, 0x6becc0
mov dword [esp], ebx
add dword [esp], 0x10
call fcn.0040c100
mov eax, dword [esp + 0x6c]
xor ebp, ebp
cmp eax, ebp
je 0x42f459
mov dword [esp + 0x88], eax
mov byte [esp + 0x8c], 0
add esp, 0x84
ret
call fcn.004245c0
movzx ebx, byte [esp]
cmp bl, 0
je 0x42fbbb
mov edx, dword [0x6becc8]
mov eax, dword [0x6beccc]
cmp eax, 0
jne 0x42f485
cmp edx, 0
je 0x42fbbb
mov byte [esp], 0
call fcn.00425ae0
mov eax, dword [esp + 4]
xor ebp, ebp
cmp eax, ebp
je 0x42f4fd
mov dword [esp + 0x70], eax
mov ebp, dword [eax + 0x7c]
mov dword [esp], ebp
call fcn.0042fca0
mov ebx, dword [esp + 0x70]
mov dword [esp], ebx
mov dword [esp + 4], 4
mov dword [esp + 8], 1
call fcn.0042cd00
movzx ebx, byte [0x6c7b68]
cmp bl, 0
je 0x42f4e3
mov ebx, dword [esp + 0x70]
mov dword [esp], ebx
mov dword [esp + 4], 0
call fcn.00444c20
mov ebx, dword [esp + 0x70]
mov dword [esp + 0x88], ebx
mov byte [esp + 0x8c], 0
add esp, 0x84
ret
mov ebx, dword [0x6cfcb4]
mov dword [esp + 0x18], ebx
mov ebx, 0x6becc0
mov dword [esp], ebx
add dword [esp], 0x30
call fcn.004d4c20
mov esi, dword [esp + 0x80]
mov ecx, dword [esp + 4]
mov eax, dword [esp + 0x18]
dec eax
cmp eax, ecx
jne 0x42f9a2
mov ebx, dword [0x6cfca0]
cmp ebx, 0
je 0x42f5d7
mov ebx, dword [esp + 0x7c]
mov ebp, dword [ebx + 0x924]
cmp ebp, 0
je 0x42f5d7
mov ebx, dword [esp + 0x7c]
mov dword [esp], ebx
call fcn.00417280
movzx ebx, byte [esp + 4]
cmp bl, 0
je 0x42f5d7
mov eax, 2
mov ebx, dword [esp + 0x7c]
mov dword [ebx + 0x928], eax
mov ebx, dword [esp + 0x7c]
mov ebp, dword [ebx + 0x924]
mov dword [esp + 0x68], ebp
mov dword [esp], ebp
mov dword [esp + 4], 4
mov dword [esp + 8], 1
call fcn.0042cd00
movzx ebx, byte [0x6c7b68]
cmp bl, 0
je 0x42f5bd
mov ebx, dword [esp + 0x68]
mov dword [esp], ebx
mov dword [esp + 4], 0
call fcn.00444c20
mov ebx, dword [esp + 0x68]
mov dword [esp + 0x88], ebx
mov byte [esp + 0x8c], 0
add esp, 0x84
ret
mov ebx, 0x6becc0
mov dword [esp], ebx
add dword [esp], 0x10
call fcn.0040bec0
mov ecx, dword [esp + 0x7c]
mov ebx, dword [0x6bed34]
cmp ebx, 0
jne 0x42f98c
mov ebp, dword [ecx + 0x944]
cmp ebp, 0
jne 0x42f98c
mov ebx, dword [0x6bed00]
cmp ebx, 0
je 0x42f658
mov dword [esp], ecx
mov dword [esp + 4], 0
call fcn.00434fe0
mov ebx, dword [esp + 8]
mov dword [esp + 0x64], ebx
mov ebx, 0x6becc0
mov dword [esp], ebx
add dword [esp], 0x10
call fcn.0040c100
mov ebx, dword [esp + 0x64]
mov dword [esp + 0x88], ebx
mov byte [esp + 0x8c], 0
add esp, 0x84
ret
call fcn.00433470
mov ebx, dword [esp]
mov ebp, dword [esp + 0x7c]
cmp ebx, ebp
je 0x42f987
mov ebx, 0x5f31db
mov dword [esp], ebx
mov dword [esp + 4], 0x15
call fcn.004298b0
mov ebx, dword [esp + 0x7c]
mov dword [esp], ebx
call fcn.00435100
mov ebx, 0x6becc0
mov dword [esp], ebx
add dword [esp], 0x10
call fcn.0040c100
mov ecx, dword [esp + 0x80]
mov ebp, dword [ecx + 0x18]
movzx ebx, byte [ebp + 0x84]
mov byte [esp + 0x17], bl
mov ebp, dword [ecx + 0x18]
movzx ebx, byte [ebp + 0x84]
cmp bl, 0
je 0x42f708
xor eax, eax
mov ebp, dword [ecx + 0x18]
mov byte [ebp + 0x84], al
mov ebx, 0x6becc0
mov dword [esp], ebx
add dword [esp], 0x34
mov dword [esp + 4], 0xffffffff
call fcn.004d4de0
mov ebx, dword [esp + 8]
cmp ebx, 0
jge 0x42f982
mov ebx, 0x5f709d
mov dword [esp], ebx
mov dword [esp + 4], 0x21
call fcn.004298b0
xor ecx, ecx
mov eax, dword [0x6cfcb4]
cmp eax, ecx
jle 0x42f7d9
mov dword [esp + 0x20], ecx
mov ebx, ecx
mov ebp, 0x6bf460
cmp ecx, 0x101
jae 0x42f97b
shl ebx, 2
add ebp, ebx
mov eax, dword [ebp]
xor ebp, ebp
cmp eax, ebp
je 0x42f975
mov dword [esp], eax
call fcn.004351f0
mov ecx, dword [esp + 0x20]
movzx ebx, byte [esp + 4]
cmp bl, 0
jne 0x42f975
mov ebx, 0x6becc0
mov dword [esp], ebx
add dword [esp], 0x10
call fcn.0040bec0
call fcn.00435190
mov ebx, dword [esp]
mov dword [esp + 0x78], ebx
mov ebx, 0x6becc0
mov dword [esp], ebx
add dword [esp], 0x10
call fcn.0040c100
mov eax, dword [esp + 0x78]
xor ebp, ebp
cmp eax, ebp
je 0x42f7d9
mov dword [esp], eax
call fcn.00433240
cmp byte [esp + 0x17], 0
je 0x42f354
mov eax, 1
mov ebx, dword [esp + 0x80]
mov ebp, dword [ebx + 0x18]
mov byte [ebp + 0x84], al
mov ebx, 0x6becc0
mov dword [esp], ebx
add dword [esp], 0x34
mov dword [esp + 4], 1
call fcn.004d4de0
jmp 0x42f354
call fcn.004245c0
movzx ebx, byte [esp]
cmp bl, 0
je 0x42f973
mov ebx, 0x6becc0
mov dword [esp], ebx
add dword [esp], 8
mov dword [esp + 4], 0
mov dword [esp + 8], 0
call fcn.004d4cb0
mov edx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
cmp eax, 0
jne 0x42f822
cmp edx, 0
je 0x42f973
mov ebx, dword [esp + 0x80]
mov ebp, dword [ebx + 0x18]
mov ebx, dword [ebp + 0x54]
cmp ebx, 0
je 0x42f849
mov ebx, 0x5f5888
mov dword [esp], ebx
mov dword [esp + 4], 0x1c
call fcn.004298b0
mov ebx, dword [esp + 0x80]
mov ebp, dword [ebx + 0x18]
movzx ebx, byte [ebp + 0x84]
cmp bl, 0
je 0x42f874
mov ebx, 0x5f7928
mov dword [esp], ebx
mov dword [esp + 4], 0x23
call fcn.004298b0
mov byte [esp], 1
call fcn.00425ae0
mov ebx, dword [esp + 4]
mov dword [esp + 0x74], ebx
call fcn.004272d0
mov edx, dword [esp]
mov ecx, dword [esp + 4]
mov ebx, 0x6becc0
mov dword [esp], ebx
add dword [esp], 8
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.004d4e60
mov ebx, dword [esp + 0x74]
xor ebp, ebp
cmp ebx, ebp
je 0x42f969
mov ebx, 0x6becc0
mov dword [esp], ebx
add dword [esp], 0x10
call fcn.0040bec0
call fcn.00435190
mov ebx, dword [esp]
mov dword [esp + 0x7c], ebx
mov ebx, 0x6becc0
mov dword [esp], ebx
add dword [esp], 0x10
call fcn.0040c100
mov eax, dword [esp + 0x7c]
xor ebp, ebp
cmp eax, ebp
je 0x42f95d
mov dword [esp], eax
call fcn.00433240
mov ebx, dword [esp + 0x74]
mov ebp, dword [ebx + 0x7c]
mov dword [esp], ebp
call fcn.0042fca0
mov ebx, dword [esp + 0x74]
mov dword [esp], ebx
mov dword [esp + 4], 4
mov dword [esp + 8], 1
call fcn.0042cd00
movzx ebx, byte [0x6c7b68]
cmp bl, 0
je 0x42f943
mov ebx, dword [esp + 0x74]
mov dword [esp], ebx
mov dword [esp + 4], 0
call fcn.00444c20
mov ebx, dword [esp + 0x74]
mov dword [esp + 0x88], ebx
mov byte [esp + 0x8c], 0
add esp, 0x84
ret
mov ebx, dword [esp + 0x74]
mov dword [esp], ebx
call fcn.0042fca0
call fcn.0042e790
jmp 0x42f354
jmp 0x42f969
inc ecx
jmp 0x42f70a
call fcn.00427bf0
ud2
jmp 0x42f708
jmp 0x42f681
mov ebx, 0x6becc0
mov dword [esp], ebx
add dword [esp], 0x10
call fcn.0040c100
jmp 0x42f354
mov ebp, dword [esi + 0x18]
movzx ebx, byte [ebp + 0x84]
cmp bl, 0
jne 0x42f9fb
mov ebx, 0x6becc0
mov dword [esp], ebx
add dword [esp], 0x34
call fcn.004d4c20
mov ebx, dword [esp + 4]
mov dword [esp + 0x28], ebx
mov ebx, 0x6becc0
mov dword [esp], ebx
add dword [esp], 0x30
call fcn.004d4c20
mov esi, dword [esp + 0x80]
mov edx, dword [esp + 4]
mov ecx, dword [esp + 0x28]
shl ecx, 1
mov ebx, dword [esp + 0x18]
sub ebx, edx
cmp ecx, ebx
jb 0x42f9fb
jmp 0x42f530
mov ebp, dword [esi + 0x18]
movzx ebx, byte [ebp + 0x84]
cmp bl, 0
jne 0x42fa31
mov eax, 1
mov ebp, dword [esi + 0x18]
mov byte [ebp + 0x84], al
mov ebx, 0x6becc0
mov dword [esp], ebx
add dword [esp], 0x34
mov dword [esp + 4], 1
call fcn.004d4de0
xor eax, eax
mov dword [esp + 0x1c], eax
cmp eax, 4
jge 0x42f530
mov ebx, 0x6be950
mov dword [esp + 0x60], ebx
call fcn.004521a0
mov edi, dword [esp + 0x60]
mov ecx, dword [esp]
xor ebx, ebx
mov ebp, dword [edi + 8]
mov dword [esp + 0x2c], ebp
xor ebx, ebx
mov dword [esp + 0x50], ebx
mov ebp, dword [edi]
mov dword [esp + 0x54], ebp
mov ebx, dword [edi]
mov dword [esp + 0x24], eax
mov eax, ecx
xor edx, edx
div ebx
mov eax, dword [esp + 0x24]
mov dword [esp + 0x58], edx
mov ebp, dword [esp + 0x2c]
mov dword [esp + 0x24], eax
mov eax, ecx
xor edx, edx
div ebp
mov ebp, edx
mov eax, dword [esp + 0x24]
mov esi, dword [edi + 8]
cmp edx, esi
jae 0x42fbb4
mov esi, dword [edi + 4]
shl ebp, 2
add esi, ebp
mov eax, dword [esi]
mov ebp, dword [esp + 0x50]
mov edx, dword [esp + 0x54]
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x5c], eax
mov dword [esp + 0x30], ebp
mov dword [esp + 0x40], ebp
mov dword [esp + 0x34], edx
mov dword [esp + 0x44], edx
mov dword [esp + 0x38], ecx
mov dword [esp + 0x48], ecx
mov dword [esp + 0x3c], eax
mov dword [esp + 0x4c], eax
lea ebx, [esp + 0x40]
mov ecx, dword [ebx]
mov ebp, dword [ebx + 4]
cmp ecx, ebp
je 0x42fbaa
xor eax, eax
cmp al, 0
jne 0x42fba0
mov ebx, dword [0x6bed34]
cmp ebx, 0
jne 0x42f354
mov ebx, dword [esp + 0x1c]
cmp ebx, 2
jg 0x42fb96
xor eax, eax
lea ebx, [esp + 0x40]
mov ebp, dword [ebx + 8]
mov ebx, dword [esp + 0x7c]
mov dword [esp], ebx
mov ebx, ebp
mov ebp, 0x6bf460
cmp ebx, 0x101
jae 0x42fb8f
shl ebx, 2
add ebp, ebx
mov ebx, dword [ebp]
mov dword [esp + 4], ebx
mov byte [esp + 8], al
call fcn.004359f0
mov ecx, dword [esp + 0xc]
xor ebp, ebp
cmp ecx, ebp
je 0x42fb63
mov dword [esp + 0x88], ecx
mov byte [esp + 0x8c], 0
add esp, 0x84
ret
lea ebx, [esp + 0x40]
mov ecx, ebx
mov esi, dword [ebx]
inc esi
mov dword [ebx], esi
mov ebx, dword [ebx + 8]
mov esi, dword [ecx + 0xc]
add ebx, esi
mov dword [esp + 0x24], eax
mov eax, ebx
mov esi, dword [ecx + 4]
xor edx, edx
div esi
mov eax, dword [esp + 0x24]
mov dword [ecx + 8], edx
jmp 0x42fad7
call fcn.00427bf0
ud2
mov eax, 1
jmp 0x42fb11
mov eax, dword [esp + 0x1c]
inc eax
jmp 0x42fa33
mov eax, 1
jmp 0x42faea
call fcn.00427bf0
ud2
jmp 0x42f4fd
call fcn.004501c0
jmp fcn.0042f320