Function at 0x69bfd0
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 0x69cd82
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.00471510
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xc]
test eax, eax
je 0x69c034
xor ecx, ecx
jmp 0x69c03c
test edx, edx
jbe 0x69cd78
mov dword [esp + 0xc0], ecx
lea edi, [esp + 0x120]
xor eax, eax
call fcn.0046360f
call fcn.0069a790
lea ecx, [0x6f1960]
mov dword [esp], ecx
call fcn.0040b7f0
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.004747a0
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
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], 0
call fcn.0069d8d0
mov ecx, dword [esp + 0x54]
test ecx, ecx
jne 0x69c930
mov eax, dword [esp + 0xc4]
mov ecx, dword [eax + 4]
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
lea edx, [0x69d890]
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.00435ef0
test eax, eax
jne 0x69c95b
mov eax, dword [esp + 0xc4]
mov ecx, dword [eax]
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
lea edx, [0x69d850]
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.00435ef0
test eax, eax
jne 0x69c94f
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, [0x6ea820]
mov dword [esp], ebx
call fcn.0040b7f0
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 [0x9b1930]
test ecx, ecx
jne 0x69c20c
mov ecx, dword [esp + 0x170]
mov dword [edi], ecx
jmp 0x69c218
mov eax, dword [esp + 0x170]
call fcn.00463350
mov dword [edi + 0xc], 0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xffffffff
lea eax, [0x79d3a8]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.004f8f70
mov eax, dword [esp + 8]
mov dword [esp + 0xcc], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x38], ecx
call fcn.0069a790
mov eax, dword [esp + 0x38]
test eax, eax
jne 0x69c930
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, [0x6b6260]
cmp ebp, esi
jne 0x69cd62
mov dword [esp + 0xc8], edx
mov dword [esp + 0x3c], ecx
mov dword [esp + 0xf4], ebx
mov eax, dword [ebx + 0x1c]
mov dword [esp + 0x58], eax
lea ecx, [0x70c640]
mov dword [esp], ecx
call fcn.0040b7f0
mov eax, dword [esp + 4]
mov dword [esp + 0x11c], eax
mov dword [eax], 0x100002
mov dword [esp + 0xec], eax
lea ecx, [0x6c6e40]
mov dword [esp], ecx
call fcn.0040b7f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x60]
mov dword [eax], ecx
mov edx, dword [esp + 0xec]
mov dword [eax + 4], edx
mov edx, dword [0x989234]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], 2
mov dword [esp + 0xc], 2
call fcn.0046f250
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x69c930
mov eax, dword [esp + 0x11c]
mov ecx, dword [eax + 0xa4]
mov dword [esp + 0x5c], ecx
lea edx, [0x6cd720]
mov dword [esp], edx
call fcn.0040b7f0
mov eax, dword [esp + 4]
mov dword [esp + 0x110], eax
lea ecx, [0x6cd7a0]
mov dword [esp], ecx
mov dword [esp + 4], 4
mov dword [esp + 8], 4
call fcn.0044b8f0
mov eax, dword [esp + 0xc]
mov dword [esp + 0xf0], eax
mov dword [esp + 0xe8], eax
mov ecx, dword [esp + 0x110]
mov dword [esp + 0xe4], ecx
lea ecx, [0x6c7540]
mov dword [esp], ecx
call fcn.0040b7f0
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 + 0xe8]
mov dword [eax + 8], ebx
mov dword [eax + 0xc], 4
mov ebx, dword [esp + 0xe4]
mov dword [eax + 0x10], ebx
mov ebx, dword [0x98923c]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], 5
mov dword [esp + 0xc], 5
call fcn.0046f250
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
call fcn.0069d6b0
mov eax, dword [esp + 0x30]
test eax, eax
jne 0x69c930
nop
mov eax, dword [esp + 0xf0]
mov eax, dword [eax]
mov dword [esp + 0x5c], eax
mov ecx, dword [esp + 0x58]
cmp eax, ecx
jne 0x69c478
lea eax, [0x6c6e40]
mov dword [esp], eax
call fcn.0040b7f0
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 [0x989248]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], 2
mov dword [esp + 0xc], 2
call fcn.0046f250
cmp dword [esp + 0x10], 1
je 0x69c90e
lea eax, [0x6cd7e0]
mov dword [esp], eax
call fcn.0040b7f0
mov eax, dword [esp + 4]
mov dword [esp + 0x114], eax
lea ecx, [0x6c7540]
mov dword [esp], ecx
call fcn.0040b7f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x64]
mov dword [eax], ecx
mov edx, dword [esp + 0x58]
mov dword [eax + 4], edx
mov ebx, dword [esp + 0xf4]
mov ebp, dword [ebx + 0x38]
mov dword [eax + 8], ebp
mov dword [eax + 0xc], 0x3000
mov dword [eax + 0x10], 0x40
mov ebp, dword [0x989250]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov dword [esp + 8], 5
mov dword [esp + 0xc], 5
call fcn.0046f250
mov eax, dword [esp + 0x10]
mov dword [esp + 0x50], eax
mov dword [esp], 0
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
call fcn.0069d510
mov eax, dword [esp + 0x50]
test eax, eax
je 0x69c52c
mov ecx, dword [esp + 0x114]
mov dword [ecx], eax
jmp 0x69c59d
lea eax, [0x6c7540]
mov dword [esp], eax
call fcn.0040b7f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x64]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov edx, dword [esp + 0xf4]
mov ebx, dword [edx + 0x38]
mov dword [eax + 8], ebx
mov dword [eax + 0xc], 0x3000
mov dword [eax + 0x10], 0x40
mov ebx, dword [0x989250]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], 5
mov dword [esp + 0xc], 5
call fcn.0046f250
mov eax, dword [esp + 0x10]
test eax, eax
je 0x69c8ec
mov ecx, dword [esp + 0x114]
mov dword [ecx], eax
lea eax, [0x6cd7e0]
mov dword [esp], eax
call fcn.0040b7f0
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 0x69c63a
mov dword [esp + 0xe0], edx
mov dword [esp + 0xdc], eax
lea ecx, [0x6c7540]
mov dword [esp], ecx
call fcn.0040b7f0
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 + 0xe0]
mov dword [eax + 8], edx
mov dword [eax + 0xc], 4
mov edx, dword [esp + 0xdc]
mov dword [eax + 0x10], edx
mov edx, dword [0x98924c]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], 5
mov dword [esp + 0xc], 5
call fcn.0046f250
cmp dword [esp + 0x10], 1
je 0x69c8ca
call fcn.0069a790
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.0069d280
mov eax, dword [esp + 0xf4]
mov word [eax + 0x44], 2
mov ecx, dword [esp + 0x114]
mov edx, dword [ecx]
mov ebx, dword [esp + 0x58]
cmp edx, ebx
je 0x69c6da
mov ebx, dword [esp + 0xcc]
movzx ebp, word [ebx + 0x12]
test bp, 1
ja 0x69c6b8
mov dword [eax + 0x1c], edx
jmp 0x69c6da
mov byte [esp + 0x17c], 0
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x180], eax
call fcn.004364e0
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 + 0xd8], ebx
lea edx, [0x6c6e40]
mov dword [esp], edx
call fcn.0040b7f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x60]
mov dword [eax], ecx
mov ecx, dword [esp + 0xd8]
mov dword [eax + 4], ecx
mov ecx, dword [0x989244]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 2
mov dword [esp + 0xc], 2
call fcn.0046f250
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x69c930
mov edx, dword [esp + 0x174]
test edx, edx
jbe 0x69cd59
mov eax, dword [esp + 0x170]
mov dword [esp + 0xd4], eax
mov eax, dword [esp + 0x10c]
mov dword [esp + 0x108], eax
lea ecx, [0x6c7540]
mov dword [esp], ecx
call fcn.0040b7f0
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 + 0xd4]
mov dword [eax + 8], ebx
mov ebx, dword [esp + 0xf4]
mov ebp, dword [ebx + 0x3c]
mov dword [eax + 0xc], ebp
mov ebp, dword [esp + 0x108]
mov dword [eax + 0x10], ebp
mov ebp, dword [0x98924c]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov dword [esp + 8], 5
mov dword [esp + 0xc], 5
call fcn.0046f250
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x69c930
lea eax, [0x6cd7e0]
mov dword [esp], eax
call fcn.0040b7f0
mov eax, dword [esp + 4]
mov dword [esp + 0x118], eax
mov dword [esp + 0x104], eax
lea ecx, [0x6c7540]
mov dword [esp], ecx
call fcn.0040b7f0
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 + 0xf4]
mov ebp, dword [ebx + 0x3c]
mov dword [eax + 8], ebp
mov dword [eax + 0xc], 2
mov ebp, dword [esp + 0x104]
mov dword [eax + 0x10], ebp
mov ebp, dword [0x989238]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov dword [esp + 8], 5
mov dword [esp + 0xc], 5
call fcn.0046f250
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
call fcn.0069d0a0
mov eax, dword [esp + 0x34]
test eax, eax
je 0x69c8a8
xor eax, eax
jmp 0x69c96e
mov byte [esp + 0x17c], 0
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x180], eax
call fcn.004364e0
add esp, 0x164
ret
mov byte [esp + 0x17c], 0
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x180], eax
call fcn.004364e0
add esp, 0x164
ret
mov byte [esp + 0x17c], 0
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x180], eax
call fcn.004364e0
add esp, 0x164
ret
mov byte [esp + 0x17c], 0
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x180], eax
call fcn.004364e0
add esp, 0x164
ret
mov byte [esp + 0x17c], 0
mov dword [esp + 0x180], 0
call fcn.004364e0
add esp, 0x164
ret
call fcn.004364e0
add esp, 0x164
ret
call fcn.004364e0
add esp, 0x164
ret
mov ecx, dword [esp + 0x44]
lea eax, [ecx + 1]
mov ecx, dword [esp + 0x3c]
cmp eax, ecx
jge 0x69ccac
mov dword [esp + 0x44], eax
mov ecx, dword [esp + 0xc8]
mov edx, dword [ecx + eax*4]
mov dword [esp + 0xd0], edx
mov dword [esp], edx
call fcn.004fc800
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
test eax, eax
jne 0x69cc8a
test edx, edx
jbe 0x69cd50
mov dword [esp + 0x100], ecx
mov eax, dword [esp + 0x10c]
mov dword [esp + 0xfc], eax
lea ecx, [0x6c7540]
mov dword [esp], ecx
call fcn.0040b7f0
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 + 0x100]
mov dword [eax + 8], ebx
mov ebx, dword [edx + 0x10]
mov dword [eax + 0xc], ebx
mov ebx, dword [esp + 0xfc]
mov dword [eax + 0x10], ebx
mov ebx, dword [0x98924c]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], 5
mov dword [esp + 0xc], 5
call fcn.0046f250
cmp dword [esp + 0x10], 1
je 0x69cc68
mov edx, dword [esp + 0xcc]
movzx ebx, word [edx + 2]
dec ebx
mov eax, dword [esp + 0x44]
cmp eax, ebx
jne 0x69ca6e
mov ebx, dword [esp + 0xf4]
mov ebp, dword [ebx + 0x38]
mov esi, dword [esp + 0xd0]
sub ebp, dword [esi + 0xc]
mov ecx, dword [esp + 0x3c]
cmp eax, ecx
jmp 0x69caa9
lea ebx, [eax + 1]
mov ecx, dword [esp + 0x3c]
cmp ecx, ebx
jbe 0x69cd49
mov ebx, dword [esp + 0xc8]
mov ebp, dword [ebx + eax*4 + 4]
mov ebp, dword [ebp + 0xc]
cmp eax, ecx
jae 0x69cd44
mov esi, dword [ebx + eax*4]
sub ebp, dword [esi + 0xc]
cmp eax, ecx
mov ebx, dword [esp + 0xf4]
mov esi, dword [esp + 0xd0]
jae 0x69cd3f
mov dword [esp + 0x4c], ebp
mov edi, dword [esp + 0xc8]
mov ebx, dword [edi + eax*4]
mov ebx, dword [ebx + 0x24]
test ebx, 0x20000000
jbe 0x69cb18
test ebx, 0x40000000
jbe 0x69caea
test ebx, 0x80000000
jbe 0x69cae2
mov ebx, 0x40
jmp 0x69cb64
test ebx, 0x20000000
jmp 0x69caf0
test ebx, 0x20000000
jbe 0x69cb18
test ebx, 0x40000000
jbe 0x69cb01
mov ebx, 0x20
jmp 0x69cb64
test ebx, 0x20000000
jbe 0x69cb18
test ebx, 0x80000000
jbe 0x69cb18
mov ebx, pe_nt_image_headers32
jmp 0x69cb64
test ebx, 0x40000000
jbe 0x69cb2f
test ebx, 0x80000000
jbe 0x69cb2f
mov ebx, 4
jmp 0x69cb64
mov ebx, dword [esi + 0x24]
test ebx, 0x20000000
jbe 0x69cb41
mov ebx, 0x10
jmp 0x69cb64
test ebx, 0x40000000
jbe 0x69cb50
mov ebx, 2
jmp 0x69cb64
test ebx, 0x80000000
jbe 0x69cb5f
mov ebx, 8
jmp 0x69cb64
mov ebx, 1
mov dword [esp + 0x48], 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
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.0069cd90
mov eax, dword [esp + 0x118]
mov dword [esp + 0xf8], eax
lea ecx, [0x6c7540]
mov dword [esp], ecx
call fcn.0040b7f0
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 + 0x4c]
mov dword [eax + 8], edx
mov edx, dword [esp + 0x48]
mov dword [eax + 0xc], edx
mov edx, dword [esp + 0xf8]
mov dword [eax + 0x10], edx
mov edx, dword [0x989238]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], 5
mov dword [esp + 0xc], 5
call fcn.0046f250
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x69c967
mov byte [esp + 0x17c], 0
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x180], eax
call fcn.004364e0
add esp, 0x164
ret
mov byte [esp + 0x17c], 0
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x180], eax
call fcn.004364e0
add esp, 0x164
ret
mov byte [esp + 0x17c], 0
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x180], eax
call fcn.004364e0
add esp, 0x164
ret
lea eax, [0x6c6e40]
mov dword [esp], eax
call fcn.0040b7f0
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 [0x989240]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], 2
mov dword [esp + 0xc], 2
call fcn.0046f250
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x69cd1d
mov byte [esp + 0x17c], 1
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x180], eax
call fcn.004364e0
add esp, 0x164
ret
mov byte [esp + 0x17c], 0
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x180], eax
call fcn.004364e0
add esp, 0x164
ret
call fcn.004633d0
call fcn.004633d0
mov eax, ebx
call fcn.004633d0
xor eax, eax
mov ecx, eax
call fcn.004633d0
xor eax, eax
mov ecx, eax
call fcn.004633d0
mov dword [esp], ebp
mov dword [esp + 4], esi
lea eax, [0x6ccda0]
mov dword [esp + 8], eax
call fcn.00408e20
xor eax, eax
mov ecx, eax
call fcn.004633d0
nop
call fcn.00461f40
jmp fcn.0069bfd0