Function at 0x613550
Capabilities:
Inspect section memory permissions
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0xe4]
cmp eax, dword [ecx + 8]
jbe 0x61434f
sub esp, 0x164
mov byte [esp + 0x17c], 0
mov dword [esp + 0x180], 0
mov eax, dword [esp + 0x168]
mov dword [esp], eax
mov eax, dword [esp + 0x16c]
mov dword [esp + 4], eax
call fcn.004717d0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xc]
test eax, eax
je 0x6135b4
xor ecx, ecx
jmp 0x6135bc
test edx, edx
jbe 0x614345
mov dword [esp + 0xc0], ecx
lea edi, [esp + 0x120]
xor eax, eax
call fcn.0046390f
call fcn.00611d40
lea ecx, [0x653520]
mov dword [esp], ecx
call fcn.0040bcc0
mov ecx, dword [esp + 4]
mov dword [esp + 0xc4], ecx
mov dword [esp + 0x120], 4
mov edx, dword [esp + 0xc0]
mov dword [esp], edx
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov byte [esp + 0x10], 0
mov dword [esp + 0x14], 0x8000004
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0
lea edx, [esp + 0x120]
mov dword [esp + 0x20], edx
mov dword [esp + 0x24], ecx
call fcn.00474900
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x54], ecx
mov dword [esp], 0
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
call fcn.00615080
mov ecx, dword [esp + 0x54]
test ecx, ecx
jne 0x613ef8
mov eax, dword [esp + 0xc4]
mov ecx, dword [eax + 4]
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
lea edx, [0x615040]
mov dword [esp + 0x70], edx
mov dword [esp + 0x74], ecx
lea ecx, [esp + 0x70]
mov dword [esp + 0xa8], ecx
lea ecx, [esp + 0x9c]
mov dword [esp], ecx
call fcn.00434b90
test eax, eax
jne 0x613f23
mov eax, dword [esp + 0xc4]
mov ecx, dword [eax]
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
lea edx, [0x615000]
mov dword [esp + 0x68], edx
mov dword [esp + 0x6c], ecx
lea ecx, [esp + 0x68]
mov dword [esp + 0x84], ecx
lea ecx, [esp + 0x78]
mov dword [esp], ecx
call fcn.00434b90
test eax, eax
jne 0x613f17
mov eax, dword [esp + 0xc4]
mov ecx, dword [eax]
mov dword [esp + 0x64], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x60], edx
lea ebx, [0x64d960]
mov dword [esp], ebx
call fcn.0040bcc0
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x174]
mov dword [edi + 4], eax
mov ecx, dword [esp + 0x178]
mov dword [edi + 8], ecx
mov ecx, dword [0x893c80]
test ecx, ecx
jne 0x61376c
mov ecx, dword [esp + 0x170]
mov dword [edi], ecx
jmp 0x613778
mov eax, dword [esp + 0x170]
call fcn.00463680
mov dword [edi + 0xc], 0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xffffffff
lea eax, [0x6cf3d4]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.004de1b0
mov eax, dword [esp + 8]
mov dword [esp + 0xcc], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x38], ecx
call fcn.00611d40
mov eax, dword [esp + 0x38]
test eax, eax
jne 0x613ef8
mov eax, dword [esp + 0xcc]
mov ecx, dword [eax + 0x20]
mov edx, dword [eax + 0x1c]
mov ebx, dword [eax + 0x18]
mov ebp, dword [eax + 0x14]
lea esi, [0x6273a0]
cmp ebp, esi
jne 0x61432f
mov dword [esp + 0xc8], edx
mov dword [esp + 0x3c], ecx
mov dword [esp + 0xd8], ebx
mov eax, dword [ebx + 0x1c]
mov dword [esp + 0x48], eax
lea ecx, [0x664240]
mov dword [esp], ecx
call fcn.0040bcc0
mov eax, dword [esp + 4]
mov dword [esp + 0x11c], eax
mov dword [eax], 0x100002
mov dword [esp + 0x108], eax
lea ecx, [0x634240]
mov dword [esp], ecx
call fcn.0040bcc0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x60]
mov dword [eax], ecx
mov edx, dword [esp + 0x108]
mov dword [eax + 4], edx
mov edx, dword [0x86d47c]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], 2
mov dword [esp + 0xc], 2
call fcn.0046f550
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x613ef8
mov eax, dword [esp + 0x11c]
mov ecx, dword [eax + 0xa4]
mov dword [esp + 0x5c], ecx
lea edx, [0x6387a0]
mov dword [esp], edx
call fcn.0040bcc0
mov eax, dword [esp + 4]
mov dword [esp + 0x110], eax
lea ecx, [0x638820]
mov dword [esp], ecx
mov dword [esp + 4], 4
mov dword [esp + 8], 4
call fcn.0044a8a0
mov eax, dword [esp + 0xc]
mov dword [esp + 0xd4], eax
mov dword [esp + 0x104], eax
mov ecx, dword [esp + 0x110]
mov dword [esp + 0x100], ecx
lea ecx, [0x6346c0]
mov dword [esp], ecx
call fcn.0040bcc0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x64]
mov dword [eax], ecx
mov edx, dword [esp + 0x5c]
add edx, 8
mov dword [esp + 0x40], edx
mov dword [eax + 4], edx
mov ebx, dword [esp + 0x104]
mov dword [eax + 8], ebx
mov dword [eax + 0xc], 4
mov ebx, dword [esp + 0x100]
mov dword [eax + 0x10], ebx
mov ebx, dword [0x86d484]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], 5
mov dword [esp + 0xc], 5
call fcn.0046f550
mov eax, dword [esp + 0x10]
mov dword [esp + 0x30], eax
mov dword [esp], 0
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0
call fcn.00614d70
mov eax, dword [esp + 0x30]
test eax, eax
jne 0x613ef8
nop
mov eax, dword [esp + 0xd4]
mov eax, dword [eax]
mov dword [esp + 0x5c], eax
mov ecx, dword [esp + 0x48]
cmp eax, ecx
jne 0x6139f8
lea eax, [0x634240]
mov dword [esp], eax
call fcn.0040bcc0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x64]
mov dword [eax], ecx
mov edx, dword [esp + 0x5c]
mov dword [eax + 4], edx
mov ebx, dword [0x86d490]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], 2
mov dword [esp + 0xc], 2
call fcn.0046f550
cmp dword [esp + 0x10], 1
je 0x613ed6
lea eax, [0x638860]
mov dword [esp], eax
call fcn.0040bcc0
mov eax, dword [esp + 4]
mov dword [esp + 0x114], eax
lea ecx, [0x6346c0]
mov dword [esp], ecx
call fcn.0040bcc0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x64]
mov dword [eax], ecx
mov edx, dword [esp + 0x48]
mov dword [eax + 4], edx
mov ebx, dword [esp + 0xd8]
mov ebp, dword [ebx + 0x38]
mov dword [eax + 8], ebp
mov dword [eax + 0xc], 0x3000
mov dword [eax + 0x10], 0x40
mov ebp, dword [0x86d498]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov dword [esp + 8], 5
mov dword [esp + 0xc], 5
call fcn.0046f550
mov eax, dword [esp + 0x10]
mov dword [esp + 0x58], eax
mov dword [esp], 0
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
call fcn.00614b50
mov eax, dword [esp + 0x58]
test eax, eax
je 0x613abc
mov ecx, dword [esp + 0x114]
mov dword [ecx], eax
jmp 0x613b2d
lea eax, [0x6346c0]
mov dword [esp], eax
call fcn.0040bcc0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x64]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov edx, dword [esp + 0xd8]
mov ebx, dword [edx + 0x38]
mov dword [eax + 8], ebx
mov dword [eax + 0xc], 0x3000
mov dword [eax + 0x10], 0x40
mov ebx, dword [0x86d498]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], 5
mov dword [esp + 0xc], 5
call fcn.0046f550
mov eax, dword [esp + 0x10]
test eax, eax
je 0x613eb4
mov ecx, dword [esp + 0x114]
mov dword [ecx], eax
lea eax, [0x638860]
mov dword [esp], eax
call fcn.0040bcc0
mov eax, dword [esp + 4]
mov dword [esp + 0x10c], eax
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x114]
cmp dword [edx], ecx
je 0x613bca
mov dword [esp + 0xfc], edx
mov dword [esp + 0xf8], eax
lea ecx, [0x6346c0]
mov dword [esp], ecx
call fcn.0040bcc0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x64]
mov dword [eax], ecx
mov edx, dword [esp + 0x40]
mov dword [eax + 4], edx
mov edx, dword [esp + 0xfc]
mov dword [eax + 8], edx
mov dword [eax + 0xc], 4
mov edx, dword [esp + 0xf8]
mov dword [eax + 0x10], edx
mov edx, dword [0x86d494]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], 5
mov dword [esp + 0xc], 5
call fcn.0046f550
cmp dword [esp + 0x10], 1
je 0x613e92
call fcn.00611d40
mov dword [esp], 0
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], 0
call fcn.00614840
mov eax, dword [esp + 0xd8]
mov word [eax + 0x44], 2
mov ecx, dword [esp + 0x114]
mov edx, dword [ecx]
mov ebx, dword [esp + 0x48]
cmp edx, ebx
je 0x613c82
mov ebx, dword [esp + 0xcc]
movzx ebp, word [ebx + 0x12]
test bp, 1
ja 0x613c60
mov dword [eax + 0x1c], edx
jmp 0x613c82
mov byte [esp + 0x17c], 0
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x180], eax
call fcn.00435160
add esp, 0x164
ret
mov edx, dword [eax + 0x10]
add edx, dword [ecx]
mov ebx, dword [esp + 0x11c]
mov dword [ebx + 0xb0], edx
mov dword [esp + 0xf4], ebx
lea edx, [0x634240]
mov dword [esp], edx
call fcn.0040bcc0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x60]
mov dword [eax], ecx
mov ecx, dword [esp + 0xf4]
mov dword [eax + 4], ecx
mov ecx, dword [0x86d48c]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 2
mov dword [esp + 0xc], 2
call fcn.0046f550
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x613ef8
mov edx, dword [esp + 0x174]
test edx, edx
jbe 0x614326
mov eax, dword [esp + 0x170]
mov dword [esp + 0xf0], eax
mov eax, dword [esp + 0x10c]
mov dword [esp + 0xec], eax
lea ecx, [0x6346c0]
mov dword [esp], ecx
call fcn.0040bcc0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x64]
mov dword [eax], ecx
mov edx, dword [esp + 0x114]
mov ebx, dword [edx]
mov dword [eax + 4], ebx
mov ebx, dword [esp + 0xf0]
mov dword [eax + 8], ebx
mov ebx, dword [esp + 0xd8]
mov ebp, dword [ebx + 0x3c]
mov dword [eax + 0xc], ebp
mov ebp, dword [esp + 0xec]
mov dword [eax + 0x10], ebp
mov ebp, dword [0x86d494]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov dword [esp + 8], 5
mov dword [esp + 0xc], 5
call fcn.0046f550
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x613ef8
lea eax, [0x638860]
mov dword [esp], eax
call fcn.0040bcc0
mov eax, dword [esp + 4]
mov dword [esp + 0x118], eax
mov dword [esp + 0xe8], eax
lea ecx, [0x6346c0]
mov dword [esp], ecx
call fcn.0040bcc0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x64]
mov dword [eax], ecx
mov edx, dword [esp + 0x114]
mov ebx, dword [edx]
mov dword [eax + 4], ebx
mov ebx, dword [esp + 0xd8]
mov ebp, dword [ebx + 0x3c]
mov dword [eax + 8], ebp
mov dword [eax + 0xc], 2
mov ebp, dword [esp + 0xe8]
mov dword [eax + 0x10], ebp
mov ebp, dword [0x86d480]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov dword [esp + 8], 5
mov dword [esp + 0xc], 5
call fcn.0046f550
mov eax, dword [esp + 0x10]
mov dword [esp + 0x34], eax
mov dword [esp], 0
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], 0
call fcn.00614580
mov eax, dword [esp + 0x34]
test eax, eax
je 0x613e70
xor eax, eax
jmp 0x613f36
mov byte [esp + 0x17c], 0
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x180], eax
call fcn.00435160
add esp, 0x164
ret
mov byte [esp + 0x17c], 0
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x180], eax
call fcn.00435160
add esp, 0x164
ret
mov byte [esp + 0x17c], 0
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x180], eax
call fcn.00435160
add esp, 0x164
ret
mov byte [esp + 0x17c], 0
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x180], eax
call fcn.00435160
add esp, 0x164
ret
mov byte [esp + 0x17c], 0
mov dword [esp + 0x180], 0
call fcn.00435160
add esp, 0x164
ret
call fcn.00435160
add esp, 0x164
ret
call fcn.00435160
add esp, 0x164
ret
mov ecx, dword [esp + 0x44]
lea eax, [ecx + 1]
mov ecx, dword [esp + 0x3c]
cmp eax, ecx
jge 0x614279
mov dword [esp + 0x44], eax
mov ecx, dword [esp + 0xc8]
mov edx, dword [ecx + eax*4]
mov dword [esp + 0xd0], edx
nop
mov ebx, dword [edx + 0x3c]
mov ebp, dword [edx + 0x10]
lea esi, [0x6cf528]
mov dword [esp], esi
mov dword [esp + 4], ebx
mov dword [esp + 0xc], 0
mov dword [esp + 8], ebp
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
call fcn.004ddbb0
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
test eax, eax
jne 0x614257
test edx, edx
jbe 0x61431d
mov dword [esp + 0xe4], ecx
mov eax, dword [esp + 0x10c]
mov dword [esp + 0xe0], eax
lea ecx, [0x6346c0]
mov dword [esp], ecx
call fcn.0040bcc0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x64]
mov dword [eax], ecx
mov edx, dword [esp + 0xd0]
mov ebx, dword [edx + 0xc]
mov ebp, dword [esp + 0x114]
add ebx, dword [ebp]
mov dword [eax + 4], ebx
mov ebx, dword [esp + 0xe4]
mov dword [eax + 8], ebx
mov ebx, dword [edx + 0x10]
mov dword [eax + 0xc], ebx
mov ebx, dword [esp + 0xe0]
mov dword [eax + 0x10], ebx
mov ebx, dword [0x86d494]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], 5
mov dword [esp + 0xc], 5
call fcn.0046f550
cmp dword [esp + 0x10], 1
je 0x614235
mov edx, dword [esp + 0xcc]
movzx ebx, word [edx + 2]
dec ebx
mov eax, dword [esp + 0x44]
cmp eax, ebx
jne 0x614063
mov ebx, dword [esp + 0xd8]
mov ebp, dword [ebx + 0x38]
mov esi, dword [esp + 0xd0]
sub ebp, dword [esi + 0xc]
mov ecx, dword [esp + 0x3c]
cmp eax, ecx
jmp 0x61409e
lea ebx, [eax + 1]
mov ecx, dword [esp + 0x3c]
cmp ecx, ebx
jbe 0x614316
mov ebx, dword [esp + 0xc8]
mov ebp, dword [ebx + eax*4 + 4]
mov ebp, dword [ebp + 0xc]
cmp eax, ecx
jae 0x614311
mov esi, dword [ebx + eax*4]
sub ebp, dword [esi + 0xc]
cmp eax, ecx
mov ebx, dword [esp + 0xd8]
mov esi, dword [esp + 0xd0]
jae 0x61430c
mov dword [esp + 0x50], ebp
mov edi, dword [esp + 0xc8]
mov ebx, dword [edi + eax*4]
mov ebx, dword [ebx + 0x24]
test ebx, 0x20000000
jbe 0x61410d
test ebx, 0x40000000
jbe 0x6140df
test ebx, 0x80000000
jbe 0x6140d7
mov ebx, 0x40
jmp 0x614159
test ebx, 0x20000000
jmp 0x6140e5
test ebx, 0x20000000
jbe 0x61410d
test ebx, 0x40000000
jbe 0x6140f6
mov ebx, 0x20
jmp 0x614159
test ebx, 0x20000000
jbe 0x61410d
test ebx, 0x80000000
jbe 0x61410d
mov ebx, pe_nt_image_headers32
jmp 0x614159
test ebx, 0x40000000
jbe 0x614124
test ebx, 0x80000000
jbe 0x614124
mov ebx, 4
jmp 0x614159
mov ebx, dword [esi + 0x24]
test ebx, 0x20000000
jbe 0x614136
mov ebx, 0x10
jmp 0x614159
test ebx, 0x40000000
jbe 0x614145
mov ebx, 2
jmp 0x614159
test ebx, 0x80000000
jbe 0x614154
mov ebx, 8
jmp 0x614159
mov ebx, 1
mov dword [esp + 0x4c], ebx
mov dword [esp], 0
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
call fcn.00614360
mov eax, dword [esp + 0x118]
mov dword [esp + 0xdc], eax
lea ecx, [0x6346c0]
mov dword [esp], ecx
call fcn.0040bcc0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x64]
mov dword [eax], ecx
mov edx, dword [esp + 0xd0]
mov edx, dword [edx + 0xc]
mov ebx, dword [esp + 0x114]
add edx, dword [ebx]
mov dword [eax + 4], edx
mov edx, dword [esp + 0x50]
mov dword [eax + 8], edx
mov edx, dword [esp + 0x4c]
mov dword [eax + 0xc], edx
mov edx, dword [esp + 0xdc]
mov dword [eax + 0x10], edx
mov edx, dword [0x86d480]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], 5
mov dword [esp + 0xc], 5
call fcn.0046f550
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x613f2f
mov byte [esp + 0x17c], 0
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x180], eax
call fcn.00435160
add esp, 0x164
ret
mov byte [esp + 0x17c], 0
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x180], eax
call fcn.00435160
add esp, 0x164
ret
mov byte [esp + 0x17c], 0
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x180], eax
call fcn.00435160
add esp, 0x164
ret
lea eax, [0x634240]
mov dword [esp], eax
call fcn.0040bcc0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xc4]
mov edx, dword [ecx + 4]
mov dword [eax], edx
mov dword [eax + 4], 0
mov edx, dword [0x86d488]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], 2
mov dword [esp + 0xc], 2
call fcn.0046f550
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x6142ea
mov byte [esp + 0x17c], 1
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x180], eax
call fcn.00435160
add esp, 0x164
ret
mov byte [esp + 0x17c], 0
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x180], eax
call fcn.00435160
add esp, 0x164
ret
call fcn.00463700
call fcn.00463700
mov eax, ebx
call fcn.00463700
xor eax, eax
mov ecx, eax
call fcn.00463700
xor eax, eax
mov ecx, eax
call fcn.00463700
mov dword [esp], ebp
mov dword [esp + 4], esi
lea eax, [0x638020]
mov dword [esp + 8], eax
call fcn.00409250
xor eax, eax
mov ecx, eax
call fcn.00463700
nop
call fcn.00462270
jmp fcn.00613550