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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x70]
cmp eax, dword [ecx + 8]
jbe 0x535ba5
sub esp, 0xf0
mov dword [esp + 0x110], 0
mov dword [esp + 0x114], 0
mov dword [esp + 0x118], 0
mov dword [esp + 0x11c], 0
mov eax, dword [esp + 0xf8]
test eax, eax
je 0x535b8b
call fcn.0047df30
lea edi, [esp + 0xdc]
mov esi, esp
call fcn.0044cfbe
mov eax, dword [esp + 0xf4]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xfc]
mov dword [esp + 8], edx
lea edi, [esp + 0xc]
lea esi, [esp + 0xdc]
call fcn.0044cfbe
call fcn.00533830
lea esi, [esp + 0x20]
lea edi, [esp + 0xa0]
call fcn.0044cfbe
lea edi, [esp + 0x8c]
lea esi, [esp + 0xa0]
call fcn.0044cfbe
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x90]
mov edx, ecx
shr ecx, 0x1f
shl ecx, 0x1f
test ecx, ecx
je 0x535b74
shl edx, 1
mov ecx, eax
shr eax, 0x1f
or eax, edx
mov edx, ecx
shl ecx, 1
shr ecx, 0x1f
mov ebx, eax
shl eax, 1
or eax, ecx
mov ecx, eax
add eax, 0xd7b17f80
shr ebx, 0x1f
add ecx, 0xd7b17f80
adc ebx, 0xd
test eax, eax
sete cl
test ebx, ebx
sete bl
and ebx, ecx
test bl, bl
je 0x535b6d
test edx, 0x3fffffff
sete cl
test cl, cl
je 0x535a62
mov eax, dword [esp + 0xfc]
mov ecx, dword [esp + 0xf8]
mov edx, dword [esp + 0xf4]
mov ebx, dword [edx + 0x3c]
test ebx, ebx
jne 0x5359d0
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x74], eax
mov edx, dword [ecx + 0x1c]
lea ebx, [0x738a00]
mov dword [esp + 4], ebx
lea ebp, [0xa8f0d8]
mov dword [esp + 8], ebp
mov dword [esp], eax
call edx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
lea edx, [0x70c680]
cmp ecx, edx
jne 0x5359c9
test eax, eax
jne 0x535904
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0xf4]
mov ebx, dword [edx + 0x38]
test ebx, ebx
je 0x5358f9
mov ebp, dword [edx + 0x20]
mov esi, dword [edx + 0x1c]
mov dword [esp + 0x24], esi
mov dword [esp + 0x28], ebp
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
lea eax, [0x790004]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 4
mov ecx, dword [esp + 0x100]
mov dword [esp + 0x14], ecx
mov ebx, dword [esp + 0x104]
mov dword [esp + 0x18], ebx
mov ebp, dword [esp + 0x108]
mov dword [esp + 0x1c], ebp
mov esi, dword [esp + 0x10c]
mov dword [esp + 0x20], esi
call fcn.005340f0
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x2c]
test ecx, ecx
je 0x5355e8
mov dword [esp + 0x80], eax
mov dword [esp + 0x58], ecx
lea eax, [0x763920]
mov dword [esp], eax
call fcn.00409d00
mov edi, dword [esp + 4]
mov dword [edi + 4], 4
mov eax, dword [0xa8f2d0]
test eax, eax
jne 0x5355d8
lea ecx, [0x790004]
mov dword [edi], ecx
mov ecx, dword [esp + 0x104]
mov dword [edi + 0xc], ecx
mov ecx, dword [0xa8f2d0]
test ecx, ecx
jne 0x5355bc
mov ecx, dword [esp + 0x100]
mov dword [edi + 8], ecx
mov dword [edi + 0x10], 0
mov ecx, dword [0xa8f2d0]
test ecx, ecx
jne 0x5355a5
mov dword [edi + 0x14], 0
mov dword [edi + 0x18], 0
mov ecx, dword [0xa8f2d0]
test ecx, ecx
jne 0x535591
mov dword [edi + 0x1c], 0
mov ecx, dword [esp + 0x58]
mov dword [edi + 0x20], ecx
mov ecx, dword [0xa8f2d0]
test ecx, ecx
jne 0x535578
mov eax, dword [esp + 0x80]
mov dword [edi + 0x24], eax
mov dword [esp + 0x110], 0
mov dword [esp + 0x114], 0
lea eax, [0x7fe4a0]
mov dword [esp + 0x118], eax
mov dword [esp + 0x11c], edi
nop
call fcn.00427260
add esp, 0xf0
ret
lea ecx, [edi + 0x24]
mov eax, edi
mov edi, ecx
mov edx, eax
mov eax, dword [esp + 0x80]
call fcn.0044c9e0
mov edi, edx
jmp 0x535541
lea ecx, [edi + 0x1c]
mov eax, edi
mov edi, ecx
mov edx, eax
xor eax, eax
call fcn.0044c9e0
mov edi, edx
jmp 0x535526
lea ecx, [edi + 0x14]
mov eax, edi
mov edi, ecx
mov edx, eax
xor eax, eax
call fcn.0044c9e0
mov edi, edx
jmp 0x53550e
lea ecx, [edi + 8]
mov eax, edi
mov edi, ecx
mov edx, eax
mov eax, dword [esp + 0x100]
call fcn.0044c9e0
mov edi, edx
jmp 0x5354f2
lea eax, [0x790004]
call fcn.0044c9e0
jmp 0x5354d0
mov dword [esp + 0x54], edx
mov dword [esp + 0x50], ebx
mov dword [esp + 0x78], ebp
lea eax, [0x758280]
mov dword [esp], eax
call fcn.00409d00
mov eax, dword [0xa8f2d0]
mov edi, dword [esp + 4]
mov dword [esp + 0x70], edi
test eax, eax
jne 0x5358d7
mov esi, dword [esp + 0xf4]
call fcn.0044cf46
mov ecx, dword [esp + 0x104]
mov edx, dword [esp + 0x70]
mov dword [edx + 0x48], ecx
mov ebx, dword [0xa8f2d0]
test ebx, ebx
jne 0x5358c1
mov ebx, dword [esp + 0x100]
mov dword [edx + 0x44], ebx
mov ebp, dword [esp + 0x10c]
mov dword [edx + 0x50], ebp
mov ebp, dword [0xa8f2d0]
test ebp, ebp
jne 0x5358ad
mov eax, dword [esp + 0x108]
mov dword [edx + 0x4c], eax
mov eax, dword [esp + 0xf4]
movzx ebp, byte [eax + 0x24]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x535699
cmp ecx, 3
jne 0x535699
movzx ecx, word [ebx]
cmp cx, 0x6374
jne 0x535699
movzx ecx, byte [ebx + 2]
cmp cl, 0x70
je 0x535858
xor ecx, ecx
xor ebx, ebx
xor ebp, ebp
mov esi, dword [esp + 0x54]
mov edi, dword [esp + 0x50]
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x88], ecx
xor ecx, ecx
test ebx, ebx
jle 0x535818
mov dword [esp], edx
mov eax, dword [esp + 0x4c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], ebp
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ecx
call fcn.00535bb0
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x28]
mov ebx, dword [esp + 0x24]
test ecx, ecx
jne 0x5357e7
lea eax, [0x802080]
cmp eax, ebx
jne 0x5357db
mov eax, edx
jne 0x53574f
mov ecx, dword [esp + 0xf4]
mov ebp, dword [ecx + 0x34]
mov esi, dword [ecx + 0x30]
test ebp, ebp
xchg edi, ebx
sete bl
xchg edi, ebx
test esi, esi
xchg esi, ebx
seta bl
xchg esi, ebx
and esi, edi
test ebp, ebp
xchg ebp, ebx
setg bl
xchg ebp, ebx
or ebp, esi
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x535780
mov dword [esp + 0x110], ebx
mov dword [esp + 0x114], eax
mov dword [esp + 0x118], 0
mov dword [esp + 0x11c], 0
nop
call fcn.00427260
add esp, 0xf0
ret
mov dword [esp + 0x64], edx
mov dword [esp + 0x88], eax
mov dword [esp + 0x5c], ebx
mov eax, dword [edx]
mov dword [esp], eax
mov byte [esp + 4], 1
call fcn.0054c880
mov eax, dword [esp + 0x64]
mov eax, dword [eax]
mov ecx, dword [esp + 0xf4]
mov edx, dword [ecx + 0x34]
mov ecx, dword [ecx + 0x30]
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp], eax
call fcn.0054f530
mov edx, dword [0xa753f8]
mov eax, dword [edx]
call eax
mov eax, dword [esp + 0x88]
mov ebx, dword [esp + 0x5c]
jmp 0x53574f
mov eax, edx
mov edx, 0
jmp 0x53571b
mov dword [esp + 0x110], 0
mov dword [esp + 0x114], 0
mov dword [esp + 0x118], ecx
mov dword [esp + 0x11c], eax
nop
call fcn.00427260
add esp, 0xf0
ret
mov dword [esp], edx
mov eax, dword [esp + 0x4c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], esi
call fcn.00536110
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
jmp 0x535703
mov eax, dword [esp + 0x78]
mov dword [esp], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 8], eax
lea eax, [0x7aef38]
mov dword [esp + 0xc], eax
call fcn.00541de0
mov ebx, dword [esp + 0x20]
mov ebp, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x70]
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0xf4]
jmp 0x5356b4
lea edi, [edx + 0x4c]
mov eax, dword [esp + 0x108]
call fcn.0044c9e0
jmp 0x53566c
lea edi, [edx + 0x44]
mov eax, dword [esp + 0x100]
call fcn.0044c9e0
mov ebx, eax
jmp 0x53564a
lea eax, [0x7713c0]
mov dword [esp], eax
mov dword [esp + 4], edi
mov eax, dword [esp + 0xf4]
mov dword [esp + 8], eax
call fcn.0040f700
jmp 0x535624
mov ebx, dword [0xa753e4]
jmp 0x53541e
mov dword [esp + 0x60], eax
lea eax, [0x75df60]
mov dword [esp], eax
call fcn.00409d00
mov edi, dword [esp + 4]
mov eax, dword [0xa8f2d0]
mov ecx, dword [esp + 0x60]
mov edx, dword [ecx + 4]
mov ecx, dword [ecx]
test eax, eax
jne 0x5359ab
mov dword [edi], ecx
mov dword [edi + 4], edx
mov ecx, dword [0xa8f2d0]
test ecx, ecx
jne 0x53598d
mov dword [edi + 8], 0
mov dword [edi + 0xc], 0
mov eax, dword [esp + 0x4c]
mov dword [esp], eax
mov ecx, dword [esp + 0x74]
mov dword [esp + 4], ecx
lea edx, [0x738a00]
mov dword [esp + 8], edx
lea edx, [0xa8f0d8]
mov dword [esp + 0xc], edx
lea edx, [0x70c680]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], edi
call fcn.00531800
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
jmp 0x53540c
lea ecx, [edi + 8]
mov eax, edi
mov edi, ecx
mov edx, eax
xor eax, eax
call fcn.0044c9e0
lea edi, [edx + 0xc]
xor eax, eax
call fcn.0044c9e0
mov edi, edx
jmp 0x53594a
mov eax, ecx
call fcn.0044c9e0
lea ecx, [edi + 4]
mov eax, edi
mov edi, ecx
mov ebx, eax
mov eax, edx
call fcn.0044c9e0
mov edi, ebx
jmp 0x535932
xor eax, eax
jmp 0x5353fc
mov dword [esp + 0x7c], ebx
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00530a30
mov eax, dword [esp + 0x10]
mov dword [esp + 0x84], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x68], ecx
mov edx, dword [esp + 8]
mov dword [esp + 0x44], edx
mov dword [esp], 0
mov dword [esp + 4], eax
call fcn.00426aa0
test eax, eax
jne 0x535a55
mov eax, dword [esp + 0x7c]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x14], ecx
mov dword [esp], 0x10
lea edx, [0x7aef00]
mov dword [esp + 4], edx
call fcn.0042f750
mov ecx, dword [esp + 0x44]
mov eax, dword [esp + 0x68]
jmp 0x5353c2
nop
call fcn.00427260
add esp, 0xf0
ret
lea edi, [esp + 0xc8]
xor eax, eax
call fcn.0044cadb
mov ecx, dword [esp + 0xf8]
mov edx, dword [ecx + 0x10]
mov ebx, dword [esp + 0xfc]
mov dword [esp], ebx
call edx
lea esi, [esp + 4]
lea edi, [esp + 0xc8]
call fcn.0044cfbe
movzx ecx, byte [esp + 0x18]
mov byte [esp + 0x43], cl
lea edi, [esp + 0xb4]
lea esi, [esp + 0xc8]
call fcn.0044cfbe
movzx ecx, byte [esp + 0x43]
test cl, cl
jne 0x535b2d
mov eax, dword [esp + 0xf8]
mov dword [esp], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 4], eax
lea edi, [esp + 8]
lea esi, [esp + 0xa0]
call fcn.0044cfbe
call fcn.005311c0
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x6c], ecx
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x48], edx
mov dword [esp], 0
mov dword [esp + 4], eax
call fcn.00426aa0
test eax, eax
jne 0x535b20
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x6c]
mov edx, eax
mov eax, ecx
mov ecx, edx
jmp 0x5353b0
nop
call fcn.00427260
add esp, 0xf0
ret
mov edi, esp
lea esi, [esp + 0xa0]
call fcn.0044cfbe
lea edi, [esp + 0x14]
lea esi, [esp + 0xb4]
call fcn.0044cfbe
call fcn.0047b960
movzx eax, byte [esp + 0x28]
test al, al
jne 0x535abb
mov eax, dword [esp + 0xf8]
mov ecx, dword [esp + 0xfc]
jmp 0x535b15
xor ecx, ecx
jmp 0x53539a
mov ecx, dword [esp + 0x94]
mov ebx, dword [esp + 0x98]
mov edx, eax
mov eax, ecx
jmp 0x53537d
lea eax, [0x730dc0]
mov dword [esp], eax
lea eax, [0x7fcaf8]
mov dword [esp + 4], eax
call fcn.004275c0
ud2
call fcn.0044b280
jmp fcn.00535270