Function at 0x140071970
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov rax, rsp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x230
vmovaps xmmword [rax - 0x48], xmm6
vmovaps xmmword [rax - 0x58], xmm7
vmovaps xmmword [rax - 0x68], xmm8
vmovaps xmmword [rax - 0x78], xmm9
vmovaps xmmword [rax - 0x88], xmm10
vmovaps xmmword [rax - 0x98], xmm11
vmovaps xmmword [rax - 0xa8], xmm12
vmovaps xmmword [rax - 0xb8], xmm13
vmovaps xmmword [rax - 0xc8], xmm14
vmovaps xmmword [rax - 0xd8], xmm15
mov rax, qword [0x140127840]
xor rax, rsp
mov qword [rsp + 0x180], rax
mov esi, r8d
mov r13, rdx
mov qword [rsp + 0x50], rdx
mov r12, rcx
mov qword [rsp + 0x58], rcx
mov r14, qword [0x1401420d8]
mov rax, qword [r14 + 0x3ec8]
mov byte [rax + 0xb8], 1
mov rbx, qword [r14 + 0x3ec8]
mov qword [rsp + 0xa0], rbx
cmp byte [rbx + 0xbb], 0
je 0x140071a22
xor al, al
jmp 0x140072e66
vmovss xmm0, dword [r14 + 0x3834]
vaddss xmm1, xmm0, xmm0
vaddss xmm9, xmm1, dword [r14 + 0x3c28]
vmovss dword [rsp + 0x7c], xmm9
call fcn.140044ba0
vmovss dword [rsp + 0x94], xmm0
vxorps xmm10, xmm10, xmm10
test sil, 0x10
je 0x140071a5e
vxorps xmm12, xmm12, xmm12
jmp 0x140071a67
vaddss xmm12, xmm9, dword [r14 + 0x3848]
vsubss xmm13, xmm0, xmm12
mov qword [rsp + 0x88], r12
cmp r12, 0xffffffffffffffff
jae 0x140071aaa
mov r13, r12
nop dword [rax]
movzx ecx, byte [r13]
test cl, cl
je 0x140071aa7
lea rax, [r13 + 1]
cmp cl, 0x23
jne 0x140071a96
cmp byte [rax], cl
je 0x140071aa7
mov r13, rax
mov qword [rsp + 0x88], rax
cmp rax, 0xffffffffffffffff
jb 0x140071a80
mov r13, rdx
xor eax, eax
mov dword [r14 + 0x4750], eax
call fcn.140044d40
mov rcx, r12
call fcn.140041f20
mov eax, dword [r14 + 0x5b00]
mov dword [rsp + 0x98], eax
test eax, eax
jne 0x140071aeb
movsxd rcx, dword [rbx + 0xf0]
mov rax, qword [rbx + 0xf8]
mov ecx, dword [rax + rcx*4 - 4]
mov dword [r14 + 0x5b00], ecx
mov dword [rsp + 0x90], esi
test sil, 0x20
je 0x140071b04
and esi, 0xff9fffff
or esi, 0x100008
test sil, 8
jne 0x140071b14
mov edx, esi
mov rcx, r13
call fcn.140075e00
test esi, 0x700000
jne 0x140071b2a
mov eax, dword [r14 + 0x5afc]
and eax, 0x700000
or esi, eax
test esi, 0x1800000
jne 0x140071b40
mov eax, dword [r14 + 0x5afc]
and eax, 0x1800000
or esi, eax
test esi, 0x6000000
jne 0x140071b56
mov eax, dword [r14 + 0x5afc]
and eax, 0x6000000
or esi, eax
test esi, 0x18000000
jne 0x140071b6c
mov eax, dword [r14 + 0x5afc]
and eax, 0x18000000
or esi, eax
mov eax, dword [r14 + 0x5afc]
and eax, 0xe00fffff
or esi, eax
mov dword [rsp + 0x78], esi
mov eax, esi
shr eax, 1
not al
and al, 1
movzx edx, al
mov dword [rsp + 0x44], edx
mov r15d, esi
shr r15d, 0x13
and r15b, 1
lea ecx, [rdx + 3]
mov dword [rsp + 0x48], ecx
vmovss xmm6, dword [r13]
vmovss dword [rsp + 0x120], xmm6
vmovss xmm7, dword [r13 + 4]
vmovss dword [rsp + 0x124], xmm7
vmovss xmm8, dword [r13 + 8]
vmovss dword [rsp + 0x128], xmm8
vmovss xmm11, dword [0x14010e67c]
test al, al
je 0x140071be0
vmovss xmm5, dword [r13 + 0xc]
jmp 0x140071be5
vmovaps xmm5, xmm11
vmovss dword [rsp + 0x12c], xmm5
mov eax, esi
and eax, 0x10100000
cmp eax, 0x10100000
jne 0x140071c32
lea rax, [rsp + 0x128]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x124]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x120]
vmovaps xmm2, xmm8
vmovaps xmm1, xmm7
vmovaps xmm0, xmm6
call fcn.140035630
jmp 0x140071c98
mov eax, esi
and eax, 0x8200000
cmp eax, 0x8200000
jne 0x140071cc4
lea rax, [rsp + 0x128]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x124]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x120]
vmovaps xmm2, xmm8
vmovaps xmm1, xmm7
vmovaps xmm0, xmm6
call fcn.140035550
lea r9, [rsp + 0x128]
lea r8, [rsp + 0x124]
lea rdx, [rsp + 0x120]
mov rcx, r13
call fcn.1400718c0
mov edx, dword [rsp + 0x44]
mov ecx, dword [rsp + 0x48]
vmovss xmm6, dword [rsp + 0x120]
vmovss xmm7, dword [rsp + 0x124]
vmovss xmm8, dword [rsp + 0x128]
vmovss xmm5, dword [rsp + 0x12c]
vcmpless xmm0, xmm10, xmm6
vmovss xmm4, dword [0x14010e63c]
vmovss xmm3, dword [0x14010e85c]
vblendvps xmm0, xmm3, xmm4, xmm0
vmovss xmm2, dword [0x14010e7f4]
vfmadd231ss xmm0, xmm6, xmm2
vcvttss2si eax, xmm0
mov dword [rsp + 0x130], eax
vcmpless xmm0, xmm10, xmm7
vblendvps xmm1, xmm3, xmm4, xmm0
vfmadd231ss xmm1, xmm7, xmm2
vcvttss2si eax, xmm1
mov dword [rsp + 0x134], eax
vcmpless xmm0, xmm10, xmm8
vblendvps xmm1, xmm3, xmm4, xmm0
vfmadd231ss xmm1, xmm8, xmm2
vcvttss2si eax, xmm1
mov dword [rsp + 0x138], eax
vcmpless xmm0, xmm10, xmm5
vblendvps xmm1, xmm3, xmm4, xmm0
vfmadd231ss xmm1, xmm5, xmm2
vcvttss2si eax, xmm1
mov dword [rsp + 0x13c], eax
xor dil, dil
mov byte [rsp + 0x40], dil
mov byte [rsp + 0x41], dil
vmovss xmm7, dword [rbx + 0x100]
vmovss dword [rsp + 0x80], xmm7
vmovss xmm14, dword [rbx + 0x104]
xor r10d, r10d
vmovd xmm1, r10d
vmovd xmm0, dword [r14 + 0x3888]
vpcmpeqd xmm2, xmm0, xmm1
vblendvps xmm0, xmm10, xmm12, xmm2
vaddss xmm1, xmm7, xmm0
vmovss dword [rbx + 0x100], xmm1
vmovss xmm15, dword [0x14010e868]
test esi, 0x300000
je 0x140072428
test sil, 0x20
jne 0x140072428
lea eax, [rcx - 1]
vxorps xmm4, xmm4, xmm4
vcvtsi2ss xmm4, xmm4, eax
vmovss xmm3, dword [r14 + 0x3848]
vmovaps xmm1, xmm13
vfnmadd231ss xmm1, xmm3, xmm4
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, ecx
vdivss xmm1, xmm1, xmm0
vcvttss2si eax, xmm1
vxorps xmm2, xmm2, xmm2
vcvtsi2ss xmm2, xmm2, eax
vmaxss xmm7, xmm2, xmm11
vaddss xmm0, xmm3, xmm7
vmovaps xmm1, xmm13
vfnmadd231ss xmm1, xmm4, xmm0
vcvttss2si eax, xmm1
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
vmaxss xmm8, xmm0, xmm11
mov eax, esi
and eax, 0x1000000
mov dword [rsp + 0xf0], eax
lea rdx, str.M:0.000
lea rcx, str.M:000
cmovne rcx, rdx
mov rax, qword [0x1401420d8]
mov qword [rsp + 0x30], r10
mov qword [rsp + 0x28], rcx
vmovss dword [rsp + 0x20], xmm15
vmovss xmm2, dword [rax + 0x3c28]
lea rdx, [rsp + 0x100]
mov rcx, qword [rax + 0x3c20]
call fcn.14005cd30
vmovss xmm0, dword [rsp + 0x100]
vaddss xmm1, xmm0, dword [0x14010e674]
vcvttss2si eax, xmm1
vxorps xmm2, xmm2, xmm2
vcvtsi2ss xmm2, xmm2, eax
vcomiss xmm2, xmm7
setae al
test al, al
je 0x140071e91
xor r10d, r10d
mov r12d, r10d
jmp 0x140071ea5
bt esi, 0x15
mov r10d, 0
mov r12d, r10d
setb r12b
inc r12
mov ebx, r10d
vmovss xmm9, dword [0x14010e5c0]
mov r8d, dword [rsp + 0x48]
test r8d, r8d
je 0x1400720e3
cmp dword [rsp + 0xf0], 0
je 0x140071fd6
vmovd xmm1, r10d
movzx eax, r15b
vmovd xmm0, eax
vpcmpeqd xmm2, xmm0, xmm1
vblendvps xmm6, xmm10, xmm11, xmm2
mov eax, esi
and eax, 8
mov dword [rsp + 0xf0], eax
lea r15, [0x14010d7b0]
lea rdi, [rsp + 0x120]
shl r12, 5
sub r12, r15
lea rax, str._0.3f
add r12, rax
xor r13b, r13b
mov esi, dword [rsp + 0xf0]
nop dword [rax]
test ebx, ebx
je 0x140071f32
vmovss xmm1, dword [r14 + 0x3848]
call fcn.140044a80
mov rcx, qword [0x1401420d8]
or dword [rcx + 0x4750], 1
lea eax, [rbx + 1]
mov ebx, eax
vmovd xmm1, eax
vmovd xmm0, r8d
vpcmpgtd xmm2, xmm0, xmm1
vblendvps xmm0, xmm8, xmm7, xmm2
vmovss dword [rcx + 0x4754], xmm0
mov rax, qword [r15 + r12]
vmovss dword [rsp + 0xf0], xmm6
vmovss dword [rsp + 0xf8], xmm10
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0xf0]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0xf8]
mov qword [rsp + 0x20], rax
vmovaps xmm3, xmm9
mov r8, rdi
mov edx, 8
mov rcx, qword [r15]
call fcn.140069880
or r13b, al
or byte [rsp + 0x41], r13b
test esi, esi
jne 0x140071fbb
call fcn.140046230
add rdi, 4
add r15, 8
mov r8d, dword [rsp + 0x48]
cmp ebx, r8d
jl 0x140071f20
jmp 0x1400720d1
test r8d, r8d
je 0x1400720e3
mov rdi, r10
mov ebx, 0xff
test r15b, r15b
cmovne ebx, r10d
mov eax, esi
and eax, 8
mov dword [rsp + 0x100], eax
shl r12, 5
lea rax, [0x14010d7d0]
add r12, rax
lea r15, [0x14010d7b0]
xor r13b, r13b
mov esi, r10d
mov edx, esi
test esi, esi
je 0x140072029
vmovss xmm1, dword [r14 + 0x3848]
call fcn.140044a80
mov rcx, qword [0x1401420d8]
or dword [rcx + 0x4750], 1
lea eax, [rsi + 1]
mov esi, eax
vmovd xmm1, eax
vmovd xmm0, r8d
vpcmpgtd xmm2, xmm0, xmm1
vblendvps xmm0, xmm8, xmm7, xmm2
vmovss dword [rcx + 0x4754], xmm0
mov rcx, qword [r12 + rdi*8]
mov dword [rsp + 0xf8], ebx
mov dword [rsp + 0xf0], r10d
lea r8, [rsp + 0x130]
lea r8, [r8 + rdx*4]
mov qword [rsp + 0x30], rcx
lea rax, [rsp + 0xf8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0xf0]
mov qword [rsp + 0x20], rax
vmovaps xmm3, xmm11
mov edx, 4
mov rcx, qword [r15 + rdi*8]
call fcn.140069880
or r13b, al
cmp dword [rsp + 0x100], 0
jne 0x1400720ba
call fcn.140046230
inc rdi
mov r8d, dword [rsp + 0x48]
cmp rdi, r8
mov r10d, 0
jl 0x140072015
mov byte [rsp + 0x40], r13b
movzx edi, r13b
mov r13, qword [rsp + 0x50]
mov esi, dword [rsp + 0x78]
cmp byte [rsp + 0x44], 0
je 0x140072175
vmovss xmm1, dword [r14 + 0x3848]
call fcn.140044a80
mov rdx, qword [0x1401420d8]
or dword [rdx + 0x4750], 1
vmovss dword [rdx + 0x4754], xmm8
vmovss dword [rsp + 0x100], xmm11
vmovss dword [rsp + 0xf8], xmm10
lea rax, str.A:_0.3f
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x100]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0xf8]
mov qword [rsp + 0x20], rax
vmovaps xmm3, xmm9
lea r8, [rsp + 0x12c]
mov edx, 8
lea rcx, str.Alpha
call fcn.140069880
or dil, al
mov byte [rsp + 0x40], dil
or byte [rsp + 0x41], dil
mov r12, qword [rsp + 0x58]
vmovss xmm7, dword [rsp + 0x80]
vmovss xmm9, dword [rsp + 0x7c]
xor edi, edi
mov edx, 4
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
mov eax, dword [rdx + rcx]
cmp dword [0x1401438d4], eax
jle 0x140072268
lea rcx, [0x1401438d4]
call fcn.1400e7668
cmp dword [0x1401438d4], 0xffffffff
jne 0x140072268
vpxor xmm0, xmm0, xmm0
vmovups ymmword [0x1401438e0], ymm0
vmovups ymmword [0x140143900], ymm0
vmovss dword [0x1401438e0], xmm10
mov qword [0x1401438e8], rdi
mov qword [0x1401438f0], rdi
mov ecx, gethostname
vzeroupper
call fcn.1400e76e0
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [0x1401438e8], rax
mov qword [0x1401438f8], rdi
vpxor xmm0, xmm0, xmm0
vmovdqu xmmword [0x140143900], xmm0
mov qword [0x140143910], 7
mov qword [0x140143918], 8
vmovss dword [0x1401438e0], xmm11
mov r8, rax
mov edx, reloc.WS2_32.dll_recv
lea rcx, [0x1401438f8]
call fcn.14001ae40
nop
lea rcx, [0x1400f0280]
call fcn.1400e7a14
nop
lea rcx, [0x1401438d4]
call fcn.1400e75fc
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x58], xmm0
vpxor xmm1, xmm1, xmm1
vmovdqu xmmword [rsp + 0x68], xmm1
mov r15, 0xffffffffffffffff
mov r8, r15
inc r8
cmp byte [r12 + r8], 0
jne 0x140072286
mov rdx, r12
lea rcx, [rsp + 0x58]
call fcn.140005fc0
lea rdx, [rsp + 0x58]
cmp qword [rsp + 0x70], 0xf
cmova rdx, qword [rsp + 0x58]
movabs rdi, 0xcbf29ce484222325
mov r9, rdi
xor ecx, ecx
movabs r10, 0x100000001b3
mov r8, qword [rsp + 0x68]
test r8, r8
je 0x1400722e4
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, r10
inc rcx
cmp rcx, r8
jb 0x1400722d1
lea r8, [rsp + 0x58]
lea rdx, [rsp + 0xb0]
call fcn.14007d150
mov rcx, qword [rax + 8]
mov rax, qword [0x1401438e8]
mov rbx, rax
test rcx, rcx
cmovne rbx, rcx
mov rcx, qword [rsp + 0x70]
cmp rcx, 0xf
jbe 0x140072350
lea rdx, [rcx + 1]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140072344
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007271d
call fcn.1400e7a2c
mov rax, qword [0x1401438e8]
cmp rbx, rax
jne 0x14007272c
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x100], xmm0
vpxor xmm1, xmm1, xmm1
vmovdqu xmmword [rsp + 0x110], xmm1
mov r8, r15
inc r8
cmp byte [r12 + r8], 0
jne 0x140072376
mov rdx, r12
lea rcx, [rsp + 0x100]
call fcn.140005fc0
nop
vmovups ymm1, ymmword [rsp + 0x100]
vmovups ymmword [rsp + 0xc8], ymm1
vmovdqu xmm0, xmmword [0x14010e910]
vmovdqu xmmword [rsp + 0x110], xmm0
mov byte [rsp + 0x100], 0
vmovss dword [rsp + 0xe8], xmm10
lea r8, [rsp + 0xc8]
lea rdx, [rsp + 0x58]
vzeroupper
call fcn.14007c210
nop
mov rdx, qword [rsp + 0xe0]
cmp rdx, 0xf
jbe 0x14007263c
inc rdx
mov rcx, qword [rsp + 0xc8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140072636
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140072636
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
bt esi, 0x16
jae 0x140072189
test sil, 0x20
jne 0x140072189
mov ebx, 0xff
test dl, dl
je 0x1400724c8
mov edx, dword [rsp + 0x13c]
test edx, edx
jns 0x140072459
mov edx, r10d
jmp 0x14007245e
cmp edx, ebx
cmovg edx, ebx
mov ecx, dword [rsp + 0x138]
test ecx, ecx
jns 0x14007246e
mov ecx, r10d
jmp 0x140072473
cmp ecx, ebx
cmovg ecx, ebx
mov eax, dword [rsp + 0x134]
test eax, eax
jns 0x140072483
mov eax, r10d
jmp 0x140072488
cmp eax, ebx
cmovg eax, ebx
mov r9d, dword [rsp + 0x130]
test r9d, r9d
jns 0x14007249a
mov r9d, r10d
jmp 0x1400724a1
cmp r9d, ebx
cmovg r9d, ebx
mov dword [rsp + 0x30], edx
mov dword [rsp + 0x28], ecx
mov dword [rsp + 0x20], eax
lea r8, [0x14010d568]
mov edx, 0x40
lea rcx, [rsp + 0x140]
call fcn.140034d70
jmp 0x14007252c
mov ecx, dword [rsp + 0x138]
test ecx, ecx
jns 0x1400724d8
mov ecx, r10d
jmp 0x1400724dd
cmp ecx, ebx
cmovg ecx, ebx
mov eax, dword [rsp + 0x134]
test eax, eax
jns 0x1400724ed
mov eax, r10d
jmp 0x1400724f2
cmp eax, ebx
cmovg eax, ebx
mov r9d, dword [rsp + 0x130]
test r9d, r9d
jns 0x140072504
mov r9d, r10d
jmp 0x14007250b
cmp r9d, ebx
cmovg r9d, ebx
mov dword [rsp + 0x28], ecx
mov dword [rsp + 0x20], eax
lea r8, [0x14010d5a0]
mov edx, 0x40
lea rcx, [rsp + 0x140]
call fcn.140034d70
mov rax, qword [0x1401420d8]
or dword [rax + 0x4750], 1
vmovss dword [rax + 0x4754], xmm13
vmovss dword [rsp + 0x50], xmm10
vmovss dword [rsp + 0x54], xmm10
xor edi, edi
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], 6
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
mov r9d, 0x40
lea r8, [rsp + 0x140]
xor edx, edx
lea rcx, str.Text
call fcn.14006e2b0
test al, al
je 0x140072622
mov byte [rsp + 0x40], 1
lea rcx, [rsp + 0x140]
nop dword [rax]
movzx eax, byte [rcx]
cmp al, 0x23
je 0x1400725af
cmp al, 0x20
je 0x1400725af
cmp al, 9
jne 0x1400725b4
inc rcx
jmp 0x1400725a0
mov qword [rsp + 0x134], rdi
mov dword [rsp + 0x130], edi
mov dword [rsp + 0x13c], ebx
lea r9, [rsp + 0x134]
lea r8, [rsp + 0x130]
cmp byte [rsp + 0x44], dil
je 0x140072609
lea rax, [rsp + 0x13c]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x138]
mov qword [rsp + 0x20], rax
lea rdx, str._02X_02X_02X_02X
call fcn.140033280
jmp 0x140072622
lea rax, [rsp + 0x138]
mov qword [rsp + 0x20], rax
lea rdx, str._02X_02X_02X
call fcn.140033280
test sil, 8
jne 0x14007218b
call fcn.140046230
jmp 0x14007218b
call fcn.1400e7a2c
nop
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x100], xmm0
vpxor xmm1, xmm1, xmm1
vmovdqu xmmword [rsp + 0x110], xmm1
inc r15
cmp byte [r12 + r15], 0
jne 0x140072656
mov r8, r15
mov rdx, r12
lea rcx, [rsp + 0x100]
call fcn.140005fc0
lea rdx, [rsp + 0x100]
mov r15, qword [rsp + 0x100]
cmp qword [rsp + 0x118], 0xf
cmova rdx, r15
xor ecx, ecx
mov r8, qword [rsp + 0x110]
test r8, r8
je 0x1400726c3
movabs r9, 0x100000001b3
nop dword [rax]
movzx eax, byte [rdx + rcx]
xor rdi, rax
imul rdi, r9
inc rcx
cmp rcx, r8
jb 0x1400726b0
mov r9, rdi
lea r8, [rsp + 0x100]
lea rdx, [rsp + 0x58]
call fcn.14007d150
mov rcx, qword [rax + 8]
mov rbx, qword [0x1401438e8]
test rcx, rcx
cmovne rbx, rcx
mov rax, qword [rsp + 0x118]
cmp rax, 0xf
jbe 0x14007272c
lea rdx, [rax + 1]
mov rax, r15
cmp rdx, 0x1000
jb 0x140072724
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140072724
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r15
call fcn.1400e7a2c
call fcn.1400459c0
movzx eax, al
xor edi, edi
vmovd xmm1, edi
vmovd xmm0, eax
vpcmpeqd xmm2, xmm0, xmm1
vblendvps xmm1, xmm11, xmm10, xmm2
vsubss xmm1, xmm1, dword [rbx + 0x30]
vmovss xmm2, dword [rbx + 0x30]
vfmadd231ss xmm2, xmm1, dword [0x14010e5e8]
vmovss dword [rbx + 0x30], xmm2
mov r15d, edi
mov qword [rsp + 0x50], rdi
test sil, 0x10
jne 0x140072b1e
test sil, 0x20
jne 0x14007278c
cmp dword [r14 + 0x3888], edi
je 0x14007278c
vaddss xmm0, xmm13, dword [r14 + 0x3848]
jmp 0x140072791
vmovaps xmm0, xmm10
vaddss xmm0, xmm7, xmm0
mov rax, qword [rsp + 0xa0]
vmovss dword [rax + 0x100], xmm0
vmovss dword [rax + 0x104], xmm14
cmp byte [rsp + 0x44], dil
je 0x1400727ba
vmovss xmm11, dword [r13 + 0xc]
vmovss xmm0, dword [r13]
vmovss dword [rsp + 0x100], xmm0
vmovss xmm1, dword [r13 + 4]
vmovss dword [rsp + 0x104], xmm1
vmovss xmm0, dword [r13 + 8]
vmovss dword [rsp + 0x108], xmm0
vmovss dword [rsp + 0x10c], xmm11
vmovss xmm1, dword [0x14010e790]
vmovss dword [rsp + 0x58], xmm1
vmovss dword [rsp + 0x5c], xmm1
lea r9, [rsp + 0x58]
mov r8d, esi
lea rdx, [rsp + 0x100]
lea rcx, str.ColorButton
call fcn.140075240
test al, al
je 0x140072892
test sil, 4
jne 0x140072892
vmovups xmm0, xmmword [rsp + 0x100]
vmovups xmmword [r14 + 0x5b14], xmm0
lea rcx, str.picker
call fcn.140045a70
vmovss xmm2, dword [r14 + 0x4770]
vmovss xmm0, dword [r14 + 0x3844]
vaddss xmm1, xmm0, dword [r14 + 0x477c]
mov rax, qword [0x1401420d8]
or dword [rax + 0x47a0], 1
vmovss dword [rax + 0x47b0], xmm2
vmovss dword [rax + 0x47b4], xmm1
mov qword [rax + 0x47b8], rdi
mov dword [rax + 0x47a4], 1
test sil, 8
jne 0x14007289d
call fcn.140046230
vmovss xmm0, dword [0x14010e788]
vmovss dword [rsp + 0x58], xmm0
vmovss dword [rsp + 0x5c], xmm0
lea rdx, [rsp + 0x58]
mov r15d, 2
mov ecx, r15d
call fcn.140035b30
mov rdi, qword [0x1401420d8]
mov dword [rsp + 0x58], 9
vmovss xmm0, dword [rdi + 0x3828]
vmovss dword [rsp + 0x5c], xmm0
lea rcx, [rdi + 0x4820]
lea rdx, [rsp + 0x58]
call fcn.14004d220
mov dword [rdi + 0x3828], 0x40400000
vmovss xmm1, dword [rbx + 0x30]
xor ecx, ecx
call fcn.140035ab0
mov rax, qword [0x1401420d8]
vmovups xmm0, xmmword [rax + 0x38f0]
vmovups xmmword [rsp + 0x58], xmm0
vshufps xmm0, xmm0, xmm0, 0xff
vmulss xmm0, xmm0, dword [rax + 0x37f4]
vmovss dword [rsp + 0x64], xmm0
lea rcx, [rsp + 0x58]
call fcn.1400354a0
mov edx, eax
call fcn.1400359f0
vmovdqu xmm6, xmmword [0x14010e9e0]
mov rbx, qword [0x1401420d8]
mov dword [rsp + 0xb0], 5
vmovups xmm0, xmmword [rbx + 0x3920]
vmovups xmmword [rsp + 0xb4], xmm0
lea rcx, [rbx + 0x4810]
lea rdx, [rsp + 0xb0]
call fcn.14004d310
vmovups xmmword [rbx + 0x3920], xmm6
lea rcx, str.picker
call fcn.140046190
test al, al
je 0x140072aab
mov rax, qword [r14 + 0x3ec8]
cmp word [rax + 0xc2], 1
jne 0x140072a5f
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x88]
cmp r12, rax
je 0x140072a11
xor r8d, r8d
mov rdx, rax
mov rcx, r12
call fcn.1400643e0
mov rcx, qword [0x1401420d8]
mov rax, qword [rcx + 0x3ec8]
mov byte [rax + 0xb8], 1
mov rax, qword [rcx + 0x3ec8]
cmp byte [rax + 0xbb], 0
jne 0x140072a11
vmovss dword [rsp + 0x58], xmm10
vmovss dword [rsp + 0x5c], xmm10
vmovaps xmm1, xmm15
lea rcx, [rsp + 0x58]
call fcn.140044750
mov rax, qword [0x1401420d8]
or dword [rax + 0x4750], 1
vmulss xmm0, xmm9, dword [0x14010e780]
vmovss dword [rax + 0x4754], xmm0
lea r9, [r14 + 0x5b14]
mov r8d, dword [rsp + 0x90]
and r8d, 0x1f890002
or r8d, 0x7401a0
mov rdx, r13
lea rcx, [0x14010cc50]
call fcn.140072ed0
or byte [rsp + 0x40], al
mov rbx, qword [0x1401420d8]
mov rax, qword [rbx + 0x3ec8]
cmp qword [rbx + 0x48a8], rax
jne 0x140072a8f
cmp byte [rbx + 0x4901], 0
je 0x140072a8f
cmp dword [rbx + 0x48e0], 0
jne 0x140072a8f
or dword [rbx + 0x4904], r15d
test dword [rax + 0x14], 0x1000000
je 0x140072a9f
mov byte [rbx + 0x3e56], 1
call fcn.140041360
mov byte [rbx + 0x3e56], 0
mov r8, qword [0x1401420d8]
mov eax, dword [r8 + 0x4810]
cmp eax, r15d
jge 0x140072ad0
mov r15d, eax
test eax, eax
jle 0x140072b0d
nop word [rax + rax]
cdqe
lea rdx, [rax + rax*4]
mov rcx, qword [r8 + 0x4818]
movsxd rax, dword [rcx + rdx*4 - 0x14]
add rax, 0x38d
add rax, rax
vmovups xmm0, xmmword [rcx + rdx*4 - 0x10]
vmovups xmmword [r8 + rax*8], xmm0
dec dword [r8 + 0x4810]
mov eax, dword [r8 + 0x4810]
dec r15d
test r15d, r15d
jg 0x140072ad0
mov ecx, 3
call fcn.140035bc0
mov r15, qword [rsp + 0x50]
xor edi, edi
mov rdx, qword [rsp + 0x88]
cmp r12, rdx
je 0x140072b75
test sil, sil
js 0x140072b75
vmovss xmm1, dword [r14 + 0x3848]
call fcn.140044a80
test sil, 0x20
jne 0x140072b56
vmovss xmm0, dword [rsp + 0x94]
vaddss xmm12, xmm0, dword [r14 + 0x3848]
vaddss xmm0, xmm12, xmm7
mov rax, qword [rsp + 0xa0]
vmovss dword [rax + 0x100], xmm0
xor r8d, r8d
mov rcx, r12
call fcn.1400643e0
movzx ebx, byte [rsp + 0x40]
test bl, bl
je 0x140072d15
test r15, r15
jne 0x140072d15
cmp byte [rsp + 0x41], r15b
jne 0x140072bac
vcvtdq2ps xmm0, xmmword [rsp + 0x130]
vmulps xmm0, xmm0, xmmword [0x14010e9d0]
vmovups xmmword [rsp + 0x120], xmm0
mov eax, esi
and eax, 0x8200000
cmp eax, 0x8200000
jne 0x140072c75
vmovss xmm0, dword [rsp + 0x120]
vmovss dword [r14 + 0x5b08], xmm0
vmovss xmm1, dword [rsp + 0x124]
vmovss dword [r14 + 0x5b0c], xmm1
lea rax, [rsp + 0x128]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x124]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x120]
vmovss xmm2, dword [rsp + 0x128]
call fcn.140035630
mov eax, dword [r14 + 0x5b00]
mov dword [r14 + 0x5b04], eax
vmovss xmm6, dword [rsp + 0x120]
vmovss dword [rsp + 0xa0], xmm6
vmovss xmm7, dword [rsp + 0x124]
vmovss dword [rsp + 0xa4], xmm7
vmovss xmm8, dword [rsp + 0x128]
vmovss dword [rsp + 0xa8], xmm8
vmovss dword [rsp + 0xac], xmm10
lea rcx, [rsp + 0xa0]
call fcn.1400354a0
mov dword [r14 + 0x5b10], eax
jmp 0x140072c90
vmovss xmm8, dword [rsp + 0x128]
vmovss xmm7, dword [rsp + 0x124]
vmovss xmm6, dword [rsp + 0x120]
mov eax, esi
and eax, 0x10100000
cmp eax, 0x10100000
jne 0x140072ced
lea rax, [rsp + 0x128]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x124]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x120]
vmovaps xmm2, xmm8
vmovaps xmm1, xmm7
vmovaps xmm0, xmm6
call fcn.140035550
vmovss xmm8, dword [rsp + 0x128]
vmovss xmm7, dword [rsp + 0x124]
vmovss xmm6, dword [rsp + 0x120]
vmovss dword [r13], xmm6
vmovss dword [r13 + 4], xmm7
vmovss dword [r13 + 8], xmm8
cmp byte [rsp + 0x44], 0
je 0x140072d15
vmovss xmm0, dword [rsp + 0x12c]
vmovss dword [r13 + 0xc], xmm0
cmp dword [rsp + 0x98], 0
jne 0x140072d26
mov dword [r14 + 0x5b00], edi
mov rax, qword [0x1401420d8]
mov rcx, qword [rax + 0x3ec8]
dec dword [rcx + 0xf0]
call fcn.140044e70
test byte [r14 + 0x476c], 1
je 0x140072e0f
bt esi, 9
jb 0x140072e0f
call fcn.14004b020
test al, al
je 0x140072e0f
xor dil, dil
lea rcx, str._COL3F
call fcn.14004b100
test rax, rax
je 0x140072d93
mov rax, qword [rax]
vmovsd xmm0, qword [rax]
vmovsd qword [r13], xmm0
mov eax, dword [rax + 8]
mov dword [r13 + 8], eax
mov dil, 1
movzx ebx, dil
lea rcx, str._COL4F
call fcn.14004b100
test rax, rax
je 0x140072dbc
mov r8d, dword [rsp + 0x48]
shl r8, 2
mov rdx, qword [rax]
mov rcx, r13
call sub.VCRUNTIME140.dll_memcpy
mov bl, 1
jmp 0x140072dc1
test dil, dil
je 0x140072df3
bt esi, 0x1c
jae 0x140072df3
lea rax, [r13 + 8]
lea rcx, [r13 + 4]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
mov r9, r13
vmovss xmm2, dword [r13 + 8]
vmovss xmm1, dword [r13 + 4]
vmovss xmm0, dword [r13]
call fcn.140035550
mov rax, qword [0x1401420d8]
mov byte [rax + 0x4a4e], 0
cmp byte [rax + 0x4a9a], 0
je 0x140072e0f
call fcn.14004add0
test r15, r15
je 0x140072e2f
mov eax, dword [r14 + 0x3f28]
test eax, eax
je 0x140072e2f
cmp qword [r14 + 0x3f48], r15
jne 0x140072e2f
mov dword [r14 + 0x4764], eax
test bl, bl
je 0x140072e63
mov eax, dword [r14 + 0x4764]
test eax, eax
je 0x140072e63
mov rcx, qword [0x1401420d8]
mov edx, dword [rcx + 0x3f28]
cmp edx, eax
je 0x140072e53
test edx, edx
jne 0x140072e5c
mov word [rcx + 0x3f38], 0x101
or dword [rcx + 0x476c], 4
movzx eax, bl
mov rcx, qword [rsp + 0x180]
xor rcx, rsp
call fcn.1400e75a0
lea r11, [rsp + 0x230]
vmovaps xmm6, xmmword [r11 - 0x10]
vmovaps xmm7, xmmword [r11 - 0x20]
vmovaps xmm8, xmmword [r11 - 0x30]
vmovaps xmm9, xmmword [r11 - 0x40]
vmovaps xmm10, xmmword [r11 - 0x50]
vmovaps xmm11, xmmword [r11 - 0x60]
vmovaps xmm12, xmmword [r11 - 0x70]
vmovaps xmm13, xmmword [r11 - 0x80]
vmovaps xmm14, xmmword [r11 - 0x90]
vmovaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret