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

Disassembly:
mov ecx, dword [0x1340c6c]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x41c88d
sub esp, 0x5c
mov eax, dword [0x1340c6c]
mov eax, dword fs:[eax]
mov eax, dword [eax]
mov ecx, dword [eax + 0x18]
nop
inc dword [ecx + 0x7c]
mov ecx, dword [0x1340c6c]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
mov eax, dword [eax + 0x18]
cmp dword [eax], ecx
je 0x41c2f7
mov edx, dword [eax + 0x7c]
cmp edx, 1
jg 0x41c2f7
mov ebx, dword [eax + 0x78]
test ebx, ebx
jne 0x41c2f7
lea ebx, [edx - 1]
nop
mov dword [eax + 0x7c], ebx
cmp edx, 1
jne 0x41c31f
movzx eax, byte [ecx + 0x65]
test al, al
je 0x41c31f
mov dword [ecx + 8], 0xfffffade
jmp 0x41c31f
mov edx, dword [eax + 0x7c]
lea ebx, [edx - 1]
nop
mov dword [eax + 0x7c], ebx
cmp edx, 1
jne 0x41c315
movzx eax, byte [ecx + 0x65]
test al, al
je 0x41c315
mov dword [ecx + 8], 0xfffffade
add esp, 0x5c
ret
inc dword [0x13197cc]
mov eax, dword [esp + 0x60]
mov dword [esp], eax
mov ecx, dword [esp + 0x68]
mov dword [esp + 8], ecx
mov edx, dword [esp + 0x64]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x6c]
mov dword [esp + 0xc], ebx
call fcn.0041c120
movzx eax, byte [esp + 0x10]
test al, al
jne 0x41c350
xor eax, eax
jmp 0x41c35c
call fcn.00429f00
cmp dword [esp], 0xffffffff
setne al
test al, al
jne 0x41c319
nop
lea eax, [0x131a278]
mov dword [esp], eax
mov byte [esp + 4], 0
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov byte [esp + 0x10], 0x12
call fcn.00451750
mov eax, dword [esp + 0x60]
mov dword [esp], eax
mov ecx, dword [esp + 0x68]
mov dword [esp + 8], ecx
mov edx, dword [esp + 0x64]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x6c]
mov dword [esp + 0xc], ebx
call fcn.0041c120
movzx eax, byte [esp + 0x10]
test al, al
je 0x41c4d2
mov eax, dword [0x13417dc]
cmp eax, 1
jne 0x41c3cc
mov eax, 1
jmp 0x41c3da
cmp eax, 2
jne 0x41c3d8
mov eax, 2
jmp 0x41c3da
xor eax, eax
mov dword [esp + 0x24], eax
lea ecx, [0x12b623c]
mov dword [esp], ecx
mov byte [esp + 4], 0
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov byte [esp + 0x10], 0x12
call fcn.00451750
nop
lea eax, [0x12b6238]
mov dword [esp], eax
mov byte [esp + 4], 0
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov byte [esp + 0x10], 0x12
call fcn.00451750
mov eax, dword [esp + 0x60]
cmp eax, 2
sete cl
mov byte [0x131a28c], cl
movzx ecx, byte [0x13250e4]
test cl, cl
je 0x41c4ba
nop
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0
mov eax, dword [0x1325124]
mov ecx, dword [0x1325128]
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], ecx
mov byte [esp], 7
mov dword [esp + 4], 3
lea eax, [esp + 0x40]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.0045df90
mov eax, dword [0x1325124]
mov ecx, dword [0x1325128]
add eax, 1
mov dword [0x1325124], eax
adc ecx, 0
mov dword [0x1325128], ecx
mov eax, dword [esp + 0x60]
mov ecx, dword [0x13189d0]
mov dword [esp + 0x50], ecx
mov edx, dword [0x13189d4]
mov dword [esp + 0x34], edx
xor ebx, ebx
jmp 0x41c505
nop
lea eax, [0x131a278]
mov dword [esp], eax
mov byte [esp + 4], 0
mov dword [esp + 8], 0
call fcn.00451ab0
add esp, 0x5c
ret
mov ebp, dword [esp + 0x30]
lea ebx, [ebp + 1]
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x34]
cmp ebx, edx
jge 0x41c53a
mov dword [esp + 0x30], ebx
mov eax, dword [ecx + ebx*4]
mov dword [esp + 0x48], eax
mov edx, dword [eax + 0x30]
test byte [edx], al
add edx, 0x24c
mov dword [esp], edx
call fcn.00406500
mov eax, dword [0x1320af0]
mov ecx, dword [esp + 4]
cmp ecx, eax
je 0x41c4f2
jmp 0x41c7d6
call fcn.0041ded0
lea eax, [0xce6ea0]
mov dword [esp], eax
call fcn.0046d350
mov eax, dword [0x1340b58]
mov dword [0x131a2b0], eax
mov dword [0x131a2b4], eax
mov ecx, dword [0x1340b5c]
cmp ecx, eax
jge 0x41c56f
mov dword [0x131a2b0], ecx
lea eax, [0x13422a8]
mov dword [esp], eax
call fcn.00406770
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
mov dword [0x131a2ec], eax
mov dword [0x131a2e8], ecx
mov dword [0x131a2d8], 0
mov dword [0x131a2dc], 0
mov eax, dword [esp + 0x24]
mov dword [0x131a288], eax
call fcn.0046f640
mov eax, dword [esp + 4]
mov ecx, dword [esp]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x38], ecx
mov dword [0x131a2bc], eax
mov dword [0x131a2b8], ecx
mov dword [0x131a2e4], eax
mov dword [0x131a2e0], ecx
lea eax, [0xce6ea8]
mov dword [esp], eax
call fcn.0046d350
lea eax, [0xce6eac]
mov dword [esp], eax
call fcn.0046d350
call fcn.0041ee50
nop
lea eax, [0x131a2ac]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.00406670
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
mov edx, dword [0x1340b58]
lea ebx, [0x1342240]
mov dword [esp], ebx
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov dword [esp + 0xc], edx
mov eax, dword [esp + 0x60]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x1c], eax
call fcn.00423e90
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
lea edx, [0x1341700]
mov dword [esp], edx
mov byte [esp + 4], 1
mov dword [esp + 0xc], ecx
mov dword [esp + 8], eax
call fcn.0041f410
mov eax, dword [esp + 0x24]
test eax, eax
je 0x41c68f
mov byte [esp], 0
call fcn.0044d5a0
nop
lea eax, [0x1340ac8]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.00406740
mov eax, dword [0x1340ac8]
cmp eax, 1
jne 0x41c6b8
mov eax, 1
jmp 0x41c6be
cmp eax, 2
sete al
mov byte [0x1341284], al
mov byte [0x1341280], al
nop
mov dword [0x131a238], 0xffffffff
mov dword [0x131a244], 0xffffffff
call fcn.00420190
call fcn.00423d40
lea eax, [0x1340acc]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.00406740
mov eax, dword [0x1340c6c]
mov eax, dword fs:[eax]
mov eax, dword [eax]
mov ecx, dword [eax + 0x18]
nop
inc dword [ecx + 0x7c]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x4c], eax
mov dword [esp + 0x54], 0
mov dword [esp + 0x58], 0
lea ecx, [0x41c8a0]
mov dword [esp + 0x54], ecx
lea ecx, [esp + 0x38]
mov dword [esp + 0x58], ecx
lea ecx, [esp + 0x54]
mov dword [esp], ecx
call fcn.0046d350
nop
lea eax, [0x12b6238]
mov dword [esp], eax
mov byte [esp + 4], 0
mov dword [esp + 8], 0
call fcn.00451ab0
mov eax, dword [esp + 0x4c]
mov ecx, dword [eax + 0x7c]
lea edx, [ecx - 1]
nop
mov ebx, dword [0x1340c6c]
mov ebx, dword fs:[ebx]
mov ebx, dword [ebx]
mov dword [eax + 0x7c], edx
cmp ecx, 1
jne 0x41c79f
movzx eax, byte [ebx + 0x65]
test al, al
je 0x41c797
mov dword [ebx + 8], 0xfffffade
mov eax, dword [esp + 0x24]
test eax, eax
jmp 0x41c7a5
mov eax, dword [esp + 0x24]
test eax, eax
jmp 0x41c7a5
mov eax, dword [esp + 0x24]
test eax, eax
je 0x41c7b6
nop
lea eax, [0xce6ebc]
mov dword [esp], eax
call fcn.0046d2f0
nop
lea eax, [0x131a278]
mov dword [esp], eax
mov byte [esp + 4], 0
mov dword [esp + 8], 0
call fcn.00451ab0
add esp, 0x5c
ret
mov dword [esp + 0x20], ecx
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x48]
mov eax, dword [eax]
mov dword [esp + 0x28], eax
call fcn.004401a0
lea eax, [0xcaabca]
mov dword [esp], eax
mov dword [esp + 4], 0xb
call fcn.00440a20
mov eax, dword [esp + 0x28]
mov ecx, eax
sar eax, 0x1f
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.00440840
lea eax, [0xca9509]
mov dword [esp], eax
mov dword [esp + 4], 0xa
call fcn.00440a20
mov dword [esp + 4], 0
mov eax, dword [esp + 0x20]
mov dword [esp], eax
call fcn.00440700
lea eax, [0xcad88f]
mov dword [esp], eax
mov dword [esp + 4], 0xd
call fcn.00440a20
mov dword [esp + 4], 0
mov eax, dword [esp + 0x2c]
mov dword [esp], eax
call fcn.00440700
call fcn.004403b0
call fcn.00440200
lea eax, [0xcb66a8]
mov dword [esp], eax
mov dword [esp + 4], 0x14
call fcn.0043e470
nop
call fcn.0046d440
jmp fcn.0041c290