Function at 0x414010
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 0x4147e2
sub esp, 0xa8
mov ebx, dword [0x6d9f8c]
cmp ebx, 0
je 0x414042
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 0x414076
mov ebx, 0x600c57
mov dword [esp], ebx
mov dword [esp + 4], 0x2b
call fcn.0042a540
mov ecx, dword [esp + 0x54]
movzx ebp, byte [ecx + 0xf]
mov ebx, ebp
and ebx, 0x1f
cmp bl, 0x16
je 0x4140ec
mov dword [esp], ecx
call fcn.00448f90
mov ecx, dword [esp + 4]
mov eax, dword [esp + 8]
mov dword [esp], 0
mov ebx, 0x6001cb
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, 0x5f7daf
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], 0xd
call fcn.0043ff90
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.0042a540
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x40], ecx
mov ebp, dword [ecx + 0x20]
xor ebx, ebx
cmp ebp, ebx
jne 0x41410e
mov ebx, 0x5f84cc
mov dword [esp], ebx
mov dword [esp + 4], 0xe
call fcn.0042a540
mov ebx, dword [esp + 0x58]
mov ebp, dword [ebx + 4]
mov dword [esp], ebp
call fcn.004147f0
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 0x4141d9
mov ebp, dword [ecx + 4]
mov ebx, 0x6d9d78
cmp ebp, ebx
jne 0x41414a
add esp, 0xa8
ret
mov eax, 0x6b5440
xor ebp, ebp
cmp eax, ebp
je 0x4141b8
mov esi, dword [eax + 0x38]
mov ebp, dword [ecx + 4]
cmp esi, ebp
ja 0x414170
mov esi, dword [ecx + 4]
mov ebp, dword [eax + 0x3c]
cmp esi, ebp
jae 0x414170
add esp, 0xa8
ret
mov esi, dword [eax + 0x40]
mov ebp, dword [ecx + 4]
cmp esi, ebp
ja 0x414184
mov esi, dword [ecx + 4]
mov ebp, dword [eax + 0x44]
cmp esi, ebp
jb 0x414169
mov esi, dword [eax + 0x48]
mov ebp, dword [ecx + 4]
cmp esi, ebp
ja 0x414198
mov esi, dword [ecx + 4]
mov ebp, dword [eax + 0x4c]
cmp esi, ebp
jb 0x414169
mov esi, dword [eax + 0x50]
mov ebp, dword [ecx + 4]
cmp esi, ebp
ja 0x4141ac
mov esi, dword [ecx + 4]
mov ebp, dword [eax + 0x54]
cmp esi, ebp
jb 0x414169
mov eax, dword [eax + 0xac]
xor ebp, ebp
cmp eax, ebp
jne 0x414155
mov ebx, 0x6022b0
mov dword [esp], ebx
mov dword [esp + 4], 0x34
call fcn.0042a540
mov esi, dword [esp + 0x40]
mov edx, dword [esp + 0x5c]
mov ecx, dword [esp + 0x58]
mov ebp, dword [ecx + 4]
cmp ebp, edx
je 0x414212
mov ebp, dword [esi + 0x20]
xor ebx, ebx
cmp ebp, ebx
je 0x4147c4
mov ebp, dword [esi + 0x20]
movzx ebx, byte [ebp + 0xf]
and ebx, 0x80
cmp bl, 0
je 0x4147c4
mov ebp, dword [esi + 0x20]
mov ebx, dword [ebp]
cmp ebx, 0x10
jae 0x4147c4
lea ebx, [esp + 0xb4]
mov dword [esp + 0x50], ebx
mov eax, dword [ebx]
xor ebp, ebp
cmp eax, ebp
jne 0x41424c
xor eax, eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], eax
lea eax, [esp + 0x68]
mov edx, 0x44c560
mov dword [eax], edx
mov dword [eax + 4], ecx
mov dword [esp], eax
call fcn.00450ea0
add esp, 0xa8
ret
movzx ebp, byte [eax + 0xf]
mov ebx, ebp
and ebx, 0x1f
cmp bl, 0x13
je 0x4142c6
mov dword [esp + 0x44], eax
mov dword [esp], eax
call fcn.00448f90
mov ecx, dword [esp + 4]
mov eax, dword [esp + 8]
mov dword [esp], 0
mov ebx, 0x60051e
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, 0x5f8a33
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], 0x10
call fcn.0043ff90
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.0042a540
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 0x4147ba
xor eax, eax
cmp al, 0
je 0x414398
mov ebx, dword [esp + 0x54]
mov dword [esp], ebx
call fcn.00448f90
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.00448f90
mov ecx, dword [esp + 4]
mov eax, dword [esp + 8]
mov dword [esp], 0
mov ebx, 0x5fed88
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, 0x5f815a
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, 0x5f944b
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], 0x12
call fcn.00440090
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.0042a540
mov ebx, dword [esp + 0x48]
movzx ebp, word [ebx + 0x22]
mov ebx, ebp
and ebx, 0x8000
cmp bx, 0
jne 0x4147b0
xor eax, eax
cmp al, 0
jne 0x414717
mov ebx, dword [esp + 0x48]
movzx ebp, word [ebx + 0x20]
cmp bp, 1
jne 0x414717
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 0x414400
add eax, 0x10
mov edx, ecx
add edx, eax
movzx ebp, word [ecx + 0x20]
cmp ebp, 0x100000
ja 0x414710
cmp edx, 0
je 0x414709
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 0x414702
mov ebp, dword [ebx]
mov eax, dword [ebp]
mov dword [esp + 0x4c], eax
mov ebp, dword [esp + 0x54]
cmp eax, ebp
jne 0x4145b3
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 0x41447b
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 0x4145ac
cmp eax, ebx
ja 0x4145ac
mov esi, ebx
sub esi, eax
mov ecx, 0x100000
sub ecx, eax
mov ebx, edi
cmp edi, 0
je 0x4145a5
cmp ecx, 0
je 0x4144e0
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 0x414520
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 0x4144ff
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.00413bf0
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, 0x44c590
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.00450ea0
add esp, 0xa8
ret
mov dword [edi], eax
jmp 0x4144d4
call fcn.004288f0
ud2
movzx ebp, byte [eax + 0xf]
mov ebx, ebp
and ebx, 0x1f
cmp bl, 0x16
jne 0x4146a9
mov dword [esp], eax
call fcn.00449030
mov ebx, dword [esp + 4]
xor ebp, ebp
cmp ebx, ebp
je 0x41468e
mov ebx, dword [esp + 0x54]
mov dword [esp], ebx
call fcn.00449030
mov ebx, dword [esp + 4]
xor ebp, ebp
cmp ebx, ebp
je 0x41468e
mov ebx, dword [esp + 0x54]
mov dword [esp], ebx
call fcn.00448f90
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.00448f90
mov ecx, dword [esp + 4]
mov eax, dword [esp + 8]
mov dword [esp], 0
mov ebx, 0x5fed88
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, 0x5f815a
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.00440010
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.0042a540
jmp 0x41445d
mov ebx, dword [esp + 0x4c]
mov ecx, dword [ebx + 0x20]
mov ebx, dword [esp + 0x40]
mov ebp, dword [ebx + 0x20]
cmp ecx, ebp
jne 0x4145f5
jmp 0x41445d
movzx ebp, byte [eax + 0xf]
mov ebx, ebp
and ebx, 0x1f
cmp bl, 0x14
jne 0x4145f5
mov ebp, dword [eax + 0x28]
cmp ebp, 0
jne 0x4146c8
jmp 0x41445d
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.0040c7c0
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x4146fd
jmp 0x41445d
jmp 0x4145f5
call fcn.00428880
ud2
mov dword [edx], eax
jmp 0x41441d
call fcn.004288f0
ud2
mov ebx, dword [esp + 0x54]
mov dword [esp], ebx
call fcn.00448f90
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.00448f90
mov ecx, dword [esp + 4]
mov eax, dword [esp + 8]
mov dword [esp], 0
mov ebx, 0x5fed88
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, 0x5f815a
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.00440010
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.0042a540
jmp 0x4143cf
mov eax, 1
jmp 0x4143b4
mov eax, 1
jmp 0x4142ea
mov ebx, 0x60352c
mov dword [esp], ebx
mov dword [esp + 4], 0x41
call fcn.0042a540
mov ecx, dword [esp + 0x58]
jmp 0x414212
call fcn.00450fb0
jmp fcn.00414010