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

Disassembly:
sub esp, 0x54
mov eax, dword [0x100bd040]
xor eax, esp
mov dword [esp + 0x4c], eax
push ebx
push ebp
push esi
push edi
mov edi, dword [0x100c353c]
xor ecx, ecx
xor eax, eax
inc ecx
test byte [edi + 8], 2
mov byte [edi + 0x97], al
je 0x100126e7
mov bl, cl
test byte [edi + 0xc], cl
jne 0x100126e9
mov bl, al
movaps xmm0, xmmword [0x100b1d80]
mov byte [esp + 0x12], bl
movups xmmword [esp + 0x3c], xmm0
movaps xmm0, xmmword [0x100b1d90]
movups xmmword [esp + 0x4c], xmm0
test bl, bl
je 0x10012732
lea esi, [esp + 0x3c]
mov ecx, dword [esi]
xor edx, edx
call fcn.1000e01c
test al, al
je 0x10012724
mov dword [edi + 0x47dc], 3
add esi, 4
lea eax, [esp + 0x5c]
cmp esi, eax
jne 0x1001270d
xor ecx, ecx
inc ecx
mov bh, byte [edi + 8]
movaps xmm0, xmmword [0x100b1d70]
and bh, cl
mov byte [esp + 0x13], bh
movups xmmword [esp + 0x20], xmm0
mov dword [esp + 0x30], 0x201
mov dword [esp + 0x34], 0x203
mov dword [esp + 0x38], 0x204
je 0x10012787
lea esi, [esp + 0x20]
mov ecx, dword [esi]
xor edx, edx
call fcn.1000e01c
test al, al
je 0x1001277c
mov dword [edi + 0x47dc], 2
add esi, 4
lea eax, [esp + 0x3c]
cmp esi, eax
jne 0x10012765
xor edx, edx
cmp dword [edi + 0x47ec], edx
je 0x10012798
call fcn.10012d45
xor edx, edx
cmp byte [edi + 0x4800], 0
mov word [edi + 0x47e9], 0
mov dword [edi + 0x47ec], edx
mov dword [edi + 0x47c8], edx
je 0x100127bd
call fcn.10013483
xor edx, edx
cmp byte [edi + 0x47e5], 0
mov al, dl
mov dword [edi + 0x4844], edx
mov word [edi + 0x4800], 0
mov dword [esp + 0x14], eax
je 0x10012809
cmp byte [edi + 0x47e4], 0
je 0x10012809
cmp byte [edi + 0x47e6], 0
jne 0x10012809
cmp byte [edi + 0x47e7], 0
je 0x10012809
cmp dword [edi + 0x47a8], edx
push 1
movzx eax, al
pop ecx
cmovne eax, ecx
mov dword [esp + 0x14], eax
mov ecx, dword [edi + 0x47a8]
mov byte [edi + 0x47e5], dl
test ecx, ecx
je 0x10012844
mov eax, ecx
cmp dword [eax + 0x308], eax
je 0x1001283a
test dword [eax + 8], 0x14000000
jne 0x10012836
mov eax, dword [eax + 0x300]
test eax, eax
jne 0x1001281b
test eax, eax
je 0x10012844
cmp eax, ecx
je 0x10012844
mov dword [eax + 0x318], ecx
mov eax, dword [edi + 0x47a8]
test eax, eax
je 0x10012864
cmp dword [eax + 0x318], edx
je 0x10012864
cmp dword [edi + 0x47e0], edx
jne 0x10012864
mov dword [eax + 0x318], edx
call fcn.10013e3b
test bh, bh
jne 0x10012871
test bl, bl
je 0x1001288d
mov eax, dword [edi + 0x47a8]
test eax, eax
je 0x1001288d
test dword [eax + 8], 0x40000
jne 0x1001288d
xor edx, edx
inc edx
xor ecx, ecx
mov al, dl
jmp 0x10012894
xor ecx, ecx
xor edx, edx
mov al, cl
inc edx
mov byte [edi + 0x99], al
test al, al
je 0x100128af
cmp dword [edi + 0x47ac], ecx
je 0x100128af
cmp byte [edi + 0x47e6], 0
je 0x100128b9
mov al, cl
cmp dword [edi + 0x4900], ecx
je 0x100128bb
mov al, dl
mov byte [edi + 0x9a], al
call fcn.1001372f
xor edx, edx
mov dword [edi + 0x47c0], edx
mov dword [edi + 0x47bc], edx
mov dword [edi + 0x47b8], edx
mov dword [edi + 0x47b4], edx
mov dword [edi + 0x47c4], edx
cmp dword [edi + 0x47ac], edx
je 0x10012a84
cmp byte [edi + 0x47e6], dl
jne 0x10012a84
cmp dword [edi + 0x4900], edx
jne 0x10012a84
mov eax, dword [edi + 0x47a8]
test eax, eax
je 0x10012a84
test dword [eax + 8], 0x40000
jne 0x10012a84
mov ebp, 0x26e
lea esi, [ebp - 0x62]
test bh, bh
je 0x1001293c
mov ecx, esi
call fcn.1000e01c
test al, al
jne 0x1001294d
test bl, bl
je 0x10012984
xor edx, edx
mov ecx, ebp
call fcn.1000e01c
test al, al
je 0x10012984
xor eax, eax
inc eax
cmp byte [esp + 0x13], 0
mov bh, al
je 0x10012969
push 0
xor edx, edx
mov ecx, esi
call fcn.1000e041
pop ecx
test al, al
jne 0x1001297d
test bl, bl
je 0x10012986
push 0
xor edx, edx
mov ecx, ebp
call fcn.1000e041
pop ecx
test al, al
je 0x10012986
xor eax, eax
inc eax
mov bl, al
jmp 0x10012988
xor bh, bh
xor bl, bl
cmp byte [esp + 0x13], 0
mov ebp, 0x26d
lea esi, [ebp - 0x60]
je 0x100129a4
xor edx, edx
mov ecx, esi
call fcn.1000e01c
test al, al
jne 0x100129bf
cmp byte [esp + 0x12], 0
je 0x100129ed
xor edx, edx
mov ecx, ebp
call fcn.1000e01c
test al, al
je 0x100129ed
cmp byte [esp + 0x13], 0
je 0x100129cf
push 0
xor edx, edx
mov ecx, esi
call fcn.1000e041
pop ecx
test al, al
jne 0x100129e6
cmp byte [esp + 0x12], 0
je 0x100129ed
push 0
xor edx, edx
mov ecx, ebp
call fcn.1000e041
pop ecx
test al, al
je 0x100129ed
xor eax, eax
lea edx, [eax + 1]
jmp 0x100129ef
xor dl, dl
mov ecx, dword [edi + 0x3e74]
test ecx, ecx
jne 0x10012a15
test bl, bl
je 0x10012a1d
mov eax, dword [edi + 0x47ac]
mov dword [edi + 0x47b4], eax
mov dword [edi + 0x47c4], 2
jmp 0x10012a1d
cmp ecx, dword [edi + 0x47ac]
jne 0x10012a7a
test dl, dl
je 0x10012a36
mov eax, dword [edi + 0x47ac]
mov dword [edi + 0x47c0], eax
xor eax, eax
inc eax
mov dword [edi + 0x47c4], eax
test ecx, ecx
je 0x10012a42
cmp ecx, dword [edi + 0x47ac]
jne 0x10012a7a
test bh, bh
je 0x10012a52
mov eax, dword [edi + 0x47ac]
mov dword [edi + 0x47b8], eax
test ecx, ecx
je 0x10012a5e
cmp ecx, dword [edi + 0x47ac]
jne 0x10012a7a
mov bh, byte [esp + 0x13]
xor edx, edx
test bl, bl
mov bl, byte [esp + 0x12]
je 0x10012a84
mov eax, dword [edi + 0x47ac]
mov dword [edi + 0x47bc], eax
jmp 0x10012a84
mov bl, byte [esp + 0x12]
xor edx, edx
mov bh, byte [esp + 0x13]
mov eax, dword [edi + 0x47a8]
test eax, eax
je 0x10012aa0
test dword [eax + 8], 0x40000
je 0x10012aa0
xor eax, eax
inc eax
mov byte [edi + 0x47e6], al
mov eax, dword [edi + 0x47d4]
test eax, eax
je 0x10012ad5
mov ecx, dword [edi + 0x47d8]
test cl, 1
je 0x10012abd
mov dword [edi + 0x47c0], eax
jmp 0x10012acf
mov dword [edi + 0x47bc], eax
mov dword [edi + 0x47b8], eax
mov dword [edi + 0x47b4], eax
mov dword [edi + 0x47c4], ecx
mov dword [edi + 0x47d4], edx
call fcn.10012dc3
cmp dword [edi + 0x4810], 0xffffffff
jne 0x10012aee
call fcn.100133e6
call fcn.10012320
mov esi, dword [edi + 0x47a8]
xor edx, edx
mov byte [edi + 0x47e4], dl
test esi, esi
je 0x10012ccb
test dword [esi + 8], 0x40000
jne 0x10012ccb
cmp dword [edi + 0x4900], edx
jne 0x10012ccb
mov ecx, esi
call fcn.100021ae
xorps xmm4, xmm4
mulss xmm0, dword [0x100b1c00]
mov ecx, dword [edi + 0x4810]
movss xmm2, dword [0x100b1aa4]
mulss xmm0, dword [edi + 0x18]
addss xmm0, dword [0x100b1a5c]
cvttss2si eax, xmm0
movd xmm3, eax
cvtdq2ps xmm3, xmm3
cmp word [esi + 0x148], dx
jne 0x10012bec
cmp byte [esi + 0x14d], dl
je 0x10012bec
cmp ecx, 0xffffffff
je 0x10012bec
movss xmm1, dword [0x100b1cc8]
test ecx, ecx
je 0x10012b8c
xor eax, eax
inc eax
cmp ecx, eax
jne 0x10012bb7
movaps xmm0, xmm2
jmp 0x10012b8f
movaps xmm0, xmm1
mulss xmm0, xmm3
and dword [esi + 0x8c], edx
and dword [esi + 0x94], edx
addss xmm0, dword [esi + 0x74]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x84], xmm0
cmp ecx, 2
je 0x10012bc4
cmp ecx, 3
jne 0x10012bec
movaps xmm1, xmm2
and dword [esi + 0x90], edx
mulss xmm1, xmm3
and dword [esi + 0x98], edx
addss xmm1, dword [esi + 0x78]
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x88], xmm0
test bl, bl
je 0x10012ccb
push 0x27c
push 0x27b
push 0x27a
mov edx, 0x279
lea ecx, [esp + 0x24]
call fcn.1000dc9f
add esp, 0xc
xor edx, edx
mov ecx, 0x273
call fcn.1000e01c
test al, al
je 0x10012c2e
movss xmm2, dword [0x100b1a24]
jmp 0x10012c46
xor edx, edx
mov ecx, 0x274
call fcn.1000e01c
test al, al
je 0x10012c46
movss xmm2, dword [0x100b1b98]
movss xmm0, dword [esp + 0x18]
ucomiss xmm0, xmm4
lahf
test ah, 0x44
jnp 0x10012c8c
cmp byte [esi + 0xa4], 0
je 0x10012c8c
mulss xmm0, xmm3
and dword [esi + 0x8c], 0
and dword [esi + 0x94], 0
mulss xmm0, xmm2
addss xmm0, dword [esi + 0x74]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x84], xmm0
movss xmm0, dword [esp + 0x1c]
ucomiss xmm0, xmm4
lahf
test ah, 0x44
jnp 0x10012cc9
mulss xmm0, xmm3
and dword [esi + 0x90], 0
and dword [esi + 0x98], 0
mulss xmm0, xmm2
addss xmm0, dword [esi + 0x78]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x88], xmm0
xor edx, edx
test bh, bh
jne 0x10012ce4
test bl, bl
jne 0x10012ce4
xor eax, eax
mov byte [edi + 0x47e7], dl
inc eax
mov byte [edi + 0x47e6], al
jmp 0x10012d2a
cmp byte [esp + 0x14], 0
je 0x10012d2a
test byte [edi + 8], 4
je 0x10012d2a
test byte [edi + 0xc], 4
je 0x10012d2a
lea ecx, [esp + 0x18]
call fcn.10012420
mov edx, dword [eax]
mov ecx, edx
mov esi, dword [eax + 4]
mov eax, esi
mov dword [edi + 0x36a0], eax
xor eax, eax
inc eax
mov dword [edi + 0x369c], ecx
mov dword [edi + 0xdb8], edx
mov dword [edi + 0xdbc], esi
mov byte [edi + 0x97], al
mov ecx, dword [esp + 0x5c]
xor eax, eax
mov dword [edi + 0x483c], eax
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.10069b82
add esp, 0x54
ret