Function at 0x18000dcbc
Capabilities:
Encrypt data using speck

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0xbc8
lea rbp, [rsp + 0x80]
movdqa xmmword [rbp + 0xb30], xmm12
movdqa xmmword [rbp + 0xb20], xmm11
movdqa xmmword [rbp + 0xb10], xmm10
movdqa xmmword [rbp + 0xb00], xmm9
movdqa xmmword [rbp + 0xaf0], xmm8
movdqa xmmword [rbp + 0xae0], xmm7
movaps xmmword [rbp + 0xad0], xmm6
mov qword [rbp + 0xac8], 0xfffffffffffffffe
mov rdi, r9
mov r15, r8
mov r14, rdx
mov r12, rcx
mov qword [rbp + 0xa30], 1
pxor xmm0, xmm0
movdqu xmmword [rbp + 0xa38], xmm0
lea rbx, [rbp + 0x488]
test rdx, rdx
je 0x18000dddb
setns al
js 0x18000f0ab
movzx esi, al
mov al, byte [0x180200ed0]
mov rcx, r14
mov rdx, rsi
call fcn.180010e40
test rax, rax
je 0x18000f0b2
mov r13, rax
mov rcx, rax
mov rdx, r12
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
mov qword [rbp + 0xab0], r13
mov qword [rbp + 0x478], r13
mov qword [rbp + 0x480], r14
mov qword [rbp + 0x488], r14
mov byte [rbp + 0x490], 0
mov al, byte [0x180200ed0]
push 1
pop rdx
mov rcx, r14
call fcn.180010e40
mov rsi, rax
test rax, rax
jne 0x18000ddff
mov byte [rbp + 0xac7], 1
push 1
pop rcx
mov rdx, r14
call fcn.180146460
jmp 0x18000f0d1
push 1
pop rsi
mov qword [rbp + 0x478], 1
movdqu xmmword [rbp + 0x480], xmm0
mov byte [rbp + 0x490], 0
mov qword [rbp + 0xab0], rsi
mov rcx, rsi
mov rdx, r12
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rbp + 0x210]
mov qword [rcx], rsi
mov qword [rcx + 8], r14
mov qword [rcx + 0x10], r14
mov byte [rcx + 0x18], 0
lea rdx, [0x1801c63f8]
push 1
pop r8
call fcn.1800c9f70
lea rcx, [rbp + 0x210]
movdqu xmm0, xmmword [rcx]
movdqu xmm1, xmmword [rcx + 0x10]
movdqa xmmword [rbp + 0x6e0], xmm1
movdqa xmmword [rbp + 0x6d0], xmm0
mov rsi, qword [rbp + 0x6d0]
mov r8, qword [rbp + 0x6e0]
mov byte [rbp + 0xac6], 1
mov rdx, rsi
call fcn.1800c2290
mov rax, qword [rbp + 0x210]
mov r8, qword [rbp + 0x218]
test rax, rax
je 0x18000df80
lea rdx, [rbp + 0x210]
mov rcx, qword [rdx + 0x10]
mov qword [rdx], rax
mov qword [rdx + 8], r8
mov qword [rdx + 0x10], rcx
mov byte [rbp + 0xac6], 1
lea rcx, [rbp + 0x970]
mov r8b, 1
call fcn.1800c9040
mov r13, r15
mov r15, qword [rbp + 0x970]
mov r8, qword [rbp + 0x978]
test r15, r15
je 0x18000df80
mov qword [rbp + 0xa70], r8
mov qword [rbp + 0xab8], rdi
lea rdi, [rbp + 0x210]
mov r8d, 0x250
mov rcx, rdi
xor edx, edx
call sub.VCRUNTIME140.dll_memset
mov qword [rbp + 0xa78], r15
mov rcx, r15
mov rdx, rdi
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov qword [rbp + 0xaa0], rax
cmp rax, 0xffffffffffffffff
je 0x18000dfbe
movdqu xmm0, xmmword [rbx]
movdqa xmmword [rbp + 0x970], xmm0
mov al, byte [0x180200ed0]
push 0x30
pop rcx
push 8
pop rdx
call fcn.180010e40
test rax, rax
je 0x18000f0bf
mov rdi, rax
push 1
pop rax
mov qword [rdi], rax
mov qword [rdi + 8], rax
mov r15, qword [rbp + 0xab0]
mov qword [rdi + 0x10], r15
mov qword [rdi + 0x18], r14
movdqa xmm0, xmmword [rbp + 0x970]
movdqu xmmword [rdi + 0x20], xmm0
lea rcx, [rbp - 0x50]
lea rdx, [rbp + 0x210]
mov r8d, 0x250
call sub.VCRUNTIME140.dll_memcpy
push 1
pop rbx
jmp 0x18000dfd7
cmp qword [rbp + 0x6d8], 0
mov rdi, qword [rbp + 0xab0]
je 0x18000dfa2
push 1
pop rdx
mov rcx, rsi
mov rsi, r8
call fcn.180010ed0
mov r8, rsi
test r14, r14
je 0x18000e02c
push 1
pop rdx
mov rcx, rdi
mov rsi, r8
call fcn.180010ed0
mov r8, rsi
jmp 0x18000e02c
call sub.KERNEL32.dll_GetLastError
mov edi, eax
shl rdi, 0x20
or rdi, 2
push 2
pop rbx
mov r15, qword [rbp + 0xab0]
cmp qword [rbp + 0xa70], 0
je 0x18000dff0
push 2
pop rdx
mov rcx, qword [rbp + 0xa78]
call fcn.180010ed0
cmp qword [rbp + 0x6d8], 0
je 0x18000e005
push 1
pop rdx
mov rcx, rsi
call fcn.180010ed0
cmp qword [rbp + 0xaa0], 0xffffffffffffffff
jne 0x18000e024
cmp qword [rbp + 0x480], 0
je 0x18000e024
push 1
pop rdx
mov rcx, r15
call fcn.180010ed0
cmp ebx, 2
jne 0x18000e098
mov r8, rdi
mov rcx, r8
call fcn.18006b937
mov rsi, rax
lea rdi, fcn.18006b95e
push 1
pop rcx
xor edx, edx
call fcn.18002a11b
mov rax, rsi
mov rdx, rdi
movaps xmm6, xmmword [rbp + 0xad0]
movaps xmm7, xmmword [rbp + 0xae0]
movaps xmm8, xmmword [rbp + 0xaf0]
movaps xmm9, xmmword [rbp + 0xb00]
movaps xmm10, xmmword [rbp + 0xb10]
movaps xmm11, xmmword [rbp + 0xb20]
movaps xmm12, xmmword [rbp + 0xb30]
add rsp, 0xbc8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov qword [rbp + 0x930], r12
mov qword [rbp + 0xa50], r14
lea rsi, [rbp + 0x224]
lea r12, [rbp - 0x50]
mov r8d, 0x254
mov rcx, rsi
mov rdx, r12
call sub.VCRUNTIME140.dll_memcpy
mov qword [rsi - 0x14], rdi
mov rax, qword [rbp + 0xaa0]
mov qword [rsi - 0xc], rax
mov dword [rsi - 4], ebx
lea rbx, [rbp - 0x48]
mov rax, qword [r13 + 0x18]
mov qword [rbp + 0xa70], rax
mov rax, qword [r13 + 0x20]
mov qword [rbp + 0xa78], rax
mov ecx, 0x88
lea rax, [rbp + 0x970]
add rax, rcx
mov qword [rbp + 0x938], rax
mov r14, qword [rbp + 0xab8]
lea rax, [r14 + 0x68]
mov qword [rbp + 0xa28], rax
add rcx, r14
mov qword [rbp + 0x940], rcx
lea rax, [r14 + 8]
mov qword [rbp + 0xaa0], rax
mov qword [rbp + 0xab0], r13
mov rax, qword [r13 + 0x28]
mov qword [rbp + 0x928], rax
lea rdi, [rbp + 0x210]
lea r13, [rbp + 0x478]
lea rsi, [rbp + 0x6d0]
xorps xmm6, xmm6
movdqa xmm7, xmmword [0x18014b700]
movdqa xmm8, xmmword [0x18014b710]
movdqa xmm9, xmmword [0x18014b720]
movdqa xmm10, xmmword [0x18014b6d0]
movdqa xmm11, xmmword [0x18014b6e0]
movdqa xmm12, xmmword [0x18014b6f0]
mov rcx, r12
mov rdx, rdi
call fcn.1800c9a90
cmp qword [rbp - 0x50], 0
je 0x18000ef68
mov r8d, 0x258
mov rcx, r13
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov r15, qword [rbp + 0x478]
test r15, r15
jne 0x18000e1c7
mov rcx, r13
call fcn.1800044a4
jmp 0x18000e18a
mov r8d, 0x258
mov rcx, rsi
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [rbp + 0x6d8]
mov ecx, dword [rbp + 0x6fc]
mov edx, eax
shr edx, 0xa
mov r8d, ecx
shr r8d, 0x1d
and r8d, edx
test r8b, 1
jne 0x18000e293
mov edx, eax
and edx, 0x10
je 0x18000e293
mov rdi, r14
lea rcx, [rbp + 0x970]
mov rdx, rsi
call fcn.1800c9cd0
mov r12, rsi
mov rsi, qword [rbp + 0x970]
mov rdx, qword [rbp + 0x980]
mov rax, qword [rbp + 0xbb0]
mov qword [rsp + 0x20], rax
mov rcx, rsi
mov r8, qword [rbp + 0xab0]
mov r9, r14
call fcn.18000dcbc
mov rcx, rax
call fcn.18000399d
mov rdx, qword [rbp + 0x978]
mov rcx, rsi
mov rsi, r12
call fcn.18002a11b
mov rcx, rsi
call fcn.1800040ee
test r15, r15
jne 0x18000e27c
lea rcx, [rbp + 0x478]
call fcn.1800044a4
lea rdi, [rbp + 0x210]
lea r12, [rbp - 0x50]
lea r13, [rbp + 0x478]
jmp 0x18000e18a
bt eax, 0xa
setae dl
bt ecx, 0x1d
setae cl
test al, 0x10
jne 0x18000e263
or dl, cl
je 0x18000e263
lea rcx, [rbp + 0x970]
mov rdx, rsi
call fcn.1800c9cd0
mov r13, qword [rbp + 0x970]
mov rdx, qword [rbp + 0x980]
mov rcx, r13
call fcn.1800cd8f0
test rax, rax
je 0x18000e340
push 1
pop rsi
test rdx, rdx
mov r14, rdx
je 0x18000e429
test r14, r14
js 0x18000f0ab
mov r12, rax
mov rsi, r14
not rsi
shr rsi, 0x3f
mov al, byte [0x180200ed0]
mov rcx, r14
mov rdx, rsi
call fcn.180010e40
test rax, rax
je 0x18000f0b2
mov rdi, rax
mov rsi, rax
mov rcx, rdi
mov rdx, r12
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
mov rax, rdi
cmp r14, 8
jb 0x18000e408
cmp r14, 0x20
jae 0x18000e34f
xor eax, eax
jmp 0x18000e3c0
mov rdx, qword [rbp + 0x978]
mov rcx, r13
jmp 0x18000e25e
mov rax, r14
and rax, 0xffffffffffffffe0
xor ecx, ecx
movdqu xmm0, xmmword [rsi + rcx]
movdqu xmm1, xmmword [rsi + rcx + 0x10]
movdqa xmm2, xmm0
paddb xmm2, xmm10
movdqa xmm3, xmm1
paddb xmm3, xmm10
movdqa xmm4, xmm2
pminub xmm4, xmm11
pcmpeqb xmm4, xmm2
pand xmm4, xmm12
movdqa xmm2, xmm3
pminub xmm2, xmm11
pcmpeqb xmm2, xmm3
pand xmm2, xmm12
por xmm4, xmm0
por xmm2, xmm1
movdqu xmmword [rsi + rcx], xmm4
movdqu xmmword [rsi + rcx + 0x10], xmm2
add rcx, 0x20
cmp rax, rcx
jne 0x18000e358
cmp rax, r14
je 0x18000e429
test r14b, 0x18
je 0x18000e405
mov rcx, r14
and rcx, 0xfffffffffffffff8
movq xmm0, qword [rsi + rax]
movdqa xmm1, xmm0
paddb xmm1, xmm7
movdqa xmm2, xmm1
pmaxub xmm2, xmm8
pcmpeqb xmm2, xmm1
pandn xmm2, xmm9
por xmm2, xmm0
movq qword [rsi + rax], xmm2
add rax, 8
cmp rcx, rax
jne 0x18000e3c7
cmp rcx, r14
je 0x18000e429
add rcx, rdi
mov rax, rcx
jmp 0x18000e408
add rax, rdi
add rdi, r14
mov cl, byte [rax]
lea edx, [rcx - 0x41]
cmp dl, 0x1a
setb dl
shl dl, 5
or dl, cl
mov byte [rax], dl
lea rcx, [rax + 1]
mov rax, rcx
cmp rcx, rdi
jne 0x18000e40b
mov rcx, rsi
mov rdx, r14
call fcn.1800de390
mov rcx, rax
lea r8, str.src_lib..iplant.rsError:
call fcn.1800e3caf
mov qword [rbp + 0x950], rax
mov qword [rbp + 0x958], rdx
cmp qword [rbp + 0xa70], 0
je 0x18000e5f6
mov r9, rdx
mov rcx, qword [rbp + 0xa78]
mov rdx, qword [rbp + 0x928]
mov r8, rax
call fcn.180004624
mov rcx, qword [rbp + 0xab0]
mov rdx, rax
lea r12, [rbp + 0x950]
mov r8, r12
call fcn.180007ddc
mov rdi, rax
mov rcx, rsi
mov rdx, r14
call fcn.18002a11b
mov rdx, qword [rbp + 0x978]
mov rcx, r13
call fcn.18002a11b
test rdi, rdi
je 0x18000e610
mov rcx, r12
lea rdx, [rbp + 0x6d0]
call fcn.1800c9cd0
mov rcx, qword [rbp + 0x950]
mov rdx, qword [rbp + 0x960]
mov r8, qword [rbp + 0x930]
mov r9, qword [rbp + 0xa50]
call fcn.1800c3a80
test rax, rax
je 0x18000f0d3
mov r14, rax
mov r13, rdx
and qword [rbp + 0x970], 0
mov rax, qword [0x180200050]
lea r15, [rbp + 0x970]
mov rcx, r15
call rax
mov r8, qword [rbp + 0x970]
movabs rcx, 0x19db1ded53e8000
cmp r8, rcx
jl 0x18000e623
movabs rax, 0xfe624e212ac18000
add r8, rax
mov rax, r8
xor edx, edx
mov ecx, 0x989680
div rcx
mov rcx, rdx
xor edx, edx
push 0x3c
pop r9
div r9
mov rsi, rdx
mov rax, r8
xor edx, edx
mov r10d, 0x23c34600
div r10
xor edx, edx
div r9
mov rdi, rdx
mov rax, r8
xor edx, edx
movabs r9, 0x861c46800
div r9
xor edx, edx
push 0x18
pop r9
div r9
shl rdx, 0x30
shl rdi, 0x28
or rdi, rdx
mov r9, r15
xor r15d, r15d
imul rax, rcx, 0x64
shl rsi, 0x20
or rsi, rax
mov rax, r8
xor edx, edx
movabs rcx, 0xc92a69c000
div rcx
lea edx, [rax + 0x253d8c]
mov rcx, r9
call fcn.1800e0c54
cmp byte [rbp + 0x998], 2
jne 0x18000e5d1
mov r15d, dword [rbp + 0x970]
or rdi, rsi
mov ecx, r15d
lea rdx, str.overflow_adding_duration_to_date
push 0x20
pop r8
lea r9, [0x1801c8f00]
call fcn.1800e0e60
mov rsi, r15
jmp 0x18000e7ba
mov rcx, rsi
mov rdx, r14
call fcn.18002a11b
mov rdx, qword [rbp + 0x978]
mov rcx, r13
call fcn.18002a11b
mov r14, qword [rbp + 0xab8]
lea rsi, [rbp + 0x6d0]
jmp 0x18000e263
sub rcx, r8
mov rax, rcx
xor edx, edx
mov r8d, 0x989680
div r8
mov r9, rdx
xor edx, edx
push 0x3c
pop r8
div r8
mov r11, rdx
mov rax, rcx
xor edx, edx
mov r10d, 0x23c34600
div r10
xor edx, edx
div r8
mov r8, rdx
mov rax, rcx
xor edx, edx
movabs r10, 0x861c46800
div r10
xor edx, edx
push 0x18
pop r10
div r10
test r9d, r9d
mov qword [rbp + 0xaa8], r13
je 0x18000e689
xor r11, 0xff
jmp 0x18000e695
test r11, r11
je 0x18000ef45
neg r11
xor r8, 0xff
shl r11, 0x20
movabs rax, 0x3c00000000
add r11, rax
movabs rax, 0xff00000000
and r11, rax
mov qword [rbp + 0xa98], r11
not dl
shl r8, 0x28
movabs rax, 0x3c0000000000
add r8, rax
movabs rax, 0xff0000000000
and r8, rax
lea eax, [rdx + 0x18]
mov r13, rdx
movzx edx, dl
movzx eax, al
test dl, dl
cmovns eax, edx
movzx edi, al
shl rdi, 0x30
or rdi, r8
xor esi, esi
mov rax, rcx
xor edx, edx
movabs rcx, 0xc92a69c000
div rcx
mov edx, 0x253d8c
sub edx, eax
mov rcx, r15
call fcn.1800e0c54
cmp byte [rbp + 0x998], 2
jne 0x18000e72e
mov esi, dword [rbp + 0x970]
or rdi, qword [rbp + 0xa98]
mov ecx, esi
lea rdx, str.overflow_subtracting_duration_from_date
push 0x27
pop r8
lea r9, [0x1801c8f40]
call fcn.1800e0e60
test r13b, r13b
js 0x18000e75c
mov r13, qword [rbp + 0xaa8]
jmp 0x18000e7c1
mov eax, esi
and eax, 0x1ff
cmp eax, 1
mov r13, qword [rbp + 0xaa8]
jne 0x18000e79f
mov r15, rsi
xor esi, esi
cmp r15d, 0xffb1e201
je 0x18000e7a1
sar r15d, 9
dec r15d
mov ecx, r15d
call fcn.1800e0e7f
shl r15d, 9
movzx eax, al
lea esi, [rax + r15]
add esi, 0x16d
jmp 0x18000e7a1
dec esi
mov ecx, esi
lea rdx, [0x1801c8fab]
push 0x1f
pop r8
lea r9, str..cargo_registry_srcindex.crates.io_6f17d22bba15001f_time_0.3.29_srcdate_time.rsresulting_value_is_out_of_range
call fcn.1800e0e60
lea r15, [rbp + 0x970]
lea eax, [rsi - 0xf7800]
cmp eax, 0xffff
ja 0x18000e859
mov rcx, rsi
shr esi, 9
call fcn.1800e0d86
movabs rcx, 0xff00000000000000
mov r8, qword [rbp + 0x948]
and r8, rcx
movzx eax, al
shl rax, 0x10
movzx ecx, si
or rcx, r8
or rcx, rax
movzx eax, dl
shl rax, 0x18
or rax, rcx
mov rcx, rdi
shr rcx, 0x10
mov rdx, rdi
movabs r8, 0xff0000000000
and rdx, r8
movabs r8, 0xff00000000
and rcx, r8
or rcx, rax
or rcx, rdx
shl rdi, 0x10
movabs rax, 0xff000000000000
and rdi, rax
or rdi, rcx
mov qword [rbp + 0x948], rdi
mov qword [rbp + 0xa98], rdi
jmp 0x18000e865
mov eax, 0x10107bc
mov qword [rbp + 0xa98], rax
mov rcx, r14
mov rdx, r13
call fcn.1800de390
mov rcx, rax
lea r8, str.src_lib..iplant.rsError:
call fcn.1800e3caf
mov rdi, rax
mov qword [rbp + 0xaa8], rdx
mov rcx, r15
mov rsi, qword [rbp + 0xab8]
mov rdx, rsi
call fcn.18000286c
mov r14, r15
mov r15, qword [rbp + 0x970]
cmp r15, 4
jne 0x18000f002
mov rcx, rsi
call fcn.180001c82
mov rsi, rax
mov rdx, qword [rax]
mov rcx, r14
call fcn.18004cd53
cmp qword [rbp + 0x970], 0
jne 0x18000f012
mov r12, qword [rbp + 0x978]
mov r13, qword [rbp + 0xaa8]
mov rcx, r13
call fcn.1800e9bdc
mov r14, rax
mov r15, rdx
mov rcx, rax
mov rdx, rdi
mov r8, r13
call sub.VCRUNTIME140.dll_memcpy
lea rax, [rbp + 0x998]
movups xmmword [rax], xmm6
movups xmmword [rax + 0x18], xmm6
movups xmmword [rax + 0x30], xmm6
mov word [rbp + 0xa19], 0x2e03
and word [rbp + 0xa16], 0
mov word [rbp + 0xa08], 1
and dword [rbp + 0x970], 0
mov rcx, qword [rbp + 0xa98]
mov qword [rbp + 0x9d8], rcx
and dword [rbp + 0xa0c], 0
movups xmmword [rax + 0x48], xmm6
mov qword [rbp + 0xa58], r14
mov qword [rbp + 0x978], r14
mov r14, r15
mov qword [rbp + 0x980], r15
mov qword [rbp + 0x988], r13
push 1
pop rax
mov qword [rbp + 0x990], rax
mov qword [rbp + 0x9a8], rax
mov qword [rbp + 0x9c0], rax
mov qword [rbp + 0x9f0], r12
mov rax, qword [rbp + 0x938]
movups xmmword [rax], xmm6
mov dword [rbp + 0xa10], 0x81a40000
mov byte [rbp + 0xa18], 0
mov byte [rbp + 0xa15], 2
mov rcx, qword [rsi]
mov edx, 0x4034b50
call fcn.180007d5c
test rax, rax
jne 0x18000eff6
lea rcx, [rbp + 0x970]
call fcn.1800f2408
mov rcx, qword [rsi]
mov edx, eax
call fcn.180007d3c
test rax, rax
jne 0x18000eff6
mov r13, qword [rbp + 0xa58]
mov rcx, r13
mov rdx, qword [rbp + 0xaa8]
call fcn.180004520
xor al, 1
movzx edx, al
shl edx, 0xb
mov rcx, qword [rsi]
call fcn.180007d3c
test rax, rax
jne 0x18000ef8e
mov cx, 1
call fcn.1800f23c4
mov rcx, qword [rsi]
mov edx, eax
call fcn.180007d3c
test rax, rax
jne 0x18000ef8e
mov r15, qword [rbp + 0xa98]
mov rax, r15
shr rax, 0x31
and eax, 0x7f
mov rcx, r15
shr rcx, 0x23
and ecx, 0x1fe0
or ecx, eax
mov rdx, r15
shr rdx, 0x15
and edx, 0xfffff800
or edx, ecx
mov rcx, qword [rsi]
call fcn.180007d3c
test rax, rax
jne 0x18000ef8e
mov rax, r15
shr rax, 0x18
movzx eax, al
mov ecx, r15d
shr ecx, 0xb
and ecx, 0x1fe0
or ecx, eax
shl r15d, 9
add r15d, 0xffff8800
or r15d, ecx
mov rcx, qword [rsi]
mov edx, r15d
call fcn.180007d3c
test rax, rax
jne 0x18000ef8e
mov rcx, qword [rsi]
xor edx, edx
call fcn.180007d5c
test rax, rax
jne 0x18000ef8e
mov rcx, qword [rsi]
xor edx, edx
call fcn.180007d5c
test rax, rax
jne 0x18000ef8e
mov rcx, qword [rsi]
xor edx, edx
call fcn.180007d5c
test rax, rax
jne 0x18000ef8e
mov rcx, qword [rsi]
mov rdx, qword [rbp + 0xaa8]
call fcn.180007d3c
test rax, rax
jne 0x18000ef8e
mov rcx, qword [rsi]
xor edx, edx
call fcn.180007d3c
test rax, rax
jne 0x18000ef8e
mov rcx, qword [rsi]
mov rdx, r13
mov r8, qword [rbp + 0xaa8]
call fcn.180047c83
test rax, rax
jne 0x18000ef8e
mov rdx, qword [rsi]
lea rsi, [rbp + 0xa60]
mov rcx, rsi
call fcn.18004cd53
cmp qword [rbp + 0xa60], 0
jne 0x18000f086
mov rax, qword [rbp + 0xa68]
mov rcx, rsi
mov rsi, qword [rbp + 0xab8]
mov qword [rsi + 0x78], rax
mov qword [rbp + 0xa00], rax
and qword [rsi + 0x80], 0
call fcn.18002111c
movdqu xmm0, xmmword [rbp + 0xa60]
mov rax, qword [rbp + 0xa28]
movdqu xmmword [rax], xmm0
mov rdx, qword [rsi + 0x98]
cmp rdx, qword [rsi + 0x90]
jne 0x18000eba1
mov rcx, qword [rbp + 0x940]
call fcn.1800066fb
mov rdx, qword [rsi + 0x98]
lea r12, [rbp + 0x970]
imul rcx, rdx, 0xb0
add rcx, qword [rsi + 0x88]
mov r8d, 0xb0
mov rdx, r12
call sub.VCRUNTIME140.dll_memcpy
inc qword [rsi + 0x98]
mov rcx, r12
mov rdx, rsi
mov r8w, 1
xor r9d, r9d
call fcn.180001cd8
mov r15, qword [rbp + 0x970]
cmp r15, 4
jne 0x18000f002
mov cl, 1
mov byte [rsi + 0xb8], cl
lea rax, [rbp + 0x998]
and word [rax - 4], 0
mov rsi, qword [rbp + 0x950]
and dword [rax - 8], 0
mov rdi, qword [rbp + 0x958]
and dword [rbp + 0x970], 0
mov r8, qword [rbp + 0x960]
movups xmmword [rax - 0x20], xmm6
mov qword [rbp + 0x988], 7
mov byte [rbp + 0x990], cl
mov rcx, r12
mov rdx, rsi
call fcn.1800c9a70
mov r15, rax
mov r14, rdx
mov rcx, rsi
mov rdx, rdi
call fcn.18002a11b
test r15, r15
jne 0x18000f092
mov qword [rbp + 0xa48], r14
mov rcx, r12
lea rdx, [rbp + 0xa48]
lea r8, [rbp + 0xa30]
call fcn.1800c9790
cmp qword [rbp + 0x970], 0
jne 0x18000f0a2
mov r14, qword [rbp + 0xa30]
mov r13, qword [rbp + 0xa40]
mov rdi, qword [rbp + 0xab8]
lea rsi, [rbp + 0x6d0]
test r13, r13
je 0x18000ef18
cmp byte [rdi + 0xb8], 0
je case.default.0x18000ece4
mov rax, qword [rdi]
add rax, 0xfffffffffffffffe
cmp rax, 5
push 2
pop rcx
cmovae rax, rcx
lea rdx, [0x18000f3c8]
movsxd rcx, dword [rdx + rax*4]
add rcx, rdx
lea rax, fcn.1800039a7
mov rdx, rdi
jmp rcx
mov cl, 0x27
lea rdx, str.No_file_has_been_started
push 0x18
jmp 0x18000ee74
mov cl, 0xb
lea rdx, [0x18014c174]
push 0x1c
pop r8
call fcn.180063b15
mov rsi, rax
mov qword [rbp + 0xa88], rax
mov qword [rbp + 0xa80], 1
mov rcx, rsi
call fcn.180001a64
cmp al, 0x23
jne 0x18000f025
lea rcx, [rbp + 0xa88]
call fcn.180003ac2
jmp 0x18000ec9d
mov r14, rdi
and qword [rbp + 0xa40], 0
mov rax, qword [rbp + 0xbb0]
inc dword [rax]
mov rcx, qword [rbp + 0xa48]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r15, qword [rbp + 0x478]
jmp 0x18000e263
test r8, r8
je 0x18000ef55
neg r8
xor r11d, r11d
jmp 0x18000e6ba
neg dl
xor eax, eax
mov qword [rbp + 0xa98], rax
xor r8d, r8d
jmp 0x18000e6e1
lea rcx, [rbp + 0x210]
call fcn.180003a2e
mov rcx, qword [rbp + 0xa30]
mov rdx, qword [rbp + 0xa38]
call fcn.18002a11b
xor esi, esi
jmp 0x18000e048
mov rdi, rax
mov rcx, r13
mov rdx, r14
call fcn.18002a11b
xor r15d, r15d
push 1
pop rsi
mov rcx, rsi
xor edx, edx
call fcn.18002a11b
mov rcx, rsi
xor edx, edx
call fcn.18002a11b
mov rcx, rsi
xor edx, edx
call fcn.18002a11b
lea rcx, [rbp + 0x970]
mov qword [rcx + 8], rdi
mov qword [rcx + 0x10], rax
mov qword [rcx], r15
call fcn.180001000
mov rsi, rax
mov rcx, qword [rbp + 0x950]
mov rdx, qword [rbp + 0x958]
call fcn.18002a11b
lea rdi, fcn.180003daf
jmp 0x18000f043
mov rdi, rax
mov r13, qword [rbp + 0xa58]
jmp 0x18000ef91
mov rdi, qword [rbp + 0x978]
mov rax, qword [rbp + 0x980]
jmp 0x18000efc0
mov rdi, qword [rbp + 0x978]
xor r15d, r15d
jmp 0x18000efc0
mov r14, qword [rbp + 0xa48]
mov rcx, rsi
call fcn.18006b937
mov rsi, rax
mov rdi, rdx
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rbx, qword [rbp + 0x478]
lea rcx, [rbp + 0x6d0]
call fcn.1800040ee
test rbx, rbx
jne 0x18000f067
lea rcx, [rbp + 0x478]
call fcn.1800044a4
lea rcx, [rbp + 0x210]
call fcn.180003a2e
mov rcx, qword [rbp + 0xa30]
mov rdx, qword [rbp + 0xa38]
jmp 0x18000e043
mov rdi, qword [rbp + 0xa68]
jmp 0x18000ef91
mov rcx, r14
call fcn.18006b937
mov rsi, rax
mov rdi, rdx
jmp 0x18000f043
mov rsi, qword [rbp + 0x978]
jmp 0x18000f02c
call fcn.180011060
ud2
mov rcx, rsi
mov rdx, r14
call fcn.180146460
ud2
mov qword [rbp + 0xa50], r14
push 8
pop rcx
push 0x30
pop rdx
call fcn.180146460
ud2
lea rax, str.src_lib..iplant.rsError:
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, [0x18014c480]
push 0x2b
pop rdx
lea r8, [rbp + 0x970]
call fcn.180146c00
ud2