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

Disassembly:
sub esp, 0x54
mov eax, dword [0x1010e440]
xor eax, esp
mov dword [esp + 0x50], eax
push ebx
push esi
push edi
mov edi, dword [0x1010ef08]
xor ecx, ecx
xor eax, eax
inc ecx
test byte [edi + 8], 2
mov byte [edi + 0x9b], al
je 0x1001a773
mov bh, cl
test byte [edi + 0xc], cl
jne 0x1001a775
mov bh, al
movaps xmm0, xmmword [0x100bbf00]
mov byte [esp + 0xd], bh
movups xmmword [esp + 0x3c], xmm0
movaps xmm0, xmmword [0x100bbf10]
movups xmmword [esp + 0x4c], xmm0
test bh, bh
je 0x1001a7c2
lea esi, [esp + 0x3c]
push eax
push dword [esi]
call fcn.10011770
pop ecx
pop ecx
test al, al
je 0x1001a7b1
mov dword [edi + 0x47f0], 3
lea eax, [esp + 0x5c]
add esi, 4
push 0
cmp esi, eax
pop eax
jne 0x1001a799
xor ecx, ecx
inc ecx
mov bl, byte [edi + 8]
movaps xmm0, xmmword [0x100bbef0]
and bl, cl
mov byte [esp + 0xe], bl
movups xmmword [esp + 0x20], xmm0
mov dword [esp + 0x30], 0x201
mov dword [esp + 0x34], 0x203
mov dword [esp + 0x38], 0x204
je 0x1001a81b
lea esi, [esp + 0x20]
push eax
push dword [esi]
call fcn.10011770
pop ecx
pop ecx
test al, al
je 0x1001a80d
mov dword [edi + 0x47f0], 2
lea eax, [esp + 0x3c]
add esi, 4
push 0
cmp esi, eax
pop eax
jne 0x1001a7f5
xor edx, edx
cmp dword [edi + 0x4800], edx
je 0x1001a82c
call fcn.10010da9
xor edx, edx
cmp byte [edi + 0x4814], 0
mov word [edi + 0x47fd], 0
mov dword [edi + 0x4800], edx
mov dword [edi + 0x47dc], edx
je 0x1001a851
call fcn.10010f4e
xor edx, edx
cmp byte [edi + 0x47f9], 0
mov al, dl
mov dword [edi + 0x4858], edx
mov word [edi + 0x4814], 0
mov dword [esp + 0x14], eax
je 0x1001a89d
cmp byte [edi + 0x47f8], 0
je 0x1001a89d
cmp byte [edi + 0x47fa], 0
jne 0x1001a89d
cmp byte [edi + 0x47fb], 0
je 0x1001a89d
cmp dword [edi + 0x47c0], edx
push 1
movzx eax, al
pop ecx
cmovne eax, ecx
mov dword [esp + 0x14], eax
mov ecx, dword [edi + 0x47c0]
mov byte [edi + 0x47f9], dl
test ecx, ecx
je 0x1001a8d8
mov eax, ecx
cmp dword [eax + 0x300], eax
je 0x1001a8ce
test dword [eax + 0xc], 0x14000000
jne 0x1001a8ca
mov eax, dword [eax + 0x2f8]
test eax, eax
jne 0x1001a8af
test eax, eax
je 0x1001a8d8
cmp eax, ecx
je 0x1001a8d8
mov dword [eax + 0x310], ecx
mov eax, dword [edi + 0x47c0]
test eax, eax
je 0x1001a8f8
cmp dword [eax + 0x310], edx
je 0x1001a8f8
cmp dword [edi + 0x47f4], edx
jne 0x1001a8f8
mov dword [eax + 0x310], edx
call fcn.1001bc89
test bl, bl
jne 0x1001a905
test bh, bh
je 0x1001a921
mov eax, dword [edi + 0x47c0]
test eax, eax
je 0x1001a921
test dword [eax + 0xc], 0x40000
jne 0x1001a921
xor edx, edx
inc edx
xor ecx, ecx
mov al, dl
jmp 0x1001a928
xor ecx, ecx
xor edx, edx
mov al, cl
inc edx
mov byte [edi + 0x9d], al
test al, al
je 0x1001a943
cmp dword [edi + 0x47c4], ecx
je 0x1001a943
cmp byte [edi + 0x47fa], 0
je 0x1001a94d
mov al, cl
cmp dword [edi + 0x4914], ecx
je 0x1001a94f
mov al, dl
mov byte [edi + 0x9e], al
call fcn.1001ae19
xor ecx, ecx
mov dword [edi + 0x47d4], ecx
mov dword [edi + 0x47d0], ecx
mov dword [edi + 0x47cc], ecx
mov dword [edi + 0x47d8], ecx
cmp dword [edi + 0x47c4], ecx
je 0x1001ab17
cmp byte [edi + 0x47fa], cl
jne 0x1001ab17
cmp dword [edi + 0x4914], ecx
jne 0x1001ab17
mov eax, dword [edi + 0x47c0]
test eax, eax
je 0x1001ab17
test dword [eax + 0xc], 0x40000
jne 0x1001ab17
push ebp
mov ebp, 0x26e
lea esi, [ebp - 0x62]
test bl, bl
je 0x1001a9cf
push ecx
push esi
call fcn.10011770
pop ecx
pop ecx
test al, al
jne 0x1001a9e0
xor ecx, ecx
test bh, bh
je 0x1001aa12
push ecx
push ebp
call fcn.10011770
pop ecx
pop ecx
test al, al
je 0x1001aa12
xor eax, eax
inc eax
mov byte [esp + 0x13], al
test bl, bl
je 0x1001a9f9
push 0
push esi
call fcn.1000a07a
pop ecx
pop ecx
test al, al
jne 0x1001aa0b
test bh, bh
je 0x1001aa17
push 0
push ebp
call fcn.1000a07a
pop ecx
pop ecx
test al, al
je 0x1001aa17
xor eax, eax
inc eax
mov bl, al
jmp 0x1001aa19
mov byte [esp + 0x13], 0
xor bl, bl
cmp byte [esp + 0x12], 0
mov ebp, 0x26d
lea esi, [ebp - 0x60]
je 0x1001aa36
push 0
push esi
call fcn.10011770
pop ecx
pop ecx
test al, al
jne 0x1001aa48
test bh, bh
je 0x1001aa7e
push 0
push ebp
call fcn.10011770
pop ecx
pop ecx
test al, al
je 0x1001aa7e
xor eax, eax
inc eax
cmp byte [esp + 0x12], 0
mov bh, al
je 0x1001aa62
push 0
push esi
call fcn.1000a07a
pop ecx
pop ecx
test al, al
jne 0x1001aa77
cmp byte [esp + 0x11], 0
je 0x1001aa80
push 0
push ebp
call fcn.1000a07a
pop ecx
pop ecx
test al, al
je 0x1001aa80
xor eax, eax
lea edx, [eax + 1]
jmp 0x1001aa82
xor bh, bh
xor dl, dl
mov ecx, dword [edi + 0x3e8c]
pop ebp
test ecx, ecx
jne 0x1001aaa9
test bl, bl
je 0x1001aab1
mov eax, dword [edi + 0x47c4]
mov dword [edi + 0x47cc], eax
mov dword [edi + 0x47d8], 2
jmp 0x1001aab1
cmp ecx, dword [edi + 0x47c4]
jne 0x1001ab0d
test dl, dl
je 0x1001aaca
mov eax, dword [edi + 0x47c4]
mov dword [edi + 0x47cc], eax
xor eax, eax
inc eax
mov dword [edi + 0x47d8], eax
test ecx, ecx
je 0x1001aad6
cmp ecx, dword [edi + 0x47c4]
jne 0x1001ab0d
cmp byte [esp + 0xf], 0
jne 0x1001aae1
test bh, bh
je 0x1001aaed
mov eax, dword [edi + 0x47c4]
mov dword [edi + 0x47d0], eax
test ecx, ecx
je 0x1001aaf9
cmp ecx, dword [edi + 0x47c4]
jne 0x1001ab0d
test bl, bl
jne 0x1001ab01
test dl, dl
je 0x1001ab0d
mov eax, dword [edi + 0x47c4]
mov dword [edi + 0x47d4], eax
mov bh, byte [esp + 0xd]
xor ecx, ecx
mov bl, byte [esp + 0xe]
mov eax, dword [edi + 0x47c0]
test eax, eax
je 0x1001ab33
test dword [eax + 0xc], 0x40000
je 0x1001ab33
xor eax, eax
inc eax
mov byte [edi + 0x47fa], al
mov eax, dword [edi + 0x47e8]
test eax, eax
je 0x1001ab5b
mov dword [edi + 0x47d4], eax
mov dword [edi + 0x47d0], eax
mov dword [edi + 0x47cc], eax
mov eax, dword [edi + 0x47ec]
mov dword [edi + 0x47d8], eax
mov dword [edi + 0x47e8], ecx
call fcn.1001b010
cmp dword [edi + 0x4824], 0xffffffff
jne 0x1001ab74
call fcn.1001b744
call fcn.1001adf5
mov esi, dword [edi + 0x47c0]
xor eax, eax
mov byte [edi + 0x47f8], al
test esi, esi
je 0x1001ad7a
test dword [esi + 0xc], 0x40000
jne 0x1001ad7a
cmp dword [edi + 0x4914], eax
jne 0x1001ad7a
mov ecx, esi
call fcn.100176a9
fstp dword [esp + 0x10]
movss xmm0, dword [esp + 0x10]
mulss xmm0, dword [0x100bbe98]
mov ecx, dword [edi + 0x4824]
movss xmm2, dword [0x100bbe20]
mulss xmm0, dword [edi + 0x18]
addss xmm0, dword [0x100bbdf8]
cvttss2si eax, xmm0
movd xmm3, eax
xor eax, eax
cvtdq2ps xmm3, xmm3
movss dword [esp + 0x10], xmm3
cmp word [esi + 0x14c], ax
jne 0x1001ac83
cmp byte [esi + 0x151], al
je 0x1001ac83
cmp ecx, 0xffffffff
je 0x1001ac83
movss xmm1, dword [0x100bbebc]
test ecx, ecx
je 0x1001ac1f
inc eax
cmp ecx, eax
jne 0x1001ac4c
movaps xmm0, xmm2
jmp 0x1001ac22
movaps xmm0, xmm1
mulss xmm0, xmm3
and dword [esi + 0x90], 0
and dword [esi + 0x98], 0
addss xmm0, dword [esi + 0x78]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x88], xmm0
cmp ecx, 2
je 0x1001ac59
cmp ecx, 3
jne 0x1001ac83
movaps xmm1, xmm2
and dword [esi + 0x94], 0
mulss xmm1, xmm3
and dword [esi + 0x9c], 0
addss xmm1, dword [esi + 0x7c]
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x8c], xmm0
test bh, bh
je 0x1001ad78
push 0x27c
push 0x27b
push 0x27a
lea eax, [esp + 0x24]
push 0x279
push eax
call fcn.100113e7
xor eax, eax
push eax
push 0x273
call fcn.10011770
add esp, 0x1c
test al, al
je 0x1001acc7
movss xmm1, dword [0x100bbddc]
jmp 0x1001acec
xor eax, eax
push eax
push 0x274
call fcn.10011770
pop ecx
pop ecx
test al, al
je 0x1001ace4
movss xmm1, dword [0x100bbe68]
jmp 0x1001acec
movss xmm1, dword [0x100bbe20]
movss xmm0, dword [esp + 0x18]
xorps xmm3, xmm3
movss xmm2, dword [esp + 0x10]
ucomiss xmm0, xmm3
lahf
test ah, 0x44
jnp 0x1001ad3b
cmp byte [esi + 0xa8], 0
je 0x1001ad3b
mulss xmm0, xmm2
and dword [esi + 0x90], 0
and dword [esi + 0x98], 0
mulss xmm0, xmm1
addss xmm0, dword [esi + 0x78]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x88], xmm0
movss xmm0, dword [esp + 0x1c]
ucomiss xmm0, xmm3
lahf
test ah, 0x44
jnp 0x1001ad78
mulss xmm0, xmm2
and dword [esi + 0x94], 0
and dword [esi + 0x9c], 0
mulss xmm0, xmm1
addss xmm0, dword [esi + 0x7c]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x8c], xmm0
xor eax, eax
test bl, bl
jne 0x1001ad93
test bh, bh
jne 0x1001ad93
xor ecx, ecx
mov byte [edi + 0x47fb], al
inc ecx
mov byte [edi + 0x47fa], cl
jmp 0x1001addb
cmp byte [esp + 0x14], 0
je 0x1001addb
test byte [edi + 8], 4
je 0x1001addb
test byte [edi + 0xc], 4
je 0x1001addb
lea eax, [esp + 0x18]
push eax
call fcn.10019be3
pop ecx
mov edx, dword [eax]
mov ecx, edx
mov esi, dword [eax + 4]
mov eax, esi
mov dword [edi + 0x36a8], eax
xor eax, eax
inc eax
mov dword [edi + 0x36a4], ecx
mov dword [edi + 0xdc0], edx
mov dword [edi + 0xdc4], esi
mov byte [edi + 0x9b], al
mov ecx, dword [esp + 0x5c]
xor eax, eax
mov dword [edi + 0x4850], eax
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.10090b29
add esp, 0x54
ret