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

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x54
mov eax, dword [0x101bf2c4]
xor eax, esp
mov dword [esp + 0x50], eax
mov eax, dword [ebp + 8]
push ebx
mov ebx, dword [ebp + 0xc]
push esi
mov dword [esp + 0xc], ecx
xor esi, esi
mov ecx, dword [ebp + 0x10]
mov dword [esp + 0x30], eax
xor eax, eax
push edi
mov dword [esp + 0x30], ebx
mov dword [esp + 0x18], ecx
cmp dword [ebx + eax*4], 0xffffffff
je 0x10191e7c
inc esi
inc eax
cmp eax, 4
jb 0x10191e6f
mov dword [esp + 0x28], esi
test esi, esi
je 0x10192281
mov eax, dword [esp + 0x10]
xor edx, edx
mov dword [esp + 0x2c], edx
test byte [eax + 0x6c], 6
jne 0x10191f37
test esi, esi
je 0x10191eae
mov edi, dword [esp + 0x18]
mov ecx, esi
xor eax, eax
rep stosd dword es:[edi], eax
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x10]
and dword [esp + 0x24], 0
mov edi, dword [esp + 0x34]
mov edx, dword [edx + 0x6c]
shl edx, 0x1b
sar edx, 0x1f
mov dword [esp + 0x2c], edx
xor eax, eax
mov dword [esp + 0xc], edi
inc eax
mov dword [esp + 0x1c], eax
test edx, edx
je 0x10191ee0
cmp eax, 1
jne 0x1019220c
and dword [esp + 0x20], 0
lea edi, [esp + 0x4c]
or eax, 0xffffffff
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
test esi, esi
je 0x10192073
mov edx, ebx
sub ecx, ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x14], edx
mov dword [esp + 0x40], ecx
mov esi, dword [ecx + edx]
xor edi, edi
xor eax, eax
mov ecx, edi
inc eax
shl eax, cl
test esi, eax
je 0x10192034
mov eax, dword [esp + 0xc]
mov eax, dword [eax + edi*4]
cmp eax, 0xffffffff
jne 0x10192006
mov eax, dword [edx]
mov dword [esp + edi*4 + 0x4c], eax
jmp 0x10192034
xor edi, edi
inc edi
cmp esi, edi
jbe 0x10191f65
mov edx, eax
push dword [ebx]
mov ecx, edx
call fcn.10191c44
push dword [ebx + edi*4]
mov ecx, edx
call fcn.10191c44
fucompp
fnstsw ax
test ah, 0x44
jp 0x10191f61
inc edi
cmp edi, esi
jb 0x10191f40
mov edx, dword [esp + 0x2c]
cmp edi, esi
mov edi, dword [esp + 0x18]
jne 0x10191f77
xor esi, esi
inc esi
and dword [edi], 0
mov dword [esp + 0x28], esi
xor ecx, ecx
test esi, esi
je 0x10191f8c
xor eax, eax
cmp dword [edi + ecx*4], eax
sete al
add edx, eax
inc ecx
cmp ecx, esi
jb 0x10191f7d
mov eax, dword [esp + 0x10]
test byte [eax + 0x6c], 4
je 0x10191fbf
test edx, edx
je 0x10191fbf
cmp edx, 1
ja 0x10191ffc
xor eax, eax
test esi, esi
je 0x10191fbd
test byte [edi + eax*4], 8
jne 0x10191ffc
cmp dword [edi + eax*4], 0
jne 0x10191fb8
mov dword [edi + eax*4], 8
inc eax
cmp eax, esi
jb 0x10191fa5
xor edx, edx
xor edi, edi
xor eax, eax
test esi, esi
je 0x10191fd8
mov ecx, dword [esp + 0x18]
test dword [ecx + eax*4], edi
jne 0x10191ffc
or edi, dword [ecx + eax*4]
inc eax
cmp eax, esi
jb 0x10191fcb
xor ebx, ebx
xor ecx, ecx
xor eax, eax
inc eax
shl eax, cl
test edi, eax
je 0x10191fe6
inc ebx
inc ecx
cmp ecx, 4
jb 0x10191fdc
lea eax, [ebx + edx]
mov ebx, dword [esp + 0x30]
cmp eax, 4
jbe 0x10191eaa
mov eax, 0x80004005
jmp 0x10192283
mov ecx, dword [ebx + 0x14]
fild dword [esp + 0x1c]
mov edx, dword [ecx + eax*4]
mov eax, dword [esp + 0x14]
mov eax, dword [eax]
mov eax, dword [ecx + eax*4]
fstp qword [esp + 0x38]
fld qword [esp + 0x38]
fmul qword [eax + 0x20]
fld qword [edx + 0x20]
fucompp
fnstsw ax
test ah, 0x44
jp 0x1019203e
mov edx, dword [esp + 0x14]
inc edi
cmp edi, 4
jb 0x10191f0d
mov esi, dword [esp + 0x28]
mov eax, dword [esp + 0x20]
cmp edi, 4
jb 0x10192067
mov edx, dword [esp + 0x14]
inc eax
mov ecx, dword [esp + 0x40]
add edx, 4
mov dword [esp + 0x20], eax
mov dword [esp + 0x14], edx
cmp eax, esi
jb 0x10191f08
mov ebx, dword [esp + 0x30]
cmp eax, esi
jb 0x10192200
xor eax, eax
mov dword [esp + 0x20], eax
test esi, esi
je 0x10192148
mov ecx, dword [esp + 0x18]
mov edx, ebx
sub ecx, ebx
mov dword [esp + 0x14], edx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x38], ecx
cmp dword [edx + ecx], 0
jne 0x101921e3
mov esi, dword [esp + 0x14]
xor edi, edi
mov eax, dword [esp + 0xc]
mov edx, dword [eax + edi*4]
cmp edx, 0xffffffff
je 0x101920d7
mov ecx, dword [ebx + 0x14]
mov eax, dword [esi]
fild dword [esp + 0x1c]
mov edx, dword [ecx + edx*4]
mov eax, dword [ecx + eax*4]
fstp qword [esp + 0x40]
fld qword [esp + 0x40]
fmul qword [eax + 0x20]
fld qword [edx + 0x20]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x10192101
cmp dword [esp + edi*4 + 0x4c], 0xffffffff
je 0x101920fb
push dword [esp + edi*4 + 0x4c]
mov ecx, ebx
call fcn.10191c44
push dword [esi]
mov ecx, ebx
call fcn.10191c44
fucompp
fnstsw ax
test ah, 0x44
jnp 0x10192101
inc edi
cmp edi, 4
jb 0x101920a5
mov esi, dword [esp + 0x28]
cmp edi, 4
mov edi, dword [esp + 0xc]
jb 0x101921d5
xor ecx, ecx
cmp dword [edi + ecx*4], 0xffffffff
jne 0x10192125
cmp dword [esp + ecx*4 + 0x4c], 0xffffffff
je 0x101921c6
inc ecx
cmp ecx, 4
jb 0x10192114
mov edx, dword [esp + 0x14]
cmp ecx, 4
jne 0x101921d9
mov eax, dword [esp + 0x20]
mov ebx, dword [esp + 0x30]
cmp eax, esi
jb 0x10192204
mov ecx, dword [esp + 0x1c]
lea eax, [esp + 0x4c]
mov edx, dword [esp + 0xc]
xor edi, edi
sub eax, ebx
mov dword [esp + 0x40], eax
mov esi, dword [edx + edi*4]
mov eax, dword [eax + ebx]
test ecx, ecx
jns 0x10192230
cmp esi, eax
je 0x10192234
mov ecx, dword [esp + 0x10]
cmp esi, 0xffffffff
je 0x1019222c
mov eax, dword [ecx + 0x14]
push ecx
push ecx
mov eax, dword [eax + esi*4]
fld qword [eax + 0x20]
fstp qword [esp]
push edi
push dword [esp + 0x30]
push dword [ecx + 0x78]
call fcn.1019630c
mov edx, eax
cmp edx, 0xffffffff
je 0x10192277
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x14]
mov ecx, dword [ecx + edx*4]
or dword [ecx + 0x3c], 0x80000
mov ecx, dword [eax + 0x14]
mov eax, dword [ecx + edx*4]
mov dword [eax + 0x38], esi
mov dword [ebx], edx
jmp 0x1019225d
mov edx, dword [esp + 0x14]
mov eax, dword [edx]
mov dword [esp + ecx*4 + 0x4c], eax
jmp 0x1019212f
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x38]
jmp 0x101921e7
mov edi, dword [esp + 0xc]
inc eax
add edx, 4
mov dword [esp + 0x20], eax
mov dword [esp + 0x14], edx
cmp eax, esi
jb 0x10192095
jmp 0x1019213c
mov edi, dword [esp + 0xc]
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
sub eax, 2
mov dword [esp + 0x1c], eax
cmp eax, 0xffffffff
jge 0x10191ed3
inc dword [esp + 0x24]
add edi, 0x10
jmp 0x10191ec8
push 1
jmp 0x10192247
cmp esi, eax
jne 0x10192238
mov dword [ebx], eax
jmp 0x10192265
cmp esi, 0xffffffff
je 0x10192241
mov dword [ebx], esi
jmp 0x10192265
mov ecx, dword [esp + 0x10]
push 0
push eax
push edi
push dword [esp + 0x30]
push dword [esp + 0x44]
call fcn.10191c64
mov dword [ebx], eax
cmp eax, 0xffffffff
je 0x1019227a
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0xc]
inc edi
add ebx, 4
cmp edi, 4
jae 0x10192281
mov eax, dword [esp + 0x40]
jmp 0x1019215c
or dword [ebx], 0xffffffff
mov eax, 0x8007000e
jmp 0x10192283
xor eax, eax
mov ecx, dword [esp + 0x5c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.101aa740
mov esp, ebp
pop ebp
ret 0xc