Function at 0x10112680
Capabilities:
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
sub esp, 0xb0
push ebp
mov ebp, ecx
mov eax, dword [ebp + 0x4f5bc]
test eax, eax
je 0x101126af
push 2
push 0
push 0x200
push dword [ebp + 0x4f5c0]
call eax
add esp, 0x10
test eax, eax
jne 0x101134c7
movss xmm0, dword [ebp + 0x658]
xorps xmm3, xmm3
ucomiss xmm0, xmm3
lahf
test ah, 0x44
jnp 0x101126d1
movups xmm0, xmmword [ebp + 0x658]
movups xmmword [ebp + 0x2481c], xmm0
cmp dword [ebp + 0x680], 0
movss xmm2, dword [0x10273dd8]
push ebx
push esi
push edi
jne 0x10112707
cmp dword [ebp + 0x684], 0
je 0x10112e38
movss xmm0, dword [ebp + 0x2480c]
ucomiss xmm0, xmm2
lahf
test ah, 0x44
jp 0x10112b74
push 0x40
lea eax, [esp + 0x34]
push 0
push eax
call fcn.101dfee0
mov ecx, dword [ebp + 0x5ec]
add esp, 0xc
mov eax, dword [ebp + 0x5f4]
movzx esi, word [ebp + 0x14]
add eax, ecx
mov edx, dword [ebp + 0x5e8]
cmp eax, esi
movsd xmm1, qword [esp + 0x68]
movsd xmm2, qword [esp + 0x60]
cmovb esi, eax
mov eax, dword [ebp + 0x5f0]
movsd xmm3, qword [esp + 0x58]
add eax, edx
movsd xmm4, qword [esp + 0x50]
movsd xmm5, qword [esp + 0x48]
movsd xmm6, qword [esp + 0x40]
movsd xmm7, qword [esp + 0x38]
movsd xmm0, qword [esp + 0x30]
mov dword [esp + 0x20], ecx
movzx ecx, word [ebp + 0x16]
cmp eax, ecx
mov dword [esp + 0x1c], esi
cmovb ecx, eax
mov eax, dword [ebp + 0x5ec]
mov dword [esp + 0x24], ecx
cmp eax, esi
jae 0x10112aee
lea edi, [eax + 8]
movsd qword [esp + 0x70], xmm1
mov dword [esp + 0x10], edi
movsd qword [esp + 0x78], xmm2
movsd qword [esp + 0x80], xmm3
movsd qword [esp + 0x88], xmm4
movsd qword [esp + 0x90], xmm5
movsd qword [esp + 0x98], xmm6
movsd qword [esp + 0xa0], xmm7
movsd qword [esp + 0xa8], xmm0
nop dword [eax]
mov ebx, edx
mov dword [esp + 0x18], edx
cmp ebx, ecx
jae 0x10112acf
nop
mov dword [esp + 0x14], eax
xorps xmm0, xmm0
mov edx, eax
movups xmmword [esp + 0x30], xmm0
movups xmmword [esp + 0x40], xmm0
cmp eax, edi
jae 0x10112944
nop dword [eax + eax]
cmp edx, esi
jae 0x1011290b
lea eax, [ebx + 8]
mov esi, ebx
mov dword [esp + 0x28], esi
cmp ebx, eax
jae 0x101128fa
nop dword [eax]
cmp esi, ecx
jae 0x101128f6
mov eax, dword [ebp + 0x24788]
xor ebx, ebx
mov edi, dword [ebp + 0x188]
add eax, 0xffffffe7
mov dword [esp + 0x2c], eax
nop dword [eax]
test edi, edi
je 0x10112899
push esi
push edx
mov ecx, ebp
call fcn.10106cd0
movzx edi, word [ebp + 0x492bc]
mov ecx, ebp
push esi
mov esi, dword [esp + 0x18]
mov ebx, eax
push esi
call fcn.10106cd0
movzx edx, word [ebp + 0x1e]
mov ecx, edi
mov edi, dword [ebp + 0x188]
shr esi, cl
imul esi, edx
mov edx, dword [esp + 0x28]
shr edx, cl
add esi, edx
mov edx, dword [esp + 0x14]
lea ecx, [eax + esi*4]
mov esi, dword [esp + 0x28]
jmp 0x101128a5
movzx eax, word [ebp + 0x16]
imul eax, edx
add eax, esi
lea ecx, [ebx + eax*4]
mov eax, dword [ebp + 8]
movzx eax, word [eax + ecx*2]
movzx ecx, ax
cmp ecx, dword [esp + 0x2c]
ja 0x10112a6d
sub ecx, dword [ebp + ebx*4 + 0x20768]
mov eax, 0
cmovns eax, ecx
inc dword [esp + ebx*4 + 0x40]
add dword [esp + ebx*4 + 0x30], eax
test edi, edi
jne 0x101128de
inc ebx
cmp ebx, 4
jb 0x10112850
mov ebx, dword [esp + 0x18]
inc esi
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x28], esi
lea eax, [ebx + 8]
cmp esi, eax
jb 0x10112830
mov edi, dword [esp + 0x10]
mov esi, dword [esp + 0x1c]
inc edx
mov dword [esp + 0x14], edx
cmp edx, edi
jb 0x10112810
movsd xmm7, qword [esp + 0xa0]
movsd xmm6, qword [esp + 0x98]
movsd xmm5, qword [esp + 0x90]
movsd xmm4, qword [esp + 0x88]
movsd xmm3, qword [esp + 0x80]
movsd xmm2, qword [esp + 0x78]
movsd xmm1, qword [esp + 0x70]
mov eax, dword [esp + 0x30]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x1039cc50]
mov eax, dword [esp + 0x34]
addsd xmm0, qword [esp + 0xa8]
movsd qword [esp + 0xa8], xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x1039cc50]
mov eax, dword [esp + 0x38]
addsd xmm7, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
movsd qword [esp + 0xa0], xmm7
addsd xmm0, qword [eax*8 + 0x1039cc50]
mov eax, dword [esp + 0x3c]
addsd xmm6, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
movsd qword [esp + 0x98], xmm6
addsd xmm0, qword [eax*8 + 0x1039cc50]
mov eax, dword [esp + 0x40]
addsd xmm5, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
movsd qword [esp + 0x90], xmm5
addsd xmm0, qword [eax*8 + 0x1039cc50]
mov eax, dword [esp + 0x44]
addsd xmm4, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
movsd qword [esp + 0x88], xmm4
addsd xmm0, qword [eax*8 + 0x1039cc50]
mov eax, dword [esp + 0x48]
addsd xmm3, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
movsd qword [esp + 0x80], xmm3
addsd xmm0, qword [eax*8 + 0x1039cc50]
mov eax, dword [esp + 0x4c]
addsd xmm2, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
movsd qword [esp + 0x78], xmm2
addsd xmm0, qword [eax*8 + 0x1039cc50]
addsd xmm1, xmm0
movsd qword [esp + 0x70], xmm1
jmp 0x10112ab2
movsd xmm1, qword [esp + 0x70]
movsd xmm2, qword [esp + 0x78]
movsd xmm3, qword [esp + 0x80]
movsd xmm4, qword [esp + 0x88]
movsd xmm5, qword [esp + 0x90]
movsd xmm6, qword [esp + 0x98]
movsd xmm7, qword [esp + 0xa0]
mov ecx, dword [esp + 0x24]
mov ebx, dword [esp + 0x18]
mov edi, dword [esp + 0x10]
mov esi, dword [esp + 0x1c]
add ebx, 8
mov eax, dword [esp + 0x20]
mov dword [esp + 0x18], ebx
cmp ebx, ecx
jb 0x101127f0
mov edx, dword [ebp + 0x5e8]
add eax, 8
add edi, 8
mov dword [esp + 0x20], eax
mov dword [esp + 0x10], edi
cmp eax, esi
jb 0x101127e0
movsd xmm0, qword [esp + 0xa8]
ucomisd xmm0, qword [0x1039bf08]
lahf
test ah, 0x44
jnp 0x10112b0f
divsd xmm4, xmm0
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm4
movss dword [ebp + 0x2481c], xmm0
xorps xmm4, xmm4
ucomisd xmm7, xmm4
lahf
test ah, 0x44
jnp 0x10112b2f
divsd xmm3, xmm7
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm3
movss dword [ebp + 0x24820], xmm0
ucomisd xmm6, xmm4
lahf
test ah, 0x44
jnp 0x10112b4c
divsd xmm2, xmm6
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm2
movss dword [ebp + 0x24824], xmm0
movss xmm2, dword [0x10273dd8]
xorps xmm3, xmm3
ucomisd xmm5, xmm4
lahf
test ah, 0x44
jnp 0x10112b74
divsd xmm1, xmm5
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm1
movss dword [ebp + 0x24828], xmm0
cmp dword [ebp + 0x684], 0
je 0x10112e38
movss xmm1, dword [ebp + 0x2480c]
ucomiss xmm1, xmm2
lahf
test ah, 0x44
jnp 0x10112e38
xorps xmm0, xmm0
lea esi, [ebp + 0x2478e]
movups xmmword [esp + 0x30], xmm0
xor ebx, ebx
movups xmmword [esp + 0x40], xmm0
nop dword [eax + eax]
mov edx, dword [ebp + 0x188]
mov eax, ebx
and eax, 7
lea edi, [eax + eax]
movzx eax, word [esi - 2]
lea ecx, [edi + edi]
shr edx, cl
and edx, 3
sub eax, dword [ebp + edx*4 + 0x20768]
test eax, eax
jle 0x10112bd9
add dword [esp + edx*4 + 0x30], eax
mov eax, dword [ebp + 0x188]
or edi, 1
inc dword [esp + edx*4 + 0x40]
add edi, edi
mov ecx, edi
shr eax, cl
movzx ecx, word [esi]
and eax, 3
sub ecx, dword [ebp + eax*4 + 0x20768]
test ecx, ecx
jle 0x10112c01
add dword [esp + eax*4 + 0x30], ecx
movzx ecx, word [esi + 2]
sub ecx, dword [ebp + edx*4 + 0x20768]
inc dword [esp + eax*4 + 0x40]
test ecx, ecx
jle 0x10112c18
add dword [esp + edx*4 + 0x30], ecx
movzx ecx, word [esi + 4]
sub ecx, dword [ebp + eax*4 + 0x20768]
inc dword [esp + edx*4 + 0x40]
test ecx, ecx
jle 0x10112c2f
add dword [esp + eax*4 + 0x30], ecx
movzx ecx, word [esi + 6]
sub ecx, dword [ebp + edx*4 + 0x20768]
inc dword [esp + eax*4 + 0x40]
test ecx, ecx
jle 0x10112c46
add dword [esp + edx*4 + 0x30], ecx
movzx ecx, word [esi + 8]
sub ecx, dword [ebp + eax*4 + 0x20768]
inc dword [esp + edx*4 + 0x40]
test ecx, ecx
jle 0x10112c5d
add dword [esp + eax*4 + 0x30], ecx
movzx ecx, word [esi + 0xa]
sub ecx, dword [ebp + edx*4 + 0x20768]
inc dword [esp + eax*4 + 0x40]
test ecx, ecx
jle 0x10112c74
add dword [esp + edx*4 + 0x30], ecx
movzx ecx, word [esi + 0xc]
sub ecx, dword [ebp + eax*4 + 0x20768]
inc dword [esp + edx*4 + 0x40]
test ecx, ecx
jle 0x10112c8b
add dword [esp + eax*4 + 0x30], ecx
inc dword [esp + eax*4 + 0x40]
inc ebx
add esi, 0x10
cmp ebx, 8
jb 0x10112bb0
cmp dword [ebp + 0x4f5d8], 0x10136400
jne 0x10112cd5
mov dword [ebp + 0x24828], 0x3f800000
mov dword [ebp + 0x24824], 0x3f800000
mov dword [ebp + 0x24820], 0x3f800000
mov dword [ebp + 0x2481c], 0x3f800000
jmp 0x10112e38
mov ecx, dword [esp + 0x30]
test ecx, ecx
je 0x10112e07
mov edx, dword [esp + 0x34]
test edx, edx
je 0x10112e07
mov esi, dword [esp + 0x38]
test esi, esi
je 0x10112e07
mov edi, dword [esp + 0x3c]
test edi, edi
je 0x10112e07
mov eax, dword [esp + 0x40]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x1039cc50]
mov eax, dword [esp + 0x44]
cvtpd2ps xmm1, xmm0
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
shr ecx, 0x1f
addsd xmm0, qword [ecx*8 + 0x1039cc50]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
movss dword [ebp + 0x2481c], xmm1
addsd xmm0, qword [eax*8 + 0x1039cc50]
mov eax, dword [esp + 0x48]
cvtpd2ps xmm1, xmm0
movd xmm0, edx
cvtdq2pd xmm0, xmm0
shr edx, 0x1f
addsd xmm0, qword [edx*8 + 0x1039cc50]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
movss dword [ebp + 0x24820], xmm1
addsd xmm0, qword [eax*8 + 0x1039cc50]
mov eax, dword [esp + 0x4c]
cvtpd2ps xmm1, xmm0
movd xmm0, esi
cvtdq2pd xmm0, xmm0
shr esi, 0x1f
addsd xmm0, qword [esi*8 + 0x1039cc50]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
movss dword [ebp + 0x24824], xmm1
addsd xmm0, qword [eax*8 + 0x1039cc50]
cvtpd2ps xmm1, xmm0
movd xmm0, edi
cvtdq2pd xmm0, xmm0
shr edi, 0x1f
addsd xmm0, qword [edi*8 + 0x1039cc50]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
movss dword [ebp + 0x24828], xmm1
jmp 0x10112e38
ucomiss xmm1, xmm3
lahf
test ah, 0x44
jnp 0x10112e31
movss xmm0, dword [ebp + 0x24814]
ucomiss xmm0, xmm3
lahf
test ah, 0x44
jnp 0x10112e31
movups xmm0, xmmword [ebp + 0x2480c]
movups xmmword [ebp + 0x2481c], xmm0
jmp 0x10112e38
or dword [ebp + 0x764], 4
cmp dword [ebp + 0x4f5d8], 0x10136400
jne 0x10112ecd
cmp dword [ebp + 0x684], 0
jne 0x10112ecd
cmp dword [ebp + 0x680], 0
jne 0x10112ecd
movss xmm2, dword [ebp + 0x2480c]
movss xmm1, dword [0x10273c40]
comiss xmm2, xmm1
jbe 0x10112ecd
movss xmm0, dword [ebp + 0x24810]
comiss xmm0, xmm1
jbe 0x10112ecd
movss xmm0, dword [ebp + 0x24814]
comiss xmm0, xmm1
jbe 0x10112ecd
movss xmm0, dword [ebp + 0x2481c]
divss xmm0, xmm2
movss dword [ebp + 0x2481c], xmm0
movss xmm0, dword [ebp + 0x24820]
divss xmm0, dword [ebp + 0x24810]
movss dword [ebp + 0x24820], xmm0
movss xmm0, dword [ebp + 0x24824]
divss xmm0, dword [ebp + 0x24814]
movss dword [ebp + 0x24824], xmm0
movss xmm0, dword [ebp + 0x24820]
ucomiss xmm0, xmm3
lahf
test ah, 0x44
jp 0x10112ee8
mov dword [ebp + 0x24820], 0x3f800000
movss xmm0, dword [ebp + 0x24828]
ucomiss xmm0, xmm3
lahf
test ah, 0x44
jp 0x10112f1c
cmp dword [ebp + 0x184], 4
jge 0x10112f0c
movss xmm0, dword [ebp + 0x24820]
jmp 0x10112f14
movss xmm0, dword [0x1039c01c]
movss dword [ebp + 0x24828], xmm0
movss xmm0, dword [ebp + 0x670]
ucomiss xmm0, xmm3
lahf
test ah, 0x44
jnp 0x10112f34
mov ecx, ebp
call fcn.10111e70
mov eax, dword [ebp + 0x24780]
sub dword [ebp + 0x24788], eax
cmp dword [ebp + 0x67c], 0
movss xmm7, dword [ebp + 0x2481c]
movss xmm4, dword [ebp + 0x24820]
movss xmm3, dword [ebp + 0x24824]
movss xmm5, dword [ebp + 0x24828]
cvtps2pd xmm0, xmm7
cvtps2pd xmm1, xmm4
minsd xmm0, qword [0x1025d588]
cvtps2pd xmm2, xmm3
minsd xmm1, xmm0
cvtps2pd xmm6, xmm5
minsd xmm2, xmm1
cvtps2pd xmm0, xmm7
minsd xmm6, xmm2
cvtps2pd xmm2, xmm3
cvtps2pd xmm1, xmm4
xorps xmm3, xmm3
maxsd xmm0, xmm3
cvtps2pd xmm5, xmm5
maxsd xmm1, xmm0
maxsd xmm2, xmm1
maxsd xmm5, xmm2
jne 0x10112fab
movaps xmm5, xmm6
cvtps2pd xmm0, xmm7
movsd xmm2, qword [0x1039c490]
divsd xmm0, xmm5
cvtpd2ps xmm0, xmm0
movss dword [ebp + 0x2481c], xmm0
mov eax, dword [ebp + 0x24788]
cvtps2pd xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
mulsd xmm1, xmm2
addsd xmm0, qword [eax*8 + 0x1039cc50]
divsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [esp + 0xb0], xmm0
movss xmm0, dword [ebp + 0x24820]
cvtps2pd xmm0, xmm0
divsd xmm0, xmm5
cvtpd2ps xmm0, xmm0
movss dword [ebp + 0x24820], xmm0
mov eax, dword [ebp + 0x24788]
cvtps2pd xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
mulsd xmm1, xmm2
addsd xmm0, qword [eax*8 + 0x1039cc50]
divsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [esp + 0xb4], xmm0
movss xmm0, dword [ebp + 0x24824]
cvtps2pd xmm0, xmm0
divsd xmm0, xmm5
cvtpd2ps xmm0, xmm0
movss dword [ebp + 0x24824], xmm0
mov eax, dword [ebp + 0x24788]
cvtps2pd xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
mulsd xmm1, xmm2
addsd xmm0, qword [eax*8 + 0x1039cc50]
divsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [esp + 0xb8], xmm0
movss xmm0, dword [ebp + 0x24828]
cvtps2pd xmm0, xmm0
divsd xmm0, xmm5
cvtpd2ps xmm0, xmm0
movss dword [ebp + 0x24828], xmm0
mov eax, dword [ebp + 0x24788]
cvtps2pd xmm1, xmm0
mov ecx, dword [ebp + 0x188]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
mulsd xmm1, xmm2
addsd xmm0, qword [eax*8 + 0x1039cc50]
divsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [esp + 0xbc], xmm0
cmp ecx, 0x3e8
jbe 0x101131cd
mov eax, dword [ebp + 0x20778]
inc eax
and eax, 0xfffffffe
cmp eax, 2
jne 0x101131cd
mov eax, dword [ebp + 0x2077c]
inc eax
and eax, 0xfffffffe
cmp eax, 2
jne 0x101131cd
mov eax, dword [ebp + 0x20780]
and ecx, 3
xor edx, edx
add dword [ebp + ecx*4 + 0x20768], eax
mov eax, 1
div dword [ebp + 0x2077c]
mov ecx, dword [ebp + 0x188]
shr ecx, 2
and ecx, 3
mov eax, dword [ebp + edx*4 + 0x20780]
xor edx, edx
add dword [ebp + ecx*4 + 0x20768], eax
mov eax, 1
div dword [ebp + 0x20778]
mov ecx, dword [ebp + 0x188]
imul edx, dword [ebp + 0x2077c]
shr ecx, 4
and ecx, 3
mov eax, dword [ebp + edx*4 + 0x20780]
xor edx, edx
add dword [ebp + ecx*4 + 0x20768], eax
mov eax, 1
div dword [ebp + 0x20778]
mov esi, dword [ebp + 0x2077c]
mov eax, 1
mov ecx, edx
mov edi, dword [ebp + 0x188]
xor edx, edx
imul ecx, esi
div esi
shr edi, 6
add ecx, edx
and edi, 3
mov eax, dword [ebp + ecx*4 + 0x20780]
add dword [ebp + edi*4 + 0x20768], eax
mov dword [ebp + 0x2077c], 0
mov dword [ebp + 0x20778], 0
movzx eax, word [ebp + 0x1c]
lea ecx, [esp + 0xb0]
movzx ebx, word [ebp + 0x1e]
imul ebx, eax
mov eax, dword [ebp]
push ecx
mov ecx, ebp
mov dword [esp + 0x20], ebx
call dword [eax + 0x30]
movsd xmm0, qword [ebp + 0x608]
lea edi, [ebp + 0x608]
movsd xmm1, qword [0x1039c208]
ucomisd xmm0, xmm1
mov dword [esp + 0x10], edi
lahf
test ah, 0x44
jp 0x10113226
movsd xmm0, qword [ebp + 0x618]
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jnp 0x1011349a
cmp dword [ebp + 0x184], 3
jne 0x1011349a
xor esi, esi
xor ecx, ecx
mov dword [esp + 0x18], esi
mov dword [esp + 0x14], ecx
nop
movsd xmm0, qword [edi]
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jnp 0x1011347c
lea eax, [ebx + ebx]
mov ecx, ebp
push eax
call fcn.10135620
mov ebx, eax
mov ecx, ebp
push str.scale_colors__
push ebx
mov dword [esp + 0x2c], ebx
call fcn.10135730
xor ecx, ecx
cmp dword [esp + 0x1c], ecx
jbe 0x10113298
mov edx, dword [esp + 0x14]
mov edi, dword [esp + 0x1c]
mov eax, dword [ebp + 8]
lea edx, [edx + 8]
mov ax, word [edx + eax - 8]
mov word [ebx + ecx*2], ax
inc ecx
cmp ecx, edi
jb 0x10113280
mov edi, dword [esp + 0x10]
xor eax, eax
xor ebx, ebx
cmp ax, word [ebp + 0x1c]
jae 0x10113461
movzx esi, word [ebp + 0x1c]
mov eax, ebx
movd xmm0, ebx
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
movd xmm1, esi
addsd xmm0, qword [eax*8 + 0x1039cc50]
cvtdq2pd xmm1, xmm1
mulsd xmm1, qword [0x1039c168]
subsd xmm0, xmm1
mulsd xmm0, qword [edi]
addsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x20], xmm0
call fcn.101dd310
lea ecx, [esi - 2]
mov dword [esp + 0x28], eax
cmp eax, ecx
ja 0x10113450
movss xmm1, dword [esp + 0x20]
mov ecx, eax
movd xmm0, eax
xor edi, edi
cvtdq2pd xmm0, xmm0
shr ecx, 0x1f
xor eax, eax
addsd xmm0, qword [ecx*8 + 0x1039cc50]
cvtpd2ps xmm0, xmm0
subss xmm1, xmm0
movss dword [esp + 0x20], xmm1
cmp ax, word [ebp + 0x1e]
jae 0x1011344c
movzx esi, word [ebp + 0x1e]
mov eax, edi
movd xmm0, edi
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
movd xmm1, esi
addsd xmm0, qword [eax*8 + 0x1039cc50]
mov eax, dword [esp + 0x10]
cvtdq2pd xmm1, xmm1
mulsd xmm1, qword [0x1039c168]
subsd xmm0, xmm1
mulsd xmm0, qword [eax]
addsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x2c], xmm0
call fcn.101dd310
mov edx, eax
lea ecx, [esi - 2]
cmp edx, ecx
ja 0x1011343f
movss xmm4, dword [esp + 0x2c]
mov eax, esi
imul eax, dword [esp + 0x28]
mov ecx, edx
movss xmm3, dword [0x1039c01c]
movd xmm0, edx
cvtdq2pd xmm0, xmm0
shr ecx, 0x1f
add eax, edx
addsd xmm0, qword [ecx*8 + 0x1039cc50]
mov ecx, dword [esp + 0x24]
cvtpd2ps xmm0, xmm0
lea ecx, [ecx + eax*2]
movzx eax, word [ecx + 2]
movd xmm2, eax
movzx eax, word [ecx]
subss xmm4, xmm0
cvtdq2ps xmm2, xmm2
movd xmm0, eax
subss xmm3, xmm4
movzx eax, word [ecx + esi*2 + 2]
cvtdq2ps xmm0, xmm0
mulss xmm2, xmm4
mulss xmm0, xmm3
movd xmm1, eax
movzx eax, word [ecx + esi*2]
addss xmm2, xmm0
imul esi, ebx
movss xmm0, dword [0x1039c01c]
subss xmm0, dword [esp + 0x20]
cvtdq2ps xmm1, xmm1
add esi, edi
mulss xmm2, xmm0
movd xmm0, eax
mov eax, dword [esp + 0x18]
cvtdq2ps xmm0, xmm0
lea ecx, [eax + esi*4]
mov eax, dword [ebp + 8]
mulss xmm1, xmm4
mulss xmm0, xmm3
addss xmm1, xmm0
mulss xmm1, dword [esp + 0x20]
addss xmm2, xmm1
cvttss2si edx, xmm2
mov word [eax + ecx*2], dx
movzx eax, word [ebp + 0x1e]
inc edi
cmp edi, eax
jb 0x10113332
mov edi, dword [esp + 0x10]
movzx eax, word [ebp + 0x1c]
inc ebx
cmp ebx, eax
jb 0x101132a6
mov esi, dword [esp + 0x18]
push dword [esp + 0x24]
mov ecx, ebp
call fcn.10135700
movsd xmm1, qword [0x1039c208]
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
add ecx, 4
add esi, 2
add edi, 0x10
mov dword [esp + 0x18], esi
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ecx
cmp ecx, 8
jb 0x10113240
mov eax, dword [ebp + 0x4f5bc]
pop edi
pop esi
pop ebx
test eax, eax
je 0x101134bf
push 2
push 1
push 0x200
push dword [ebp + 0x4f5c0]
call eax
add esp, 0x10
test eax, eax
jne 0x101134de
pop ebp
add esp, 0xb0
ret
push 0x103aec5c
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], 6
push eax
call fcn.101e00bb
push 0x103aec5c
lea eax, [esp + 0x24]
mov dword [esp + 0x24], 6
push eax
call fcn.101e00bb
int3