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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x2bc
push ebx
push esi
push edi
lea eax, [esp + 0x4c]
mov esi, ecx
push 4
xor ebx, ebx
push eax
mov dword [esp + 0xd4], esi
mov dword [esp + 0x28], ebx
call fcn.00f05830
lea ecx, [esp + 0x40]
push 4
push ecx
call fcn.00f05830
add esp, 0x10
lea edx, [esp + 0x4c]
push edx
lea eax, [ebp + 8]
push eax
lea ecx, [esi + 0x58]
call fcn.00f3d5c0
test eax, eax
mov edi, dword [ebp + 8]
je 0xf2dfc7
mov ecx, dword [esp + 0x4c]
mov edx, dword [ecx]
mov eax, dword [edx + 0xc]
call eax
cmp eax, 2
je 0xf2df84
mov ecx, dword [ebp + 0x34]
mov edx, dword [ebp + 0x38]
mov dword [ecx], ebx
mov dword [edx], 0xc000000d
jmp 0xf309c7
mov ecx, dword [esp + 0x4c]
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
push eax
call fcn.00f39560
add esp, 4
test eax, eax
jne 0xf2e10d
mov eax, dword [ebp + 0x34]
mov ecx, dword [ebp + 0x38]
mov dword [eax], ebx
mov eax, dword [esp + 0x38]
cmp eax, ebx
mov dword [ecx], 0xc0000022
je 0xf309db
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
jmp 0xf309d7
lea ecx, [esp + 0x15c]
call fcn.00f6fb20
lea eax, [esp + 0x15c]
push eax
push ebx
push 0x40
push ebx
push edi
lea ecx, [esp + 0x1b8]
call fcn.00f6ed70
mov ecx, eax
call fcn.00f6f580
push eax
mov ecx, esi
call fcn.00f246f0
test eax, eax
jne 0xf2e04d
mov eax, dword [esp + 0x184]
cmp eax, ebx
mov ecx, dword [ebp + 0x34]
mov dword [ecx], 1
je 0xf2e022
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov dword [esp + 0x184], ebx
mov eax, dword [esp + 0x164]
cmp eax, ebx
je 0xf2e03c
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x164], ebx
lea ecx, [esp + 0x15c]
call fcn.00f3a110
jmp 0xf309c7
lea ecx, [esp + 0x15c]
call fcn.00f72010
mov ecx, eax
call fcn.00f6f8b0
test eax, eax
lea ecx, [esp + 0x15c]
je 0xf2e07e
mov eax, dword [ebp + 0x34]
mov dword [eax], 1
call fcn.00f1c2d0
jmp 0xf309c7
lea eax, [esp + 0x40]
push eax
call fcn.00f6fe40
push eax
lea ecx, [esp + 0x3c]
call fcn.00f1be30
mov eax, dword [esp + 0x40]
cmp eax, ebx
je 0xf2e0a2
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov ecx, dword [esp + 0x38]
mov eax, dword [ecx]
mov edx, dword [eax + 0x18]
call edx
cmp eax, 2
je 0xf2e101
mov ecx, dword [esp + 0x38]
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
test eax, eax
je 0xf2e0f6
mov eax, dword [ebp + 0x34]
mov ecx, dword [ebp + 0x38]
mov dword [eax], ebx
mov dword [ecx], 0xc000000d
lea ecx, [esp + 0x15c]
call fcn.00f1c2d0
lea ecx, [esp + 0x38]
call fcn.00f3afe0
lea ecx, [esp + 0x4c]
call fcn.00f3afe0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x34
mov edx, dword [ebp + 0x34]
mov dword [edx], 1
jmp 0xf2e0cf
lea ecx, [esp + 0x15c]
call fcn.00f1c2d0
lea eax, [esp + 0x34]
push 4
push eax
call fcn.00f05830
mov eax, dword [esp + 0x54]
add esp, 8
cmp eax, ebx
je 0xf2e152
mov ecx, dword [eax]
lea edx, [esp + 0x34]
push edx
push 0x100834e8
push eax
mov eax, dword [ecx]
call eax
test eax, eax
je 0xf2e152
mov ecx, dword [ebp + 0x34]
mov edx, dword [ebp + 0x38]
mov dword [ecx], ebx
lea ecx, [esp + 0x34]
mov dword [edx], 0xc0000229
call fcn.00f3afe0
jmp 0xf2e0db
push 0x200
push ebx
mov dword [esp + 0xe8], 0xff
call fcn.00f05960
mov ecx, dword [ebp + 0x2c]
add esp, 8
cmp ecx, ebx
mov dword [esp + 0xd8], eax
mov dword [esp + 0xdc], ebx
mov word [eax], bx
je 0xf2e1bb
cmp dword [ecx + 4], ebx
je 0xf2e1bb
push ecx
lea eax, [esp + 0xf4]
push eax
call fcn.00f06670
mov eax, dword [eax]
add esp, 8
push eax
lea ecx, [esp + 0xdc]
call fcn.00f04100
lea ecx, [esp + 0xf0]
call fcn.00f04240
mov eax, dword [esp + 0xd8]
cmp dword [0x10176748], ebx
je 0xf2e20d
push 0x100789f8
sub esp, 0xc
mov ecx, esp
push eax
mov dword [ecx], ebx
mov dword [ecx + 4], ebx
mov dword [ecx + 8], ebx
call fcn.00f04100
push 0x10083a44
lea ecx, [esp + 0x104]
call fcn.00f188e0
mov ecx, eax
call fcn.00f17830
mov ecx, eax
call fcn.00f09750
mov ecx, eax
call fcn.00f17830
lea ecx, [esp + 0xf0]
call fcn.00f17740
lea ecx, [esp + 0x148]
call fcn.00f39ff0
lea ecx, [esp + 0x148]
push ecx
push edi
mov ecx, esi
call fcn.00f21240
lea ecx, [esp + 0x148]
call fcn.00f6f580
push eax
lea edx, [esp + 0xe8]
push edx
call fcn.00f06670
add esp, 8
lea eax, [esp + 0xd4]
push eax
lea ecx, [esp + 0x44]
push ecx
lea ecx, [esi + 0x154]
mov dword [esp + 0xdc], ebx
mov dword [esp + 0x48], edi
call fcn.00f1ec00
mov eax, dword [esp + 0xd4]
cmp eax, ebx
mov edi, dword [0x100781b0]
je 0xf2e27d
push eax
call edi
mov eax, dword [ebp + 0xc]
cmp eax, ebx
je 0xf2e287
push eax
call edi
lea edx, [ebp + 8]
add esi, 0xe8
push edx
mov ecx, esi
call fcn.00f1de80
mov edi, eax
neg edi
sbb edi, edi
lea eax, [esp + 0x18]
push 4
add edi, 1
push eax
mov dword [esp + 0x158], edi
call fcn.00f05830
add esp, 8
cmp edi, ebx
je 0xf306e5
lea ecx, [esp + 0x40]
push ecx
call fcn.00f70000
add esp, 4
push eax
lea ecx, [esp + 0x1c]
call fcn.00f1be30
mov eax, dword [esp + 0x40]
cmp eax, ebx
je 0xf2e2e6
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
lea ecx, [esp + 0x18]
push ecx
lea edx, [ebp + 8]
push edx
mov ecx, esi
call fcn.00f3d6f0
mov eax, dword [esp + 0xd8]
sub esp, 0xc
mov ecx, esp
push eax
mov dword [ecx], ebx
mov dword [ecx + 4], ebx
mov dword [ecx + 8], ebx
call fcn.00f04100
mov ecx, dword [esp + 0x24]
call fcn.00f70090
mov ecx, dword [esp + 0x38]
cmp ecx, ebx
mov dword [esp + 0x94], ebx
mov dword [esp + 0x98], ebx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ebx
mov dword [esp + 0x68], ebx
mov dword [esp + 0x58], 0x10078348
mov word [esp + 0x54], bx
mov word [esp + 0x56], bx
je 0xf2e9bd
mov edx, dword [ecx]
mov edx, dword [edx + 0x30]
lea eax, [esp + 0xd0]
push eax
call edx
mov ecx, dword [esp + 0xd0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x10]
lea edx, [esp + 0xc8]
push edx
call eax
lea ecx, [esp + 0x14]
push 4
push ecx
call fcn.00f05830
mov ecx, dword [esp + 0xd0]
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
add esp, 8
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x18]
push eax
call edx
test eax, eax
jne 0xf2e46e
cmp dword [esp + 0x50], ebx
je 0xf2e3b9
lea ecx, [esp + 0x94]
call fcn.00f1d1c0
jmp 0xf2e42b
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx]
mov edx, dword [edx + 0x1c]
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x144]
push eax
call edx
mov ecx, eax
call fcn.00f6f580
push eax
lea eax, [esp + 0x8c]
push eax
call fcn.00f06670
add esp, 8
push eax
lea ecx, [esp + 0x9c]
call fcn.00f1cf60
mov eax, dword [esp + 0x84]
cmp eax, ebx
je 0xf2e41f
push eax
call fcn.00f05a10
add esp, 4
mov dword [esp + 0x84], ebx
mov dword [esp + 0x88], ebx
mov dword [esp + 0x8c], ebx
lea ecx, [esp + 0x140]
call fcn.00f3a110
mov eax, dword [esp + 0x14]
cmp eax, ebx
je 0xf2e43f
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x14], ebx
lea eax, [esp + 0x14]
push 4
push eax
call fcn.00f05830
mov ecx, dword [esp + 0xd0]
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
add esp, 8
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x18]
push eax
call edx
test eax, eax
je 0xf2e3a5
lea ecx, [esp + 0x14]
call fcn.00f3afe0
mov eax, dword [0x10176670]
mov edi, dword [0x10078204]
mov esi, dword [eax + 0x39c]
push 2
push ebx
push ebx
lea ecx, [esp + 0x108]
push ecx
call edi
mov edx, dword [ebp + 8]
push eax
push edx
call edi
push eax
call esi
test eax, eax
jne 0xf2e989
mov dword [esp + 0x3c], 0x100
mov dword [esp + 0x90], 1
jmp 0xf2e4c0
mov eax, dword [esp + 0xc]
cmp eax, ebx
je 0xf2e4d9
push eax
call fcn.00f05a10
add esp, 4
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ebx
mov esi, dword [esp + 0x3c]
push esi
call fcn.00f058c0
mov edx, dword [esp + 0x94]
mov ecx, dword [0x10176670]
add esp, 4
neg edx
push ebx
sbb edx, edx
and edx, dword [ebp + 0x2c]
mov dword [esp + 0x10], eax
push edx
mov dword [esp + 0x18], esi
mov edi, dword [ecx + 0x414]
mov ecx, dword [ebp + 0x24]
push 1
push ecx
push esi
push eax
lea ecx, [esp + 0x1d4]
call fcn.00f6fea0
mov ecx, eax
call fcn.00f6f580
mov edx, dword [esp + 0x114]
push eax
push ebx
push ebx
push ebx
push edx
call edi
cmp eax, 0xc0000004
je 0xf2e964
cmp eax, 0x80000005
je 0xf2e964
cmp eax, 0xc0000023
je 0xf2e964
cmp eax, ebx
jne 0xf2e973
cmp dword [esp + 0x90], ebx
je 0xf2e56c
mov dword [esp + 0x90], ebx
lea eax, [esp + 0x14]
push 4
push eax
call fcn.00f05830
mov eax, dword [ebp + 0x24]
add eax, 0xfffffffe
add esp, 8
cmp eax, 0x23
ja 0xf2e939
movzx ecx, byte [eax + 0x1002ea08]
jmp dword [ecx*4 + 0x1002e9f4]
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0xc]
push eax
call fcn.00f70200
mov eax, dword [esp + 0x14]
cmp eax, ebx
je 0xf2e4c0
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x14], ebx
jmp 0xf2e4c0
add esi, 0x100
mov dword [esp + 0x3c], esi
jmp 0xf2e4c0
mov eax, dword [esp + 0xfc]
mov ecx, dword [0x10176670]
mov edx, dword [ecx + 0x234]
push eax
call edx
mov eax, dword [esp + 0xc8]
cmp eax, ebx
je 0xf2e9a3
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0xc8], ebx
mov eax, dword [esp + 0xd0]
cmp eax, ebx
je 0xf2e9bd
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0xd0], ebx
lea ecx, [esp + 0x114]
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], ebx
call fcn.00f39ff0
push 0x200
mov esi, 0xff
push ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], esi
call fcn.00f05960
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], ebx
mov word [eax], bx
lea eax, [esp + 0x2c]
push 4
push eax
call fcn.00f05830
push 0x200
push ebx
mov dword [esp + 0xa4], esi
call fcn.00f05960
mov ecx, dword [ebp + 0x24]
mov edi, eax
lea eax, [ecx - 2]
add esp, 0x18
cmp eax, 0x23
mov dword [esp + 0x84], edi
mov dword [esp + 0x88], ebx
mov word [edi], bx
ja 0xf30747
movzx edx, byte [eax + 0x1002ea40]
jmp dword [edx*4 + 0x1002ea2c]
mov ecx, dword [esp + 0xcc]
lea eax, [ebp + 8]
push eax
add ecx, 0xe8
call fcn.00f1e580
mov esi, eax
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0xf30711
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x18], ebx
mov ecx, dword [esi]
cmp ecx, ebx
mov dword [esp + 0x18], ecx
je 0xf30727
mov eax, dword [ecx]
push ecx
mov ecx, dword [eax + 4]
call ecx
mov ecx, dword [esp + 0x18]
mov edx, dword [ebp + 0x34]
mov dword [edx], ebx
call fcn.00f70360
test eax, eax
je 0xf30867
mov edi, dword [ebp + 0x38]
mov dword [edi], 0xc000000f
jmp 0xf3091a
cmp dword [esp + 0x38], ebx
je 0xf30758
mov eax, dword [ebp + 0x34]
mov dword [eax], 1
jmp 0xf30797
mov ecx, dword [ebp + 0x38]
mov eax, dword [ebp + 0x10]
cmp eax, ebx
mov edx, dword [ebp + 0x34]
mov esi, dword [ebp + 0x14]
mov dword [ecx], 0xc000000d
mov dword [edx], ebx
je 0xf30784
mov ecx, dword [ebp + 0x18]
push ebx
push ecx
push esi
push eax
call dword [0x10078170]
push eax
call dword [0x101768f8]
mov edx, dword [ebp + 8]
mov ecx, dword [esp + 0xcc]
push ebx
push ebx
push esi
push edx
call fcn.00f245d0
push edi
call fcn.00f05a10
mov eax, dword [esp + 0x28]
add esp, 4
cmp eax, ebx
je 0xf307b4
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x24], ebx
mov eax, dword [esp + 0x28]
cmp eax, ebx
je 0xf307d1
push eax
call fcn.00f05a10
add esp, 4
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebx
lea ecx, [esp + 0x114]
call fcn.00f3a110
lea ecx, [esp + 0x78]
call fcn.00f1d220
lea ecx, [esp + 0x78]
call fcn.00f1d220
mov eax, dword [esp + 0x78]
cmp eax, ebx
je 0xf30809
mov esi, dword [eax + 4]
push eax
call fcn.00f16c80
add esp, 4
cmp esi, ebx
mov eax, esi
jne 0xf307f7
mov eax, dword [esp + 0x68]
cmp eax, ebx
je 0xf3081a
push eax
call fcn.00f05a10
add esp, 4
mov eax, dword [esp + 0xc]
cmp eax, ebx
je 0xf30833
push eax
call fcn.00f05a10
add esp, 4
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ebx
lea ecx, [esp + 0x94]
call fcn.00f1d1c0
mov eax, dword [esp + 0x94]
cmp eax, ebx
je 0xf3096b
mov edi, edi
mov esi, dword [eax + 4]
push eax
call fcn.00f16c80
add esp, 4
cmp esi, ebx
mov eax, esi
jne 0xf30850
jmp 0xf3096b
cmp byte [ebp + 0x30], bl
je 0xf30875
mov ecx, dword [esp + 0x18]
call fcn.00f70280
mov ecx, dword [esp + 0x18]
call fcn.00f703d0
test eax, eax
je 0xf3089e
mov eax, dword [esp + 0x150]
mov edi, dword [ebp + 0x38]
neg eax
sbb eax, eax
and eax, 0x40000009
add eax, 0x80000006
mov dword [edi], eax
jmp 0xf3091a
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0x54]
push eax
mov dword [esp + 0x58], ebx
mov dword [esp + 0x5c], ebx
call fcn.00f70440
mov esi, dword [ebp + 0x20]
mov eax, dword [esp + 0x58]
cmp esi, eax
jae 0xf308df
mov ecx, dword [esp + 0x18]
call fcn.00f70190
mov edi, dword [ebp + 0x38]
cmp esi, eax
sbb ecx, ecx
and ecx, 0x3fffffff
add ecx, 0x80000005
mov dword [edi], ecx
jmp 0xf30909
mov edx, dword [esp + 0x54]
push eax
mov eax, dword [ebp + 0x1c]
push edx
push eax
call fcn.00f05850
mov ecx, dword [ebp + 0x18]
mov edx, dword [esp + 0x64]
mov dword [ecx + 4], edx
mov ecx, dword [esp + 0x24]
add esp, 0xc
call fcn.00f702f0
mov edi, dword [ebp + 0x38]
mov dword [edi], ebx
mov eax, dword [esp + 0x54]
cmp eax, ebx
je 0xf3091a
push eax
call fcn.00f05a10
add esp, 4
mov eax, dword [esp + 0xd4]
cmp eax, ebx
mov esi, dword [0x100781a8]
je 0xf3092e
push eax
call esi
mov eax, dword [ebp + 0xc]
cmp eax, ebx
je 0xf30938
push eax
call esi
mov eax, dword [ebp + 0x10]
cmp eax, ebx
mov esi, dword [ebp + 0x14]
je 0xf30956
mov ecx, dword [ebp + 0x18]
push ebx
push ecx
push esi
push eax
call dword [0x10078170]
push eax
call dword [0x101768f8]
mov edx, dword [edi]
mov eax, dword [ebp + 8]
mov ecx, dword [esp + 0xcc]
push ebx
push edx
push esi
push eax
call fcn.00f245d0
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0xf3097f
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x18], ebx
mov eax, dword [esp + 0xe4]
cmp eax, ebx
je 0xf30993
push eax
call fcn.00f05a10
add esp, 4
lea ecx, [esp + 0x148]
call fcn.00f3a110
mov eax, dword [esp + 0xd8]
cmp eax, ebx
je 0xf309b3
push eax
call fcn.00f05a10
add esp, 4
mov eax, dword [esp + 0x34]
cmp eax, ebx
je 0xf309c7
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x34], ebx
mov eax, dword [esp + 0x38]
cmp eax, ebx
je 0xf309db
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x38], ebx
mov eax, dword [esp + 0x4c]
cmp eax, ebx
je 0xf309eb
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x34