Function at 0x1400411b0
Capabilities:
Create thread

Disassembly:
push rbp
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x98
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x10], 0xfffffffffffffffe
mov rdi, rdx
mov rsi, rcx
mov rax, qword [rdx]
mov r9, qword [rdx + 8]
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0x20], r8
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0
xor edx, edx
xor r8d, r8d
call sub.kernel32.dll_CreateRemoteThread
test rax, rax
je 0x140041278
mov qword [rbp + 8], rax
mov rcx, rax
mov edx, 0xffffffff
call sub.kernel32.dll_WaitForSingleObject
cmp eax, 0xffffffff
je 0x140041264
lea rdx, [rbp - 0x30]
mov rcx, qword [rbp + 8]
call sub.kernel32.dll_GetExitCodeThread
test eax, eax
je 0x140041264
movsxd rbx, dword [rbp - 0x30]
mov rcx, qword [rbp + 8]
call qword [sym.imp.kernel32.dll_CloseHandle]
cmp rbx, 0xffffffffc0000004
jle 0x1400412ad
lea eax, [rbx + 0x3ffffffb]
cmp eax, 0x91
ja case.default.0x140041262
lea rcx, [0x1401eebec]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
call qword [sym.imp.kernel32.dll_GetLastError]
mov edi, eax
mov rcx, qword [rbp + 8]
call qword [sym.imp.kernel32.dll_CloseHandle]
jmp 0x140041280
call qword [sym.imp.kernel32.dll_GetLastError]
mov edi, eax
shl rdi, 0x20
or rdi, 2
lea rcx, [rbp - 0x30]
mov rdx, rdi
call case.0x140036622.70
mov rax, qword [rbp - 0x10]
mov qword [rsi + 0x20], rax
movups xmm0, xmmword [rbp - 0x30]
movups xmm1, xmmword [rbp - 0x20]
movups xmmword [rsi + 0x10], xmm1
movups xmmword [rsi], xmm0
jmp 0x1400412ee
lea eax, [rbx + 0x7fffffff]
cmp eax, 0x28
ja case.0x140041262.1073741817
movabs rcx, 0x1000000000f
bt rcx, rax
jae case.0x140041262.1073741817
mov ecx, 4
mov dword [rsi], ecx
mov dword [rsi + 4], ebx
mov qword [rsi + 8], rax
movups xmm0, xmmword [rbp - 0x30]
movups xmmword [rsi + 0x10], xmm0
mov rax, qword [rbp - 0x20]
mov qword [rsi + 0x20], rax
add rsp, 0x98
pop rbx
pop rdi
pop rsi
pop r14
pop r15
pop rbp
ret
cmp ebx, 0xc00000fd
je case.0x140041262.1073741819
test ebx, ebx
jne case.0x140041262.1073741817
cmp qword [rdi + 0x28], 7
jbe 0x1400413e2
mov rax, qword [rdi + 0x18]
mov rdi, qword [rdi + 0x20]
mov rbx, qword [rax + 0x10]
call sub.kernel32.dll_GetCurrentProcess
cmp rax, rbx
je 0x14004135d
mov r15, rax
mov rcx, rbx
call sub.kernel32.dll_GetProcessId
mov r14d, eax
test eax, eax
jne 0x140041343
call qword [sym.imp.kernel32.dll_GetLastError]
mov rcx, r15
call sub.kernel32.dll_GetProcessId
mov r15d, eax
test eax, eax
jne 0x140041358
call qword [sym.imp.kernel32.dll_GetLastError]
cmp r14d, r15d
jne 0x140041377
mov rax, qword [rdi]
jmp 0x1400413b7
mov rax, rbx
shl rax, 0x20
or rax, 2
mov ecx, 3
jmp 0x1400412d5
mov qword [rbp], 0
mov rax, rbp
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x38]
mov r9d, 8
mov rcx, rbx
mov rdx, rdi
call sub.kernel32.dll_ReadProcessMemory
test eax, eax
je 0x1400413cb
mov qword [rbp - 0x40], 8
cmp qword [rbp], 8
jne 0x140041433
mov rax, qword [rbp - 0x38]
test rax, rax
je 0x140041419
mov qword [rsi + 8], rax
mov dword [rsi], 8
jmp 0x1400412ee
call qword [sym.imp.kernel32.dll_GetLastError]
shl rax, 0x20
lea rdx, [rax + 2]
lea rcx, [rbp - 0x30]
jmp 0x14004128f
lea rax, str.read_out_of_bounds
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x28], 1
lea rax, str.called__Result::unwrap____on_an__Err__value
mov qword [rbp - 0x20], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x18], xmm0
lea rdx, str.C:Users_andrea.cargogitcheckoutsdll_syringe_3d6504e0b82be040c41bc09_srcprocessmemory_buffer.rs
lea rcx, [rbp - 0x30]
call fcn.140164370
ud2
lea rcx, str.assertion_failed:__injected_module_handle.is_null__
lea r8, str.C:Users_andrea.cargogitcheckoutsdll_syringe_3d6504e0b82be040c41bc09_src_syringe.rsk
mov edx, 0x33
call fcn.140164530
ud2
mov qword [rbp - 0x30], 0
lea r9, str.C:Users_andrea.cargogitcheckoutsdll_syringe_3d6504e0b82be040c41bc09_srcprocessmemory_buffer.rs
mov rcx, rbp
lea rdx, [rbp - 0x40]
lea r8, [rbp - 0x30]
call fcn.140164cd0
ud2