Function at 0x14001daf0
Capabilities:
Get thread local storage value

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x17]
sub rsp, 0xf8
mov rax, qword [0x14009f748]
xor rax, rsp
mov qword [rbp + 7], rax
mov byte [rsp + 0x40], r9b
mov qword [rsp + 0x50], r8
mov qword [rbp - 0x69], rdx
mov rbx, rcx
mov qword [rsp + 0x58], rcx
mov qword [rbp - 0x39], rcx
mov rax, qword [r8 + 8]
mov rcx, qword [r8 + 0x10]
sub rcx, rax
cmp rcx, 8
jae 0x14001db5f
mov qword [rbx], 0
lea rcx, str._bad_command_
call fcn.1400571b0
mov qword [rbx], rax
xor ecx, ecx
jmp 0x14001ea08
mov rax, qword [rax]
lea r14, [0x1400767ac]
mov rcx, r14
test rax, rax
cmovne rcx, rax
call fcn.1400571b0
mov r12, rax
mov qword [rbp - 0x39], rax
xor ecx, ecx
call fcn.140057194
nop
mov ecx, 2
call fcn.1400571a8
mov qword [rsp + 0x30], rax
xor r13d, r13d
mov word [rax], r13w
lea ecx, [r13 + 2]
call fcn.1400571a8
mov rdi, rax
mov word [rax], r13w
lea ecx, [r13 + 2]
call fcn.1400571a8
mov r15, rax
mov qword [rbp - 0x11], rax
mov word [rax], r13w
lea ecx, [r13 + 2]
call fcn.1400571a8
mov rbx, rax
mov word [rax], r13w
mov ecx, dword [0x1400a06b4]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rcx, r14
cmp eax, 0x200
mov rax, qword [0x14012f070]
je 0x14001dbf5
mov rax, qword [0x14012f068]
test rax, rax
cmovne rcx, rax
call fcn.1400571b0
mov qword [rbp - 0x51], rax
mov rsi, rax
mov rcx, rbx
call fcn.140057194
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 8]
mov rdx, qword [rax]
mov rcx, r14
test rdx, rdx
cmovne rcx, rdx
call fcn.1400571b0
mov rbx, rax
mov qword [rbp - 0x71], rax
mov qword [rbp - 0x41], rax
xor ecx, ecx
call fcn.140057194
nop
mov qword [rsp + 0x38], r13
mov rcx, r14
test rbx, rbx
cmovne rcx, rbx
call fcn.1400571b0
mov qword [rsp + 0x38], rax
xor ecx, ecx
call fcn.140057194
nop
mov rcx, qword [rsp + 0x38]
call fcn.140059644
cmp byte [rbp + 0x7f], 0
je 0x14001dd0b
mov r8d, 4
lea rdx, [0x14007e940]
mov rcx, qword [rsp + 0x38]
call fcn.140058f48
test eax, eax
jne 0x14001dc9e
lea rax, [rbx + 8]
mov rcx, r14
test rax, rax
cmovne rcx, rax
jmp 0x14001dd15
mov r8d, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
lea rdx, str.SYSTEMROOT_
mov rcx, qword [rsp + 0x38]
call fcn.140058f48
test eax, eax
jne 0x14001dd0b
mov rbx, qword [rsp + 0x30]
lea rcx, [0x14012e7a0]
call fcn.1400571b0
mov qword [rsp + 0x30], rax
mov rcx, rbx
call fcn.140057194
lea rdx, [0x14007da60]
lea rcx, [rsp + 0x30]
call fcn.140013d60
mov rdx, qword [rbp - 0x71]
add rdx, 0x18
lea rcx, [rsp + 0x30]
call fcn.140013d60
mov rax, qword [rsp + 0x30]
mov rcx, r14
test rax, rax
cmovne rcx, rax
jmp 0x14001dd15
mov rcx, r14
test rbx, rbx
cmovne rcx, rbx
call fcn.1400571b0
mov r13, rax
mov qword [rsp + 0x60], rax
mov rcx, rdi
call fcn.140057194
lea rdi, [0x1400767ac]
mov rcx, rdi
test r13, r13
cmovne rcx, r13
call fcn.1400571b0
mov r14, rax
mov qword [rbp - 9], rax
xor ecx, ecx
call fcn.140057194
nop
mov rcx, r14
call fcn.140059644
mov ecx, dword [0x1400a06b4]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
cmp eax, 0x200
jne 0x14001de68
lea rdx, str._PROGRAMFILES_
mov rcx, r14
call fcn.14004f678
test rax, rax
je 0x14001dde4
lea rdx, str._PROGRAMFILES_
mov rcx, r14
call fcn.14004f678
sub rax, r14
sar rax, 1
mov eax, eax
lea rcx, [rax + rax]
movups xmm0, xmmword [str._ProgramW6432_]
movups xmmword [rcx + r13], xmm0
movsd xmm1, qword [0x14007def0]
movsd qword [rcx + r13 + 0x10], xmm1
mov eax, dword [0x14007def8]
mov dword [rcx + r13 + 0x18], eax
lea rdx, [rcx + 0x1c]
add rdx, r13
nop word [rax + rax]
movzx eax, word [rdx]
mov word [rdx], ax
lea rdx, [rdx + 2]
test ax, ax
jne 0x14001ddd0
jmp 0x14001de68
lea rcx, str._SYSTEMROOT_SYSTEM32
call fcn.1400571b0
mov rdi, rax
xor ecx, ecx
call fcn.140057194
lea rcx, [0x1400a06c0]
call fcn.1400571b0
mov rbx, rax
xor ecx, ecx
call fcn.140057194
mov rcx, rbx
call fcn.140059644
mov rdx, rdi
mov rcx, r14
call fcn.14004f678
test rax, rax
je 0x14001de2d
mov rdx, rdi
jmp 0x14001de40
mov rdx, rbx
mov rcx, r14
call fcn.14004f678
test rax, rax
je 0x14001de51
mov rdx, rbx
lea r8, [0x14012d8b0]
lea rcx, [rsp + 0x60]
call fcn.14001f320
mov rcx, rbx
call fcn.140057194
mov rcx, rdi
call fcn.140057194
lea rdi, [0x1400767ac]
mov rdx, r13
lea rcx, [rsp + 0x48]
call fcn.14002cb60
mov rdx, qword [rax]
mov rbx, qword [rsp + 0x30]
mov rcx, rdi
test rdx, rdx
cmovne rcx, rdx
call fcn.1400571b0
mov qword [rsp + 0x30], rax
mov rcx, rbx
call fcn.140057194
mov rcx, qword [rsp + 0x48]
call fcn.140057194
mov ecx, 2
call fcn.1400571a8
mov r13, rax
mov qword [rbp - 0x61], rax
xor ecx, ecx
mov word [rax], cx
mov rax, qword [rsp + 0x30]
cmp word [rax], cx
je 0x14001e7a9
lea rcx, str.SoftwareMicrosoftWindowsCurrentVersionApp_Paths_
call fcn.1400571b0
mov qword [rbp - 0x49], rax
xor ecx, ecx
call fcn.140057194
nop
mov rdx, qword [rbp - 0x71]
lea rcx, [rbp - 0x49]
call fcn.140013d60
mov ecx, dword [0x1400a06b4]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
or eax, 0x20019
lea rcx, [rbp - 0x59]
mov qword [rsp + 0x20], rcx
mov r9d, eax
xor r8d, r8d
mov rbx, qword [rbp - 0x49]
mov rdx, rbx
mov rcx, qword [0x14009ece8]
call fcn.14001cb20
test eax, eax
jne 0x14001dfe7
lea r8, [rsp + 0x30]
xor edx, edx
mov rcx, qword [rbp - 0x59]
call fcn.14002d3e0
mov rcx, qword [rbp - 0x59]
test eax, eax
jne 0x14001dfe1
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rcx, qword [rsp + 0x58]
mov qword [rcx], 0
mov rax, qword [rsp + 0x30]
test rax, rax
cmovne rdi, rax
mov rcx, rdi
call fcn.1400571b0
mov rdi, qword [rsp + 0x58]
mov qword [rdi], rax
xor ecx, ecx
call fcn.140057194
nop
mov rcx, rbx
call fcn.140057194
nop
mov rcx, r13
call fcn.140057194
nop
mov rcx, r14
call fcn.140057194
nop
mov rcx, qword [rsp + 0x38]
call fcn.140057194
nop
mov rcx, qword [rbp - 0x71]
call fcn.140057194
nop
mov rcx, rsi
call fcn.140057194
nop
mov rcx, r15
call fcn.140057194
nop
mov rcx, qword [rsp + 0x60]
call fcn.140057194
nop
mov rcx, qword [rsp + 0x30]
call fcn.140057194
nop
mov rcx, r12
call fcn.140057194
mov rax, rdi
jmp 0x14001ea10
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rax, qword [rsp + 0x30]
mov rcx, rdi
test rax, rax
cmovne rcx, rax
call fcn.1400571b0
mov qword [rbp - 0x79], rax
mov qword [rbp - 0x61], rax
mov rcx, r13
call fcn.140057194
cmp byte [rsp + 0x40], 0
jne 0x14001e3f1
cmp byte [0x14012dade], 0
jne 0x14001e3f1
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rsp + 0x30]
mov rcx, rdi
test rax, rax
cmovne rcx, rax
call fcn.1400571b0
mov r13, rax
mov qword [rsp + 0x48], rax
xor ecx, ecx
call fcn.140057194
nop
lea rdx, [0x14007ea0c]
mov rcx, qword [rsp + 0x30]
call fcn.14004f678
test rax, rax
je 0x14001e0c8
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetFullPathNameW]
mov edi, eax
test eax, eax
je 0x14001e0c8
lea rax, [rdi*2 + 2]
mov qword [rbp - 1], rax
mov rdx, rax
mov rcx, r13
call fcn.140057234
mov r13, rax
mov qword [rsp + 0x48], rax
test rax, rax
je 0x14001e0b5
mov r8, qword [rbp - 1]
xor edx, edx
mov rcx, rax
call fcn.14004efd0
xor r9d, r9d
mov r8, r13
mov edx, edi
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetFullPathNameW]
cmp byte [0x14012dade], 0
jne 0x14001e340
lea r9, [rsp + 0x38]
mov r8, r13
mov rdx, rsi
mov rcx, qword [rbp - 0x69]
call fcn.14002ce10
test al, al
jne 0x14001e329
mov edx, 0x2f
mov rcx, r13
call fcn.14004f5fc
test rax, rax
jne 0x14001e340
mov rcx, 0xffffffffffffffff
mov rax, rcx
inc rax
cmp word [r13 + rax*2], 0
jne 0x14001e111
cmp rax, 3
jbe 0x14001e340
mov rax, rcx
nop word [rax + rax]
lea rax, [rax + 1]
cmp word [r13 + rax*2], 0
jne 0x14001e130
cmp word [r13 + rax*2 - 8], 0x2e
je 0x14001e340
mov rdi, qword [rsp + 0x38]
lea rcx, [0x1400767ac]
test r13, r13
cmovne rcx, r13
call fcn.1400571b0
mov qword [rsp + 0x38], rax
mov rcx, rdi
call fcn.140057194
mov rcx, qword [rsp + 0x38]
mov rax, 0xffffffffffffffff
nop dword [rax + rax]
inc rax
cmp word [rcx + rax*2], 0
jne 0x14001e180
mov qword [rbp - 1], rax
mov edi, 0x7fffffff
cmp rax, rdi
cmovb rdi, rax
lea rdx, [rax*2 + 0xc]
call fcn.140057234
mov qword [rsp + 0x38], rax
mov r8, qword [rbp - 1]
sub r8, rdi
lea r8, [r8*2 + 2]
lea rdx, [rax + rdi*2]
lea rcx, [rax + 8]
lea rcx, [rcx + rdi*2]
call fcn.140050290
mov rax, qword [rsp + 0x38]
movabs rcx, 0x6d006f0063002e
mov qword [rax + rdi*2], rcx
cmp byte [0x14012dade], 0
jne 0x14001e3e9
lea r9, [rsp + 0x30]
mov r8, qword [rsp + 0x38]
mov rdx, rsi
mov rcx, qword [rbp - 0x69]
call fcn.14002ce10
test al, al
jne 0x14001e3e9
mov rdi, qword [rsp + 0x38]
lea rcx, [0x1400767ac]
test r13, r13
cmovne rcx, r13
call fcn.1400571b0
mov qword [rsp + 0x38], rax
mov rcx, rdi
call fcn.140057194
mov rcx, qword [rsp + 0x38]
mov rax, 0xffffffffffffffff
nop dword [rax + rax]
inc rax
cmp word [rcx + rax*2], 0
jne 0x14001e240
mov qword [rbp - 1], rax
mov edi, 0x7fffffff
cmp rax, rdi
cmovb rdi, rax
lea rdx, [rax*2 + 0xc]
call fcn.140057234
mov qword [rsp + 0x38], rax
mov r8, qword [rbp - 1]
sub r8, rdi
lea r8, [r8*2 + 2]
lea rdx, [rax + rdi*2]
lea rcx, [rax + 8]
lea rcx, [rcx + rdi*2]
call fcn.140050290
mov rax, qword [rsp + 0x38]
movabs rcx, 0x6500780065002e
mov qword [rax + rdi*2], rcx
cmp byte [0x14012dade], 0
jne 0x14001e3e9
lea r9, [rsp + 0x30]
mov r8, qword [rsp + 0x38]
mov rdx, rsi
mov rcx, qword [rbp - 0x69]
call fcn.14002ce10
test al, al
jne 0x14001e3e9
mov rdi, qword [rsp + 0x38]
lea rcx, [0x1400767ac]
test r13, r13
cmovne rcx, r13
call fcn.1400571b0
mov qword [rsp + 0x38], rax
mov rcx, rdi
call fcn.140057194
lea rdx, str..dll
lea rcx, [rsp + 0x38]
call fcn.140013d60
cmp byte [0x14012dade], 0
jne 0x14001e340
lea r9, [rsp + 0x30]
mov r8, qword [rsp + 0x38]
mov rdx, rsi
mov rcx, qword [rbp - 0x69]
call fcn.14002ce10
test al, al
jne 0x14001e3e9
jmp 0x14001e340
cmp byte [0x14012dade], 0
jne 0x14001e340
mov rcx, qword [rsp + 0x38]
call fcn.14002cca0
test al, 0x10
je 0x14001e3be
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp word [rcx], 0x20
jne 0x14001e35a
nop
add rax, 2
cmp word [rax], 0x20
je 0x14001e350
cmp byte [0x14012dade], 0
jne 0x14001e37e
mov edx, 0x20
mov rcx, rax
call fcn.14004f5fc
test rax, rax
je 0x14001e559
mov rcx, qword [rsp + 0x30]
mov edx, 0x20
call fcn.140050058
test rax, rax
je 0x14001e3a1
mov edx, 0x20
mov rcx, qword [rsp + 0x30]
call fcn.140050058
xor ecx, ecx
mov word [rax], cx
mov rcx, r13
call fcn.140057194
cmp byte [0x14012dade], 0
jne 0x14001e3f1
lea rdi, [0x1400767ac]
jmp 0x14001e030
mov rax, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x30]
lea rcx, [0x1400767ac]
test rax, rax
cmovne rcx, rax
call fcn.1400571b0
mov qword [rsp + 0x30], rax
mov rcx, rdi
call fcn.140057194
nop
mov rcx, r13
call fcn.140057194
mov rax, qword [rsp + 0x30]
cmp word [rax], 0x5c
jne 0x14001e4a5
cmp word [rax + 2], 0x5c
je 0x14001e4a5
mov r9d, 2
lea r8, [0x14012e7a0]
lea edx, [r9 + 1]
lea rcx, [rbp - 1]
call fcn.1400570b0
lea rcx, [rbp - 1]
call fcn.1400571b0
mov rdi, rax
xor ecx, ecx
call fcn.140057194
lea rcx, [0x1400767ac]
test rdi, rdi
cmovne rcx, rdi
call fcn.1400571b0
mov qword [rsp + 0x48], rax
xor ecx, ecx
call fcn.140057194
mov rdx, qword [rsp + 0x30]
lea rcx, [rsp + 0x48]
call fcn.140013d60
mov rcx, rdi
call fcn.140057194
mov r13, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x30]
lea rcx, [0x1400767ac]
test r13, r13
cmovne rcx, r13
call fcn.1400571b0
mov qword [rsp + 0x30], rax
mov rcx, rdi
call fcn.140057194
mov rcx, r13
call fcn.140057194
mov rax, qword [rsp + 0x30]
mov qword [rbp - 1], 0
lea r13, [0x1400767ac]
mov rcx, r13
test rax, rax
cmovne rcx, rax
call fcn.1400571b0
mov qword [rbp - 1], rax
xor ecx, ecx
call fcn.140057194
lea rdx, [rbp - 1]
lea rcx, [rsp + 0x48]
call fcn.1400198b0
mov rdx, qword [rax]
mov rdi, qword [rsp + 0x30]
mov rcx, r13
test rdx, rdx
cmovne rcx, rdx
call fcn.1400571b0
mov qword [rsp + 0x30], rax
mov rcx, rdi
call fcn.140057194
mov rcx, qword [rsp + 0x48]
call fcn.140057194
cmp byte [0x14012dade], 0
jne 0x14001e76b
mov rdx, qword [rsp + 0x30]
lea rcx, [rsp + 0x48]
call fcn.1400194b0
mov rdx, qword [rax]
lea rdi, [0x1400767ac]
mov rcx, rdi
test rdx, rdx
cmovne rcx, rdx
call fcn.1400571b0
mov r13, rax
mov qword [rbp - 0x61], rax
mov rcx, qword [rbp - 0x79]
call fcn.140057194
mov rcx, qword [rsp + 0x48]
jmp 0x14001e791
mov rdi, qword [rsp + 0x30]
lea rcx, str.File_not_found:
call fcn.1400571b0
mov qword [rsp + 0x30], rax
mov rcx, rdi
call fcn.140057194
mov rdx, qword [rbp - 0x79]
lea rcx, [rsp + 0x30]
call fcn.140013d60
mov rax, qword [rsp + 0x30]
lea rcx, [0x1400767ac]
test rax, rax
cmovne rcx, rax
call fcn.1400571b0
mov rdi, rax
mov qword [rbp - 1], rax
mov qword [rbp - 0x61], rax
mov rcx, qword [rbp - 0x79]
call fcn.140057194
mov rax, qword [rsp + 0x50]
mov rcx, qword [rax + 8]
mov rcx, qword [rcx]
call fcn.14002cca0
cmp eax, 0xffffffff
je 0x14001e5fb
mov rax, qword [rsp + 0x50]
mov rcx, qword [rax + 8]
mov rcx, qword [rcx]
call fcn.14002cca0
test al, 0x10
je 0x14001e5fb
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 8]
mov rdx, qword [rax]
lea rcx, [0x1400767ac]
test rdx, rdx
cmovne rcx, rdx
jmp 0x14001e6b4
cmp byte [0x14012dade], 0
jne 0x14001e6c9
mov rax, qword [rsp + 0x50]
mov rcx, qword [rax + 8]
mov r8d, 2
lea rdx, [0x14007ea34]
mov rcx, qword [rcx]
call fcn.140058f48
test eax, eax
jne 0x14001e6c9
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 8]
mov rcx, qword [rax]
add rcx, 4
call fcn.14002cca0
cmp eax, 0xffffffff
je 0x14001e665
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 8]
mov rdx, qword [rax]
add rdx, 4
lea rcx, [0x1400767ac]
cmovne rcx, rdx
jmp 0x14001e6b4
mov rdi, qword [rsp + 0x30]
lea rcx, str.File_not_found:
call fcn.1400571b0
mov qword [rsp + 0x30], rax
mov rcx, rdi
call fcn.140057194
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 8]
mov rdx, qword [rax]
add rdx, 4
lea rcx, [rsp + 0x30]
call fcn.140013d60
mov rax, qword [rsp + 0x30]
mov rdi, qword [rbp - 1]
lea rcx, [0x1400767ac]
test rax, rax
cmovne rcx, rax
call fcn.1400571b0
mov qword [rbp - 1], rax
mov rcx, rdi
call fcn.140057194
mov rdi, qword [rbp - 1]
mov rax, qword [rsp + 0x58]
mov qword [rax], 0
test rdi, rdi
lea rcx, [0x1400767ac]
cmovne rcx, rdi
call fcn.1400571b0
mov rcx, qword [rsp + 0x58]
mov qword [rcx], rax
xor ecx, ecx
call fcn.140057194
nop
mov rcx, r13
call fcn.140057194
nop
mov rcx, rbx
call fcn.140057194
nop
mov rcx, rdi
call fcn.140057194
nop
mov rcx, r14
call fcn.140057194
nop
mov rcx, qword [rsp + 0x38]
call fcn.140057194
nop
mov rcx, qword [rbp - 0x71]
call fcn.140057194
nop
mov rcx, rsi
call fcn.140057194
nop
mov rcx, r15
call fcn.140057194
nop
mov rcx, qword [rsp + 0x60]
call fcn.140057194
nop
mov rcx, qword [rsp + 0x30]
call fcn.140057194
nop
mov rcx, r12
call fcn.140057194
mov rax, qword [rsp + 0x58]
jmp 0x14001ea10
mov rax, qword [rsp + 0x30]
lea rdi, [0x1400767ac]
mov rcx, rdi
test rax, rax
cmovne rcx, rax
call fcn.1400571b0
mov r13, rax
mov qword [rbp - 0x61], rax
mov rcx, qword [rbp - 0x79]
call fcn.140057194
mov rcx, r13
call fcn.140059398
nop
mov rcx, rbx
call fcn.140057194
xor ecx, ecx
mov rax, 0xffffffffffffffff
inc rax
cmp word [r13 + rax*2], 0
jne 0x14001e7b0
test rax, rax
je 0x14001e99b
mov qword [rbp - 0x79], rcx
mov rcx, rdi
test r13, r13
cmovne rcx, r13
call fcn.1400571b0
mov qword [rbp - 0x79], rax
xor ecx, ecx
call fcn.140057194
mov r8, qword [rsp + 0x50]
lea rdx, [rbp - 0x79]
lea rcx, [rsp + 0x48]
call fcn.140018db0
mov rdx, qword [rax]
mov rcx, rdi
test rdx, rdx
cmovne rcx, rdx
call fcn.1400571b0
mov rbx, rax
mov qword [rbp - 0x41], rax
mov rcx, qword [rbp - 0x71]
call fcn.140057194
mov rcx, qword [rsp + 0x48]
call fcn.140057194
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp word [rbx + rax*2], 0
jne 0x14001e830
test rax, rax
je 0x14001e94b
mov ecx, 2
call fcn.1400571a8
mov qword [rbp - 0x31], rax
xor ecx, ecx
mov word [rax], cx
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x29], xmm0
mov qword [rbp - 0x19], rcx
lea r8, [rbp - 0x41]
xor edx, edx
lea rcx, [rbp - 0x29]
call fcn.140013390
mov byte [rsp + 0x20], 0
movzx r9d, byte [rsp + 0x40]
lea r8, [rbp - 0x31]
mov rdx, qword [rbp - 0x69]
lea rcx, [rsp + 0x48]
call fcn.14001daf0
mov rdx, qword [rax]
mov rdi, r13
lea rcx, [0x1400767ac]
test rdx, rdx
cmovne rcx, rdx
call fcn.1400571b0
mov r13, rax
mov rcx, rdi
call fcn.140057194
mov rcx, qword [rsp + 0x48]
call fcn.140057194
nop
mov rdi, qword [rbp - 0x29]
test rdi, rdi
je 0x14001e93b
mov rax, qword [rbp - 0x21]
cmp rdi, rax
je 0x14001e8eb
mov r12, rax
mov rcx, qword [rdi]
call fcn.140057194
add rdi, 8
cmp rdi, r12
jne 0x14001e8d2
mov rdi, qword [rbp - 0x29]
mov r12, qword [rbp - 0x39]
mov rax, qword [rbp - 0x19]
sub rax, rdi
sar rax, 3
lea rdx, [rax*8]
mov rax, rdi
cmp rdx, 0x1000
jb 0x14001e923
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001ea30
mov rcx, rdi
call fcn.14004c68c
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x29], xmm0
mov qword [rbp - 0x19], 0
mov rcx, qword [rbp - 0x31]
call fcn.140057194
lea rdi, [0x1400767ac]
mov rax, qword [rsp + 0x58]
mov qword [rax], 0
test r13, r13
cmovne rdi, r13
mov rcx, rdi
call fcn.1400571b0
mov rdi, qword [rsp + 0x58]
mov qword [rdi], rax
xor ecx, ecx
call fcn.140057194
nop
mov rcx, r13
call fcn.140057194
nop
mov rcx, r14
call fcn.140057194
nop
mov rcx, qword [rsp + 0x38]
call fcn.140057194
nop
mov rcx, rbx
jmp 0x14001dfa3
mov rbx, qword [rsp + 0x58]
mov qword [rbx], rcx
mov rcx, rdi
call fcn.1400571b0
mov qword [rbx], rax
xor ecx, ecx
call fcn.140057194
nop
mov rcx, r13
call fcn.140057194
nop
mov rcx, r14
call fcn.140057194
nop
mov rcx, qword [rsp + 0x38]
call fcn.140057194
nop
mov rcx, qword [rbp - 0x71]
call fcn.140057194
nop
mov rcx, rsi
call fcn.140057194
nop
mov rcx, r15
call fcn.140057194
nop
mov rcx, qword [rsp + 0x60]
call fcn.140057194
nop
mov rcx, qword [rsp + 0x30]
call fcn.140057194
nop
mov rcx, r12
call fcn.140057194
mov rax, rbx
mov rcx, qword [rbp + 7]
xor rcx, rsp
call fcn.14004c630
add rsp, 0xf8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.140057470
nop
int3