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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x74
and dword [esp + 0x3c], 0
and dword [esp + 0x2c], 0
push ebx
push esi
push edi
mov edi, ecx
mov esi, edx
mov dword [esp + 0x28], esi
mov dword [esp + 0x2c], edi
mov ebx, dword [edi + 0xc]
mov ecx, ebx
mov eax, dword [edi]
mov dword [esp + 0x14], eax
mov dword [esp + 0x34], ebx
call fcn.00f8df9f
mov ecx, ebx
mov dword [esp + 0x24], eax
call fcn.00f8df9f
mov edx, dword [esi + 0x18]
mov ecx, dword [esi + 0x1c]
mov dword [esp + 0x3c], eax
mov al, byte [esi + 4]
mov dword [esp + 0x30], ecx
mov ecx, dword [edx]
mov byte [esp + 0xf], al
mov dword [esp + 0x18], edx
mov dword [esp + 0x20], ecx
cmp al, 0x70
je 0xf770d9
mov eax, dword [esp + 0x14]
mov dword [esp + 0x1c], 1
cmp byte [eax + 0x1e], 0
jne 0xf770d9
imul eax, ecx, 0x14
mov dword [esp + 0x10], eax
mov eax, dword [esi]
mov ebx, dword [esp + 0x1c]
cmp ebx, dword [eax]
mov ebx, dword [esp + 0x34]
jg 0xf770d9
mov edi, dword [esp + 0x2c]
xor eax, eax
test ecx, ecx
jle 0xf77063
mov esi, dword [edx + 0xc]
mov edi, eax
add esi, 0xe
movzx eax, word [esi]
cmp eax, dword [esp + 0x1c]
je 0xf77053
inc edi
add esi, 0x14
cmp edi, ecx
jl 0xf77042
mov esi, dword [esp + 0x28]
mov dword [esp + 0x40], edi
mov edi, dword [esp + 0x2c]
mov eax, dword [esp + 0x40]
cmp eax, ecx
jne 0xf770c7
mov ecx, dword [esp + 0x14]
mov edx, 0x81
push 0
call fcn.00f85e08
pop ecx
mov ecx, eax
test ecx, ecx
je 0xf77185
mov edx, dword [esp + 0x18]
mov eax, 0x800
or word [ecx + 2], ax
mov eax, dword [esp + 0x1c]
mov dword [ecx + 4], eax
push ecx
mov ecx, edi
call fcn.00f85384
mov ebx, dword [esp + 0x14]
mov edx, eax
pop ecx
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x18], edx
mov eax, dword [edx + 0xc]
mov word [eax + ebx + 0xe], cx
mov ecx, dword [esp + 0x20]
mov ebx, dword [esp + 0x34]
inc ecx
add dword [esp + 0x10], 0x14
mov dword [esp + 0x20], ecx
mov eax, dword [esp + 0x14]
inc dword [esp + 0x1c]
cmp byte [eax + 0x1e], 0
je 0xf7701e
mov eax, ecx
mov ecx, dword [esp + 0x14]
shl eax, 2
mov edx, eax
mov dword [esp + 0x44], eax
call fcn.00f9a52f
mov dword [esp + 0x4c], eax
test eax, eax
je 0xf7721a
mov eax, dword [esp + 0x18]
xor edx, edx
mov ecx, dword [esp + 0x20]
mov eax, dword [eax + 0xc]
test ecx, ecx
jle 0xf77128
mov esi, dword [esp + 0x4c]
lea edi, [eax + 0xe]
movzx eax, word [edi]
lea edi, [edi + 0x14]
dec eax
mov dword [esi + edx*4], eax
inc edx
cmp edx, ecx
jl 0xf77111
mov esi, dword [esp + 0x28]
mov edi, dword [esp + 0x2c]
imul edx, ecx, 5
mov ecx, dword [esp + 0x14]
add edx, 0x10
call fcn.00f9a52f
mov edx, eax
mov dword [esp + 0x50], edx
test edx, edx
je 0xf7721f
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x20]
add eax, 0xc
and dword [esp + 0x1c], 0
add eax, edx
mov dword [edx + 8], eax
mov eax, dword [esp + 0x14]
mov word [edx + 6], cx
mov eax, dword [eax + 8]
mov eax, dword [eax + 0xc]
mov al, byte [eax + 0x49]
mov byte [edx + 4], al
test ecx, ecx
jle 0xf7721f
xor ecx, ecx
lea ebx, [edx + 0xc]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x40], ebx
jmp 0xf77191
push 7
pop eax
jmp 0xf77910
mov ebx, dword [esp + 0x40]
mov eax, dword [esp + 0x18]
mov eax, dword [eax + 0xc]
mov eax, dword [ecx + eax]
mov ecx, 0x100
mov dword [esp + 0x44], eax
test word [eax + 2], cx
je 0xf771af
mov eax, dword [eax + 0x14]
jmp 0xf771d8
mov eax, dword [esp + 0x1c]
mov edx, esi
mov ecx, dword [esp + 0x4c]
push dword [ecx + eax*4]
mov ecx, edi
call fcn.00f78508
pop ecx
mov ecx, dword [esp + 0x44]
mov edx, 0x100
or word [ecx + 2], dx
mov edx, dword [esp + 0x50]
mov dword [ecx + 0x14], eax
add dword [esp + 0x40], 4
mov dword [ebx], eax
mov eax, dword [esp + 0x18]
mov ebx, dword [esp + 0x10]
mov ecx, dword [edx + 8]
mov eax, dword [eax + 0xc]
mov al, byte [ebx + eax + 0xc]
mov ebx, dword [esp + 0x1c]
mov byte [ebx + ecx], al
mov eax, ebx
mov ecx, dword [esp + 0x10]
inc eax
add ecx, 0x14
mov dword [esp + 0x1c], eax
mov dword [esp + 0x10], ecx
cmp eax, dword [esp + 0x20]
jl 0xf7718d
mov ebx, dword [esp + 0x34]
jmp 0xf7721f
and dword [esp + 0x50], 0
mov eax, dword [esp + 0x18]
mov edx, eax
mov dword [esi + 0x18], eax
mov ecx, dword [edi]
push 0
call fcn.00f856f0
cmp byte [esp + 0x13], 0x70
pop ecx
mov ecx, dword [esp + 0x30]
mov dword [ecx + 0x18], eax
jne 0xf7724a
and dword [esp + 0x40], 0
jmp 0xf772f7
mov eax, dword [esi]
mov ecx, edi
mov eax, dword [eax]
mov dword [esp + 0x18], eax
lea edx, [eax + 1]
call fcn.00f82bda
push 0
push eax
push 0
push 7
pop edx
mov ecx, ebx
mov dword [esp + 0x4c], eax
call fcn.00f8e05a
imul edx, dword [esp + 0x24], 5
add esp, 0xc
mov ecx, dword [esp + 0x14]
add edx, 0x10
call fcn.00f9a599
mov ecx, eax
mov dword [esp + 0x38], ecx
test ecx, ecx
je 0xf772f7
mov edx, dword [esp + 0x18]
mov word [ecx + 6], dx
lea eax, [edx + 3]
lea eax, [ecx + eax*4]
mov dword [ecx + 8], eax
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 8]
mov eax, dword [eax + 0xc]
mov al, byte [eax + 0x49]
mov byte [ecx + 4], al
xor eax, eax
mov dword [esp + 0x1c], eax
test edx, edx
jle 0xf772f7
mov ebx, dword [esp + 0x38]
add ecx, 0xc
mov dword [esp + 0x44], ecx
push eax
mov edx, esi
mov ecx, edi
call fcn.00f78508
mov edx, dword [esp + 0x48]
pop ecx
mov ecx, dword [esp + 0x1c]
mov dword [edx], eax
add edx, 4
mov eax, dword [ebx + 8]
mov dword [esp + 0x44], edx
mov byte [ecx + eax], 0
mov eax, ecx
inc eax
mov dword [esp + 0x1c], eax
cmp eax, dword [esp + 0x18]
jl 0xf772c3
mov ebx, dword [esp + 0x34]
mov eax, dword [esp + 0x30]
mov edx, esi
and dword [esi + 0x1c], 0
mov ecx, edi
push 0xb1c3dc
and dword [eax + 0x24], 0
push dword [esi + 0x18]
call fcn.00f867d9
mov eax, dword [esp + 0x38]
pop ecx
pop ecx
cmp dword [eax + 0x1c], 0
jne 0xf77333
push 0xb1c3d4
push dword [eax + 0x18]
mov edx, eax
mov ecx, edi
call fcn.00f867d9
pop ecx
pop ecx
push dword [esp + 0x24]
mov edx, esi
mov ecx, edi
call fcn.00f78548
xor edx, edx
pop ecx
cmp dword [esi + 0x30], edx
je 0xf77397
cmp byte [esp + 0xf], 0x70
jne 0xf77397
mov eax, dword [edi + 0x48]
inc eax
mov dword [esp + 0x1c], eax
lea ecx, [eax + 1]
mov dword [esp + 0x44], ecx
mov dword [edi + 0x48], ecx
mov ecx, dword [esi + 0x34]
test ecx, ecx
je 0xf7736b
inc ecx
jmp 0xf7736e
mov ecx, dword [esi + 0x30]
push edx
push eax
push ecx
push 0xe
pop edx
mov ecx, ebx
call fcn.00f8e05a
add esp, 0xc
mov ecx, ebx
push 0
push dword [esp + 0x48]
push dword [esp + 0x24]
push 0xe
pop edx
call fcn.00f8e05a
add esp, 0xc
jmp 0xf7739f
mov dword [esp + 0x44], edx
mov dword [esp + 0x1c], edx
mov edx, dword [esi + 0x28]
mov ecx, dword [esp + 0x14]
call fcn.00f85acb
mov edx, dword [esi + 0x2c]
mov ecx, dword [esp + 0x14]
and dword [esi + 0x28], 0
call fcn.00f85acb
and dword [esi + 0x2c], 0
mov ecx, dword [edi + 0x48]
inc ecx
mov word [esp + 0x70], 0xa
mov dword [esp + 0x18], ecx
mov dword [esp + 0x74], ecx
mov word [esp + 0x60], 0xa
lea edx, [ecx + 2]
mov ecx, ebx
lea eax, [edx + 3]
mov dword [esp + 0x10], edx
mov dword [edi + 0x48], eax
xor eax, eax
push eax
mov dword [esp + 0x68], edx
xor edx, edx
push eax
push eax
inc edx
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], eax
call fcn.00f8e05a
mov ecx, dword [esp + 0x28]
add esp, 0xc
mov dword [esp + 0x54], eax
mov eax, dword [ebx + 0xc]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x30]
mov edx, eax
mov dword [eax + 0x30], ecx
lea ecx, [esp + 0x70]
push ecx
mov ecx, edi
call fcn.00f750c3
mov edi, dword [esp + 0x1c]
pop ecx
push 0
mov ecx, ebx
lea eax, [edi + 1]
push eax
push 1
push 7
pop edx
call fcn.00f8e05a
add esp, 0xc
mov ecx, ebx
push 0
push 0
push edi
push 4
pop edx
call fcn.00f8e05a
mov eax, dword [ebx + 0xc]
add esp, 0xc
mov edi, dword [esi + 0x30]
mov ecx, dword [esp + 0x44]
mov esi, dword [esi + 0x34]
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x28]
mov edx, eax
and dword [eax + 0x34], 0
mov dword [eax + 0x30], ecx
lea ecx, [esp + 0x60]
push ecx
mov ecx, dword [esp + 0x30]
call fcn.00f750c3
mov eax, dword [esp + 0x2c]
pop ecx
push 0
mov dword [eax + 0x30], edi
mov edi, eax
mov dword [edi + 0x34], esi
mov esi, dword [esp + 0x14]
mov ecx, ebx
inc esi
push esi
push 1
push 7
pop edx
call fcn.00f8e05a
add esp, 0xc
mov ecx, ebx
push 0
push 0
push dword [esp + 0x18]
push 4
pop edx
call fcn.00f8e05a
add esp, 0xc
lea eax, [esi + 1]
mov esi, dword [esp + 0x2c]
mov edx, edi
mov ecx, esi
push dword [esp + 0x24]
push 0xfffffffffffffff0
push dword [esp + 0x40]
push dword [esp + 0x4c]
push eax
push dword [ebp + 8]
lea eax, [esp + 0x88]
push eax
call fcn.00f77917
mov dword [esp + 0x60], eax
add esp, 0x1c
mov al, byte [esp + 0xf]
cmp al, 0x70
je 0xf77504
cmp al, 0x6f
jne 0xf7753a
push dword [esp + 0x24]
mov eax, dword [esp + 0x14]
mov edx, edi
push 0xffffffffffffffef
push dword [esp + 0x40]
add eax, 3
mov ecx, esi
push dword [esp + 0x4c]
push eax
push dword [ebp + 8]
lea eax, [esp + 0x78]
push eax
call fcn.00f77917
mov ebx, dword [esp + 0x50]
add esp, 0x1c
mov dword [esp + 0x48], eax
mov al, byte [esp + 0xf]
cmp al, 0x71
je 0xf7768c
cmp al, 0x72
je 0xf7768c
mov eax, dword [esp + 0x10]
mov ecx, ebx
push 0
push dword [esp + 0x28]
inc eax
push eax
push 0x1a
pop edx
call fcn.00f8e05a
add esp, 0xc
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x10]
mov ecx, ebx
add eax, 3
push 0
push dword [esp + 0x4c]
push eax
push 2
pop edx
call fcn.00f8e05a
add esp, 0xc
mov ecx, ebx
push 0
push 0
push dword [esp + 0x18]
push 4
pop edx
call fcn.00f8e05a
add esp, 0xc
xor edx, edx
inc edx
mov ecx, ebx
push 0
push dword [esp + 0x20]
push 0
call fcn.00f8e05a
add esp, 0xc
mov eax, dword [esp + 0x18]
mov ecx, ebx
push 0
push dword [esp + 0x28]
inc eax
push eax
push 0x1a
pop edx
call fcn.00f8e05a
add esp, 0xc
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x10]
mov ecx, ebx
add eax, 2
push 0
push dword [esp + 0x48]
push eax
push 2
pop edx
call fcn.00f8e05a
add esp, 0xc
mov ecx, ebx
push 0
push 0
push dword [esp + 0x20]
push 4
pop edx
call fcn.00f8e05a
add esp, 0xc
xor edx, edx
inc edx
mov ecx, ebx
push 0
push dword [esp + 0x3c]
push 0
call fcn.00f8e05a
add esp, 0xc
mov eax, dword [esp + 0x10]
mov ecx, ebx
push 0
push dword [esp + 0x48]
add eax, 2
push eax
push 2
pop edx
call fcn.00f8e05a
add esp, 0xc
mov dword [esp + 0x28], eax
mov ecx, ebx
push 0
push 0
push dword [esp + 0x20]
push 4
pop edx
call fcn.00f8e05a
mov eax, dword [esp + 0x24]
add esp, 0xc
inc eax
mov ecx, ebx
push 0
push dword [esp + 0x20]
push eax
push 0x1a
pop edx
call fcn.00f8e05a
add esp, 0xc
xor edx, edx
inc edx
mov ecx, ebx
push 0
push dword [esp + 0x40]
push 0
call fcn.00f8e05a
mov al, byte [esp + 0x1b]
add esp, 0xc
cmp al, 0x70
jne 0xf776bd
mov eax, dword [esp + 0x28]
mov dword [esp + 0x34], eax
mov eax, dword [ebx + 0xc]
mov dword [esp + 0x44], eax
jmp 0xf7773f
push 0
push dword [esp + 0x28]
xor edx, edx
mov ecx, ebx
push 0
inc edx
call fcn.00f8e05a
add esp, 0xc
mov dword [esp + 0x1c], eax
cmp byte [esp + 0xf], 0x72
jne 0xf775ac
mov dword [esp + 0x38], eax
mov dword [esp + 0x1c], eax
jmp 0xf7760e
cmp al, 0x72
jne 0xf776da
mov eax, dword [esp + 0x28]
mov dword [esp + 0x34], eax
inc eax
mov dword [esp + 0x28], eax
mov eax, dword [ebx + 0xc]
mov dword [esp + 0x44], eax
jmp 0xf7775a
push 0
push 0
push dword [esp + 0x20]
mov ecx, ebx
push 4
pop edx
call fcn.00f8e05a
add esp, 0xc
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x18]
mov ecx, ebx
inc eax
push 0
push dword [esp + 0x20]
push eax
push 0x1a
pop edx
call fcn.00f8e05a
add esp, 0xc
xor edx, edx
inc edx
mov ecx, ebx
push 0
push dword [esp + 0x40]
push 0
call fcn.00f8e05a
mov eax, dword [esp + 0x34]
add esp, 0xc
cmp byte [esp + 0xf], 0x6f
mov dword [esp + 0x28], eax
mov eax, dword [ebx + 0xc]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x1c], eax
jne 0xf7775a
mov eax, dword [esp + 0x10]
mov ecx, ebx
push 0
push dword [esp + 0x4c]
add eax, 3
push eax
push 2
pop edx
call fcn.00f8e05a
add esp, 0xc
push 0
push 0
push dword [esp + 0x18]
mov ecx, ebx
push 4
pop edx
call fcn.00f8e05a
mov eax, dword [esp + 0x1c]
add esp, 0xc
inc eax
mov ecx, ebx
push 0
push dword [esp + 0x3c]
push eax
push 0x1a
pop edx
call fcn.00f8e05a
add esp, 0xc
xor edx, edx
inc edx
mov ecx, ebx
push 0
push dword [esp + 0x40]
push 0
call fcn.00f8e05a
mov edx, dword [esp + 0x60]
add esp, 0xc
mov ecx, ebx
push dword [ebx + 0xc]
call fcn.00f8dde5
mov eax, dword [esp + 0x1c]
pop ecx
push 0
inc eax
mov ecx, ebx
push eax
push 0
push 7
pop edx
call fcn.00f8e05a
mov eax, dword [esp + 0x1c]
add esp, 0xc
inc eax
mov ecx, ebx
push 0
push eax
push 0
push 7
pop edx
call fcn.00f8e05a
add esp, 0xc
mov ecx, ebx
push 0
push dword [esp + 0x5c]
push dword [esp + 0x20]
push 2
pop edx
call fcn.00f8e05a
add esp, 0xc
mov ecx, ebx
push 0
push dword [esp + 0x60]
push dword [esp + 0x18]
push 2
pop edx
call fcn.00f8e05a
mov eax, dword [esp + 0x24]
add esp, 0xc
inc eax
mov ecx, ebx
push 0
push dword [esp + 0x20]
push eax
push 0x1a
pop edx
call fcn.00f8e05a
mov eax, dword [esp + 0x1c]
add esp, 0xc
inc eax
push 0
push dword [esp + 0x3c]
push eax
push 0x1a
pop edx
mov ecx, ebx
call fcn.00f8e05a
mov edx, dword [esp + 0x48]
add esp, 0xc
mov ecx, ebx
call fcn.00f8df87
xor eax, eax
push eax
push eax
push eax
push 0x17
pop edx
call fcn.00f8e05a
add esp, 0xc
mov edx, eax
mov ecx, ebx
push 0xfffffffffffffff1
push dword [esp + 0x50]
call fcn.00f8dae5
push 0xfffffffffffffff0
push dword [esp + 0x5c]
mov ecx, ebx
push dword [esp + 0x30]
push dword [esp + 0x7c]
push dword [esp + 0x90]
push 0x18
pop edx
call fcn.00f8dfec
add esp, 0x1c
mov ecx, ebx
push dword [esp + 0x44]
push dword [esp + 0x38]
push dword [esp + 0x30]
push 0x19
pop edx
call fcn.00f8e05a
mov ecx, dword [esp + 0x4c]
add esp, 0xc
test ecx, ecx
je 0xf778b7
mov eax, dword [esp + 0x20]
inc eax
cmp eax, dword [esi + 0x38]
jle 0xf778b7
mov dword [esi + 0x38], eax
mov dword [esi + 0x3c], ecx
mov edx, dword [esp + 0x24]
mov ecx, ebx
call fcn.00f8df87
mov eax, dword [ebp + 8]
cmp byte [eax], 5
jne 0xf778ea
mov eax, dword [esp + 0x30]
mov ecx, eax
mov eax, dword [eax + 0x1c]
jmp 0xf778da
mov ecx, eax
mov eax, dword [ecx + 0x1c]
test eax, eax
jne 0xf778d5
push dword [ecx]
xor edx, edx
mov ecx, esi
call fcn.00f789c9
pop ecx
mov esi, dword [edi + 0x1c]
test esi, esi
je 0xf77907
mov ebx, dword [esp + 0x14]
mov edx, esi
mov ecx, ebx
call fcn.00f79a47
push esi
push ebx
call fcn.00f9a712
pop ecx
pop ecx
mov eax, dword [esp + 0x30]
mov dword [edi + 0x1c], eax
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret