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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x7f31c6
sub esp, 0x7c
mov eax, dword [esp + 0x80]
mov ecx, dword [eax + 8]
test ecx, ecx
jne 0x7f2da2
xor ecx, ecx
xor edx, edx
mov ebx, dword [esp + 0x88]
mov ebp, dword [esp + 0x84]
xor esi, esi
xor edi, edi
mov dword [esp + 0x50], esi
mov dword [esp + 0x38], edi
mov dword [esp + 0x44], ebx
mov dword [esp + 0x28], ebp
mov dword [esp + 0x34], ecx
mov dword [esp + 0x30], edx
mov ebx, dword [eax + 0x14]
mov dword [esp + 0x60], ebx
mov ebx, dword [eax + 0x10]
test ebx, ebx
jne 0x7f2d58
movzx ebx, byte [eax + 0x18]
test bl, bl
je 0x7f2c48
mov ecx, dword [eax + 0x28]
mov edx, dword [eax + 0x2c]
test edx, edx
jle 0x7f2c41
mov edx, dword [ecx]
cmp dword [ecx + 4], 7
jne 0x7f2c3a
cmp dword [edx], 0x6e756863
jne 0x7f2c3a
cmp word [edx + 4], 0x656b
jne 0x7f2c3a
cmp byte [edx + 6], 0x64
sete cl
test cl, cl
je 0x7f2c34
mov eax, dword [eax + 0x38]
test eax, eax
jne 0x7f2beb
mov dword [esp], ebp
mov eax, dword [esp + 0x44]
mov dword [esp + 4], eax
lea eax, [0x981e83]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
call fcn.00495f30
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x90], eax
add esp, 0x7c
ret
nop
mov dword [esp], eax
mov dword [esp + 4], ebp
mov eax, dword [esp + 0x44]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
call fcn.007daee0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
test ecx, ecx
jne 0x7f2c22
mov ebp, dword [esp + 0x28]
jmp 0x7f2baf
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x90], eax
add esp, 0x7c
ret
mov eax, esi
mov ecx, edi
jmp 0x7f2bd9
xor ecx, ecx
jmp 0x7f2ba0
xor ecx, ecx
jmp 0x7f2ba0
mov ebx, dword [eax + 0x1c]
cmp ebx, 0xffffffff
xchg ebp, ebx
setne bl
xchg ebp, ebx
mov esi, dword [eax + 0x20]
cmp esi, 0xffffffff
xchg edi, ebx
setne bl
xchg edi, ebx
or edi, ebp
xchg edi, eax
test al, al
xchg edi, eax
je 0x7f2d47
cmp edx, ebx
xchg ebp, ebx
setne bl
xchg ebp, ebx
cmp ecx, esi
xchg edi, ebx
setne bl
xchg edi, ebx
or edi, ebp
xchg edi, eax
test al, al
xchg edi, eax
jne 0x7f2c99
mov ebp, dword [esp + 0x28]
mov esi, dword [esp + 0x50]
mov edi, dword [esp + 0x38]
jmp 0x7f2b67
mov dword [esp], ebx
mov dword [esp + 4], esi
call fcn.00408630
mov eax, dword [esp + 8]
mov dword [esp + 0x5c], eax
mov ecx, dword [esp + 0x30]
mov dword [esp], ecx
mov ecx, dword [esp + 0x34]
mov dword [esp + 4], ecx
call fcn.00408630
mov eax, dword [esp + 8]
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
lea ecx, [0x8eadc0]
mov dword [esp + 0x6c], ecx
mov edx, dword [esp + 0x5c]
mov dword [esp + 0x70], edx
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], eax
lea eax, [0x99f5d8]
mov dword [esp], eax
mov dword [esp + 4], 0x2a
lea eax, [esp + 0x6c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.004c6610
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x90], eax
add esp, 0x7c
ret
mov ebp, dword [esp + 0x28]
mov esi, dword [esp + 0x50]
mov edi, dword [esp + 0x38]
jmp 0x7f2b67
mov eax, dword [ebx + 0x10]
mov ecx, dword [esp + 0x60]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
test ecx, ecx
jne 0x7f2d90
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
mov ebp, dword [esp + 0x28]
mov esi, dword [esp + 0x50]
mov edi, dword [esp + 0x38]
jmp 0x7f2b5b
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x90], eax
add esp, 0x7c
ret
mov dword [esp], eax
call fcn.007f32d0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0x80]
mov ebx, dword [edx + 0x28]
mov ebp, dword [edx + 0x2c]
test ebp, ebp
jle 0x7f31bf
mov ebp, dword [ebx]
cmp dword [ebx + 4], 7
jne 0x7f31b8
cmp dword [ebp], 0x6e756863
jne 0x7f31b8
cmp word [ebp + 4], 0x656b
jne 0x7f31b8
cmp byte [ebp + 6], 0x64
sete bl
mov dword [esp + 0x4c], eax
mov dword [esp + 0x2c], ecx
test bl, bl
je 0x7f2f77
lea ebx, [0xa4d5a0]
mov ebp, dword [esp + 0x84]
cmp ebx, ebp
jne 0x7f2f6d
mov ebx, dword [esp + 0x88]
jne 0x7f2e2f
movzx esi, byte [edx + 0x3c]
xchg esi, eax
test al, al
xchg esi, eax
je 0x7f2f2f
mov ebx, dword [esp + 0x88]
mov dword [esp + 0x48], ebx
mov dword [esp + 0x24], ebp
lea eax, [0x90b540]
mov dword [esp], eax
call fcn.0040ae10
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x24]
mov dword [eax], ecx
mov edx, dword [0xdd7ec0]
test edx, edx
jne 0x7f2f1a
mov edx, dword [esp + 0x48]
mov dword [eax + 4], edx
mov dword [esp + 0x58], eax
lea ecx, [0x902c00]
mov dword [esp], ecx
lea ecx, [0xa51d80]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004088f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x80]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x10], eax
call fcn.007f31d0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x7f2efc
xor edx, edx
xor ebx, ebx
mov ebp, dword [esp + 0x24]
mov esi, dword [esp + 0x48]
test ecx, ecx
jne 0x7f2eea
mov edi, ecx
mov ecx, ebx
mov ebx, esi
mov esi, eax
mov eax, dword [esp + 0x80]
jmp 0x7f2b31
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x90], eax
add esp, 0x7c
ret
lea eax, [0xa51d80]
test byte [eax], al
mov eax, dword [esp + 0x58]
mov dword [esp], eax
call fcn.007acaf0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
jmp 0x7f2ec6
lea edi, [eax + 4]
mov edx, eax
mov eax, dword [esp + 0x48]
call fcn.00456fe0
mov eax, edx
jmp 0x7f2e6b
mov dword [esp + 0x54], ebx
lea eax, [0x966ce0]
mov dword [esp], eax
call fcn.0040ae10
mov edi, dword [esp + 4]
mov eax, dword [0xdd7ec0]
test eax, eax
jne 0x7f2f62
mov eax, dword [esp + 0x54]
mov dword [edi], eax
mov ebx, edi
lea ebp, [0xa4e2e0]
jmp 0x7f2e36
mov eax, dword [esp + 0x54]
call fcn.00456fe0
jmp 0x7f2f55
mov ebx, 0
jmp 0x7f2e1f
mov ebx, dword [edx + 0x1c]
cmp ebx, 0xffffffff
xchg ebp, ebx
sete bl
xchg ebp, ebx
mov esi, dword [edx + 0x20]
cmp esi, 0xffffffff
xchg edi, ebx
sete bl
xchg edi, ebx
and edi, ebp
xchg edi, eax
test al, al
xchg edi, eax
je 0x7f30ab
mov ebx, dword [edx]
cmp dword [edx + 4], 7
jne 0x7f3098
cmp dword [ebx], 0x4e4e4f43
jne 0x7f3085
cmp word [ebx + 4], 0x4345
jne 0x7f3072
cmp byte [ebx + 6], 0x54
je 0x7f301a
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x88]
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
call fcn.007f31d0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x20]
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x84]
mov esi, dword [esp + 0x88]
mov edi, eax
mov eax, edx
mov edx, ecx
mov ecx, ebx
mov ebx, edi
jmp 0x7f2ed2
mov dword [esp + 0x64], 0
mov dword [esp + 0x68], 0
mov eax, dword [esp + 0x84]
mov dword [esp + 0x64], eax
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x68], ecx
lea edx, [0xa4efe0]
mov dword [esp], edx
lea edx, [esp + 0x64]
mov dword [esp + 4], edx
call fcn.00408810
mov ebp, dword [esp + 0xc]
mov ebx, dword [esp + 8]
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x80]
jmp 0x7f2fd5
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x88]
jmp 0x7f2fd5
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x88]
jmp 0x7f2fd5
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x88]
jmp 0x7f2fd5
mov dword [esp + 0x40], esi
mov dword [esp + 0x3c], ebx
lea eax, [0x91a380]
mov dword [esp], eax
call fcn.0040ae10
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x2c]
mov dword [eax], ecx
mov edx, dword [0xdd7ec0]
test edx, edx
jne 0x7f31a3
mov edx, dword [esp + 0x4c]
mov dword [eax + 4], edx
mov ecx, dword [esp + 0x3c]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x40]
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x80]
mov dword [esp], ecx
mov edx, dword [esp + 0x84]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x88]
mov dword [esp + 8], ebx
lea ebp, [0xa4df20]
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], eax
call fcn.007f31d0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x20]
test eax, eax
jne 0x7f3191
mov dword [esp + 0x34], ecx
mov dword [esp + 0x30], edx
mov eax, dword [esp + 0x80]
mov dword [esp], eax
mov ecx, dword [0xdb97f4]
mov edx, dword [0xdb97f0]
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x10], ecx
call fcn.007f31d0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x30]
add ecx, eax
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x34]
adc eax, edx
mov ebx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
jmp 0x7f2ffd
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], ebx
add esp, 0x7c
ret
lea edi, [eax + 4]
mov edx, eax
mov eax, dword [esp + 0x4c]
call fcn.00456fe0
mov eax, edx
jmp 0x7f30e0
xor ebx, ebx
jmp 0x7f2df3
xor ebx, ebx
jmp 0x7f2df3
call fcn.004557a0
jmp fcn.007f2af0