Function at 0x18004d350
Capabilities:
Hash data with crc32

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0xd8]
sub rsp, 0x1d8
mov rdi, qword [0x180188c98]
mov ebx, r8d
mov r14, rdx
mov r15, rcx
mov rax, qword [rdi + 0x3f48]
mov byte [rax + 0xb8], 1
mov rsi, qword [rdi + 0x3f48]
mov qword [rbp - 0x78], rsi
cmp byte [rsi + 0xbb], 0
je 0x18004d3b5
xor al, al
add rsp, 0x1d8
pop r15
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov qword [rsp + 0x1d0], r12
mov qword [rsp + 0x1c8], r13
movaps xmmword [rsp + 0x1b0], xmm6
movaps xmmword [rsp + 0x1a0], xmm7
movaps xmmword [rsp + 0x190], xmm8
movaps xmmword [rsp + 0x180], xmm9
movaps xmmword [rsp + 0x170], xmm10
movaps xmmword [rsp + 0x160], xmm11
movaps xmmword [rsp + 0x150], xmm12
movss xmm12, dword [rdi + 0x3808]
movaps xmmword [rsp + 0x140], xmm13
addss xmm12, xmm12
movaps xmmword [rsp + 0x130], xmm14
movaps xmmword [rsp + 0x120], xmm15
addss xmm12, dword [rdi + 0x3c70]
call fcn.18001f7e0
movss dword [rsp + 0x78], xmm0
movaps xmm8, xmm0
xorps xmm9, xmm9
test bl, 0x10
je 0x18004d452
xorps xmm14, xmm14
jmp 0x18004d45f
movaps xmm14, xmm12
addss xmm14, dword [rdi + 0x381c]
mov qword [rbp - 0x68], r15
movaps xmm11, xmm0
subss xmm11, xmm14
cmp r15, 0xffffffffffffffff
jae 0x18004d49e
mov r14, r15
movzx ecx, byte [r14]
test cl, cl
je 0x18004d497
lea rax, [r14 + 1]
cmp cl, 0x23
jne 0x18004d48a
cmp byte [rax], cl
je 0x18004d497
mov qword [rbp - 0x68], rax
mov r14, rax
cmp rax, 0xffffffffffffffff
jb 0x18004d475
mov r14, qword [rbp + 0x118]
xor eax, eax
mov qword [rdi + 0x47d0], rax
call fcn.18001f9d0
mov rcx, r15
call fcn.18001ce50
mov eax, dword [rdi + 0x5bc0]
mov dword [rbp - 0x54], eax
test eax, eax
jne 0x18004d4d9
movsxd rcx, dword [rsi + 0xf0]
mov rax, qword [rsi + 0xf8]
mov ecx, dword [rax + rcx*4 - 4]
mov dword [rdi + 0x5bc0], ecx
mov dword [rbp - 0x58], ebx
test bl, 0x20
je 0x18004d4ed
and ebx, 0xff9fffff
or ebx, 0x100008
test bl, 8
jne 0x18004d4fc
mov edx, ebx
mov rcx, r14
call fcn.180051290
test ebx, 0x700000
jne 0x18004d511
mov eax, dword [rdi + 0x5bbc]
and eax, 0x700000
or ebx, eax
test ebx, 0x1800000
jne 0x18004d526
mov eax, dword [rdi + 0x5bbc]
and eax, 0x1800000
or ebx, eax
test ebx, 0x6000000
jne 0x18004d53b
mov eax, dword [rdi + 0x5bbc]
and eax, 0x6000000
or ebx, eax
test ebx, 0x18000000
jne 0x18004d550
mov eax, dword [rdi + 0x5bbc]
and eax, 0x18000000
or ebx, eax
mov eax, dword [rdi + 0x5bbc]
movss xmm3, dword [r14]
and eax, 0xe00fffff
movss xmm1, dword [r14 + 4]
or ebx, eax
movss xmm2, dword [r14 + 8]
mov eax, ebx
movss xmm10, dword [0x18011110c]
shr eax, 1
not al
movss dword [rsp + 0x48], xmm3
and al, 1
movss dword [rsp + 0x4c], xmm1
movzx r12d, al
mov eax, ebx
shr eax, 0x13
and al, 1
movss dword [rsp + 0x50], xmm2
mov dword [rbp + 0x120], ebx
mov dword [rbp - 0x70], r12d
lea r13d, [r12 + 3]
mov dword [rbp - 0x80], eax
mov dword [rsp + 0x58], r13d
test r12b, r12b
je 0x18004d5c0
movss xmm0, dword [r14 + 0xc]
jmp 0x18004d5c4
movaps xmm0, xmm10
mov eax, ebx
movss dword [rsp + 0x54], xmm0
and eax, 0x10100000
cmp eax, 0x10100000
jne 0x18004d5fb
lea rax, [rsp + 0x50]
movaps xmm0, xmm3
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x48]
lea rax, [rsp + 0x4c]
mov qword [rsp + 0x20], rax
call fcn.18000fd60
jmp 0x18004d641
mov eax, ebx
and eax, 0x8200000
cmp eax, 0x8200000
jne 0x18004d659
lea rax, [rsp + 0x50]
movaps xmm0, xmm3
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x48]
lea rax, [rsp + 0x4c]
mov qword [rsp + 0x20], rax
call fcn.18000fcb0
lea r9, [rsp + 0x50]
mov rcx, r14
lea r8, [rsp + 0x4c]
lea rdx, [rsp + 0x48]
call fcn.18004d290
movss xmm3, dword [rsp + 0x48]
movss xmm1, dword [rsp + 0x4c]
movss xmm2, dword [rsp + 0x50]
movss xmm0, dword [rsp + 0x54]
comiss xmm3, xmm9
movss xmm5, dword [0x18011134c]
movss xmm4, dword [0x1801110cc]
jb 0x18004d674
movaps xmm7, xmm4
jmp 0x18004d677
movaps xmm7, xmm5
comiss xmm1, xmm9
movss xmm6, dword [0x1801112c4]
mulss xmm3, xmm6
addss xmm3, xmm7
cvttss2si eax, xmm3
mov dword [rsp + 0x60], eax
jb 0x18004d69a
movaps xmm3, xmm4
jmp 0x18004d69d
movaps xmm3, xmm5
comiss xmm2, xmm9
mulss xmm1, xmm6
addss xmm1, xmm3
cvttss2si eax, xmm1
mov dword [rsp + 0x64], eax
jb 0x18004d6b8
movaps xmm1, xmm4
jmp 0x18004d6bb
movaps xmm1, xmm5
comiss xmm0, xmm9
mulss xmm2, xmm6
addss xmm2, xmm1
cvttss2si eax, xmm2
mov dword [rsp + 0x68], eax
jae 0x18004d6d4
movaps xmm4, xmm5
cmp dword [rdi + 0x385c], 0
mulss xmm0, xmm6
mov byte [rbp + 0x128], 0
mov byte [rsp + 0x40], 0
addss xmm0, xmm4
cvttss2si eax, xmm0
mov dword [rsp + 0x6c], eax
movss xmm15, dword [rsi + 0x100]
movss xmm13, dword [rsi + 0x104]
jne 0x18004d711
movaps xmm1, xmm14
jmp 0x18004d715
movaps xmm1, xmm9
movaps xmm0, xmm15
addss xmm0, xmm1
movss dword [rsi + 0x100], xmm0
test ebx, 0x300000
je 0x18004da95
test bl, 0x20
jne 0x18004da95
movss xmm3, dword [rdi + 0x381c]
lea eax, [r13 - 1]
movd xmm4, eax
lea rcx, str.M:0.000
cvtdq2ps xmm4, xmm4
lea rdx, [rsp + 0x70]
mov r15d, ebx
and r15d, 0x1000000
movaps xmm1, xmm11
movaps xmm7, xmm10
movaps xmm0, xmm4
movaps xmm8, xmm10
mulss xmm0, xmm3
subss xmm1, xmm0
movd xmm0, r13d
cvtdq2ps xmm0, xmm0
divss xmm1, xmm0
movaps xmm0, xmm11
cvttss2si eax, xmm1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
maxss xmm7, xmm1
movaps xmm2, xmm7
addss xmm2, xmm3
movss xmm3, dword [0x18011133c]
mulss xmm2, xmm4
subss xmm0, xmm2
cvttss2si eax, xmm0
movss xmm0, dword [0x18011135c]
movd xmm1, eax
lea rax, str.M:000
cmovne rax, rcx
mov rcx, qword [0x180188c98]
cvtdq2ps xmm1, xmm1
xor r13d, r13d
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x28], rax
movss xmm2, dword [rcx + 0x3c70]
mov rcx, qword [rcx + 0x3c68]
maxss xmm8, xmm1
movss dword [rsp + 0x20], xmm0
call fcn.180039fd0
movss xmm0, dword [rsp + 0x70]
mov r12d, r13d
addss xmm0, dword [0x180111104]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm7
jae 0x18004d832
bt ebx, 0x15
setb r12b
inc r12
mov edx, dword [rsp + 0x58]
mov esi, r13d
test edx, edx
je 0x18004dc62
test r15d, r15d
je 0x18004d98b
movss xmm6, dword [0x180111050]
lea r15, [0x18010ab80]
mov r14d, dword [rbp - 0x80]
lea r13, [rsp + 0x48]
mov eax, ebx
shl r12, 5
and eax, 8
sub r12, r15
mov dword [rsp + 0x70], eax
lea rax, str._0.3f
add r12, rax
xor bl, bl
nop
test esi, esi
je 0x18004d895
movss xmm1, dword [rdi + 0x381c]
movaps xmm0, xmm9
call fcn.18001f5e0
lea eax, [rsi + 1]
mov esi, eax
cmp eax, edx
jge 0x18004d8a3
movaps xmm0, xmm7
jmp 0x18004d8a7
movaps xmm0, xmm8
mov rax, qword [0x180188c98]
or dword [rax + 0x47d0], 1
movss dword [rax + 0x47d8], xmm0
mov rax, qword [r12 + r15]
test r14b, r14b
je 0x18004d8cc
movaps xmm0, xmm9
jmp 0x18004d8d0
movaps xmm0, xmm10
mov rcx, qword [r15]
movaps xmm3, xmm6
mov qword [rsp + 0x30], rax
mov r8, r13
lea rax, [rbp + 0x128]
movss dword [rbp + 0x128], xmm0
mov qword [rsp + 0x28], rax
mov edx, 8
lea rax, [rbp - 0x80]
mov dword [rbp - 0x80], 0
mov qword [rsp + 0x20], rax
call fcn.180045bf0
or bl, al
or byte [rsp + 0x40], bl
cmp dword [rsp + 0x70], 0
jne 0x18004d91e
call fcn.180020e70
mov edx, dword [rsp + 0x58]
add r13, 4
add r15, 8
cmp esi, edx
jl 0x18004d880
movss xmm8, dword [rsp + 0x78]
mov r14, qword [rbp + 0x118]
mov byte [rbp + 0x128], bl
mov ebx, dword [rbp + 0x120]
movzx r15d, byte [rbp + 0x128]
mov r13d, edx
mov rsi, qword [rbp - 0x78]
xor r12d, r12d
test bl, 0x10
jne 0x18004df29
test bl, 0x20
jne 0x18004dc79
cmp dword [rdi + 0x385c], r12d
je 0x18004dc79
addss xmm11, dword [rdi + 0x381c]
jmp 0x18004dc7d
test edx, edx
je 0x18004dc62
xor ecx, ecx
lea r15, [0x18010ab80]
cmp byte [rbp - 0x80], cl
mov eax, ebx
mov esi, 0xff
mov r14d, ecx
cmovne esi, ecx
and eax, 8
mov dword [rsp + 0x70], eax
lea rax, [0x18010aba0]
mov ebx, dword [rsp + 0x70]
shl r12, 5
add r12, rax
mov r8d, r13d
test r13d, r13d
je 0x18004d9e0
movss xmm1, dword [rdi + 0x381c]
movaps xmm0, xmm9
call fcn.18001f5e0
xor ecx, ecx
lea eax, [r13 + 1]
mov r13d, eax
cmp eax, edx
jge 0x18004d9f0
movaps xmm0, xmm7
jmp 0x18004d9f4
movaps xmm0, xmm8
mov rax, qword [0x180188c98]
movaps xmm3, xmm10
mov rdx, qword [r12 + r14*8]
mov qword [rsp + 0x30], rdx
mov edx, 4
mov dword [rbp - 0x80], ecx
or dword [rax + 0x47d0], 1
mov rcx, qword [r15 + r14*8]
movss dword [rax + 0x47d8], xmm0
mov rax, r8
lea r8, [rsp + 0x60]
mov dword [rsp + 0x70], esi
lea r8, [r8 + rax*4]
lea rax, [rsp + 0x70]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x80]
mov qword [rsp + 0x20], rax
call fcn.180045bf0
or byte [rbp + 0x128], al
test ebx, ebx
jne 0x18004da5a
call fcn.180020e70
mov edx, dword [rsp + 0x58]
inc r14
mov ecx, 0
cmp r14, rdx
jl 0x18004d9c5
movss xmm8, dword [rsp + 0x78]
mov ebx, dword [rbp + 0x120]
mov r14, qword [rbp + 0x118]
movzx r15d, byte [rbp + 0x128]
mov r13d, dword [rsp + 0x58]
jmp 0x18004d957
bt ebx, 0x16
jae 0x18004dc71
test bl, 0x20
jne 0x18004dc71
mov esi, 0xff
test r12b, r12b
je 0x18004db1e
mov edx, dword [rsp + 0x6c]
test edx, edx
jns 0x18004dabe
xor edx, edx
jmp 0x18004dac3
cmp edx, esi
cmovg edx, esi
mov ecx, dword [rsp + 0x68]
test ecx, ecx
jns 0x18004dacf
xor ecx, ecx
jmp 0x18004dad4
cmp ecx, esi
cmovg ecx, esi
mov eax, dword [rsp + 0x64]
test eax, eax
jns 0x18004dae0
xor eax, eax
jmp 0x18004dae5
cmp eax, esi
cmovg eax, esi
mov r9d, dword [rsp + 0x60]
test r9d, r9d
jns 0x18004daf4
xor r9d, r9d
jmp 0x18004dafb
cmp r9d, esi
cmovg r9d, esi
mov dword [rsp + 0x30], edx
lea r8, [0x18010a930]
mov dword [rsp + 0x28], ecx
mov edx, 0x40
lea rcx, [rbp - 0x20]
mov dword [rsp + 0x20], eax
call fcn.18000ecb0
jmp 0x18004db73
mov ecx, dword [rsp + 0x68]
test ecx, ecx
jns 0x18004db2a
xor ecx, ecx
jmp 0x18004db2f
cmp ecx, esi
cmovg ecx, esi
mov eax, dword [rsp + 0x64]
test eax, eax
jns 0x18004db3b
xor eax, eax
jmp 0x18004db40
cmp eax, esi
cmovg eax, esi
mov r9d, dword [rsp + 0x60]
test r9d, r9d
jns 0x18004db4f
xor r9d, r9d
jmp 0x18004db56
cmp r9d, esi
cmovg r9d, esi
mov dword [rsp + 0x28], ecx
lea r8, [0x18010a948]
lea rcx, [rbp - 0x20]
mov dword [rsp + 0x20], eax
mov edx, 0x40
call fcn.18000ecb0
mov rax, qword [0x180188c98]
lea r8, [rbp - 0x20]
mov r9d, 0x40
mov qword [rsp + 0x70], 0
xor edx, edx
lea rcx, str.Text
or dword [rax + 0x47d0], 1
movss dword [rax + 0x47d8], xmm11
xor eax, eax
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x70]
mov dword [rsp + 0x28], 6
mov qword [rsp + 0x20], rax
call fcn.180049da0
test al, al
je 0x18004dc4c
mov r15b, 1
lea rcx, [rbp - 0x20]
mov byte [rbp + 0x128], r15b
nop dword [rax + rax]
movzx eax, byte [rcx]
cmp al, 0x23
je 0x18004dbef
cmp al, 0x20
je 0x18004dbef
cmp al, 9
jne 0x18004dbf4
inc rcx
jmp 0x18004dbe0
xor eax, eax
mov dword [rsp + 0x6c], esi
mov qword [rsp + 0x64], rax
lea r9, [rsp + 0x64]
mov dword [rsp + 0x60], eax
lea r8, [rsp + 0x60]
test r12b, r12b
je 0x18004dc34
lea rax, [rsp + 0x6c]
mov qword [rsp + 0x28], rax
lea rdx, str._02X_02X_02X_02X
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
call fcn.180009f40
jmp 0x18004dc4f
lea rax, [rsp + 0x68]
lea rdx, str._02X_02X_02X
mov qword [rsp + 0x20], rax
call fcn.180009f40
jmp 0x18004dc4f
xor r15b, r15b
test bl, 8
jne 0x18004d957
call fcn.180020e70
jmp 0x18004d957
movss xmm8, dword [rsp + 0x78]
xor r15b, r15b
jmp 0x18004d954
xor r15b, r15b
jmp 0x18004d95b
movaps xmm11, xmm9
movaps xmm0, xmm15
movss dword [rsi + 0x104], xmm13
addss xmm0, xmm11
movss dword [rsi + 0x100], xmm0
cmp byte [rbp - 0x70], r12b
je 0x18004dca3
movss xmm10, dword [r14 + 0xc]
movss xmm0, dword [r14]
lea r9, [rbp - 0x80]
movss xmm1, dword [r14 + 4]
lea rdx, [rbp - 0x50]
movss dword [rbp - 0x50], xmm0
lea rcx, str.ColorButton
movss xmm0, dword [r14 + 8]
mov r8d, ebx
movss dword [rbp - 0x48], xmm0
movss dword [rbp - 0x4c], xmm1
movss dword [rbp - 0x44], xmm10
mov qword [rbp - 0x80], r12
call fcn.180050600
lea rsi, [0x18010a999]
lea r11, [0x180103030]
test al, al
je 0x18004ddc7
test bl, 4
jne 0x18004ddc7
movups xmm0, xmmword [rbp - 0x50]
mov rax, qword [0x180188c98]
mov r8, rsi
mov r9b, 0x70
movups xmmword [rdi + 0x5bd4], xmm0
mov rax, qword [rax + 0x3f48]
movsxd rcx, dword [rax + 0xf0]
mov rax, qword [rax + 0xf8]
mov r10d, dword [rax + rcx*4 - 4]
not r10d
mov ecx, r10d
nop dword [rax + rax]
cmp r9b, 0x23
jne 0x18004dd53
cmp byte [r8], r9b
jne 0x18004dd53
cmp byte [r8 + 1], r9b
cmove ecx, r10d
movzx edx, cl
movzx eax, r9b
movzx r9d, byte [r8]
xor rdx, rax
shr ecx, 8
inc r8
xor ecx, dword [r11 + rdx*4]
test r9b, r9b
jne 0x18004dd40
not ecx
xor edx, edx
call fcn.180020740
movss xmm1, dword [rdi + 0x47f4]
movss xmm0, dword [rdi + 0x3818]
addss xmm1, xmm9
mov rax, qword [0x180188c98]
addss xmm0, dword [rdi + 0x4800]
or dword [rax + 0x4828], 1
xor ecx, ecx
movss dword [rax + 0x4838], xmm1
mov qword [rax + 0x4840], rcx
movss dword [rax + 0x483c], xmm0
mov dword [rax + 0x482c], 1
test bl, 8
jne 0x18004ddd1
call fcn.180020e70
mov rcx, qword [0x180188c98]
mov eax, dword [rcx + 0x4908]
cmp dword [rcx + 0x48f8], eax
jg 0x18004ddf2
mov dword [rcx + 0x4828], r12d
jmp 0x18004df29
mov rax, qword [rcx + 0x3f48]
lea r10, [0x180103030]
mov dl, 0x70
movsxd rcx, dword [rax + 0xf0]
mov rax, qword [rax + 0xf8]
mov r8d, dword [rax + rcx*4 - 4]
not r8d
mov r9d, r8d
nop dword [rax + rax]
cmp dl, 0x23
jne 0x18004de30
cmp byte [rsi], dl
jne 0x18004de30
cmp byte [rsi + 1], dl
cmove r9d, r8d
movzx ecx, r9b
movzx eax, dl
movzx edx, byte [rsi]
xor rcx, rax
shr r9d, 8
inc rsi
xor r9d, dword [r10 + rcx*4]
test dl, dl
jne 0x18004de20
mov rdx, qword [0x180188c98]
not r9d
movsxd rax, dword [rdx + 0x4908]
cmp dword [rdx + 0x48f8], eax
jle 0x18004df22
imul rcx, rax, 0x38
mov rax, qword [rdx + 0x4900]
cmp dword [rcx + rax], r9d
jne 0x18004df22
lea r8, str.Popup__08x
mov edx, 0x14
lea rcx, [rbp - 0x40]
call fcn.18000ecb0
xor edx, edx
lea rcx, [rbp - 0x40]
mov r8d, 0x4000103
call fcn.180019d10
movzx esi, al
test al, al
jne 0x18004deb0
call fcn.180020e00
test sil, sil
je 0x18004df29
mov rax, qword [rdi + 0x3f48]
cmp word [rax + 0xc2], 1
jne 0x18004df1b
mulss xmm12, dword [0x1801111ec]
lea r9, [rdi + 0x5bd4]
mov r8d, dword [rbp - 0x58]
lea rcx, str.picker
mov r12, rax
and r8d, 0x1f890002
mov rax, qword [0x180188c98]
or r8d, 0x740080
mov rdx, r14
or dword [rax + 0x47d0], 1
movss dword [rax + 0x47d8], xmm12
call fcn.18004e720
or r15b, al
mov byte [rbp + 0x128], r15b
call fcn.180020e00
jmp 0x18004df29
mov dword [rdx + 0x4828], r12d
mov rdx, qword [rbp - 0x68]
mov r9, qword [rbp + 0x110]
movaps xmm13, xmmword [rsp + 0x140]
movaps xmm12, xmmword [rsp + 0x150]
movaps xmm11, xmmword [rsp + 0x160]
movaps xmm10, xmmword [rsp + 0x170]
cmp r9, rdx
je 0x18004dfa1
test bl, bl
js 0x18004dfa1
movss xmm1, dword [rdi + 0x381c]
movaps xmm0, xmm9
call fcn.18001f5e0
test bl, 0x20
jne 0x18004df84
addss xmm8, dword [rdi + 0x381c]
movaps xmm14, xmm8
mov rax, qword [rbp - 0x78]
addss xmm15, xmm14
xor r8d, r8d
mov rcx, r9
movss dword [rax + 0x100], xmm15
call fcn.1800411c0
movzx r15d, byte [rbp + 0x128]
movaps xmm15, xmmword [rsp + 0x120]
movaps xmm14, xmmword [rsp + 0x130]
movaps xmm9, xmmword [rsp + 0x180]
test r15b, r15b
je 0x18004e10a
test r12, r12
jne 0x18004e10a
cmp byte [rsp + 0x40], r12b
jne 0x18004dff2
movdqu xmm0, xmmword [rsp + 0x60]
cvtdq2ps xmm1, xmm0
divps xmm1, xmmword [0x1801118f0]
movups xmmword [rsp + 0x48], xmm1
mov eax, ebx
and eax, 0x8200000
cmp eax, 0x8200000
jne 0x18004e08b
movss xmm0, dword [rsp + 0x48]
lea rax, [rsp + 0x50]
movss xmm1, dword [rsp + 0x4c]
lea r9, [rsp + 0x48]
movss xmm2, dword [rsp + 0x50]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x4c]
mov qword [rsp + 0x20], rax
movss dword [rdi + 0x5bc8], xmm0
movss dword [rdi + 0x5bcc], xmm1
call fcn.18000fd60
mov eax, dword [rdi + 0x5bc0]
lea rcx, [rbp - 0x68]
movss xmm6, dword [rsp + 0x48]
movss xmm7, dword [rsp + 0x4c]
movss xmm8, dword [rsp + 0x50]
movss dword [rbp - 0x68], xmm6
movss dword [rbp - 0x64], xmm7
movss dword [rbp - 0x60], xmm8
mov dword [rdi + 0x5bc4], eax
mov dword [rbp - 0x5c], 0
call fcn.18000fc00
mov dword [rdi + 0x5bd0], eax
jmp 0x18004e09e
movss xmm8, dword [rsp + 0x50]
movss xmm7, dword [rsp + 0x4c]
movss xmm6, dword [rsp + 0x48]
mov eax, ebx
and eax, 0x10100000
cmp eax, 0x10100000
jne 0x18004e0e7
lea rax, [rsp + 0x50]
movaps xmm2, xmm8
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x48]
lea rax, [rsp + 0x4c]
movaps xmm1, xmm7
movaps xmm0, xmm6
mov qword [rsp + 0x20], rax
call fcn.18000fcb0
movss xmm8, dword [rsp + 0x50]
movss xmm7, dword [rsp + 0x4c]
movss xmm6, dword [rsp + 0x48]
cmp byte [rbp - 0x70], 0
movss dword [r14], xmm6
movss dword [r14 + 4], xmm7
movss dword [r14 + 8], xmm8
je 0x18004e10a
movss xmm0, dword [rsp + 0x54]
movss dword [r14 + 0xc], xmm0
cmp dword [rbp - 0x54], 0
movaps xmm8, xmmword [rsp + 0x190]
movaps xmm7, xmmword [rsp + 0x1a0]
movaps xmm6, xmmword [rsp + 0x1b0]
jne 0x18004e133
mov dword [rdi + 0x5bc0], 0
mov rax, qword [0x180188c98]
mov rcx, qword [rax + 0x3f48]
dec dword [rcx + 0xf0]
call fcn.18001fb00
test byte [rdi + 0x47f0], 1
je 0x18004e2d8
bt ebx, 9
jb 0x18004e2d8
mov r11, qword [0x180188c98]
cmp byte [r11 + 0x4b00], 0
je 0x18004e2df
mov edx, dword [r11 + 0x47f0]
mov rcx, qword [r11 + 0x3f48]
test dl, 1
je 0x18004e2df
mov rax, qword [r11 + 0x3f58]
test rax, rax
je 0x18004e2df
mov rax, qword [rax + 0x378]
cmp qword [rcx + 0x378], rax
jne 0x18004e2df
cmp byte [rcx + 0xbb], 0
jne 0x18004e2df
lea rsi, [r11 + 0x4814]
test dl, 2
jne 0x18004e1d3
lea rsi, [r11 + 0x47f4]
mov eax, dword [r11 + 0x47e8]
test eax, eax
jne 0x18004e207
mov rdx, rsi
call fcn.180013960
cmp dword [r11 + 0x3fa8], eax
jne 0x18004e1f6
mov dword [r11 + 0x3fac], eax
cmp dword [r11 + 0x3fd8], eax
jne 0x18004e207
mov byte [r11 + 0x3fdc], 1
cmp dword [r11 + 0x4b1c], eax
je 0x18004e2df
movups xmm0, xmmword [rsi]
lea rcx, str._COL3F
mov dword [r11 + 0x4b60], eax
mov byte [r11 + 0x4b02], 1
xor sil, sil
movups xmmword [r11 + 0x4b50], xmm0
call fcn.180025300
test rax, rax
je 0x18004e25c
mov rax, qword [rax]
mov sil, 1
movzx r15d, sil
movsd xmm0, qword [rax]
movsd qword [r14], xmm0
mov eax, dword [rax + 8]
mov dword [r14 + 8], eax
lea rcx, str._COL4F
call fcn.180025300
test rax, rax
je 0x18004e284
mov rdx, qword [rax]
mov rcx, r14
mov r8d, r13d
shl r8, 2
call fcn.1800d35f0
mov r15b, 1
jmp 0x18004e289
test sil, sil
je 0x18004e2ba
bt ebx, 0x1c
jae 0x18004e2ba
movss xmm2, dword [r14 + 8]
lea rax, [r14 + 8]
movss xmm1, dword [r14 + 4]
lea rcx, [r14 + 4]
movss xmm0, dword [r14]
mov r9, r14
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
call fcn.18000fcb0
mov r11, qword [0x180188c98]
cmp byte [r11 + 0x4b4a], 0
mov byte [r11 + 0x4b02], 0
je 0x18004e2df
call fcn.180025230
mov r11, qword [0x180188c98]
mov r13, qword [rsp + 0x1c8]
test r12, r12
je 0x18004e305
mov eax, dword [rdi + 0x3fa8]
test eax, eax
je 0x18004e305
cmp qword [rdi + 0x3fc8], r12
jne 0x18004e305
mov dword [rdi + 0x47e8], eax
mov r12, qword [rsp + 0x1d0]
test r15b, r15b
je 0x18004e348
mov eax, dword [rdi + 0x47e8]
test eax, eax
je 0x18004e348
cmp word [r11 + 0x5c32], 0
jg 0x18004e348
mov ecx, dword [r11 + 0x3fa8]
cmp ecx, eax
je 0x18004e336
test ecx, ecx
jne 0x18004e340
mov word [r11 + 0x3fb8], 0x101
or dword [r11 + 0x47f0], 4
movzx eax, r15b
add rsp, 0x1d8
pop r15
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret