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

Disassembly:
mov ecx, dword [0x52fb9c]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x44228b
sub esp, 0x60
mov eax, dword [0x52fb9c]
mov eax, dword fs:[eax]
mov eax, dword [eax]
mov eax, dword [eax + 0x18]
mov eax, dword [eax + 0x58]
mov dword [esp], eax
call fcn.0044c330
mov eax, dword [esp + 4]
mov dword [esp + 0x58], eax
xor ecx, ecx
xor edx, edx
mov ebx, dword [esp + 0x68]
xor ebp, ebp
mov esi, dword [esp + 0x64]
xor edi, edi
jmp 0x441e7a
mov eax, dword [esp + 0x2c]
lea ecx, [eax + 1]
mov eax, dword [esp + 0x58]
mov edx, dword [esp + 0x54]
mov ebx, dword [esp + 0x4c]
mov ebp, dword [esp + 0x50]
mov esi, dword [esp + 0x48]
movzx edi, byte [esp + 0x22]
cmp ecx, 4
jge 0x441ede
mov dword [esp + 0x2c], ecx
xchg edi, eax
mov byte [esp + 0x22], al
xchg edi, eax
mov dword [esp + 0x54], edx
mov dword [esp + 0x50], ebp
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x48], esi
call fcn.0046b9a0
mov eax, dword [esp]
lea ecx, [0x510210]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00449710
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x2c]
cmp ebp, 3
xchg esi, ebx
sete bl
xchg esi, ebx
xchg esi, eax
mov byte [esp + 0x21], al
xchg esi, eax
mov edi, 1
jmp 0x441f4b
mov dword [esp + 0x6c], 0
mov byte [esp + 0x70], 0
mov dword [esp + 0x74], esi
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], ebp
mov dword [esp + 0x80], edx
xchg edi, eax
mov byte [esp + 0x84], al
xchg edi, eax
add esp, 0x60
ret
mov dword [esp + 0x54], eax
mov edi, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x38]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x4c], edx
mov dword [esp + 0x48], ebp
xchg esi, eax
mov byte [esp + 0x22], al
xchg esi, eax
mov ebp, dword [esp + 0x2c]
movzx esi, byte [esp + 0x21]
mov edx, dword [esp + 0x50]
mov dword [esp + 0x50], ebx
mov ebx, eax
mov eax, edi
movzx edi, byte [esp + 0x23]
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], ebx
xchg edi, eax
test al, al
xchg edi, eax
je 0x441f65
xor eax, eax
jmp 0x441f7c
xchg edi, eax
mov byte [esp + 0x23], al
xchg edi, eax
lea eax, [esp + 0x30]
mov dword [esp], eax
call fcn.004497b0
movzx eax, byte [esp + 0x23]
mov byte [esp + 0x23], al
lea ecx, [esp + 0x30]
mov dword [esp], ecx
call fcn.00449780
movzx eax, byte [esp + 4]
test al, al
jne 0x441e5a
lea eax, [0x512274]
mov dword [esp], eax
call fcn.00474a80
movzx eax, byte [esp + 4]
test al, al
jne 0x44224f
lea eax, [esp + 0x30]
mov dword [esp], eax
call fcn.004497f0
mov eax, dword [0x510188]
mov ecx, dword [esp + 4]
mov eax, dword [eax + ecx*4]
mov ecx, dword [esp + 0x58]
cmp eax, ecx
jne 0x441fef
mov eax, dword [esp + 0x54]
mov edx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x50]
mov ebp, dword [esp + 0x48]
movzx esi, byte [esp + 0x22]
jmp 0x441f0b
mov dword [esp + 0x5c], eax
mov edx, dword [esp + 0x2c]
cmp edx, 3
je 0x442000
xor ebx, ebx
jmp 0x442049
lea eax, [esp + 0x30]
mov dword [esp], eax
call fcn.004497f0
mov eax, dword [0x5101a8]
mov ecx, dword [0x5101ac]
mov edx, dword [0x5101b0]
mov ebx, dword [esp + 4]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
call fcn.004484a0
movzx eax, byte [esp + 0x10]
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x2c]
mov ebx, eax
mov eax, dword [esp + 0x5c]
test bl, bl
jne 0x442067
mov ecx, dword [esp + 0x54]
mov ebp, dword [esp + 0x4c]
mov eax, dword [esp + 0x50]
mov ebx, dword [esp + 0x48]
movzx edx, byte [esp + 0x22]
jmp 0x44213d
test byte [eax], al
lea ecx, [eax + 0x1198]
mov dword [esp], ecx
mov ecx, dword [esp + 0x48]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 8], ecx
call fcn.004569c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
test eax, eax
setne dl
test ecx, ecx
setne bl
or ebx, edx
test bl, bl
je 0x4420e0
mov edx, dword [esp + 0x54]
test edx, edx
sete bl
mov ebp, dword [esp + 0x50]
test ebp, ebp
xchg esi, ebx
sete bl
xchg esi, ebx
and ebx, esi
test bl, bl
jne 0x4420e8
cmp edx, ecx
setg bl
xchg esi, ebx
sete bl
xchg esi, ebx
cmp ebp, eax
xchg edi, ebx
seta bl
xchg edi, ebx
and edi, esi
or edi, ebx
xchg edi, eax
test al, al
xchg edi, eax
jne 0x4420e8
mov ecx, edx
mov eax, ebp
jmp 0x4420e8
mov ecx, dword [esp + 0x54]
mov eax, dword [esp + 0x50]
movzx edx, byte [esp + 0x1c]
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 0x10]
test dl, dl
jne 0x442100
movzx edx, byte [esp + 0x22]
jmp 0x44213d
mov dword [esp + 0x28], ebp
mov dword [esp + 0x24], ebx
mov dword [esp + 0x44], ecx
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x58]
mov dword [esp], eax
call fcn.00448e10
mov eax, dword [esp + 4]
test eax, eax
jne 0x44220f
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x44]
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x28]
mov edx, 1
mov byte [esp + 0x22], dl
mov dword [esp + 0x54], ecx
mov dword [esp + 0x50], eax
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x48], ebx
lea esi, [esp + 0x30]
mov dword [esp], esi
call fcn.004497f0
mov eax, dword [0x510198]
mov ecx, dword [0x51019c]
mov edx, dword [0x5101a0]
mov ebx, dword [esp + 4]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
call fcn.004484a0
movzx eax, byte [esp + 0x10]
test al, al
jne 0x4421b5
mov eax, dword [esp + 0x58]
mov dword [esp], eax
mov ecx, dword [esp + 0x5c]
mov dword [esp + 4], ecx
movzx ecx, byte [esp + 0x21]
mov byte [esp + 8], cl
call fcn.004491e0
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x4421d3
mov ecx, dword [esp + 0x58]
mov eax, dword [esp + 0x54]
mov edx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x50]
mov ebp, dword [esp + 0x48]
movzx esi, byte [esp + 0x22]
jmp 0x441f0b
mov dword [esp + 0x6c], eax
mov byte [esp + 0x70], 0
mov eax, dword [esp + 0x48]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x80], eax
movzx eax, byte [esp + 0x22]
mov byte [esp + 0x84], al
add esp, 0x60
ret
movzx ecx, byte [esp + 8]
mov dword [esp + 0x6c], eax
mov byte [esp + 0x70], cl
mov eax, dword [esp + 0x24]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x80], eax
movzx eax, byte [esp + 0x22]
mov byte [esp + 0x84], al
add esp, 0x60
ret
mov dword [esp + 0x6c], 0
mov byte [esp + 0x70], 0
mov eax, dword [esp + 0x48]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x80], eax
mov byte [esp + 0x84], 1
add esp, 0x60
ret
call fcn.0046eed0
jmp fcn.00441e10