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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x41514e
sub esp, 0x50
mov eax, dword fs:[0x14]
mov eax, dword [eax]
mov ecx, dword [eax + 0x18]
nop
inc dword [ecx + 0x78]
mov ecx, dword [eax + 0x18]
test byte [eax], al
mov eax, dword fs:[0x14]
mov eax, dword [eax]
cmp dword [ecx], eax
je 0x415075
mov edx, dword [ecx + 0x78]
cmp edx, 1
jg 0x415075
mov ebx, dword [ecx + 0x74]
test ebx, ebx
jne 0x415075
nop
lea ebx, [edx - 1]
mov dword [ecx + 0x78], ebx
cmp edx, 1
jne 0x414b71
movzx ecx, byte [eax + 0x65]
test cl, cl
je 0x414b71
mov dword [eax + 8], 0xfffffade
jmp 0x414b71
inc dword [0xf0f73c]
mov eax, dword [esp + 0x54]
mov dword [esp], eax
mov ecx, dword [esp + 0x5c]
mov dword [esp + 8], ecx
mov edx, dword [esp + 0x58]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x60]
mov dword [esp + 0xc], ebx
call fcn.004149d0
movzx eax, byte [esp + 0x10]
test al, al
jne 0x415064
xor eax, eax
test al, al
jne 0x414b6b
nop
lea eax, [0xf2c65c]
mov dword [esp], eax
mov byte [esp + 4], 0
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
call fcn.0043ffc0
mov eax, dword [esp + 0x54]
mov dword [esp], eax
mov ecx, dword [esp + 0x5c]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x58]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x60]
mov dword [esp + 0xc], ecx
call fcn.004149d0
movzx eax, byte [esp + 0x10]
test al, al
je 0x415044
mov eax, dword [esp + 0x54]
cmp eax, 2
sete al
mov byte [0xf2c670], al
mov eax, dword [0xf2c038]
cmp eax, 1
jne 0x41502e
mov eax, 1
mov dword [esp + 0x14], eax
lea ecx, [0x51a0ec]
mov dword [esp], ecx
mov byte [esp + 4], 0
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
call fcn.0043ffc0
nop
lea eax, [0x51a10c]
mov dword [esp], eax
mov byte [esp + 4], 0
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
call fcn.0043ffc0
movzx eax, byte [0xf180c8]
test al, al
jne 0x414fbd
mov eax, dword [0xf0f668]
mov dword [esp + 0x44], eax
mov ecx, dword [0xf0f66c]
mov dword [esp + 0x28], ecx
xor edx, edx
jmp 0x414ca2
mov ebx, dword [esp + 0x24]
lea edx, [ebx + 1]
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x28]
cmp ecx, edx
jle 0x414cd7
mov dword [esp + 0x24], edx
mov ecx, dword [eax + edx*4]
mov dword [esp + 0x3c], ecx
mov ebx, dword [ecx + 0x30]
test byte [ebx], al
add ebx, 0x24c
mov dword [esp], ebx
call fcn.00401fa0
mov eax, dword [esp + 4]
mov ecx, dword [0xf13b4c]
cmp eax, ecx
je 0x414c93
jmp 0x415097
call fcn.00416500
lea eax, [0x4ae3e0]
mov dword [esp], eax
call fcn.004569d0
mov eax, dword [0xf2bd98]
mov dword [0xf2c69c], eax
mov dword [0xf2c6a0], eax
mov ecx, dword [0xf2bdac]
cmp eax, ecx
jle 0x414d0c
mov dword [0xf2c69c], ecx
lea eax, [0xf2ed58]
mov dword [esp], eax
call fcn.004021a0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
mov dword [0xf2c6d8], eax
mov dword [0xf2c6d4], ecx
mov dword [0xf2c6c4], 0
mov dword [0xf2c6c8], 0
mov eax, dword [esp + 0x14]
mov dword [0xf2c66c], eax
call fcn.00459040
mov eax, dword [esp + 4]
mov ecx, dword [esp]
mov dword [esp + 0x30], eax
mov dword [esp + 0x2c], ecx
mov dword [0xf2c6a8], eax
mov dword [0xf2c6a4], ecx
mov dword [0xf2c6d0], eax
mov dword [0xf2c6cc], ecx
movzx eax, byte [0xf180c8]
test al, al
jne 0x414f6e
lea eax, [0x4ae498]
mov dword [esp], eax
call fcn.004569d0
lea eax, [0x4ae3e4]
mov dword [esp], eax
call fcn.004569d0
call fcn.004173c0
inc dword [0xf2c698]
lea eax, [0xf2c3c0]
mov dword [esp], eax
call fcn.004131c0
mov eax, dword [0xf2d7a8]
mov ecx, dword [0xf2d7ac]
mov dword [0xf2c6ec], eax
mov dword [0xf2c6f0], ecx
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x414f60
nop
lea eax, [0xf2bd94]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.00402170
mov eax, dword [0xf2bd94]
cmp eax, 1
jne 0x414f55
mov eax, 1
mov byte [0xf2bef4], al
test al, al
je 0x414f49
mov eax, 1
mov byte [0xf2bef0], al
nop
mov dword [0xf2c638], 0xffffffff
mov dword [0xf2c644], 0xffffffff
call fcn.00417a00
call fcn.0041b4a0
lea eax, [0xf2bd88]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.00402170
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
mov dword [0xf2c3f0], eax
mov dword [0xf2c3f4], ecx
mov eax, dword fs:[0x14]
mov eax, dword [eax]
mov ecx, dword [eax + 0x18]
nop
inc dword [ecx + 0x78]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x40], eax
mov dword [esp + 0x48], 0
mov dword [esp + 0x4c], 0
lea ecx, [0x451f90]
mov dword [esp + 0x48], ecx
lea ecx, [esp + 0x2c]
mov dword [esp + 0x4c], ecx
lea ecx, [esp + 0x48]
mov dword [esp], ecx
call fcn.004569d0
nop
lea eax, [0x51a10c]
mov dword [esp], eax
mov byte [esp + 4], 0
mov dword [esp + 8], 0
call fcn.004402d0
nop
mov eax, dword fs:[0x14]
mov eax, dword [eax]
mov ecx, dword [esp + 0x40]
mov edx, dword [ecx + 0x78]
lea ebx, [edx - 1]
mov dword [ecx + 0x78], ebx
cmp edx, 1
jne 0x414f41
movzx ecx, byte [eax + 0x65]
test cl, cl
je 0x414f39
mov dword [eax + 8], 0xfffffade
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x414f28
lea eax, [0xf2c65c]
mov dword [esp], eax
mov byte [esp + 4], 0
mov dword [esp + 8], 0
call fcn.004402d0
add esp, 0x50
ret
nop
lea eax, [0x4ae3f4]
mov dword [esp], eax
call fcn.00456970
jmp 0x414f09
mov eax, dword [esp + 0x14]
test eax, eax
jmp 0x414f07
mov eax, dword [esp + 0x14]
test eax, eax
jmp 0x414f07
movzx eax, byte [0xf2bef5]
jmp 0x414e1e
cmp eax, 2
sete al
jmp 0x414e0b
mov byte [esp], 0
call fcn.0043c4c0
jmp 0x414de0
nop
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x34], 1
mov dword [esp + 0x38], 0
mov byte [esp], 9
mov dword [esp + 4], 0xffffffff
lea eax, [esp + 0x34]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.00449f20
jmp 0x414d87
nop
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0
mov eax, dword [0xf180f8]
mov ecx, dword [0xf180fc]
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], ecx
mov byte [esp], 7
mov dword [esp + 4], 3
lea eax, [esp + 0x34]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.00449f20
mov eax, dword [0xf180f8]
add eax, 1
mov ecx, dword [0xf180fc]
mov dword [0xf180f8], eax
adc ecx, 0
mov dword [0xf180fc], ecx
jmp 0x414c7b
cmp eax, 2
jne 0x41503d
mov eax, 2
jmp 0x414c21
xor eax, eax
jmp 0x414c21
nop
lea eax, [0xf2c65c]
mov dword [esp], eax
mov byte [esp + 4], 0
mov dword [esp + 8], 0
call fcn.004402d0
add esp, 0x50
ret
call fcn.0041d930
cmp dword [esp], 0xffffffff
setne al
jmp 0x414ba4
nop
mov edx, dword [ecx + 0x78]
lea ebx, [edx - 1]
mov dword [ecx + 0x78], ebx
cmp edx, 1
jne 0x415093
movzx ecx, byte [eax + 0x65]
test cl, cl
je 0x415093
mov dword [eax + 8], 0xfffffade
add esp, 0x50
ret
mov dword [esp + 0x18], eax
mov dword [esp + 0x20], ecx
mov eax, dword [esp + 0x3c]
mov eax, dword [eax]
mov dword [esp + 0x1c], eax
call fcn.00430920
lea eax, [0x4a6bf1]
mov dword [esp], eax
mov dword [esp + 4], 0xb
call fcn.00431220
mov eax, dword [esp + 0x1c]
mov ecx, eax
sar eax, 0x1f
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.00431030
lea eax, [0x4a65fc]
mov dword [esp], eax
mov dword [esp + 4], 0xa
call fcn.00431220
mov dword [esp + 4], 0
mov eax, dword [esp + 0x18]
mov dword [esp], eax
call fcn.00430ec0
lea eax, [0x4a6fb5]
mov dword [esp], eax
mov dword [esp + 4], 0xd
call fcn.00431220
mov dword [esp + 4], 0
mov eax, dword [esp + 0x20]
mov dword [esp], eax
call fcn.00430ec0
call fcn.00430b40
call fcn.00430990
lea eax, [0x4a8c17]
mov dword [esp], eax
mov dword [esp + 4], 0x14
call fcn.0042f490
nop
call fcn.00456af0
jmp fcn.00414af0