Function at 0x6c809c70
Capabilities:
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x6c80a407
sub esp, 0x74
mov edx, dword [esp + 0x78]
mov ebx, dword [edx]
mov ebp, dword [ebx]
mov dword [esp + 0x48], ebp
cmp ebp, 0xfffffff0
jne 0x6c80a24f
movzx esi, byte [ebx + 4]
xchg esi, eax
test al, al
xchg esi, eax
jne 0x6c80a24f
movzx esi, byte [ebx + 5]
xchg esi, eax
test al, al
xchg esi, eax
jne 0x6c80a24f
cmp byte [ebx + 6], 1
jne 0x6c80a24f
cmp byte [ebx + 7], 4
jne 0x6c80a24f
mov esi, dword [ebx + 0x10]
cmp dword [edx + 0x58], esi
jne 0x6c80a24f
mov ecx, dword [edx + 0x44]
mov ebx, dword [edx + 0x40]
lea ebp, [ecx - 1]
xor eax, eax
jmp 0x6c809ced
mov edx, dword [esp + 0x78]
mov eax, edi
cmp eax, ebp
jge 0x6c809eba
cmp eax, ecx
jae 0x6c80a24a
lea esi, [ebx + eax*8]
mov esi, dword [esi]
lea edi, [eax + 1]
cmp ecx, edi
jbe 0x6c80a243
lea edx, [ebx + eax*8 + 8]
cmp dword [edx], esi
jae 0x6c809ce7
mov edx, dword [esp + 0x78]
mov ecx, dword [edx + 0x38]
mov esi, dword [edx + 0x34]
lea edx, [ebx + eax*8 + 4]
mov edx, dword [edx]
cmp ecx, edx
jbe 0x6c80a23c
add edx, esi
lea ebx, [ebx + eax*8 + 0xc]
mov ebx, dword [ebx]
cmp ebx, ecx
jae 0x6c80a235
mov dword [esp + 0x20], eax
mov dword [esp + 0x44], edi
lea ecx, [ebx + esi]
cmp edi, ebp
jl 0x6c809d59
mov ecx, 3
lea ebx, [0x6c88f0ac]
jmp 0x6c809d7b
mov dword [esp + 0x5c], edx
mov dword [esp], ecx
mov eax, dword [esp + 0x78]
mov dword [esp + 4], eax
call fcn.6c80afa0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x5c]
mov ebx, eax
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x24], ecx
mov dword [esp], edx
mov eax, dword [esp + 0x78]
mov dword [esp + 4], eax
call fcn.6c80afa0
mov eax, dword [esp + 0x78]
mov ecx, dword [eax + 0x44]
mov edx, dword [eax + 0x40]
mov ebx, dword [esp + 8]
mov ebp, dword [esp + 0xc]
mov esi, dword [esp + 0x20]
cmp esi, ecx
jae 0x6c80a22e
mov dword [esp + 0x40], ebp
lea edi, [edx + esi*8]
mov edi, dword [edi]
mov ebp, dword [esp + 0x44]
cmp ecx, ebp
jbe 0x6c80a227
mov dword [esp + 0x48], edi
mov dword [esp + 0x58], ebx
lea ecx, [edx + esi*8 + 8]
mov ecx, dword [ecx]
mov dword [esp + 0x3c], ecx
mov edx, dword [eax + 0xcc]
mov dword [esp + 0x54], edx
mov ebx, dword [eax + 0xd0]
mov dword [esp + 0x44], ebx
call fcn.6c7f4540
lea eax, [0x6c897bbd]
mov dword [esp], eax
mov dword [esp + 4], 0x2f
call fcn.6c7f4e20
mov dword [esp + 4], 0
mov eax, dword [esp + 0x48]
mov dword [esp], eax
call fcn.6c7f4ca0
call fcn.6c7f4720
mov eax, dword [esp + 0x58]
mov dword [esp], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 4], eax
call fcn.6c7f4e20
lea eax, [0x6c88efc2]
mov dword [esp], eax
mov dword [esp + 4], 3
call fcn.6c7f4e20
mov dword [esp + 4], 0
mov eax, dword [esp + 0x3c]
mov dword [esp], eax
call fcn.6c7f4ca0
call fcn.6c7f4720
mov eax, dword [esp + 0x4c]
mov dword [esp], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 4], eax
call fcn.6c7f4e20
lea eax, [0x6c88ffd5]
mov dword [esp], eax
mov dword [esp + 4], 0xb
call fcn.6c7f4e20
mov eax, dword [esp + 0x54]
mov dword [esp], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 4], eax
call fcn.6c7f4e20
call fcn.6c7f4760
call fcn.6c7f45b0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x78]
xor edx, edx
jmp 0x6c80a1a8
test ecx, ecx
jbe 0x6c80a12f
mov dword [esp + 0x10], ebp
mov dword [esp + 0x44], ecx
mov eax, dword [ebx]
mov dword [esp], edx
mov dword [esp + 4], eax
call fcn.6c80a420
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx + 0x44]
mov ebx, dword [ecx + 0x40]
mov ebp, dword [esp + 0x10]
cmp edx, ebp
jbe 0x6c80a126
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x44]
lea eax, [ebx + eax*8 - 8]
mov eax, dword [eax]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.6c80a420
mov eax, dword [esp + 8]
mov dword [esp + 0x18], eax
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx + 0x50]
mov dword [esp + 0x38], edx
mov ebx, dword [esp + 0x14]
cmp edx, ebx
jne 0x6c80a052
cmp dword [ecx + 0x54], eax
jne 0x6c80a052
mov eax, dword [ecx + 0xec]
mov edx, dword [ecx + 0xe8]
test eax, eax
je 0x6c809f4c
mov dword [esp + 0x44], eax
xor ebx, ebx
jmp 0x6c809f61
add esp, 0x74
ret
mov ebp, dword [esp + 0x50]
lea edx, [ebp + 0x14]
mov ecx, dword [esp + 0x78]
mov ebx, eax
mov eax, dword [esp + 0x44]
lea edi, [esp + 0x60]
mov esi, edx
call fcn.6c81aade
mov ecx, dword [esp + 0x70]
mov ebp, dword [esp + 0x6c]
mov esi, edx
mov edx, dword [esp + 0x68]
mov eax, dword [ecx]
cmp dword [ecx + 4], ebp
jne 0x6c809fb1
mov dword [esp + 0x40], ebx
mov dword [esp + 0x50], esi
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
call fcn.6c7c29d0
movzx eax, byte [esp + 0xc]
test al, al
je 0x6c809fb1
mov eax, dword [esp + 0x40]
inc eax
mov ecx, dword [esp + 0x44]
cmp ecx, eax
jg 0x6c809f50
jmp 0x6c809f4c
mov eax, dword [esp + 0x78]
mov ecx, dword [eax + 0xe0]
mov dword [esp + 0x58], ecx
mov eax, dword [eax + 0xe4]
mov dword [esp + 0x44], eax
mov edx, dword [esp + 0x60]
mov dword [esp + 0x54], edx
mov ebx, dword [esp + 0x64]
mov dword [esp + 0x40], ebx
call fcn.6c7f4540
lea eax, [0x6c89509b]
mov dword [esp], eax
mov dword [esp + 4], 0x1e
call fcn.6c7f4e20
mov eax, dword [esp + 0x58]
mov dword [esp], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 4], eax
call fcn.6c7f4e20
lea eax, [0x6c88f21f]
mov dword [esp], eax
mov dword [esp + 4], 5
call fcn.6c7f4e20
mov eax, dword [esp + 0x54]
mov dword [esp], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 4], eax
call fcn.6c7f4e20
call fcn.6c7f4760
call fcn.6c7f45b0
lea eax, [0x6c890581]
mov dword [esp], eax
mov dword [esp + 4], 0xc
call fcn.6c7f2ef0
mov eax, dword [ecx + 0x54]
mov dword [esp + 0x34], eax
call fcn.6c7f4540
lea eax, [0x6c88f73f]
mov dword [esp], eax
mov dword [esp + 4], 7
call fcn.6c7f4e20
mov dword [esp + 4], 0
mov eax, dword [esp + 0x38]
mov dword [esp], eax
call fcn.6c7f4ca0
lea eax, [0x6c88f3d1]
mov dword [esp], eax
mov dword [esp + 4], 6
call fcn.6c7f4e20
mov dword [esp + 4], 0
mov eax, dword [esp + 0x14]
mov dword [esp], eax
call fcn.6c7f4ca0
lea eax, [0x6c88f78f]
mov dword [esp], eax
mov dword [esp + 4], 8
call fcn.6c7f4e20
mov dword [esp + 4], 0
mov eax, dword [esp + 0x34]
mov dword [esp], eax
call fcn.6c7f4ca0
lea eax, [0x6c88f3cb]
mov dword [esp], eax
mov dword [esp + 4], 6
call fcn.6c7f4e20
mov dword [esp + 4], 0
mov eax, dword [esp + 0x18]
mov dword [esp], eax
call fcn.6c7f4ca0
call fcn.6c7f4760
call fcn.6c7f45b0
lea eax, [0x6c892f17]
mov dword [esp], eax
mov dword [esp + 4], 0x16
call fcn.6c7f2ef0
mov eax, ebp
mov ecx, edx
call fcn.6c81a4b0
xor eax, eax
call fcn.6c81a4b0
mov dword [esp + 0x44], ebp
mov dword [esp + 0x58], ebx
lea eax, [edx + esi*8]
mov eax, dword [eax]
mov dword [esp + 0x48], eax
call fcn.6c7f4540
lea eax, [0x6c88ef9b]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.6c7f4e20
mov dword [esp + 4], 0
mov eax, dword [esp + 0x48]
mov dword [esp], eax
call fcn.6c7f4ca0
call fcn.6c7f4720
mov eax, dword [esp + 0x58]
mov dword [esp], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 4], eax
call fcn.6c7f4e20
call fcn.6c7f4760
call fcn.6c7f45b0
mov eax, dword [esp + 0x1c]
lea edx, [eax + 1]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x78]
cmp edx, eax
jg 0x6c80a211
mov ebx, dword [ecx + 0x38]
mov ebp, dword [ecx + 0x34]
mov esi, dword [ecx + 0x44]
mov edi, dword [ecx + 0x40]
cmp edx, esi
jae 0x6c80a208
lea esi, [edi + edx*8 + 4]
mov esi, dword [esi]
cmp ebx, esi
jbe 0x6c80a1ff
mov dword [esp + 0x1c], edx
lea eax, [ebp + esi]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.6c80afa0
mov eax, dword [esp + 0x78]
mov ecx, dword [eax + 0x44]
mov edx, dword [eax + 0x40]
mov ebx, dword [esp + 8]
mov ebp, dword [esp + 0xc]
mov esi, dword [esp + 0x1c]
cmp esi, ecx
jb 0x6c80a136
mov eax, esi
call fcn.6c81a4b0
mov eax, esi
mov ecx, ebx
call fcn.6c81a4c0
mov eax, edx
mov ecx, esi
call fcn.6c81a4b0
lea eax, [0x6c894997]
mov dword [esp], eax
mov dword [esp + 4], 0x1c
call fcn.6c7f2ef0
mov eax, ebp
call fcn.6c81a4b0
mov eax, esi
call fcn.6c81a4b0
mov eax, ebx
call fcn.6c81a4c0
mov eax, edx
call fcn.6c81a4c0
mov eax, edi
call fcn.6c81a4b0
call fcn.6c81a4b0
movzx eax, byte [ebx + 4]
mov dword [esp + 0x3c], eax
movzx ecx, byte [ebx + 5]
mov dword [esp + 0x30], ecx
movzx ebp, byte [ebx + 6]
mov dword [esp + 0x2c], ebp
movzx esi, byte [ebx + 7]
mov dword [esp + 0x28], esi
mov ebx, dword [ebx + 0x10]
mov dword [esp + 0x38], ebx
mov edi, dword [edx + 0x58]
mov dword [esp + 0x34], edi
mov edi, dword [edx + 0xcc]
mov dword [esp + 0x58], edi
mov edx, dword [edx + 0xd0]
mov dword [esp + 0x44], edx
call fcn.6c7f4540
lea eax, [0x6c8942e1]
mov dword [esp], eax
mov dword [esp + 4], 0x1a
call fcn.6c7f4e20
mov dword [esp + 4], 0
mov eax, dword [esp + 0x48]
mov dword [esp], eax
call fcn.6c7f4ca0
lea eax, [0x6c88f5a2]
mov dword [esp], eax
mov dword [esp + 4], 7
call fcn.6c7f4e20
mov dword [esp + 4], 0
mov eax, dword [esp + 0x3c]
mov dword [esp], eax
call fcn.6c7f4ac0
lea eax, [0x6c88f5a9]
mov dword [esp], eax
mov dword [esp + 4], 7
call fcn.6c7f4e20
mov dword [esp + 4], 0
mov eax, dword [esp + 0x30]
mov dword [esp], eax
call fcn.6c7f4ac0
lea eax, [0x6c88f79f]
mov dword [esp], eax
mov dword [esp + 4], 8
call fcn.6c7f4e20
mov dword [esp + 4], 0
mov eax, dword [esp + 0x2c]
mov dword [esp], eax
call fcn.6c7f4ac0
lea eax, [0x6c88fce5]
mov dword [esp], eax
mov dword [esp + 4], 0xa
call fcn.6c7f4e20
mov dword [esp + 4], 0
mov eax, dword [esp + 0x28]
mov dword [esp], eax
call fcn.6c7f4ac0
lea eax, [0x6c8926e5]
mov dword [esp], eax
mov dword [esp + 4], 0x15
call fcn.6c7f4e20
mov dword [esp + 4], 0
mov eax, dword [esp + 0x38]
mov dword [esp], eax
call fcn.6c7f4ca0
lea eax, [0x6c88f5b7]
mov dword [esp], eax
mov dword [esp + 4], 7
call fcn.6c7f4e20
mov dword [esp + 4], 0
mov eax, dword [esp + 0x34]
mov dword [esp], eax
call fcn.6c7f4ca0
lea eax, [0x6c8907a5]
mov dword [esp], eax
mov dword [esp + 4], 0xd
call fcn.6c7f4e20
mov eax, dword [esp + 0x58]
mov dword [esp], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 4], eax
call fcn.6c7f4e20
call fcn.6c7f4760
call fcn.6c7f45b0
lea eax, [0x6c894c7b]
mov dword [esp], eax
mov dword [esp + 4], 0x1d
call fcn.6c7f2ef0
nop
call fcn.6c819000
jmp fcn.6c809c70