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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x10269682
mov eax, dword fs:[0]
push eax
sub esp, 0x168
mov eax, dword [section..data]
xor eax, esp
mov dword [esp + 0x160], eax
push ebx
push esi
push edi
mov eax, dword [section..data]
xor eax, esp
push eax
lea eax, [esp + 0x178]
mov dword fs:[0], eax
mov edi, ecx
xor ebx, ebx
xor eax, eax
cmp dword [edi + 0x48], ebx
mov dword [esp + 0x100], ebx
setne al
test eax, eax
jne 0x1022e833
call fcn.1021f333
xor eax, eax
cmp dword [edi + 0x54], ebx
setne al
test eax, eax
je 0x1022e82e
lea eax, [esp + 0x18]
push eax
call fcn.1024fd93
mov esi, dword [ebp + 0xc]
lea eax, [esp + 0x14]
push 3
mov dword [esp + 0x184], ebx
mov ecx, dword [edi + 0x54]
pop ebx
push eax
push esi
mov dword [esp + 0x1c], ebx
call fcn.1022a7b8
cmp dword [esp + 0x14], ebx
jne 0x1022e88b
mov ecx, dword [ebp + 8]
lea eax, [esp + 0x18]
push eax
call fcn.1024f6c3
lea eax, [esp + 0x18]
push eax
call dword [0x102ab740]
jmp 0x1022eebe
mov edi, dword [edi + 0x54]
lea eax, [esp + 0x14]
push eax
push esi
mov ecx, edi
call fcn.1022a75a
test al, al
je 0x1022e86e
movzx eax, word [esp + 0x14]
mov ecx, 0x81
mov ebx, dword [0x102ab740]
cmp eax, ecx
jg 0x1022ebb0
je 0x1022eb57
push 2
pop ecx
cmp eax, 8
jg 0x1022e9f1
je 0x1022ee50
sub eax, ecx
je 0x1022ea66
dec eax
je 0x1022ea25
dec eax
je 0x1022e9b4
dec eax
je 0x1022e973
dec eax
je 0x1022e937
dec eax
jne 0x1022eeaa
push esi
mov ecx, edi
call fcn.1022a78e
push 7
fld qword [eax]
pop eax
fstp qword [esp + 0x10c]
mov word [esp + 0x104], ax
lea eax, [esp + 0x104]
mov byte [esp + 0x180], 0xc
push eax
lea ecx, [esp + 0x1c]
call fcn.1024fac4
lea eax, [esp + 0x104]
jmp 0x1022eb12
push esi
mov ecx, edi
call fcn.1022a78e
push 6
pop edx
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov word [esp + 0x4c], dx
mov dword [esp + 0x54], ecx
mov dword [esp + 0x58], eax
lea eax, [esp + 0x4c]
mov byte [esp + 0x180], 0xd
push eax
lea ecx, [esp + 0x1c]
call fcn.1024fac4
lea eax, [esp + 0x4c]
jmp 0x1022eb12
push esi
mov ecx, edi
call fcn.1022a78e
push 5
fld qword [eax]
pop eax
fstp qword [esp + 0xa8]
mov word [esp + 0xa0], ax
lea eax, [esp + 0xa0]
mov byte [esp + 0x180], 0xa
push eax
lea ecx, [esp + 0x1c]
call fcn.1024fac4
lea eax, [esp + 0xa0]
jmp 0x1022eb12
push esi
mov ecx, edi
call fcn.1022a78e
push 4
fld dword [eax]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
pop eax
fstp dword [esp + 0x78]
mov word [esp + 0x70], ax
lea eax, [esp + 0x70]
mov byte [esp + 0x180], 9
push eax
lea ecx, [esp + 0x1c]
call fcn.1024fac4
lea eax, [esp + 0x70]
jmp 0x1022eb12
cmp eax, 0xb
je 0x1022eb22
cmp eax, 0xc
je 0x1022eae4
cmp eax, 0xf
jle 0x1022eeaa
push 0x11
pop ecx
cmp eax, ecx
jle 0x1022eaa6
cmp eax, 0x12
je 0x1022ea66
cmp eax, 0x13
jne 0x1022eeaa
push esi
mov ecx, edi
call fcn.1022a78e
push 3
pop ecx
mov eax, dword [eax]
mov word [esp + 0xc0], cx
mov dword [esp + 0xc8], eax
lea eax, [esp + 0xc0]
mov byte [esp + 0x180], 8
push eax
lea ecx, [esp + 0x1c]
call fcn.1024fac4
lea eax, [esp + 0xc0]
jmp 0x1022eb12
push esi
mov ecx, edi
call fcn.1022a78e
push 2
pop ecx
movzx eax, word [eax]
mov word [esp + 0xf0], cx
mov word [esp + 0xf8], ax
lea eax, [esp + 0xf0]
mov byte [esp + 0x180], 7
push eax
lea ecx, [esp + 0x1c]
call fcn.1024fac4
lea eax, [esp + 0xf0]
jmp 0x1022eb12
push esi
mov ecx, edi
call fcn.1022a78e
push 0x11
pop ecx
mov al, byte [eax]
mov word [esp + 0xe0], cx
mov byte [esp + 0xe8], al
lea eax, [esp + 0xe0]
mov byte [esp + 0x180], 6
push eax
lea ecx, [esp + 0x1c]
call fcn.1024fac4
lea eax, [esp + 0xe0]
jmp 0x1022eb12
push esi
mov ecx, edi
call fcn.1022a78e
push eax
lea ecx, [esp + 0x134]
call fcn.1024f6c3
push eax
lea ecx, [esp + 0x1c]
mov byte [esp + 0x184], 1
call fcn.1024fac4
lea eax, [esp + 0x130]
mov byte [esp + 0x180], 0
push eax
call ebx
jmp 0x1022eeaa
push esi
mov ecx, edi
call fcn.1022a78e
push 0xb
lea ecx, [esp + 0x164]
movzx eax, word [eax]
push eax
call fcn.1024f7d3
push eax
lea ecx, [esp + 0x1c]
mov byte [esp + 0x184], 0xb
call fcn.1024fac4
lea eax, [esp + 0x160]
jmp 0x1022eb12
push esi
mov ecx, edi
call fcn.1022a78e
push eax
lea ecx, [esp + 0x3c]
call fcn.1008e6ab
push 8
mov byte [esp + 0x184], 2
lea ecx, [esp + 0x154]
push dword [eax]
call fcn.1024f6e6
push 3
pop ecx
mov byte [esp + 0x180], cl
lea ecx, [esp + 0x18]
push eax
call fcn.1024fac4
lea eax, [esp + 0x150]
push eax
call ebx
mov byte [esp + 0x180], 0
mov ecx, dword [esp + 0x38]
jmp 0x1022eea2
sub eax, 0x82
je 0x1022ee50
dec eax
je 0x1022edbd
dec eax
dec eax
je 0x1022ed2b
dec eax
je 0x1022ec93
dec eax
jne 0x1022eeaa
lea eax, [esp + 0x14]
mov dword [esp + 0x14], esi
push eax
mov ecx, edi
call fcn.1022af3e
test al, al
je 0x1022eeaa
mov eax, dword [edi + 0x14]
imul ecx, dword [esp + 0x14], 0x30
mov esi, dword [ecx + eax + 4]
add esi, dword [edi + 8]
lea edi, [esp + 0x114]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0x11c]
mov ebx, eax
movzx edi, ax
mov eax, dword [esp + 0x118]
mov esi, eax
shr ebx, 0x10
push ebx
push edi
movzx edx, ax
mov eax, dword [esp + 0x11c]
mov ecx, eax
shr esi, 0x10
push esi
shr ecx, 0x10
push edx
push ecx
cwde
lea ecx, [esp + 0x138]
push eax
call fcn.10207896
fld qword [esp + 0x124]
push 7
pop eax
fstp qword [esp + 0x88]
mov word [esp + 0x80], ax
lea eax, [esp + 0x80]
mov byte [esp + 0x180], 0x11
push eax
lea ecx, [esp + 0x1c]
call fcn.1024fac4
mov byte [esp + 0x180], 0
lea eax, [esp + 0x80]
mov ebx, dword [0x102ab740]
jmp 0x1022eb1a
lea eax, [esp + 0x14]
mov dword [esp + 0x14], esi
push eax
mov ecx, edi
call fcn.1022af3e
test al, al
je 0x1022eeaa
imul ecx, dword [esp + 0x14], 0x30
xor esi, esi
mov eax, dword [edi + 0x14]
fldz
fstp qword [esp + 0x28]
mov dword [esp + 0x30], esi
mov eax, dword [ecx + eax + 4]
add eax, dword [edi + 8]
mov edx, dword [eax]
mov ax, word [eax + 4]
movzx ecx, ax
push ecx
mov dword [esp + 0x48], edx
lea ecx, [esp + 0x2c]
movzx eax, word [esp + 0x48]
shr edx, 0x10
push edx
push eax
push 0x1e
push 0xc
push 0x76b
call fcn.10207896
fld qword [esp + 0x28]
push 7
pop eax
fstp qword [esp + 0x98]
mov word [esp + 0x90], ax
lea eax, [esp + 0x90]
mov byte [esp + 0x180], 0x10
push eax
lea ecx, [esp + 0x1c]
call fcn.1024fac4
lea eax, [esp + 0x90]
jmp 0x1022eb12
lea eax, [esp + 0x14]
mov dword [esp + 0x14], esi
push eax
mov ecx, edi
call fcn.1022af3e
test al, al
je 0x1022eeaa
imul ecx, dword [esp + 0x14], 0x30
xor esi, esi
mov eax, dword [edi + 0x14]
fldz
push esi
push esi
push esi
fstp qword [esp + 0x34]
mov dword [esp + 0x3c], esi
mov eax, dword [ecx + eax + 4]
add eax, dword [edi + 8]
mov edx, dword [eax]
mov ax, word [eax + 4]
movzx ecx, ax
mov dword [esp + 0x48], edx
movsx eax, word [esp + 0x48]
push ecx
shr edx, 0x10
lea ecx, [esp + 0x38]
push edx
push eax
call fcn.10207896
fld qword [esp + 0x28]
push 7
pop eax
fstp qword [esp + 0xb8]
mov word [esp + 0xb0], ax
lea eax, [esp + 0xb0]
mov byte [esp + 0x180], 0xf
push eax
lea ecx, [esp + 0x1c]
call fcn.1024fac4
lea eax, [esp + 0xb0]
jmp 0x1022eb12
lea eax, [esp + 0x14]
mov dword [esp + 0x14], esi
push eax
mov ecx, edi
call fcn.1022af3e
test al, al
je 0x1022eeaa
mov eax, dword [edi + 0x14]
imul ecx, dword [esp + 0x14], 0x30
mov esi, dword [ecx + eax + 4]
add esi, dword [edi + 8]
lea edi, [esp + 0x5c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov eax, dword [esp + 0x5c]
fild qword [esp + 0x5f]
shr eax, 8
test al, al
je 0x1022ee10
fld qword [0x10042128]
mov al, byte [esp + 0x5d]
fdiv st(1), st(0)
dec al
jne 0x1022ee08
fstp st(0)
cmp byte [esp + 0x5e], 0
jne 0x1022ee19
fchs
push 5
pop eax
fstp qword [esp + 0xd8]
mov word [esp + 0xd0], ax
lea eax, [esp + 0xd0]
mov byte [esp + 0x180], 0xe
push eax
lea ecx, [esp + 0x1c]
call fcn.1024fac4
lea eax, [esp + 0xd0]
jmp 0x1022eb12
push esi
mov ecx, edi
call fcn.1022a78e
push eax
lea ecx, [esp + 0x38]
call fcn.100ae106
push 8
mov byte [esp + 0x184], 4
lea ecx, [esp + 0x144]
push dword [eax]
call fcn.1024f6e6
push eax
lea ecx, [esp + 0x1c]
mov byte [esp + 0x184], 5
call fcn.1024fac4
lea eax, [esp + 0x140]
push eax
call ebx
mov byte [esp + 0x180], 0
mov ecx, dword [esp + 0x34]
lea ecx, [ecx - 0x10]
call fcn.10086faa
mov ecx, dword [ebp + 8]
lea eax, [esp + 0x18]
push eax
call fcn.1024f6c3
lea eax, [esp + 0x18]
push eax
call ebx
mov eax, dword [ebp + 8]
mov ecx, dword [esp + 0x178]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x160]
xor ecx, esp
call fcn.1028105c
mov esp, ebp
pop ebp
ret 8