Function at 0x14001d510
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xe0
mov rax, qword [0x14005f040]
xor rax, rsp
mov qword [rbp - 1], rax
mov rsi, qword [0x14005f9d0]
xor r14d, r14d
mov rdi, rcx
mov qword [rbp - 0x49], rsi
mov r15, rsi
mov eax, dword [rsi + 0x1ca8]
and byte [rcx + 0xc1], 0xfb
mov dword [rcx + 0xa4], eax
mov qword [rcx + 0x98], r14
mov qword [rcx + 0x90], r14
cmp qword [rcx + 0x18], r14
jne 0x14001d6d7
call fcn.14001d1b0
xor eax, eax
xorps xmm0, xmm0
mov r8d, eax
mov qword [rbp - 0x29], rax
movups xmmword [rbp - 0x39], xmm0
cmp dword [rdi + 0x30], eax
jle 0x14001d59b
mov rcx, rdi
inc r8d
mov qword [rbp - 0x31], rcx
mov dword [rbp - 0x29], r8d
jmp 0x14001d59f
mov rcx, qword [rbp - 0x31]
mov rdx, qword [rbp - 0x39]
mov eax, dword [rdi + 0x10]
shr eax, 0xb
test al, 1
cmovne rdx, rdi
mov qword [rbp - 0x39], rdx
cmp r8d, 1
jle 0x14001d5be
test rdx, rdx
jne 0x14001d600
mov rax, qword [rdi + 0x20]
test rax, rax
je 0x14001d5df
lea rdx, [rbp - 0x39]
mov rcx, rax
call fcn.14001d130
mov rcx, qword [rbp - 0x31]
mov rdx, qword [rbp - 0x39]
mov r8d, dword [rbp - 0x29]
mov rax, qword [rdi + 0x28]
test rax, rax
je 0x14001d600
lea rdx, [rbp - 0x39]
mov rcx, rax
call fcn.14001d130
mov rcx, qword [rbp - 0x31]
mov rdx, qword [rbp - 0x39]
mov r8d, dword [rbp - 0x29]
cmp r8d, 1
mov qword [rdi + 0x90], rdx
mov rax, r14
mov dword [rdi + 0xa0], r8d
cmove rax, rcx
mov qword [rdi + 0x98], rax
cmp dword [rdi + 0xb0], r14d
jne 0x14001d63a
test rcx, rcx
je 0x14001d6b9
mov eax, dword [rcx]
mov dword [rdi + 0xb0], eax
test rcx, rcx
je 0x14001d6b9
mov rax, qword [rcx + 0x38]
mov r9d, 1
mov rax, qword [rax]
movups xmm0, xmmword [rax + 0x14]
movups xmmword [rdi + 0x64], xmm0
movsd xmm1, qword [rax + 0x24]
movsd qword [rdi + 0x74], xmm1
mov eax, dword [rax + 0x2c]
mov dword [rdi + 0x7c], eax
movsxd rax, dword [rcx + 0x30]
cmp eax, r9d
jle 0x14001d6b9
mov r11, qword [rcx + 0x38]
mov r10, rax
mov r8d, r9d
lea rcx, [r11 + 8]
nop dword [rax + rax]
mov rax, qword [rcx]
cmp byte [rax + 0x2d], r14b
je 0x14001d69a
inc r9d
inc r8
add rcx, 8
cmp r8, r10
jl 0x14001d680
jmp 0x14001d6b9
movsxd rax, r9d
mov rax, qword [r11 + rax*8]
movups xmm0, xmmword [rax + 0x14]
movups xmmword [rdi + 0x64], xmm0
movsd xmm1, qword [rax + 0x24]
movsd qword [rdi + 0x74], xmm1
mov eax, dword [rax + 0x2c]
mov dword [rdi + 0x7c], eax
test rdx, rdx
je 0x14001d6d0
nop
or byte [rdx + 0xc0], 0x10
mov rdx, qword [rdx + 0x18]
test rdx, rdx
jne 0x14001d6c0
mov rsi, qword [0x14005f9d0]
cmp qword [rdi + 0x40], r14
je 0x14001d6f6
mov eax, dword [rdi + 0x10]
shr eax, 0xc
test al, 1
je 0x14001d6f6
mov rcx, rdi
call fcn.14001f850
mov rsi, qword [0x14005f9d0]
xor r8b, r8b
mov qword [rsp + 0x118], rbx
cmp qword [rdi + 0x18], r14
jne 0x14001d8db
test dword [rdi + 0x10], 0x400
jne 0x14001d8db
mov edx, dword [rdi + 0x30]
cmp edx, 1
jg 0x14001d743
cmp qword [rdi + 0x20], r14
jne 0x14001d743
cmp byte [r15 + 0xca], r8b
jne 0x14001d743
test edx, edx
je 0x14001d740
mov rax, qword [rdi + 0x38]
mov rcx, qword [rax]
cmp byte [rcx + 0x2c], r8b
jne 0x14001d743
mov r8b, 1
cmp dword [rdi + 0xa0], r14d
je 0x14001d755
test r8b, r8b
je 0x14001d8db
cmp edx, 1
jne 0x14001d7fd
mov rax, qword [rdi + 0x38]
mov rbx, qword [rax]
mov eax, dword [rdi + 0xbc]
and eax, 0xfffffebf
bts eax, 7
movsd xmm0, qword [rbx + 0x48]
and eax, 0xffffffd7
or eax, 0x10
movsd qword [rdi + 0x48], xmm0
movsd xmm1, qword [rbx + 0x58]
and eax, 0xfffffffa
or eax, 2
movsd qword [rdi + 0x50], xmm1
mov dword [rdi + 0xbc], eax
mov rax, qword [rdi + 0x80]
test rax, rax
je 0x14001d7be
cmp qword [r15 + 0x1f98], rax
jne 0x14001d7be
mov rcx, rbx
call fcn.140011480
mov rsi, qword [0x14005f9d0]
mov rax, qword [rdi + 0x80]
test rax, rax
je 0x14001d7fd
mov rdx, qword [rax + 0x30]
mov qword [rbx + 0x30], rdx
mov rax, qword [rdi + 0x80]
mov ecx, dword [rax + 0x38]
mov dword [rbx + 0x38], ecx
mov rax, qword [rdi + 0x80]
cmp byte [rax + 0xc6], r14b
je 0x14001d7fd
mov qword [rdx + 0x88], rbx
mov byte [rbx + 0xc6], 1
mov rax, qword [rdi + 0x80]
test rax, rax
je 0x14001d820
cmp qword [rax + 0x408], rdi
jne 0x14001d819
mov qword [rax + 0x408], r14
mov qword [rdi + 0x80], r14
cmp dword [rdi + 0x30], 1
jne 0x14001d83e
mov rcx, qword [rdi + 0x38]
mov rax, qword [rcx]
mov qword [rdi + 0x88], rax
mov rax, qword [rcx]
and byte [rax + 0x3e1], 0xfe
cmp qword [rdi + 0x40], r14
je 0x14001d853
mov rcx, rdi
call fcn.14001f850
mov rsi, qword [0x14005f9d0]
movzx eax, byte [rdi + 0xc0]
and al, 0xdf
mov dword [rdi + 0x14], 1
and al, 0xf3
mov dword [rdi + 0xb8], r14d
mov byte [rdi + 0xc0], al
mov eax, dword [r15 + 0x1ca8]
mov dword [rdi + 0xa8], eax
jge 0x14001e32f
cmp dword [rdi + 0x30], 1
jne 0x14001e32f
mov rax, qword [rdi + 0x38]
mov rbx, qword [rax]
mov rcx, rbx
call fcn.140006240
movss xmm1, dword [rsi + 0x3cc]
movss xmm0, dword [rsi + 0x3d0]
subss xmm1, dword [rdi + 0x48]
subss xmm0, dword [rdi + 0x4c]
mov qword [rsi + 0x1d48], rbx
movss dword [rsi + 0x1da0], xmm1
movss dword [rsi + 0x1da4], xmm0
and byte [rdi + 0xc0], 0x7f
jmp 0x14001e32f
test byte [rdi + 0xc0], 1
je 0x14001d96d
cmp qword [rdi + 0x80], r14
jne 0x14001d96d
cmp qword [rdi + 0x18], r14
jne 0x14001d96d
test dword [rdi + 0x10], 0x400
jne 0x14001d96d
cmp qword [rdi + 0x20], r14
jne 0x14001d96d
mov r9d, dword [rdi + 0xb4]
test r9d, r9d
je 0x14001d948
mov r8d, dword [rdi + 0x30]
mov ecx, r14d
test r8d, r8d
jle 0x14001d948
mov rdx, qword [rdi + 0x38]
mov rax, qword [rdx]
cmp dword [rax + 8], r9d
je 0x14001d938
inc ecx
add rdx, 8
cmp ecx, r8d
jl 0x14001d922
jmp 0x14001d948
mov rax, qword [rdi + 0x38]
movsxd rcx, ecx
mov rdx, qword [rax + rcx*8]
test rdx, rdx
jne 0x14001d94f
mov rax, qword [rdi + 0x38]
mov rdx, qword [rax]
cmp byte [rdx + 0xe0], r14b
jg 0x14001d961
cmp byte [rdx + 0xe1], r14b
jle 0x14001d96d
mov dword [rdi + 0x14], 2
jmp 0x14001e32f
mov r8d, dword [rdi + 0x30]
mov qword [rsp + 0x120], r12
mov r12d, dword [rdi + 0x10]
mov qword [rsp + 0x128], r13
movaps xmmword [rsp + 0xb0], xmm9
mov dword [rbp - 0x59], r12d
test r8d, r8d
jle 0x14001d9b6
bt r12d, 0xe
jb 0x14001d9b6
movzx eax, byte [rdi + 0xc0]
mov r9d, r14d
and al, 0xf7
or al, 8
and al, 0xfb
mov byte [rdi + 0xc0], al
jmp 0x14001d9d2
movzx eax, byte [rdi + 0xc0]
mov r9d, r14d
and al, 0xf7
mov ecx, r12d
and al, 0xfb
mov byte [rdi + 0xc0], al
test r8d, r8d
jle 0x14001da34
mov r10, r14
nop word [rax + rax]
mov rax, qword [rdi + 0x38]
lea r10, [r10 + 8]
mov rdx, qword [r10 + rax - 8]
movzx eax, byte [rdi + 0xc0]
movzx ecx, byte [rdx + 0xd0]
shl cl, 2
or cl, al
and al, 0xfb
and cl, 4
xor cl, al
mov byte [rdi + 0xc0], cl
cmp r8d, 1
movzx eax, byte [rdx + 0x3e1]
setg cl
and al, 0xfe
or cl, al
inc r9d
mov byte [rdx + 0x3e1], cl
mov r8d, dword [rdi + 0x30]
cmp r9d, r8d
jl 0x14001d9e0
mov ecx, dword [rdi + 0x10]
bt r12d, 0xf
jae 0x14001da42
and byte [rdi + 0xc0], 0xfb
shr ecx, 0xa
mov rbx, r14
mov byte [rbp - 0x79], bl
xorps xmm9, xmm9
test cl, 1
je 0x14001da60
mov rbx, qword [rdi + 0x80]
jmp 0x14001ddc6
mov rax, qword [rdi + 0x18]
test rax, rax
jne 0x14001dd52
test byte [rdi + 0xc0], 1
je 0x14001dd6a
test r8d, r8d
jle 0x14001da88
mov rax, qword [rdi + 0x38]
mov rcx, qword [rax]
jmp 0x14001da8b
mov rcx, r14
mov eax, dword [rdi + 0xbc]
shl eax, 0x1d
sar eax, 0x1d
cmp eax, 2
jne 0x14001daaf
test rcx, rcx
je 0x14001dadf
or dword [rsi + 0x1e28], 1
movsd xmm0, qword [rcx + 0x48]
jmp 0x14001dabf
cmp eax, 1
jne 0x14001dadf
or dword [rsi + 0x1e28], eax
movsd xmm0, qword [rdi + 0x48]
mov byte [rsi + 0x1e64], 1
mov dword [rsi + 0x1e2c], 1
mov qword [rsi + 0x1e44], r14
movsd qword [rsi + 0x1e3c], xmm0
mov eax, dword [rdi + 0xbc]
shl eax, 0x1a
sar eax, 0x1d
cmp eax, 2
jne 0x14001db02
test rcx, rcx
je 0x14001db25
or dword [rsi + 0x1e28], eax
movsd xmm0, qword [rcx + 0x58]
jmp 0x14001db13
cmp eax, 1
jne 0x14001db25
or dword [rsi + 0x1e28], 2
movsd xmm0, qword [rdi + 0x50]
mov dword [rsi + 0x1e30], 1
movsd qword [rsi + 0x1e4c], xmm0
mov eax, dword [rdi + 0xbc]
and al, 0x38
cmp al, 0x10
jne 0x14001db54
test rcx, rcx
je 0x14001db54
movzx eax, byte [rcx + 0xca]
or dword [rsi + 0x1e28], 8
mov byte [rsi + 0x1e65], al
mov dword [rsi + 0x1e34], 1
mov eax, dword [rdi + 0xbc]
and eax, 0x1c0
cmp eax, 0x80
jne 0x14001db7e
test rcx, rcx
je 0x14001db7e
mov eax, dword [rcx + 0x38]
or dword [rsi + 0x1e28], 0x100
mov dword [rsi + 0x1e8c], eax
or dword [rsi + 0x1e28], 0x400
lea r8, str.DockNode__02X
movups xmm0, xmmword [rdi + 0x64]
mov edx, 0x14
lea rcx, [rbp - 0x19]
movups xmmword [rsi + 0x1e94], xmm0
movsd xmm1, qword [rdi + 0x74]
movsd qword [rsi + 0x1ea4], xmm1
mov eax, dword [rdi + 0x7c]
mov dword [rsi + 0x1eac], eax
mov r9d, dword [rdi]
call fcn.140003160
lea rdx, [rbp - 0x71]
mov qword [rbp - 0x71], rbx
mov ecx, 2
call fcn.140003c30
xor edx, edx
lea rcx, [rbp - 0x19]
mov r8d, 0x20081139
call fcn.14000e290
mov rsi, qword [0x14005f9d0]
lea r9, [0x140051cf0]
movsxd rax, dword [rsi + 0x1ec8]
mov rdx, qword [rsi + 0x1ed0]
lea rcx, [rax + rax*2]
movsxd rax, dword [rdx + rcx*4 - 0xc]
lea rax, [rax + rax*2]
cmp dword [r9 + rax*4], 8
mov r8d, dword [r9 + rax*4 + 8]
jne 0x14001dc4e
mov eax, dword [r9 + rax*4 + 4]
cmp eax, 1
jne 0x14001dc31
mov eax, dword [rdx + rcx*4 - 8]
mov dword [r8 + rsi + 0x1650], eax
jmp 0x14001dc4e
cmp eax, 2
jne 0x14001dc4e
mov eax, dword [rdx + rcx*4 - 8]
mov dword [r8 + rsi + 0x1650], eax
mov eax, dword [rdx + rcx*4 - 4]
mov dword [r8 + rsi + 0x1654], eax
dec dword [rsi + 0x1ec8]
mov rax, qword [rdi + 0x80]
mov rbx, qword [r15 + 0x1d28]
mov byte [rbp - 0x79], 1
test rax, rax
je 0x14001dc80
cmp rax, rbx
je 0x14001dc80
cmp qword [rax + 0x408], rdi
jne 0x14001dc80
mov qword [rax + 0x408], r14
mov qword [rbx + 0x408], rdi
mov qword [rdi + 0x80], rbx
movss xmm0, dword [rbx + 0x48]
movss xmm1, dword [rbx + 0x4c]
movss dword [rbx + 0x110], xmm0
movss dword [rbx + 0x114], xmm1
mov r14, qword [rdi + 0x80]
movss dword [rdi + 0x48], xmm0
movss dword [rdi + 0x4c], xmm1
movsd xmm0, qword [rbx + 0x50]
movsd qword [rdi + 0x50], xmm0
cmp byte [r14 + 0xcd], 0
je 0x14001dd60
movsxd rdx, dword [rsi + 0x1cc8]
mov r8, qword [rsi + 0x1cd0]
mov rcx, qword [r8 + rdx*8 - 8]
cmp rcx, r14
je 0x14001dd60
cmp qword [rcx + 0x390], r14
je 0x14001dd60
add edx, 0xfffffffe
js 0x14001dd60
movsxd rax, edx
lea rcx, [r8 + rax*8]
nop
cmp qword [rcx], r14
je 0x14001dd13
dec edx
sub rcx, 8
sub rax, 1
jns 0x14001dd00
jmp 0x14001dd60
mov eax, dword [rsi + 0x1cc8]
mov r10, r8
sub eax, edx
movsxd r9, edx
dec eax
movsxd r8, eax
lea eax, [rdx + 1]
movsxd rcx, eax
shl r8, 3
lea rdx, [r10 + rcx*8]
lea rcx, [r10 + r9*8]
call sub.VCRUNTIME140.dll_memmove
movsxd rcx, dword [rsi + 0x1cc8]
mov rax, qword [rsi + 0x1cd0]
mov qword [rax + rcx*8 - 8], r14
jmp 0x14001dd60
mov rbx, qword [rax + 0x80]
mov qword [rdi + 0x80], rbx
and dword [rdi + 0xbc], 0xfffffe00
cmp byte [rdi + 0xc0], 0
jge 0x14001ddc6
mov r14, qword [rdi + 0x80]
test r14, r14
je 0x14001ddc6
mov rcx, r14
call fcn.140006240
movss xmm1, dword [rsi + 0x3cc]
movss xmm0, dword [rsi + 0x3d0]
subss xmm1, dword [rdi + 0x48]
subss xmm0, dword [rdi + 0x4c]
mov qword [rsi + 0x1d48], r14
movss dword [rsi + 0x1da0], xmm1
movss dword [rsi + 0x1da4], xmm0
and byte [rdi + 0xc0], 0x7f
mov rsi, qword [0x14005f9d0]
cmp qword [rdi + 0x18], 0
jne 0x14001de40
mov rax, qword [r15 + 0x1f98]
test rax, rax
je 0x14001ddfd
mov rcx, qword [rax + 0x380]
mov rax, qword [rcx + 0x400]
test rax, rax
je 0x14001ddfd
cmp qword [rcx + 0x378], rbx
jne 0x14001ddfd
mov eax, dword [rax]
mov dword [rdi + 0xb0], eax
test rbx, rbx
je 0x14001de40
test r12b, 8
je 0x14001de40
mov rcx, qword [rbx + 0x2a8]
mov r13b, 1
add rcx, 0xa8
call fcn.140030840
mov rdx, qword [rbx + 0x2a8]
mov r8d, 1
lea rcx, [rdx + 0xa8]
call fcn.140030ce0
mov rsi, qword [0x14005f9d0]
jmp 0x14001de43
xor r13b, r13b
cmp qword [rdi + 0x18], 0
mov r15, qword [rdi + 0x90]
movaps xmmword [rsp + 0xd0], xmm6
movaps xmmword [rsp + 0xc0], xmm7
jne 0x14001e001
test rbx, rbx
je 0x14001e001
test r12b, 8
je 0x14001e001
test r15, r15
je 0x14001e001
cmp qword [r15 + 0x20], 0
jne 0x14001e001
cmp dword [r15 + 0x30], 0
jne 0x14001e001
cmp byte [rsi + 0x212c], 0
lea r14, [rsi + 0x2140]
mov eax, 0
mov r12b, 1
cmove r14, rax
test r14, r14
je 0x14001dee7
cmp dword [r14 + 0x14], 0xffffffff
je 0x14001dee7
lea rdx, [r14 + 0x18]
lea rcx, str._IMWINDOW
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
jne 0x14001dee7
mov rdx, qword [r14]
mov rcx, rbx
mov rdx, qword [rdx]
call fcn.14001f8e0
test al, al
jne 0x14001e004
mov rax, qword [r15 + 0x18]
mov rcx, r15
test rax, rax
je 0x14001deff
mov rcx, rax
mov rax, qword [rax + 0x18]
test rax, rax
jne 0x14001def3
movss xmm0, dword [rcx + 0x48]
movss xmm4, dword [r15 + 0x48]
movaps xmm6, xmm0
comiss xmm4, xmm0
movss xmm3, dword [r15 + 0x4c]
movaps xmm2, xmm4
movss xmm7, dword [rcx + 0x4c]
movaps xmm1, xmm3
addss xmm6, dword [rcx + 0x50]
addss xmm2, dword [r15 + 0x50]
addss xmm1, dword [r15 + 0x54]
addss xmm7, dword [rcx + 0x54]
movss xmm5, dword [0x1400563e0]
jbe 0x14001df45
addss xmm4, xmm5
comiss xmm6, xmm2
jbe 0x14001df4e
subss xmm2, xmm5
comiss xmm3, dword [rcx + 0x4c]
jbe 0x14001df58
addss xmm3, xmm5
comiss xmm7, xmm1
jbe 0x14001df61
subss xmm1, xmm5
comiss xmm4, xmm2
ja 0x14001dffb
comiss xmm3, xmm1
ja 0x14001dffb
mov rcx, qword [rbx + 0x378]
subss xmm1, xmm3
subss xmm2, xmm4
movaps xmm0, xmm4
cvttss2si edx, xmm1
cvttss2si r8d, xmm2
mov word [rbp - 0x6f], dx
movaps xmm1, xmm3
mov word [rbp - 0x71], r8w
mov eax, dword [rbp - 0x71]
mov dword [rbx + 0x260], eax
subss xmm0, dword [rbx + 0x48]
subss xmm1, dword [rbx + 0x4c]
cvttss2si eax, xmm0
mov word [rbp - 0x71], ax
cvttss2si eax, xmm1
mov word [rbp - 0x6f], ax
mov eax, dword [rbp - 0x71]
mov dword [rbx + 0x264], eax
mov word [rbp - 0x71], r8w
mov word [rbp - 0x6f], dx
mov eax, dword [rbp - 0x71]
mov dword [rcx + 0x260], eax
subss xmm4, dword [rcx + 0x48]
subss xmm3, dword [rcx + 0x4c]
cvttss2si eax, xmm4
mov word [rbp - 0x71], ax
cvttss2si eax, xmm3
mov word [rbp - 0x6f], ax
mov eax, dword [rbp - 0x71]
mov dword [rcx + 0x264], eax
mov rax, qword [rdi + 0x18]
jmp 0x14001e011
xor r12b, r12b
mov rax, qword [rdi + 0x18]
test rbx, rbx
je 0x14001e0bd
test rax, rax
jne 0x14001e038
mov r8, qword [rbx + 0x50]
xor r9d, r9d
mov rdx, qword [rbx + 0x48]
mov rcx, rdi
call fcn.140021600
mov rcx, rdi
call fcn.140021a40
mov rsi, qword [0x14005f9d0]
cmp qword [rdi + 0x20], 0
jne 0x14001e0bd
cmp dword [rdi + 0x30], 0
jne 0x14001e0bd
test byte [rdi + 0xc0], 1
je 0x14001e0bd
test byte [rbp - 0x59], 8
jne 0x14001e0bd
movups xmm0, xmmword [rsi + 0x1988]
lea rcx, [rbp - 0x71]
movss xmm1, dword [rdi + 0x54]
addss xmm1, dword [rdi + 0x4c]
movups xmmword [rbp - 0x71], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rsi + 0x1650]
movss dword [rbp - 0x55], xmm1
movss dword [rbp - 0x65], xmm0
movss xmm0, dword [rdi + 0x50]
addss xmm0, dword [rdi + 0x48]
movss dword [rbp - 0x59], xmm0
call fcn.140003770
mov rcx, qword [rbx + 0x2a8]
lea r8, [rbp - 0x59]
xor esi, esi
lea rdx, [rdi + 0x48]
mov dword [rsp + 0x28], esi
mov r9d, eax
movss dword [rsp + 0x20], xmm9
call fcn.140030370
jmp 0x14001e0bf
xor esi, esi
test r13b, r13b
mov r13, qword [rsp + 0x128]
je 0x14001e226
test byte [rdi + 0xc0], 1
je 0x14001e226
mov rdx, qword [rbx + 0x2a8]
xor r8d, r8d
lea rcx, [rdx + 0xa8]
call fcn.140030ce0
mov rax, qword [0x14005f9d0]
movups xmm0, xmmword [rax + 0x1738]
movups xmmword [rbp - 0x71], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x1650]
movss dword [rbp - 0x65], xmm0
test r12b, r12b
je 0x14001e1ca
movss xmm4, dword [r15 + 0x48]
lea rcx, [rbp - 0x71]
movss xmm1, dword [r15 + 0x4c]
movaps xmm0, xmm4
movss xmm3, dword [rdi + 0x4c]
movaps xmm2, xmm1
movss xmm7, dword [rdi + 0x48]
movaps xmm6, xmm3
addss xmm0, dword [r15 + 0x50]
addss xmm2, dword [r15 + 0x54]
addss xmm6, dword [rdi + 0x54]
movaps xmm5, xmm7
shufps xmm4, xmm4, 0xe1
addss xmm5, dword [rdi + 0x50]
shufps xmm7, xmm7, 0xe1
movss xmm4, xmm1
movss xmm7, xmm3
shufps xmm4, xmm4, 0xc6
shufps xmm7, xmm7, 0xc6
movss xmm4, xmm0
shufps xmm4, xmm4, 0x27
movss xmm7, xmm5
movss xmm4, xmm2
shufps xmm4, xmm4, 0x39
shufps xmm7, xmm7, 0x27
movups xmmword [rbp - 0x59], xmm4
movss xmm7, xmm6
movdqa xmmword [rbp - 0x39], xmm4
shufps xmm7, xmm7, 0x39
movups xmmword [rbp - 0x59], xmm7
movdqa xmmword [rbp - 0x59], xmm7
call fcn.140003770
mov rcx, qword [rbx + 0x2a8]
lea rdx, [rbp - 0x59]
mov r9d, eax
movss dword [rsp + 0x20], xmm9
lea r8, [rbp - 0x39]
call fcn.140035230
jmp 0x14001e213
movss xmm0, dword [rdi + 0x50]
lea rcx, [rbp - 0x71]
movss xmm1, dword [rdi + 0x4c]
addss xmm0, dword [rdi + 0x48]
addss xmm1, dword [rdi + 0x54]
movss dword [rbp - 0x59], xmm0
movss dword [rbp - 0x55], xmm1
call fcn.140003770
mov rcx, qword [rbx + 0x2a8]
lea rdx, [rdi + 0x48]
mov r9d, eax
mov dword [rsp + 0x28], esi
lea r8, [rbp - 0x59]
movss dword [rsp + 0x20], xmm9
call fcn.140030370
mov rdx, qword [rbx + 0x2a8]
lea rcx, [rdx + 0xa8]
call fcn.140030960
movaps xmm9, xmmword [rsp + 0xb0]
movaps xmm7, xmmword [rsp + 0xc0]
movaps xmm6, xmmword [rsp + 0xd0]
mov r12, qword [rsp + 0x120]
test rbx, rbx
je 0x14001e25f
cmp dword [rdi + 0x30], 0
jle 0x14001e25f
mov rdx, rbx
mov rcx, rdi
call fcn.14001e5b0
jmp 0x14001e276
movzx eax, byte [rdi + 0xc0]
and al, 0xdf
mov dword [rdi + 0xb8], esi
and al, 0xfd
mov byte [rdi + 0xc0], al
mov rax, qword [rdi + 0x40]
test rax, rax
je 0x14001e28e
mov ecx, dword [rax + 0x18]
test ecx, ecx
je 0x14001e28e
mov dword [rdi + 0xb4], ecx
jmp 0x14001e2a4
cmp dword [rdi + 0x30], 0
jle 0x14001e2a4
mov rax, qword [rdi + 0x38]
mov rcx, qword [rax]
mov eax, dword [rcx + 8]
mov dword [rdi + 0xb4], eax
mov rsi, qword [rbp - 0x49]
test rbx, rbx
je 0x14001e2e8
test byte [rdi + 0xc0], 1
je 0x14001e2e8
cmp qword [rdi + 0x18], 0
jne 0x14001e2e8
mov rax, qword [rsi + 0x1d48]
test rax, rax
je 0x14001e2d2
cmp qword [rax + 0x390], rbx
je 0x14001e2e8
mov rcx, rbx
call fcn.140022f00
mov eax, dword [rsi + 0x1ca8]
mov dword [rdi + 0xa8], eax
jmp 0x14001e2f9
mov eax, dword [rsi + 0x1ca8]
mov dword [rdi + 0xa8], eax
test rbx, rbx
je 0x14001e324
mov rcx, qword [rdi + 0x20]
test rcx, rcx
je 0x14001e307
call fcn.14001d510
mov rcx, qword [rdi + 0x28]
test rcx, rcx
je 0x14001e315
call fcn.14001d510
cmp qword [rdi + 0x18], 0
jne 0x14001e324
mov rcx, rbx
call fcn.14000ce60
cmp byte [rbp - 0x79], 0
je 0x14001e32f
call fcn.140011160
mov rbx, qword [rsp + 0x118]
mov rcx, qword [rbp - 1]
xor rcx, rsp
call fcn.14004e840
add rsp, 0xe0
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret