Function at 0x14001c120
Capabilities:
Accept command line arguments
Create process on windows
Extract resource via kernel32 functions
Set environment variable
Write and execute a file
Write file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x348
movaps xmmword [rsp + 0x320], xmm6
movaps xmmword [rsp + 0x330], xmm7
lea rbx, str.TEMPonefile_PID_TIME
mov r8d, 0x1000
lea rcx, [0x140054120]
mov rdx, rbx
call fcn.14001b290
test al, al
je 0x14001ce32
mov edx, 1
lea rcx, [0x1400034b0]
call qword [sym.imp.KERNEL32.dll_SetConsoleCtrlHandler]
test eax, eax
je 0x14001ced5
mov r8d, 0xa
xor ecx, ecx
mov edx, 0x1b
call qword [sym.imp.KERNEL32.dll_FindResourceA]
xor ecx, ecx
mov rdx, rax
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_LoadResource]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LockResource]
xor ecx, ecx
mov rdx, rbx
mov qword [0x140056168], rax
call qword [sym.imp.KERNEL32.dll_SizeofResource]
mov esi, eax
mov rax, qword [0x140056168]
mov qword [0x140056160], rsi
cmp byte [rax + 1], 0x41
lea rdi, [rax + 3]
movzx ecx, byte [rax + 2]
setne dl
cmp byte [rax], 0x4b
mov qword [0x140056168], rdi
setne al
or dl, al
jne 0x14001cec9
cmp cl, 0x59
jne 0x14001cec9
mov qword [0x140056140], 0
mov ecx, 0x20000
call sub.msvcrt.dll_malloc
mov qword [0x140056120], rax
test rax, rax
je 0x14001ce45
mov ecx, 0x274b8
call sub.msvcrt.dll_malloc
mov r8, rax
test rax, rax
je 0x14001ce3a
mov qword [rax + 0x73b0], 0
pxor xmm0, xmm0
mov qword [rax + 0x73c8], 0
mov qword [rax + 0x72d8], 0
mov qword [rax + 0x73ec], 0
mov qword [rax + 0x73f8], 0
mov qword [rax + 0x7400], 0
mov qword [rax + 0x7420], 0
mov dword [rax + 0x73f4], 0
mov qword [rax + 0x7440], 0
mov dword [rax + 0x7448], 0
mov dword [rax + 0x7454], 0
mov qword [rax + 0x274b0], 0
movups xmmword [rax + 0x73a0], xmm0
movups xmmword [rax + 0x73d8], xmm0
xor eax, eax
cpuid
xor ecx, ecx
cmp eax, 6
ja 0x14001c6b4
lea rax, [rsp + 0x220]
mov dword [r8 + 0x73d0], ecx
movdqa xmm6, xmmword [0x14002a260]
mov qword [r8 + 0x7410], 0x8000001
movd xmm7, dword [0x14002a270]
mov dword [r8 + 0x7458], 0
mov qword [r8 + 0x7388], 0
mov dword [r8 + 0x7390], 1
mov qword [0x140056158], r8
mov qword [0x140056140], rdi
mov qword [0x140056150], 0
mov qword [0x140056148], rsi
mov byte [0x140054100], 1
mov qword [rsp + 0x58], rax
mov rsi, qword [0x140056128]
mov rdi, qword [0x140056130]
lea r15, [0x1400490c0]
lea rbp, [0x140056120]
nop word [rax + rax]
mov r12, qword [rsp + 0x58]
xor r14d, r14d
mov ebx, 2
lea r13, [0x140056140]
nop dword [rax]
mov r8, rsi
sub r8, rdi
jne 0x14001c3fa
mov rcx, qword [0x140056150]
mov rdx, qword [0x140056148]
cmp rcx, rdx
setb al
or r14b, al
je 0x14001c450
mov rcx, qword [0x140056158]
mov r8, r13
mov rdx, rbp
movups xmmword [0x140056128], xmm6
call fcn.140017ea0
mov rsi, qword [0x140056130]
cmp qword [0x140056128], rsi
sete r14b
cmp rax, 0xffffffffffffff88
ja 0x14001c459
xor edi, edi
mov r8, rsi
mov qword [0x140056128], rsi
mov qword [0x140056130], 0
sub r8, rdi
je 0x14001c390
cmp r8, rbx
mov rdx, qword [rbp]
mov rcx, r12
cmova r8, rbx
add rdx, rdi
mov qword [rsp + 0x50], r8
call sub.msvcrt.dll_memcpy
mov r8, qword [rsp + 0x50]
add rdi, r8
add r12, r8
mov qword [0x140056130], rdi
sub rbx, r8
jne 0x14001c388
movzx eax, word [rsp + 0x220]
mov word [r15], ax
test ax, ax
je 0x14001c465
add r15, 2
jmp 0x14001c370
cmp rcx, rdx
je 0x14001c388
lea rcx, str.Error__couldnt_decode_attached_data.
call fcn.1400020e0
lea rax, [0x1400490c0]
movzx ecx, word [rax]
test cx, cx
je 0x14001c6c8
lea rax, [0x140054120]
lea rbx, [0x14004a0c0]
xor edi, edi
movzx r8d, word [rax]
mov word [0x14004a0c0], di
mov rdx, rbx
lea r9, [rax + 0x2000]
test r8w, r8w
jne 0x14001c4b1
jmp 0x14001c4c7
cmp rax, r9
je 0x140024ce4
add rax, 2
mov word [rdx], r8w
add rdx, 2
movzx r8d, word [rax]
test r8w, r8w
jne 0x14001c4a8
xor esi, esi
mov word [rdx], si
cmp word [0x14004a0c0], 0
je 0x14001c6a8
mov edx, 0x1000
lea rax, [0x14004a0c0]
nop word cs:[rax + rax]
add rax, 2
sub rdx, 1
cmp word [rax], 0
jne 0x14001c4f0
test rdx, rdx
je 0x14001cef6
movd dword [rax], xmm7
mov edx, 0x1000
cmp word [0x14004a0c0], 0
lea rax, [0x14004a0c0]
je 0x14001c53f
nop dword [rax]
add rax, 2
sub rdx, 1
cmp word [rax], 0
jne 0x14001c528
test rdx, rdx
je 0x14001cef1
lea r8, [0x1400490c0]
jmp 0x14001c559
test rdx, rdx
je 0x14001cee2
add r8, 2
mov word [rax], cx
add rax, 2
sub rdx, 1
movzx ecx, word [r8]
test cx, cx
jne 0x14001c550
xor r11d, r11d
cmp word [0x1400498c0], 0
mov word [rax], r11w
je 0x14001c655
mov rcx, qword [rsp + 0x58]
mov edx, 8
call fcn.140018a40
mov rsi, qword [rsp + 0x220]
call fcn.14001bc80
xor r9d, r9d
mov edx, 0x40000000
mov rcx, rbx
mov qword [rsp + 0x30], 0
mov r8d, 2
mov dword [rsp + 0x28], 0
mov dword [rsp + 0x20], 2
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbp, rax
cmp rax, 0xffffffffffffffff
je 0x14001ce9e
mov r12, qword [sym.imp.KERNEL32.dll_WriteFile]
mov r13, qword [rsp + 0x58]
lea rdi, [0x1400410c0]
test rsi, rsi
je 0x14001c647
nop word [rax + rax]
mov ebx, 0x8000
mov rcx, rdi
cmp rsi, rbx
cmovbe rbx, rsi
mov rdx, rbx
call fcn.140018a40
mov r9, r13
mov r8d, ebx
mov rdx, rdi
mov dword [rsp + 0x220], 0
mov rcx, rbp
mov qword [rsp + 0x20], 0
call r12
test eax, eax
je 0x14001ce80
sub rsi, rbx
jne 0x14001c600
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x14001c34e
movzx ecx, word [0x14004a0c0]
lea rax, [0x14004a0c0]
lea rdx, [0x1400498c0]
lea r8, [rax + 0x2000]
test cx, cx
jne 0x14001c689
jmp 0x14001c69c
cmp rax, r8
je 0x140024ce4
add rax, 2
mov word [rdx], cx
add rdx, 2
movzx ecx, word [rax]
test cx, cx
jne 0x14001c680
xor r10d, r10d
mov word [rdx], r10w
jmp 0x14001c586
lea rax, [0x14004a0c0]
jmp 0x14001c507
mov eax, 7
cpuid
shr ebx, 8
and ebx, 1
mov ecx, ebx
jmp 0x14001c2d7
mov rcx, qword [0x140056158]
lea rbp, [rsp + 0x1a0]
call fcn.1400127a0
mov rcx, qword [0x140056120]
call sub.msvcrt.dll_free
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
lea r8, [0x140026e4e]
mov edx, pe_nt_image_headers64
mov rcx, rbp
mov r9d, eax
call fcn.140002060
movzx eax, byte [rsp + 0x1a0]
xor r9d, r9d
mov word [rsp + 0x220], r9w
test al, al
je 0x14001c7c3
mov rsi, qword [rsp + 0x58]
mov edi, pe_nt_image_headers64
lea r15, [rsp + 0x7a]
lea r14, [rsp + 0x84]
mov r13d, 1
mov r8d, 2
mov rdx, r15
mov rcx, r14
mov byte [rsp + 0x7a], al
mov byte [rsp + 0x7b], 0
call sub.msvcrt.dll_mbstowcs
cmp rax, 1
jne 0x140024ce4
cmp word [rsi], 0
movzx ecx, word [rsp + 0x84]
mov rdx, rdi
mov rax, rsi
je 0x14001c78e
nop word cs:[rax + rax]
add rax, 2
sub rdx, 1
cmp word [rax], 0
jne 0x14001c780
test rdx, rdx
je 0x140024ce4
mov word [rax], cx
xor ecx, ecx
lea rdx, [rdi - 1]
add rsi, 2
mov word [rax + 2], cx
mov rax, r13
sub rax, rdi
mov rdi, qword [rsp + 0x58]
movzx eax, byte [rdi + rax]
test al, al
je 0x14001c7c3
mov rdi, rdx
jmp 0x14001c73e
xor r8d, r8d
lea rsi, [rsp + 0xe0]
lea r15, [rsp + 0x88]
mov eax, 0x4e
mov word [rsp + 0xe0], r8w
lea r13, str.NUITKA_ONEFILE_PARENT
mov rdi, rsi
mov rcx, r15
lea r12, [r13 + 0x28]
mov r15, rbp
lea r14, [rsp + 0x7c]
mov rbp, rsi
mov rsi, rbx
mov rbx, r12
mov r8d, 2
mov rdx, r14
mov byte [rsp + 0x7c], al
sub rbx, r13
mov byte [rsp + 0x7d], 0
mov qword [rsp + 0x50], rcx
call sub.msvcrt.dll_mbstowcs
cmp rax, 1
jne 0x140024ce4
cmp word [rdi], 0
movzx edx, word [rsp + 0x88]
mov rax, rdi
mov rcx, qword [rsp + 0x50]
je 0x14001c856
nop dword [rax]
add rax, 2
sub rbx, 1
cmp word [rax], 0
jne 0x14001c848
test rbx, rbx
je 0x140024ce4
mov word [rax], dx
add r13, 1
xor edx, edx
add rdi, 2
mov word [rax + 2], dx
movzx eax, byte [r13]
test al, al
jne 0x14001c803
mov rbx, rsi
mov rsi, rbp
mov rdx, qword [rsp + 0x58]
mov rbp, r15
mov rcx, rsi
mov rsi, qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
xor edi, edi
lea r14, [rsp + 0x8c]
call rsi
xor ecx, ecx
lea r15, str.NUITKA_ONEFILE_BINARY
lea r13, [rsp + 0x7e]
call fcn.14001af20
lea r12, [r15 + 0x28]
mov qword [rsp + 0x50], rbp
lea rcx, [rsp + 0x90]
mov rdx, rax
mov qword [rsp + 0x60], rcx
mov eax, 0x4e
mov word [rsp + 0x90], di
mov rbp, rdx
mov rdi, rcx
mov rcx, r14
mov r14, rsi
mov rsi, rbx
mov rbx, r12
mov r8d, 2
mov rdx, r13
mov byte [rsp + 0x7e], al
sub rbx, r15
mov byte [rsp + 0x7f], 0
mov qword [rsp + 0x68], rcx
call sub.msvcrt.dll_mbstowcs
cmp rax, 1
jne 0x140024ce4
cmp word [rdi], 0
movzx edx, word [rsp + 0x8c]
mov rax, rdi
mov rcx, qword [rsp + 0x68]
je 0x14001c93e
nop word [rax + rax]
add rax, 2
sub rbx, 1
cmp word [rax], 0
jne 0x14001c930
test rbx, rbx
je 0x140024ce4
xor r11d, r11d
add r15, 1
mov word [rax], dx
add rdi, 2
mov word [rax + 2], r11w
movzx eax, byte [r15]
test al, al
jne 0x14001c8e5
mov rbx, rsi
mov rdx, rbp
lea rsi, [rsp + 0x130]
mov rcx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x50]
mov rdi, rsi
lea r13, [0x140050100]
call r14
xor eax, eax
mov ecx, 0xd
rep stosq qword [rdi], rax
mov rdi, qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov ecx, 0xfffffff6
mov dword [rsp + 0x16c], 0x100
call rdi
mov ecx, 0xfffffff5
mov qword [rsp + 0x180], rax
call rdi
mov ecx, 0xfffffff4
mov qword [rsp + 0x188], rax
call rdi
mov dword [rsp + 0x130], 0x68
mov qword [rsp + 0x190], rax
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
lea rdx, [rsp + 0x80]
mov rcx, rax
call qword [sym.imp.SHELL32.dll_CommandLineToArgvW]
xor r10d, r10d
xor ecx, ecx
mov r8d, 0x1000
mov word [0x1400310c0], r10w
mov rdi, rax
mov rdx, r13
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x140024ce4
mov r9d, dword [rsp + 0x80]
mov qword [rdi], r13
lea r13, [0x1400310c0]
mov r15d, dword [0x14002a270]
test r9d, r9d
jle 0x14001cc80
test ebx, ebx
jg 0x14001cdee
mov r12, qword [rdi + rbx*8]
lea r14, str.__t_n_v_
mov eax, 0x20
jmp 0x14001ca6a
movzx eax, word [r14 + 2]
add r14, 2
test ax, ax
je 0x14001cc16
movzx edx, ax
mov rcx, r12
call sub.msvcrt.dll_wcschr
test rax, rax
je 0x14001ca58
cmp word [r13], 0
mov edx, 0x8000
lea rax, [0x1400310c0]
je 0x14001caa5
add rax, 2
sub rdx, 1
cmp word [rax], 0
jne 0x14001ca8e
test rdx, rdx
je 0x140024ce4
mov r11d, dword [0x14002a274]
mov rcx, qword [rdi + rbx*8]
mov dword [rax], r11d
movzx edx, word [rcx]
cmp dx, 0x5c
jne 0x14001cb93
xor eax, eax
nop word [rax + rax]
mov r10, rcx
movzx edx, word [rcx + 2]
add rcx, 2
mov r9d, eax
add eax, 1
cmp dx, 0x5c
je 0x14001cac8
test dx, dx
je 0x14001cd6d
cmp dx, 0x22
je 0x14001cbaa
xor r8d, r8d
test eax, eax
jle 0x14001cb45
nop dword [rax]
cmp word [r13], 0
mov edx, 0x8000
lea rax, [0x1400310c0]
je 0x14001cb2f
nop dword [rax]
add rax, 2
sub rdx, 1
cmp word [rax], 0
jne 0x14001cb18
test rdx, rdx
je 0x140024ce4
mov dword [rax], r15d
lea eax, [r8 + 1]
cmp r9d, r8d
je 0x14001cb40
mov r8d, eax
jmp 0x14001cb00
movzx edx, word [r10 + 2]
cmp word [r13], 0
je 0x14001cc0a
mov r8d, 0x8000
lea rax, [0x1400310c0]
nop
add rax, 2
sub r8, 1
cmp word [rax], 0
jne 0x14001cb60
test r8, r8
je 0x14001ceec
xor r8d, r8d
add rcx, 2
mov word [rax], dx
mov word [rax + 2], r8w
movzx edx, word [rcx]
cmp dx, 0x5c
je 0x14001cac0
test dx, dx
je 0x14001cdbb
cmp dx, 0x22
jne 0x14001cb45
mov r9d, 1
jmp 0x14001cbb4
lea r9d, [rax + rax + 1]
test r9d, r9d
jle 0x14001cb45
xor r8d, r8d
nop word [rax + rax]
cmp word [r13], 0
mov edx, 0x8000
lea rax, [0x1400310c0]
je 0x14001cbef
nop dword [rax]
add rax, 2
sub rdx, 1
cmp word [rax], 0
jne 0x14001cbd8
test rdx, rdx
je 0x140024ce4
add r8d, 1
mov dword [rax], r15d
cmp r8d, r9d
jne 0x14001cbc0
cmp word [r13], 0
movzx edx, word [rcx]
jne 0x14001cb51
lea rax, [0x1400310c0]
jmp 0x14001cb77
mov r8, qword [rdi + rbx*8]
cmp word [r13], 0
mov edx, 0x8000
lea rax, [0x1400310c0]
movzx ecx, word [r8]
je 0x14001ce24
add rax, 2
sub rdx, 1
cmp word [rax], 0
jne 0x14001cc36
test cx, cx
je 0x14001cc6a
test rdx, rdx
je 0x140024ce4
add r8, 2
mov word [rax], cx
add rax, 2
sub rdx, 1
movzx ecx, word [r8]
test cx, cx
jne 0x14001cc49
xor edx, edx
mov word [rax], dx
add rbx, 1
cmp dword [rsp + 0x80], ebx
jg 0x14001ca3b
mov rax, qword [rsp + 0x58]
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x38], 0
mov rdx, r13
lea rcx, [0x1400498c0]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x20
mov dword [rsp + 0x20], 1
call qword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
je 0x14001ce5a
mov rcx, qword [rsp + 0x228]
mov rbx, qword [sym.imp.KERNEL32.dll_CloseHandle]
call rbx
mov rcx, qword [rsp + 0x220]
mov dword [rsp + 0x1a0], 0
mov qword [0x1400310a8], rcx
test rcx, rcx
je 0x14001cd3d
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [0x1400310a8]
mov rdx, rbp
call qword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
test eax, eax
jne 0x14001cd29
mov dword [rsp + 0x1a0], 1
mov rcx, qword [0x1400310a8]
call rbx
mov qword [0x1400310a8], 0
call fcn.140003350
mov eax, dword [rsp + 0x1a0]
movaps xmm6, xmmword [rsp + 0x320]
movaps xmm7, xmmword [rsp + 0x330]
add rsp, 0x348
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
add eax, eax
test eax, eax
jle 0x14001cdbb
mov r9d, dword [0x14002a270]
xor r8d, r8d
cmp word [r13], 0
mov ecx, 0x8000
lea rdx, [0x1400310c0]
je 0x14001cdaf
nop dword [rax]
add rdx, 2
sub rcx, 1
cmp word [rdx], 0
jne 0x14001cd98
test rcx, rcx
je 0x140024ce4
add r8d, 1
mov dword [rdx], r9d
cmp r8d, eax
jne 0x14001cd7d
cmp word [r13], 0
mov edx, 0x8000
lea rax, [0x1400310c0]
je 0x14001cde6
add rax, 2
sub rdx, 1
cmp word [rax], 0
jne 0x14001cdcf
test rdx, rdx
je 0x140024ce4
mov dword [rax], r11d
jmp 0x14001cc6f
cmp word [r13], 0
je 0x14001ce51
mov edx, 0x8000
lea rax, [0x1400310c0]
add rax, 2
sub rdx, 1
cmp word [rax], 0
jne 0x14001ce02
test rdx, rdx
je 0x14001cee7
mov dword [rax], 0x20
jmp 0x14001ca43
test cx, cx
jne 0x14001cc52
jmp 0x14001cc6a
mov rcx, rbx
call fcn.1400020b0
mov qword [0x140056158], 0
lea rcx, str.Error__couldnt_allocate_memory.
call fcn.1400020e0
lea rax, [0x1400310c0]
jmp 0x14001ce19
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.Error__couldnt_launch_child
mov edx, eax
call fcn.14001c0b0
mov ecx, 2
call sub.msvcrt.dll_exit
nop dword [rax + rax]
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.Error__couldnt_unpack_file_to_target_path.
mov edx, eax
call fcn.14001c0b0
mov ecx, 2
call sub.msvcrt.dll_exit
mov ecx, 2
call qword [fcn.1400242b0]
lea r8, [0x14004a0c0]
lea rdx, str.Error__failed_to_open__ls_for_writing._n
mov rcx, rax
call fcn.140002080
mov ecx, 2
call sub.msvcrt.dll_exit
lea rcx, str.Error__couldnt_find_attached_data_header.
call fcn.1400020e0
lea rcx, str.Error__failed_to_register_signal_handler.
call fcn.1400020e0
nop
jmp 0x140024ce4
jmp 0x140024ce4
jmp 0x140024ce4
jmp 0x140024ce4
jmp 0x140024ce4