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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0xf8
mov eax, dword [0x10195144]
xor eax, esp
mov dword [esp + 0xf4], eax
push esi
push edi
mov edi, dword [0x10199a9c]
mov dword [esp + 0x30], edx
mov dword [esp + 0x44], ecx
mov ecx, dword [ebp + 8]
mov eax, dword [edi + 0x1a18]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x50], edi
mov byte [eax + 0x84], 1
mov edx, dword [edi + 0x1a18]
mov dword [esp + 0x20], edx
cmp byte [edx + 0x87], 0
je 0x1009a7db
xor al, al
pop edi
pop esi
mov ecx, dword [esp + 0xf4]
xor ecx, esp
call fcn.100e0513
mov esp, ebp
pop ebp
ret
test byte [edi + 0x1b00], 1
movss xmm2, dword [edi + 0x155c]
addss xmm2, xmm2
addss xmm2, dword [edi + 0x18e0]
movss dword [esp + 0x5c], xmm2
je 0x1009a808
movss xmm0, dword [edi + 0x1b04]
jmp 0x1009a810
movss xmm0, dword [edx + 0x1ac]
xorps xmm1, xmm1
comiss xmm1, xmm0
jbe 0x1009a84b
mov eax, edx
cmp dword [eax + 0x194], 0
movss xmm1, dword [eax + 0x258]
je 0x1009a833
movss xmm1, dword [eax + 0x228]
subss xmm1, dword [edx + 0xd0]
addss xmm1, xmm0
movss xmm0, dword [0x1017e534]
maxss xmm0, xmm1
cvttss2si esi, xmm0
mov dword [esp + 0x38], esi
movd xmm3, esi
cvtdq2ps xmm3, xmm3
test cl, 0x10
je 0x1009a864
xorps xmm0, xmm0
jmp 0x1009a86f
movaps xmm0, xmm2
addss xmm0, dword [edi + 0x1570]
mov eax, dword [esp + 0x44]
movaps xmm1, xmm3
movss dword [esp + 0x58], xmm0
subss xmm1, xmm0
mov dword [esp + 0x4c], eax
movss dword [esp + 0x54], xmm1
cmp eax, 0xffffffff
jae 0x1009a8af
mov esi, eax
mov cl, byte [esi]
test cl, cl
je 0x1009a8ab
cmp cl, 0x23
jne 0x1009a8a1
cmp byte [esi + 1], cl
je 0x1009a8ab
inc esi
mov dword [esp + 0x4c], esi
cmp esi, 0xffffffff
jb 0x1009a891
mov esi, dword [esp + 0x38]
mov dword [edi + 0x1b00], 0
call fcn.10076090
mov ecx, dword [esp + 0x44]
call fcn.10075610
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x60], ecx
test ecx, 0x20
je 0x1009a8e7
and ecx, 0xff9fffff
or ecx, 0x100008
mov dword [esp + 0x18], ecx
test cl, 8
jne 0x1009a8fb
mov edx, ecx
mov ecx, dword [esp + 0x30]
call fcn.1009f480
mov ecx, dword [esp + 0x18]
mov edx, dword [edi + 0x2db4]
test ecx, 0x700000
jne 0x1009a912
mov eax, edx
and eax, 0x700000
or ecx, eax
test ecx, 0x1800000
jne 0x1009a923
mov eax, edx
and eax, 0x1800000
or ecx, eax
test ecx, 0x6000000
jne 0x1009a934
mov eax, edx
and eax, 0x6000000
or ecx, eax
test ecx, 0x18000000
jne 0x1009a945
mov eax, edx
and eax, 0x18000000
or ecx, eax
and edx, 0xe00fffff
or ecx, edx
mov edx, ecx
mov dword [esp + 0x18], ecx
and edx, 0x700000
je 0x1009a962
lea eax, [edx - 1]
test edx, eax
je 0x1009a97d
push 0x1229
push 0x1016e930
push 0x1016e9c8
call fcn.100eb3b8
mov ecx, dword [esp + 0x24]
add esp, 0xc
mov edx, ecx
and edx, 0x18000000
je 0x1009a98e
lea eax, [edx - 1]
test edx, eax
je 0x1009a9a9
push 0x122a
push 0x1016e980
push 0x1016ead8
call fcn.100eb3b8
mov ecx, dword [esp + 0x24]
add esp, 0xc
mov edx, ecx
mov eax, ecx
shr edx, 1
shr eax, 0x13
not dl
and eax, 0xffffff01
and edx, 0xffffff01
mov dword [esp + 0x24], eax
mov dword [esp + 0x48], edx
movzx eax, dl
mov edx, dword [esp + 0x30]
add eax, 3
cmp byte [esp + 0x48], 0
mov dword [esp + 0x34], eax
movss xmm3, dword [edx]
movss xmm1, dword [edx + 4]
movss xmm2, dword [edx + 8]
movss dword [esp + 0x98], xmm3
movss dword [esp + 0x9c], xmm1
movss dword [esp + 0xa0], xmm2
je 0x1009aa0c
movss xmm4, dword [edx + 0xc]
jmp 0x1009aa14
movss xmm4, dword [0x1017e534]
mov eax, ecx
movss dword [esp + 0xa4], xmm4
and eax, 0x10100000
mov dword [esp + 0x64], eax
cmp eax, 0x10100000
jne 0x1009aa7d
lea eax, [esp + 0xa0]
movaps xmm0, xmm3
push eax
lea edx, [esp + 0xa0]
lea ecx, [esp + 0x9c]
call fcn.1006a590
movss xmm4, dword [esp + 0xa8]
add esp, 4
movss xmm2, dword [esp + 0xa0]
movss xmm1, dword [esp + 0x9c]
movss xmm3, dword [esp + 0x98]
mov ecx, dword [esp + 0x18]
jmp 0x1009ab85
mov eax, ecx
and eax, 0x8200000
cmp eax, 0x8200000
jne 0x1009ab85
comiss xmm2, xmm1
xorps xmm6, xmm6
movaps xmm5, xmm1
movaps xmm7, xmm2
jbe 0x1009aaab
movss xmm6, dword [0x1017e6e4]
movaps xmm5, xmm2
movaps xmm7, xmm1
comiss xmm5, xmm3
movaps xmm2, xmm3
jbe 0x1009aac8
movss xmm0, dword [0x1017e6d0]
movaps xmm2, xmm5
subss xmm0, xmm6
movaps xmm5, xmm3
movaps xmm6, xmm0
movaps xmm0, xmm5
mov eax, dword [edi + 0x2dc0]
minss xmm0, xmm7
movaps xmm1, xmm2
movaps xmm3, xmm5
movss dword [esp + 0xa0], xmm2
subss xmm3, xmm7
subss xmm1, xmm0
movaps xmm0, xmm1
mulss xmm0, dword [0x1017e5b4]
addss xmm0, dword [0x1017e49c]
divss xmm3, xmm0
movaps xmm0, xmm2
addss xmm3, xmm6
addss xmm0, dword [0x1017e49c]
andps xmm3, xmmword [0x1017e9d0]
divss xmm1, xmm0
movss dword [esp + 0x98], xmm3
movss dword [esp + 0x9c], xmm1
cmp eax, dword [edx]
jne 0x1009ab85
mov eax, dword [edi + 0x2dc4]
cmp eax, dword [edx + 4]
jne 0x1009ab85
mov eax, dword [edi + 0x2dc8]
cmp eax, dword [edx + 8]
jne 0x1009ab85
ucomiss xmm1, dword [0x1017e488]
lahf
test ah, 0x44
jp 0x1009ab67
movss xmm3, dword [edi + 0x2db8]
movss dword [esp + 0x98], xmm3
ucomiss xmm2, dword [0x1017e488]
lahf
test ah, 0x44
jp 0x1009ab85
movss xmm1, dword [edi + 0x2dbc]
movss dword [esp + 0x9c], xmm1
comiss xmm3, dword [0x1017e488]
movss xmm5, dword [0x1017e6d4]
movss xmm0, dword [0x1017e4f8]
jb 0x1009aba3
movaps xmm7, xmm0
jmp 0x1009aba6
movaps xmm7, xmm5
comiss xmm1, dword [0x1017e488]
movss xmm6, dword [0x1017e65c]
mulss xmm3, xmm6
addss xmm3, xmm7
cvttss2si eax, xmm3
mov dword [esp + 0xa8], eax
jb 0x1009abcf
movaps xmm3, xmm0
jmp 0x1009abd2
movaps xmm3, xmm5
comiss xmm2, dword [0x1017e488]
mulss xmm1, xmm6
addss xmm1, xmm3
cvttss2si eax, xmm1
mov dword [esp + 0xac], eax
jb 0x1009abf3
movaps xmm1, xmm0
jmp 0x1009abf6
movaps xmm1, xmm5
comiss xmm4, dword [0x1017e488]
mulss xmm2, xmm6
addss xmm2, xmm1
cvttss2si eax, xmm2
mov dword [esp + 0xb0], eax
jae 0x1009ac15
movaps xmm0, xmm5
cmp dword [edi + 0x15a8], 0
mulss xmm4, xmm6
mov byte [esp + 0x16], 0
mov byte [esp + 0x17], 0
addss xmm4, xmm0
cvttss2si eax, xmm4
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0x20]
movss xmm2, dword [eax + 0xd0]
movss xmm3, dword [eax + 0xd4]
movss dword [esp + 0x3c], xmm2
movss dword [esp + 0x40], xmm3
jne 0x1009ac63
movss xmm1, dword [esp + 0x58]
jmp 0x1009ac66
xorps xmm1, xmm1
movaps xmm0, xmm2
addss xmm0, xmm1
movss dword [eax + 0xd0], xmm0
mov eax, ecx
and eax, 0x20
test ecx, 0x300000
je 0x1009b064
test eax, eax
jne 0x1009b064
mov edx, dword [esp + 0x34]
movss xmm2, dword [edi + 0x1570]
movss xmm1, dword [esp + 0x54]
movaps xmm0, xmm2
push 0
lea eax, [edx - 1]
movd xmm3, eax
cvtdq2ps xmm3, xmm3
push 0
mulss xmm0, xmm3
subss xmm1, xmm0
movd xmm0, edx
cvtdq2ps xmm0, xmm0
divss xmm1, xmm0
cvttss2si eax, xmm1
movss xmm1, dword [0x1017e534]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
maxss xmm1, xmm0
movss xmm0, dword [esp + 0x5c]
movss dword [esp + 0x24], xmm1
addss xmm1, xmm2
mulss xmm1, xmm3
movss xmm3, dword [0x1017e6b8]
subss xmm0, xmm1
movss xmm1, dword [0x1017e534]
cvttss2si eax, xmm0
movd xmm0, eax
mov eax, ecx
and eax, 0x1000000
mov ecx, str.M:000
cvtdq2ps xmm0, xmm0
mov dword [esp + 0x34], eax
mov eax, str.M:0.000
cmove eax, ecx
mov ecx, dword [0x10199a9c]
push eax
push ecx
lea eax, [esp + 0x78]
mov dword [esp], 0xbf800000
movss xmm2, dword [ecx + 0x18e0]
maxss xmm1, xmm0
mov ecx, dword [ecx + 0x18dc]
push eax
movss dword [esp + 0x3c], xmm1
call fcn.1008b160
movss xmm0, dword [esp + 0x68]
addss xmm0, dword [0x1017e52c]
movss xmm1, dword [esp + 0x1c]
cvttss2si eax, xmm0
movd xmm0, eax
mov eax, dword [esp + 0x18]
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm1
jb 0x1009ad83
xor ecx, ecx
jmp 0x1009ad92
mov ecx, eax
and ecx, 0x200000
neg ecx
sbb ecx, ecx
neg ecx
inc ecx
mov edx, dword [esp + 0x34]
xor edi, edi
test edx, edx
je 0x1009b055
shl ecx, 4
cmp dword [esp + 0x2c], edi
je 0x1009af0d
mov esi, dword [esp + 0x50]
lea ecx, [ecx + 0x1017c33c]
and eax, 8
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x78], eax
test edi, edi
je 0x1009ade4
movss xmm1, dword [esi + 0x1570]
xorps xmm0, xmm0
call fcn.10075e60
movss xmm1, dword [esp + 0x1c]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x34]
lea eax, [edi + 1]
mov dword [esp + 0x68], eax
cmp eax, edx
jge 0x1009adf4
movaps xmm0, xmm1
jmp 0x1009adfa
movss xmm0, dword [esp + 0x28]
mov eax, dword [0x10199a9c]
or dword [eax + 0x1b00], 1
cmp byte [esp + 0x24], 0
movss dword [eax + 0x1b04], xmm0
je 0x1009ae1a
xorps xmm0, xmm0
jmp 0x1009ae22
movss xmm0, dword [0x1017e534]
movss xmm3, dword [0x1017e4b8]
lea eax, [esp + 0x70]
push ecx
push dword [ecx]
mov ecx, dword [edi*4 + 0x1017c39c]
mov edx, 8
push eax
lea eax, [esp + 0x80]
movss dword [esp + 0x7c], xmm0
push eax
lea eax, [esp + 0xa8]
mov dword [esp + 0x84], 0
lea eax, [eax + edi*4]
push eax
call fcn.10093600
mov cl, byte [esp + 0x2a]
add esp, 0x14
or cl, al
or byte [esp + 0x17], cl
cmp dword [esp + 0x78], 0
mov byte [esp + 0x16], cl
jne 0x1009aed7
mov eax, dword [0x10199a9c]
cmp byte [eax + 0x3eb], 0
mov edi, dword [eax + 0x1a18]
je 0x1009aed7
mov ecx, 8
call fcn.1006c840
test al, al
je 0x1009aed7
push ecx
push 0x1016eb48
mov ecx, edi
call fcn.1006c360
mov edi, eax
test edi, edi
jne 0x1009aecb
push 0x1f2e
push 0x1015fcb0
push 0x1015fd4c
call fcn.100eb3b8
add esp, 0xc
mov edx, 1
mov ecx, edi
call fcn.10076cb0
mov ecx, dword [esp + 0x2c]
mov edi, dword [esp + 0x68]
add ecx, 4
movss xmm1, dword [esp + 0x1c]
mov edx, dword [esp + 0x34]
mov dword [esp + 0x2c], ecx
cmp edi, dword [esp + 0x34]
jl 0x1009adc2
mov esi, dword [esp + 0x38]
xor edx, edx
mov edi, dword [esp + 0x50]
mov dword [esp + 0x1c], edx
jmp 0x1009b30a
xor esi, esi
lea ecx, [ecx + 0x1017c36c]
xor edi, edi
mov dword [esp + 0x2c], ecx
cmp byte [esp + 0x24], 0
mov edx, 0xff
cmovne edx, esi
mov esi, dword [esp + 0x50]
and eax, 8
mov dword [esp + 0x24], edx
mov dword [esp + 0x74], eax
test edi, edi
jle 0x1009af59
movss xmm1, dword [esi + 0x1570]
xorps xmm0, xmm0
call fcn.10075e60
movss xmm1, dword [esp + 0x1c]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x24]
lea eax, [edi + 1]
mov dword [esp + 0x70], eax
cmp eax, dword [esp + 0x34]
jge 0x1009af6b
movaps xmm0, xmm1
jmp 0x1009af71
movss xmm0, dword [esp + 0x28]
mov eax, dword [0x10199a9c]
movss xmm3, dword [0x1017e534]
push ecx
push dword [ecx]
or dword [eax + 0x1b00], 1
mov ecx, dword [edi*4 + 0x1017c39c]
movss dword [eax + 0x1b04], xmm0
lea eax, [esp + 0x70]
push eax
lea eax, [esp + 0x84]
mov dword [esp + 0x74], edx
push eax
lea eax, [esp + 0xb8]
mov dword [esp + 0x88], 0
lea eax, [eax + edi*4]
mov edx, 4
push eax
call fcn.10093600
or byte [esp + 0x2a], al
add esp, 0x14
cmp dword [esp + 0x74], 0
jne 0x1009b02e
mov eax, dword [0x10199a9c]
cmp byte [eax + 0x3eb], 0
mov edi, dword [eax + 0x1a18]
je 0x1009b02e
mov ecx, 8
call fcn.1006c840
test al, al
je 0x1009b02e
push ecx
push 0x1016eb48
mov ecx, edi
call fcn.1006c360
mov edi, eax
test edi, edi
jne 0x1009b022
push 0x1f2e
push 0x1015fcb0
push 0x1015fd4c
call fcn.100eb3b8
add esp, 0xc
mov edx, 1
mov ecx, edi
call fcn.10076cb0
mov ecx, dword [esp + 0x2c]
mov edi, dword [esp + 0x70]
add ecx, 4
movss xmm1, dword [esp + 0x1c]
mov edx, dword [esp + 0x24]
mov dword [esp + 0x2c], ecx
cmp edi, dword [esp + 0x34]
jl 0x1009af37
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x50]
xor edx, edx
mov dword [esp + 0x1c], edx
jmp 0x1009b30a
mov edx, eax
mov dword [esp + 0x1c], edx
test ecx, 0x400000
je 0x1009b31a
mov dword [esp + 0x1c], edx
test eax, eax
jne 0x1009b31a
mov eax, 0xff
cmp byte [esp + 0x48], dl
je 0x1009b118
mov edx, dword [esp + 0xb4]
test edx, edx
jns 0x1009b0a6
mov dword [esp + 0x28], 0
jmp 0x1009b0af
cmp edx, eax
cmovg edx, eax
mov dword [esp + 0x28], edx
mov ecx, dword [esp + 0xb0]
test ecx, ecx
jns 0x1009b0c4
mov dword [esp + 0x24], 0
jmp 0x1009b0cd
cmp ecx, eax
cmovg ecx, eax
mov dword [esp + 0x24], ecx
mov edx, dword [esp + 0xac]
test edx, edx
jns 0x1009b0dc
xor edx, edx
jmp 0x1009b0e1
cmp edx, eax
cmovg edx, eax
mov ecx, dword [esp + 0xa8]
test ecx, ecx
jns 0x1009b0f0
xor ecx, ecx
jmp 0x1009b0f5
cmp ecx, eax
cmovg ecx, eax
push dword [esp + 0x28]
lea eax, [esp + 0xbc]
push dword [esp + 0x28]
push edx
push ecx
push 0x1016eb68
push 0x40
push eax
call fcn.10069e80
add esp, 0x1c
jmp 0x1009b17b
mov ecx, dword [esp + 0xb0]
test ecx, ecx
jns 0x1009b12d
mov dword [esp + 0x28], 0
jmp 0x1009b136
cmp ecx, eax
cmovg ecx, eax
mov dword [esp + 0x28], ecx
mov edx, dword [esp + 0xac]
test edx, edx
jns 0x1009b145
xor edx, edx
jmp 0x1009b14a
cmp edx, eax
cmovg edx, eax
mov ecx, dword [esp + 0xa8]
test ecx, ecx
jns 0x1009b159
xor ecx, ecx
jmp 0x1009b15e
cmp ecx, eax
cmovg ecx, eax
push dword [esp + 0x28]
lea eax, [esp + 0xbc]
push edx
push ecx
push 0x1016eb58
push 0x40
push eax
call fcn.10069e80
add esp, 0x18
mov eax, dword [0x10199a9c]
xor edx, edx
movss xmm5, dword [esp + 0x54]
mov ecx, str.Text
push 0
push 0
or dword [eax + 0x1b00], 1
movss dword [eax + 0x1b04], xmm5
lea eax, [esp + 0x80]
push 6
push eax
lea eax, [esp + 0xc8]
mov dword [esp + 0x88], 0
push 0x40
push eax
mov dword [esp + 0x94], 0
call fcn.10096dd0
add esp, 0x18
test al, al
je 0x1009b280
mov byte [esp + 0x16], 1
lea ecx, [esp + 0xb8]
mov al, byte [ecx]
cmp al, 0x23
je 0x1009b1f4
cmp al, 0x20
je 0x1009b1f4
cmp al, 9
jne 0x1009b1f7
inc ecx
jmp 0x1009b1e6
cmp byte [esp + 0x48], 0
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb0], 0
mov dword [esp + 0xac], 0
mov dword [esp + 0xa8], 0
je 0x1009b25a
lea eax, [esp + 0xb4]
push eax
lea eax, [esp + 0xb4]
push eax
lea eax, [esp + 0xb4]
push eax
lea eax, [esp + 0xb4]
push eax
push 0x1016eb7c
push ecx
call fcn.10067f60
add esp, 0x18
jmp 0x1009b280
lea eax, [esp + 0xb0]
push eax
lea eax, [esp + 0xb0]
push eax
lea eax, [esp + 0xb0]
push eax
push 0x1016ea84
push ecx
call fcn.10067f60
add esp, 0x14
mov ecx, dword [esp + 0x18]
xor edx, edx
mov dword [esp + 0x1c], edx
test cl, 8
jne 0x1009b30e
mov eax, dword [0x10199a9c]
mov edx, dword [eax + 0x1a18]
mov dword [esp + 0x68], edx
xor edx, edx
mov dword [esp + 0x1c], edx
cmp byte [eax + 0x3eb], dl
je 0x1009b30e
xor eax, eax
lea ecx, [edx + 8]
mov dword [esp + 0x1c], eax
call fcn.1006c840
test al, al
je 0x1009b308
push ecx
mov ecx, dword [esp + 0x6c]
push 0x1016ea7c
call fcn.1006c360
mov dword [esp + 0x68], eax
test eax, eax
jne 0x1009b2f4
push 0x1f2e
push 0x1015fcb0
push 0x1015fd4c
call fcn.100eb3b8
mov eax, dword [esp + 0x74]
add esp, 0xc
mov edx, 1
mov ecx, eax
call fcn.10076cb0
xor edx, edx
mov dword [esp + 0x1c], edx
jmp 0x1009b30a
xor edx, edx
mov ecx, dword [esp + 0x18]
movss xmm2, dword [esp + 0x3c]
movss xmm3, dword [esp + 0x40]
mov dword [esp + 0x38], 0
test cl, 0x10
jne 0x1009b5ee
test edx, edx
jne 0x1009b347
cmp dword [edi + 0x15a8], edx
je 0x1009b347
movss xmm1, dword [esp + 0x54]
addss xmm1, dword [edi + 0x1570]
jmp 0x1009b34a
xorps xmm1, xmm1
cmp byte [esp + 0x48], 0
movaps xmm0, xmm2
mov eax, dword [esp + 0x20]
addss xmm0, xmm1
movss dword [eax + 0xd4], xmm3
movss dword [eax + 0xd0], xmm0
mov eax, dword [esp + 0x30]
je 0x1009b377
movss xmm1, dword [eax + 0xc]
jmp 0x1009b37f
movss xmm1, dword [0x1017e534]
movss xmm0, dword [eax]
lea edx, [esp + 0x80]
mov dword [esp + 0x6c], 0
push dword [esp + 0x6c]
movss dword [esp + 0x84], xmm0
movss xmm0, dword [eax + 4]
mov dword [esp + 0x6c], 0
push dword [esp + 0x6c]
movss dword [esp + 0x8c], xmm0
movss xmm0, dword [eax + 8]
push ecx
mov ecx, str.ColorButton
movss dword [esp + 0x94], xmm0
movss dword [esp + 0x98], xmm1
call fcn.1009e6e0
mov ecx, dword [esp + 0x24]
add esp, 0xc
test al, al
je 0x1009b483
test cl, 4
jne 0x1009b483
movups xmm0, xmmword [esp + 0x80]
mov eax, dword [0x10199a9c]
push ecx
movups xmmword [edi + 0x2dcc], xmm0
push 0x1016ea94
mov ecx, dword [eax + 0x1a18]
call fcn.1006c360
xor edx, edx
mov ecx, eax
call fcn.10076cb0
mov eax, dword [esp + 0x20]
movss xmm0, dword [edi + 0x156c]
mov ecx, dword [esp + 0x18]
movss xmm1, dword [eax + 0x11c]
addss xmm0, dword [eax + 0x128]
mov eax, dword [0x10199a9c]
subss xmm1, dword [0x1017e534]
or dword [eax + 0x1aa0], 1
movss dword [eax + 0x1ab4], xmm0
movss dword [eax + 0x1ab0], xmm1
mov dword [eax + 0x1ab8], 0
mov dword [eax + 0x1abc], 0
mov dword [eax + 0x1aa4], 1
test cl, 8
jne 0x1009b4f0
mov eax, dword [0x10199a9c]
cmp byte [eax + 0x3eb], 0
mov edx, dword [eax + 0x1a18]
mov dword [esp + 0x68], edx
je 0x1009b4f0
mov ecx, 8
call fcn.1006c840
test al, al
je 0x1009b4ec
push ecx
mov ecx, dword [esp + 0x6c]
push 0x1016eab4
call fcn.1006c360
mov dword [esp + 0x68], eax
test eax, eax
jne 0x1009b4e0
push 0x1f2e
push 0x1015fcb0
push 0x1015fd4c
call fcn.100eb3b8
mov eax, dword [esp + 0x74]
add esp, 0xc
mov edx, 1
mov ecx, eax
call fcn.10076cb0
mov ecx, dword [esp + 0x18]
mov edx, dword [0x10199a9c]
mov eax, dword [edx + 0x1b38]
cmp eax, dword [edx + 0x1b44]
jg 0x1009b513
mov dword [edx + 0x1aa0], 0
jmp 0x1009b5ee
push ecx
mov ecx, dword [edx + 0x1a18]
push 0x1016eaac
call fcn.1006c360
mov ecx, eax
call fcn.10077190
test al, al
je 0x1009b5ea
mov eax, dword [edi + 0x1a18]
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x4c]
cmp ecx, eax
je 0x1009b598
push 0
mov edx, eax
call fcn.1008e5d0
mov ecx, dword [0x10199a9c]
add esp, 4
mov eax, dword [ecx + 0x1a18]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a18]
cmp byte [eax + 0x87], 0
jne 0x1009b598
movss xmm1, dword [0x1017e6e4]
lea ecx, [esp + 0x68]
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
call fcn.10075b60
mov eax, dword [0x10199a9c]
mov ecx, str.picker
movss xmm0, dword [esp + 0x5c]
mulss xmm0, dword [0x1017e5d4]
mov edx, dword [esp + 0x30]
or dword [eax + 0x1b00], 1
movss dword [eax + 0x1b04], xmm0
lea eax, [edi + 0x2dcc]
push eax
mov eax, dword [esp + 0x64]
and eax, 0x1f890002
or eax, 0x740080
push eax
call fcn.1009bd20
or byte [esp + 0x1e], al
add esp, 8
call fcn.10077240
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x4c]
cmp dword [esp + 0x44], edx
je 0x1009b654
test cl, cl
js 0x1009b654
cmp dword [esp + 0x1c], 0
je 0x1009b60b
movss xmm0, dword [esp + 0x58]
jmp 0x1009b61a
movd xmm0, esi
cvtdq2ps xmm0, xmm0
addss xmm0, dword [edi + 0x1570]
movss xmm1, dword [esp + 0x3c]
mov eax, dword [esp + 0x20]
addss xmm1, xmm0
movss xmm0, dword [esp + 0x40]
addss xmm0, dword [edi + 0x155c]
mov ecx, dword [esp + 0x44]
push 0
movss dword [eax + 0xd0], xmm1
movss dword [eax + 0xd4], xmm0
call fcn.1008e5d0
add esp, 4
cmp byte [esp + 0x16], 0
je 0x1009b807
cmp dword [esp + 0x38], 0
jne 0x1009b807
cmp byte [esp + 0x17], 0
jne 0x1009b68b
movups xmm0, xmmword [esp + 0xa8]
cvtdq2ps xmm0, xmm0
divps xmm0, xmmword [0x1017e9b0]
movups xmmword [esp + 0x98], xmm0
mov esi, dword [esp + 0x18]
mov eax, esi
and eax, 0x8200000
cmp eax, 0x8200000
jne 0x1009b704
movss xmm0, dword [esp + 0x98]
lea eax, [esp + 0xa0]
movss xmm1, dword [esp + 0x9c]
lea edx, [esp + 0x9c]
movss xmm2, dword [esp + 0xa0]
lea ecx, [esp + 0x98]
push eax
movss dword [edi + 0x2db8], xmm0
movss dword [edi + 0x2dbc], xmm1
call fcn.1006a590
movq xmm0, qword [esp + 0x9c]
add esp, 4
mov eax, dword [esp + 0xa0]
movq qword [edi + 0x2dc0], xmm0
mov dword [edi + 0x2dc8], eax
cmp dword [esp + 0x64], 0x10100000
jne 0x1009b7c3
movss xmm1, dword [esp + 0x9c]
xorps xmm5, xmm5
movss xmm4, dword [esp + 0xa0]
movaps xmm0, xmm1
comiss xmm4, xmm0
movss xmm3, dword [esp + 0x98]
movaps xmm2, xmm3
jbe 0x1009b749
movss xmm5, dword [0x1017e6e4]
movaps xmm1, xmm4
movaps xmm4, xmm0
comiss xmm1, xmm2
jbe 0x1009b763
movss xmm0, dword [0x1017e6d0]
movaps xmm3, xmm1
subss xmm0, xmm5
movaps xmm1, xmm2
movaps xmm5, xmm0
movaps xmm0, xmm1
movss dword [esp + 0xa0], xmm3
minss xmm0, xmm4
movaps xmm2, xmm3
subss xmm1, xmm4
subss xmm2, xmm0
movaps xmm0, xmm2
mulss xmm0, dword [0x1017e5b4]
addss xmm0, dword [0x1017e49c]
divss xmm1, xmm0
movaps xmm0, xmm3
addss xmm0, dword [0x1017e49c]
addss xmm1, xmm5
divss xmm2, xmm0
andps xmm1, xmmword [0x1017e9d0]
movss dword [esp + 0x98], xmm1
movss dword [esp + 0x9c], xmm2
jmp 0x1009b7de
movss xmm3, dword [esp + 0xa0]
movss xmm2, dword [esp + 0x9c]
movss xmm1, dword [esp + 0x98]
cmp byte [esp + 0x48], 0
mov eax, dword [esp + 0x30]
movss dword [eax], xmm1
movss dword [eax + 4], xmm2
movss dword [eax + 8], xmm3
je 0x1009b80b
movss xmm0, dword [esp + 0xa4]
movss dword [eax + 0xc], xmm0
jmp 0x1009b80b
mov esi, dword [esp + 0x18]
mov eax, dword [0x10199a9c]
mov edi, dword [eax + 0x1a18]
cmp dword [edi + 0xc4], 0
jg 0x1009b836
push 0x599
push str.C:UsersMsiDownloadsAmongUsMenu_mainAmongUsMenu_mainincludesimguiimgui.h
push str.Size___0
call fcn.100eb3b8
add esp, 0xc
dec dword [edi + 0xc4]
call fcn.100761d0
mov edi, dword [esp + 0x20]
test byte [edi + 0x118], 1
je 0x1009ba7a
test esi, 0x200
jne 0x1009ba7a
mov edi, dword [0x10199a9c]
cmp byte [edi + 0x1e10], 0
je 0x1009ba76
mov ecx, dword [edi + 0x1a18]
test byte [ecx + 0x118], 1
je 0x1009ba76
mov edx, dword [edi + 0x1a24]
test edx, edx
je 0x1009ba76
mov eax, dword [ecx + 0x338]
cmp eax, dword [edx + 0x338]
jne 0x1009ba76
test byte [ecx + 0x118], 2
lea edx, [ecx + 0x12c]
jne 0x1009b8b9
lea edx, [ecx + 0x11c]
mov eax, dword [ecx + 0x114]
mov dword [esp + 0x24], edx
mov dword [esp + 0x28], eax
test eax, eax
jne 0x1009b8d5
push edx
call fcn.1006c460
mov dword [esp + 0x28], eax
cmp dword [edi + 0x1e28], eax
je 0x1009ba76
cmp byte [edi + 0x1e12], 0
je 0x1009b905
push 0x2544
push 0x10161038
push str.g.DragDropWithinTarget__false
call fcn.100eb3b8
mov eax, dword [esp + 0x34]
add esp, 0xc
mov ecx, dword [esp + 0x24]
mov byte [esp + 0x17], 0
movups xmm0, xmmword [ecx]
mov ecx, 0x1016eabc
mov dword [edi + 0x1e68], eax
mov byte [edi + 0x1e12], 1
movups xmmword [edi + 0x1e58], xmm0
call fcn.1007b010
mov edi, dword [esp + 0x30]
test eax, eax
je 0x1009b951
mov eax, dword [eax]
mov byte [esp + 0x17], 1
mov byte [esp + 0x16], 1
movq xmm0, qword [eax]
movq qword [edi], xmm0
mov eax, dword [eax + 8]
mov dword [edi + 8], eax
mov ecx, 0x1016ec24
call fcn.1007b010
mov ecx, eax
test ecx, ecx
je 0x1009b97b
mov eax, dword [esp + 0x34]
shl eax, 2
push eax
push dword [ecx]
push edi
call fcn.100e21d0
add esp, 0xc
mov byte [esp + 0x16], 1
jmp 0x1009b986
cmp byte [esp + 0x17], 0
je 0x1009ba29
test esi, 0x10000000
je 0x1009ba29
movss xmm2, dword [edi + 4]
movss xmm4, dword [edi + 8]
comiss xmm4, xmm2
movss xmm3, dword [edi]
jbe 0x1009b9b8
movss xmm5, dword [0x1017e6e4]
movaps xmm0, xmm2
movaps xmm2, xmm4
movaps xmm4, xmm0
jmp 0x1009b9bb
xorps xmm5, xmm5
comiss xmm2, xmm3
jbe 0x1009b9d8
movaps xmm0, xmm3
movaps xmm3, xmm2
movaps xmm2, xmm0
movss xmm0, dword [0x1017e6d0]
subss xmm0, xmm5
movaps xmm5, xmm0
movaps xmm0, xmm2
movss dword [edi + 8], xmm3
minss xmm0, xmm4
movaps xmm1, xmm3
subss xmm2, xmm4
subss xmm1, xmm0
movaps xmm0, xmm1
mulss xmm0, dword [0x1017e5b4]
addss xmm0, dword [0x1017e49c]
divss xmm2, xmm0
movaps xmm0, xmm3
addss xmm0, dword [0x1017e49c]
addss xmm2, xmm5
divss xmm1, xmm0
andps xmm2, xmmword [0x1017e9d0]
movss dword [edi], xmm2
movss dword [edi + 4], xmm1
mov esi, dword [0x10199a9c]
cmp byte [esi + 0x1e10], 0
jne 0x1009ba4f
push 0x2586
push 0x10160e44
push str.g.DragDropActive
call fcn.100eb3b8
add esp, 0xc
cmp byte [esi + 0x1e12], 0
jne 0x1009ba6f
push 0x2587
push 0x10160ea8
push str.g.DragDropWithinTarget
call fcn.100eb3b8
add esp, 0xc
mov byte [esi + 0x1e12], 0
mov edi, dword [esp + 0x20]
mov edx, dword [esp + 0x38]
test edx, edx
je 0x1009ba9e
mov eax, dword [esp + 0x50]
mov ecx, dword [eax + 0x1a50]
test ecx, ecx
je 0x1009ba9e
cmp dword [eax + 0x1a80], edx
jne 0x1009ba9e
mov dword [edi + 0x114], ecx
mov dl, byte [esp + 0x16]
test dl, dl
je 0x1009baf8
mov esi, dword [0x10199a9c]
mov eax, dword [esi + 0x1a50]
cmp eax, dword [edi + 0x114]
je 0x1009bae2
test eax, eax
je 0x1009bae2
cmp byte [esi + 0x1e10], 0
jne 0x1009bae2
push 0xbdb
push 0x1015b340
push str.g.ActiveId__id__g.ActiveId__0__g.DragDropActive
call fcn.100eb3b8
mov dl, byte [esp + 0x22]
add esp, 0xc
mov ecx, dword [esi + 0x1a18]
mov word [esi + 0x1a60], 0x101
or dword [ecx + 0x118], 4
mov ecx, dword [esp + 0xfc]
mov al, dl
pop edi
pop esi
xor ecx, esp
call fcn.100e0513
mov esp, ebp
pop ebp
ret