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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x50]
cmp eax, dword [ecx + 8]
jbe 0x523a74
sub esp, 0xd0
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], 0
mov eax, dword [esp + 0xf0]
test eax, eax
je 0x5239f3
lea eax, [0x75be00]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00403b00
mov eax, dword [esp + 8]
mov dword [esp + 0x38], eax
mov dword [esp], 4
lea ecx, [0x7f14a4]
mov dword [esp + 4], ecx
call fcn.004267f0
test eax, eax
jne 0x5239e6
lea eax, [0x75bb80]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00403b00
mov eax, dword [esp + 8]
mov dword [esp + 0x3c], eax
lea ecx, [0x7a60a0]
mov dword [esp], ecx
call fcn.00409cb0
mov eax, dword [esp + 4]
lea ecx, [0x53e660]
mov dword [eax], ecx
mov ecx, dword [esp + 0xe4]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0xe8]
mov dword [eax + 0xc], ecx
mov ecx, dword [0xadb480]
test ecx, ecx
jne 0x5239ce
mov ecx, dword [esp + 0xe0]
mov dword [eax + 4], ecx
mov dword [esp + 0x4c], eax
mov ecx, dword [esp + 0xf0]
mov dword [eax + 0x14], ecx
mov ecx, dword [esp + 0xf4]
mov dword [eax + 0x18], ecx
mov ecx, dword [0xadb480]
test ecx, ecx
jne 0x523991
mov ecx, dword [esp + 0xec]
mov dword [eax + 0x10], ecx
mov ecx, dword [esp + 0xd4]
mov dword [eax + 0x1c], ecx
mov edx, dword [esp + 0x3c]
mov dword [eax + 0x20], edx
mov ebx, dword [esp + 0x38]
mov dword [eax + 0x24], ebx
lea edi, [esp + 0x64]
xor eax, eax
call fcn.0044c96b
lea edi, [esp + 0x78]
call fcn.0044c96b
mov ecx, dword [esp + 0xd8]
mov dword [esp], ecx
mov edx, dword [esp + 0xdc]
mov dword [esp + 4], edx
call fcn.0051e2b0
mov ecx, dword [esp + 8]
mov dword [esp + 0x28], ecx
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x40], ebx
mov dword [esp], 0
mov dword [esp + 4], edx
call fcn.004267f0
test eax, eax
jne 0x523984
mov eax, dword [esp + 0x28]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0xc], eax
mov byte [esp + 0x10], 1
mov dword [esp], 0xc
mov eax, dword [esp + 0x4c]
mov dword [esp + 4], eax
call fcn.0042f4a0
mov eax, dword [esp + 0xd4]
mov ecx, dword [eax + 0x2c]
mov eax, dword [eax + 0x28]
test ecx, ecx
sete dl
test eax, eax
seta bl
and edx, ebx
test ecx, ecx
setg bl
or ebx, edx
test bl, bl
je 0x523978
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0046db90
mov eax, dword [esp + 8]
mov dword [esp + 0x44], eax
mov dword [esp], 8
lea ecx, [0x7f166c]
mov dword [esp + 4], ecx
call fcn.004267f0
test eax, eax
jne 0x52396b
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx]
lea edi, [esp + 0x8c]
xor eax, eax
call fcn.0044c96b
lea edi, [esp + 0xa0]
call fcn.0044c964
mov dword [esp + 0x30], 0
mov dword [esp + 0x34], 0
mov word [esp + 0xa8], 1
mov dword [esp + 0xa0], edx
mov word [esp + 0xc0], 1
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0xb8], ecx
lea edx, [esp + 0x8c]
mov dword [esp + 0xbc], edx
lea ebx, [esp + 0x30]
mov dword [esp + 4], ebx
lea ebx, [esp + 0xa0]
mov dword [esp], ebx
mov dword [esp + 8], 2
call fcn.00434ec0
mov ecx, dword [esp + 0xc]
test ecx, ecx
je 0x5238ee
cmp ecx, 1
jne 0x523a72
lea edi, [esp + 0x50]
lea esi, [esp + 0x8c]
call fcn.0044ce4e
mov ecx, dword [esp + 0x58]
test ecx, ecx
je 0x5238b5
movzx ecx, byte [esp + 0x60]
test cl, cl
je 0x5238a3
lea edi, [esp + 0x64]
lea esi, [esp + 0x50]
call fcn.0044ce4e
movzx ecx, byte [esp + 0x75]
test cl, cl
je 0x523823
movzx ecx, byte [esp + 0x89]
test cl, cl
jne 0x52386a
movzx ecx, byte [esp + 0x60]
test cl, cl
je 0x523740
mov eax, dword [esp + 0x44]
mov dword [esp], eax
call fcn.0046db30
movzx eax, byte [esp + 4]
test al, al
je 0x523740
mov eax, dword [esp + 0x44]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0
call fcn.0046dcb0
jmp 0x523740
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], 0
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x100], eax
mov dword [esp + 0x104], ecx
nop
call fcn.00426fb0
add esp, 0xd0
ret
lea edi, [esp + 0x78]
lea esi, [esp + 0x50]
call fcn.0044ce4e
jmp 0x52380e
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x50]
mov dword [esp + 0xf8], ecx
mov dword [esp + 0xfc], eax
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], 0
nop
call fcn.00426fb0
add esp, 0xd0
ret
mov eax, dword [esp + 0xd8]
mov dword [esp], eax
mov ecx, dword [esp + 0xdc]
mov dword [esp + 4], ecx
call fcn.0051e2b0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 8]
mov dword [esp + 0x2c], edx
mov dword [esp], 0
mov dword [esp + 4], ecx
call fcn.004267f0
test eax, eax
jne 0x52395e
mov eax, dword [esp + 0x2c]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0xc], eax
mov byte [esp + 0x10], 0
mov dword [esp], 0xc
mov eax, dword [esp + 0x4c]
mov dword [esp + 4], eax
call fcn.0042f4a0
jmp 0x523740
nop
call fcn.00426fb0
add esp, 0xd0
ret
nop
call fcn.00426fb0
add esp, 0xd0
ret
xor ecx, ecx
mov eax, 0x11e1a300
jmp 0x52370e
nop
call fcn.00426fb0
add esp, 0xd0
ret
lea edi, [eax + 0x10]
mov ecx, eax
mov eax, dword [esp + 0xec]
call fcn.0044c870
lea edi, [ecx + 0x1c]
mov eax, dword [esp + 0xd4]
call fcn.0044c870
lea edi, [ecx + 0x20]
mov eax, dword [esp + 0x3c]
call fcn.0044c870
lea edi, [ecx + 0x24]
mov eax, dword [esp + 0x38]
call fcn.0044c870
jmp 0x523663
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xe0]
call fcn.0044c870
mov eax, ecx
jmp 0x52361b
nop
call fcn.00426fb0
add esp, 0xd0
ret
mov eax, dword [esp + 0xd4]
mov dword [esp], eax
mov eax, dword [esp + 0xd8]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xdc]
mov dword [esp + 8], eax
mov eax, dword [esp + 0xe0]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xe4]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0xe8]
mov dword [esp + 0x14], eax
call fcn.00523a80
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x20]
mov ebx, dword [esp + 0x24]
mov dword [esp + 0xf8], ecx
mov dword [esp + 0xfc], eax
mov dword [esp + 0x100], edx
mov dword [esp + 0x104], ebx
nop
call fcn.00426fb0
add esp, 0xd0
ret
ud2
call fcn.0044b110
jmp fcn.00523520