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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x28]
cmp eax, dword [ecx + 8]
jbe 0x414702
sub esp, 0xa8
mov ebx, dword [0x6d9f6c]
cmp ebx, 0
je 0x413f62
add esp, 0xa8
ret
lea ebx, [esp + 0xac]
mov dword [esp + 0x58], ebx
mov ebx, dword [esp + 0x58]
mov ecx, dword [ebx]
mov dword [esp + 0x54], ecx
xor ebp, ebp
cmp ecx, ebp
jne 0x413f96
mov ebx, 0x600929
mov dword [esp], ebx
mov dword [esp + 4], 0x2b
call fcn.0042a460
mov ecx, dword [esp + 0x54]
movzx ebp, byte [ecx + 0xf]
mov ebx, ebp
and ebx, 0x1f
cmp bl, 0x16
je 0x41400c
mov dword [esp], ecx
call fcn.00448eb0
mov ecx, dword [esp + 4]
mov eax, dword [esp + 8]
mov dword [esp], 0
mov ebx, 0x5ffe9d
mov dword [esp + 4], ebx
mov dword [esp + 8], 0x28
mov dword [esp + 0x70], ecx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x74], eax
mov dword [esp + 0x10], eax
mov ebx, 0x5f7a8f
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], 0xd
call fcn.0043feb0
lea ebx, [esp + 0x1c]
cld
mov ecx, dword [ebx]
mov dword [esp], ecx
mov ecx, dword [ebx + 4]
mov dword [esp + 4], ecx
call fcn.0042a460
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x40], ecx
mov ebp, dword [ecx + 0x20]
xor ebx, ebx
cmp ebp, ebx
jne 0x41402e
mov ebx, 0x5f81ac
mov dword [esp], ebx
mov dword [esp + 4], 0xe
call fcn.0042a460
mov ebx, dword [esp + 0x58]
mov ebp, dword [ebx + 4]
mov dword [esp], ebp
call fcn.00414710
mov esi, dword [esp + 0x40]
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 8]
mov dword [esp + 0x5c], edx
xor ebp, ebp
cmp edx, ebp
jne 0x4140f9
mov ebp, dword [ecx + 4]
mov ebx, 0x6d9d58
cmp ebp, ebx
jne 0x41406a
add esp, 0xa8
ret
mov eax, 0x6b5440
xor ebp, ebp
cmp eax, ebp
je 0x4140d8
mov esi, dword [eax + 0x38]
mov ebp, dword [ecx + 4]
cmp esi, ebp
ja 0x414090
mov esi, dword [ecx + 4]
mov ebp, dword [eax + 0x3c]
cmp esi, ebp
jae 0x414090
add esp, 0xa8
ret
mov esi, dword [eax + 0x40]
mov ebp, dword [ecx + 4]
cmp esi, ebp
ja 0x4140a4
mov esi, dword [ecx + 4]
mov ebp, dword [eax + 0x44]
cmp esi, ebp
jb 0x414089
mov esi, dword [eax + 0x48]
mov ebp, dword [ecx + 4]
cmp esi, ebp
ja 0x4140b8
mov esi, dword [ecx + 4]
mov ebp, dword [eax + 0x4c]
cmp esi, ebp
jb 0x414089
mov esi, dword [eax + 0x50]
mov ebp, dword [ecx + 4]
cmp esi, ebp
ja 0x4140cc
mov esi, dword [ecx + 4]
mov ebp, dword [eax + 0x54]
cmp esi, ebp
jb 0x414089
mov eax, dword [eax + 0xac]
xor ebp, ebp
cmp eax, ebp
jne 0x414075
mov ebx, 0x601f82
mov dword [esp], ebx
mov dword [esp + 4], 0x34
call fcn.0042a460
mov esi, dword [esp + 0x40]
mov edx, dword [esp + 0x5c]
mov ecx, dword [esp + 0x58]
mov ebp, dword [ecx + 4]
cmp ebp, edx
je 0x414132
mov ebp, dword [esi + 0x20]
xor ebx, ebx
cmp ebp, ebx
je 0x4146e4
mov ebp, dword [esi + 0x20]
movzx ebx, byte [ebp + 0xf]
and ebx, 0x80
cmp bl, 0
je 0x4146e4
mov ebp, dword [esi + 0x20]
mov ebx, dword [ebp]
cmp ebx, 0x10
jae 0x4146e4
lea ebx, [esp + 0xb4]
mov dword [esp + 0x50], ebx
mov eax, dword [ebx]
xor ebp, ebp
cmp eax, ebp
jne 0x41416c
xor eax, eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], eax
lea eax, [esp + 0x68]
mov edx, 0x44c480
mov dword [eax], edx
mov dword [eax + 4], ecx
mov dword [esp], eax
call fcn.00450dc0
add esp, 0xa8
ret
movzx ebp, byte [eax + 0xf]
mov ebx, ebp
and ebx, 0x1f
cmp bl, 0x13
je 0x4141e6
mov dword [esp + 0x44], eax
mov dword [esp], eax
call fcn.00448eb0
mov ecx, dword [esp + 4]
mov eax, dword [esp + 8]
mov dword [esp], 0
mov ebx, 0x6001f0
mov dword [esp + 4], ebx
mov dword [esp + 8], 0x29
mov dword [esp + 0x70], ecx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x74], eax
mov dword [esp + 0x10], eax
mov ebx, 0x5f8713
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], 0x10
call fcn.0043feb0
lea ebx, [esp + 0x1c]
cld
mov ecx, dword [ebx]
mov dword [esp], ecx
mov ecx, dword [ebx + 4]
mov dword [esp + 4], ecx
call fcn.0042a460
mov eax, dword [esp + 0x44]
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
mov ebx, dword [esp + 0x48]
movzx ebp, word [ebx + 0x22]
mov ebx, ebp
and ebx, 0x8000
cmp bx, 0
jne 0x4146da
xor eax, eax
cmp al, 0
je 0x4142b8
mov ebx, dword [esp + 0x54]
mov dword [esp], ebx
call fcn.00448eb0
mov ebx, dword [esp + 4]
mov dword [esp + 0x70], ebx
mov ebx, dword [esp + 8]
mov dword [esp + 0x74], ebx
mov ebx, dword [esp + 0x44]
mov dword [esp], ebx
call fcn.00448eb0
mov ecx, dword [esp + 4]
mov eax, dword [esp + 8]
mov dword [esp], 0
mov ebx, 0x5fea5a
mov dword [esp + 4], ebx
mov dword [esp + 8], 0x22
mov ebx, dword [esp + 0x70]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x74]
mov dword [esp + 0x10], ebx
mov ebx, 0x5f7e3a
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], 0xe
mov dword [esp + 0x60], ecx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x64], eax
mov dword [esp + 0x20], eax
mov ebx, 0x5f912b
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], 0x12
call fcn.0043ffb0
lea ebx, [esp + 0x2c]
cld
mov ecx, dword [ebx]
mov dword [esp], ecx
mov ecx, dword [ebx + 4]
mov dword [esp + 4], ecx
call fcn.0042a460
mov ebx, dword [esp + 0x48]
movzx ebp, word [ebx + 0x22]
mov ebx, ebp
and ebx, 0x8000
cmp bx, 0
jne 0x4146d0
xor eax, eax
cmp al, 0
jne 0x414637
mov ebx, dword [esp + 0x48]
movzx ebp, word [ebx + 0x20]
cmp bp, 1
jne 0x414637
mov ecx, dword [esp + 0x48]
xor ebx, ebx
mov dword [esp + 0x84], ebx
mov dword [esp + 0x88], ebx
mov dword [esp + 0x8c], ebx
mov eax, 0x24
movzx ebp, byte [ecx + 0xc]
mov ebx, ebp
and ebx, 1
cmp bl, 0
je 0x414320
add eax, 0x10
mov edx, ecx
add edx, eax
movzx ebp, word [ecx + 0x20]
cmp ebp, 0x100000
ja 0x414630
cmp edx, 0
je 0x414629
mov ecx, 0x100000
mov dword [esp + 0x84], edx
mov dword [esp + 0x88], ebp
mov dword [esp + 0x8c], ecx
lea ebx, [esp + 0x84]
cmp dword [ebx + 4], 0
jbe 0x414622
mov ebp, dword [ebx]
mov eax, dword [ebp]
mov dword [esp + 0x4c], eax
mov ebp, dword [esp + 0x54]
cmp eax, ebp
jne 0x4144d3
xor edx, edx
mov eax, dword [esp + 0x48]
xor ebx, ebx
mov ecx, 0x24
movzx ebp, byte [eax + 0xc]
mov ebx, ebp
and ebx, 1
cmp bl, 0
je 0x41439b
add ecx, 0x10
movzx ebp, word [eax + 0x22]
mov ebx, ebp
and ebx, 0x7fff
mov esi, ebx
mov edi, eax
add edi, ecx
movzx ebp, word [eax + 0x20]
mov word [esp + 0x36], bp
movzx ebp, word [eax + 0x20]
mov ebx, ebp
add ebx, esi
mov ecx, ebx
movzx ebx, word [esp + 0x36]
mov eax, ebx
movzx ebx, cx
cmp ebx, 0x100000
ja 0x4144cc
cmp eax, ebx
ja 0x4144cc
mov esi, ebx
sub esi, eax
mov ecx, 0x100000
sub ecx, eax
mov ebx, edi
cmp edi, 0
je 0x4144c5
cmp ecx, 0
je 0x414400
mov ebp, eax
imul ebp, ebp, 4
add ebx, ebp
mov eax, ebx
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], esi
mov dword [esp + 0x80], ecx
xor ecx, ecx
mov dword [esp + 0x3c], esi
mov ebp, dword [esp + 0x3c]
cmp ecx, ebp
jge 0x414440
mov esi, dword [eax]
movzx ebp, byte [esi + 0xd]
add edx, ebp
dec edx
dec ebp
mov ebx, ebp
xor ebx, 0xffffffff
and edx, ebx
mov ebx, dword [esi]
add edx, ebx
add eax, 4
inc ecx
mov ebp, dword [esp + 0x3c]
cmp ecx, ebp
jl 0x41441f
mov ebx, 4
mov ebp, edx
add ebp, ebx
dec ebp
dec ebx
xor ebx, 0xffffffff
and ebp, ebx
mov dword [esp + 0x38], ebp
call fcn.00413b10
xor eax, eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], eax
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], eax
lea eax, [esp + 0x90]
mov ecx, 0x44c4b0
mov dword [eax], ecx
mov ecx, dword [esp + 0x58]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x50]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x38]
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x4c]
mov dword [eax + 0x10], ecx
mov ecx, dword [esp + 0x40]
mov dword [eax + 0x14], ecx
mov dword [esp], eax
call fcn.00450dc0
add esp, 0xa8
ret
mov dword [edi], eax
jmp 0x4143f4
call fcn.00428810
ud2
movzx ebp, byte [eax + 0xf]
mov ebx, ebp
and ebx, 0x1f
cmp bl, 0x16
jne 0x4145c9
mov dword [esp], eax
call fcn.00448f50
mov ebx, dword [esp + 4]
xor ebp, ebp
cmp ebx, ebp
je 0x4145ae
mov ebx, dword [esp + 0x54]
mov dword [esp], ebx
call fcn.00448f50
mov ebx, dword [esp + 4]
xor ebp, ebp
cmp ebx, ebp
je 0x4145ae
mov ebx, dword [esp + 0x54]
mov dword [esp], ebx
call fcn.00448eb0
mov ebx, dword [esp + 4]
mov dword [esp + 0x70], ebx
mov ebx, dword [esp + 8]
mov dword [esp + 0x74], ebx
mov ebx, dword [esp + 0x44]
mov dword [esp], ebx
call fcn.00448eb0
mov ecx, dword [esp + 4]
mov eax, dword [esp + 8]
mov dword [esp], 0
mov ebx, 0x5fea5a
mov dword [esp + 4], ebx
mov dword [esp + 8], 0x22
mov ebx, dword [esp + 0x70]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x74]
mov dword [esp + 0x10], ebx
mov ebx, 0x5f7e3a
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], 0xe
mov dword [esp + 0x60], ecx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x64], eax
mov dword [esp + 0x20], eax
call fcn.0043ff30
lea ebx, [esp + 0x24]
cld
mov ecx, dword [ebx]
mov dword [esp], ecx
mov ecx, dword [ebx + 4]
mov dword [esp + 4], ecx
call fcn.0042a460
jmp 0x41437d
mov ebx, dword [esp + 0x4c]
mov ecx, dword [ebx + 0x20]
mov ebx, dword [esp + 0x40]
mov ebp, dword [ebx + 0x20]
cmp ecx, ebp
jne 0x414515
jmp 0x41437d
movzx ebp, byte [eax + 0xf]
mov ebx, ebp
and ebx, 0x1f
cmp bl, 0x14
jne 0x414515
mov ebp, dword [eax + 0x28]
cmp ebp, 0
jne 0x4145e8
jmp 0x41437d
lea ebx, [esp + 0xac]
mov dword [esp], eax
lea edi, [esp + 4]
cld
mov ecx, dword [ebx]
mov dword [edi], ecx
mov ecx, dword [ebx + 4]
mov dword [edi + 4], ecx
mov dword [esp + 0xc], 0
call fcn.0040c6e0
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x41461d
jmp 0x41437d
jmp 0x414515
call fcn.004287a0
ud2
mov dword [edx], eax
jmp 0x41433d
call fcn.00428810
ud2
mov ebx, dword [esp + 0x54]
mov dword [esp], ebx
call fcn.00448eb0
mov ebx, dword [esp + 4]
mov dword [esp + 0x70], ebx
mov ebx, dword [esp + 8]
mov dword [esp + 0x74], ebx
mov ebx, dword [esp + 0x44]
mov dword [esp], ebx
call fcn.00448eb0
mov ecx, dword [esp + 4]
mov eax, dword [esp + 8]
mov dword [esp], 0
mov ebx, 0x5fea5a
mov dword [esp + 4], ebx
mov dword [esp + 8], 0x22
mov ebx, dword [esp + 0x70]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x74]
mov dword [esp + 0x10], ebx
mov ebx, 0x5f7e3a
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], 0xe
mov dword [esp + 0x60], ecx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x64], eax
mov dword [esp + 0x20], eax
call fcn.0043ff30
lea ebx, [esp + 0x24]
cld
mov ecx, dword [ebx]
mov dword [esp], ecx
mov ecx, dword [ebx + 4]
mov dword [esp + 4], ecx
call fcn.0042a460
jmp 0x4142ef
mov eax, 1
jmp 0x4142d4
mov eax, 1
jmp 0x41420a
mov ebx, 0x6031fe
mov dword [esp], ebx
mov dword [esp + 4], 0x41
call fcn.0042a460
mov ecx, dword [esp + 0x58]
jmp 0x414132
call fcn.00450ed0
jmp fcn.00413f30