Function at 0x1400018f0
Capabilities:
Accept command line arguments
Create directory
Create process on windows
Read file on windows
Set environment variable
Write and execute a file
Write file on windows

Disassembly:
push rbp
push r12
push r15
lea rbp, [rsp - 0xa0]
sub rsp, 0x1a0
mov rax, qword [0x140021008]
xor rax, rsp
mov qword [rbp + 0x80], rax
call fcn.1400065ac
call fcn.1400065b4
mov r8d, 0x1000
lea rdx, [0x1400275b0]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
jne 0x14000198b
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor r15d, r15d
xor edx, edx
mov r8d, eax
mov qword [rsp + 0x30], r15
lea rax, [rsp + 0x50]
mov dword [rsp + 0x28], r15d
mov ecx, 0x1300
mov qword [rsp + 0x20], rax
mov r9d, 0x400
call qword [sym.imp.KERNEL32.dll_FormatMessageA]
lea rcx, str.Error__failed_to_locate_onefile_filename.
call fcn.140006684
mov rcx, qword [rsp + 0x50]
call fcn.140006684
lea eax, [r15 + 1]
jmp 0x140002195
call fcn.140001230
test al, al
je 0x1400021b7
mov r12d, 1
lea rcx, [0x1400018c0]
mov edx, r12d
call qword [sym.imp.KERNEL32.dll_SetConsoleCtrlHandler]
test eax, eax
jne 0x140001a03
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor r15d, r15d
xor edx, edx
mov r8d, eax
mov qword [rsp + 0x30], r15
lea rax, [rsp + 0x50]
mov dword [rsp + 0x28], r15d
mov ecx, 0x1300
mov qword [rsp + 0x20], rax
mov r9d, 0x400
call qword [sym.imp.KERNEL32.dll_FormatMessageA]
lea rcx, str.Error__failed_to_register_signal_handler.
call fcn.140006684
mov rcx, qword [rsp + 0x50]
call fcn.140006684
mov eax, r12d
jmp 0x140002195
mov qword [rsp + 0x190], r14
xor edx, edx
lea r14, [0x140024da0]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
xor r15d, r15d
mov byte [0x140026da8], r12b
mov qword [rsp + 0x30], r15
lea rcx, [0x1400275b0]
mov dword [rsp + 0x28], r15d
xor r9d, r9d
mov r8d, r12d
mov dword [rsp + 0x20], 3
mov edx, 0x80000000
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov qword [0x140024d98], rax
cmp rax, 0xffffffffffffffff
jne 0x140001a72
lea rcx, str.Error__failed_to_access_unpacked_executable.
call fcn.140001660
mov eax, r12d
jmp 0x14000218d
mov qword [rsp + 0x1c0], rbx
lea rcx, [0x1400275b0]
mov qword [rsp + 0x1c8], rsi
xor r8d, r8d
xor edx, edx
mov qword [rsp + 0x1d0], rdi
mov esi, r15d
call qword [sym.imp.KERNEL32.dll_GetShortPathNameW]
mov ebx, eax
lea ecx, [rax + 1]
add rcx, rcx
call fcn.140008e2c
mov rdi, rax
test rax, rax
je 0x1400021bd
mov r8d, ebx
lea rcx, [0x1400275b0]
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetShortPathNameW]
test eax, eax
je 0x140001b32
mov r9, rdi
mov qword [rsp + 0x20], 0xffffffffffffffff
xor r8d, r8d
lea rcx, [rsp + 0x50]
xor edx, edx
call fcn.140008e0c
test eax, eax
jne 0x140001b32
mov rcx, qword [rsp + 0x50]
call fcn.140008e2c
mov rbx, rax
test rax, rax
je 0x1400021c3
mov r8, qword [rsp + 0x50]
lea rcx, [rsp + 0x50]
mov r9, rdi
mov qword [rsp + 0x20], 0xffffffffffffffff
mov rdx, rax
call fcn.140008e0c
mov rcx, rbx
test eax, eax
je 0x140001c9b
call fcn.1400089b4
mov rcx, rdi
call fcn.1400089b4
mov r9d, 2
lea edx, [r9 - 0xa]
mov rcx, qword [0x140024d98]
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
cmp eax, 0xffffffff
je 0x1400021b1
mov rcx, qword [0x140024d98]
mov r9d, r12d
xor r8d, r8d
xor edx, edx
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
mov rcx, qword [0x140024d98]
lea r9, [rsp + 0x60]
mov eax, eax
lea rdx, [rsp + 0x50]
mov r8d, 8
mov qword [0x140026da0], rax
mov qword [rsp + 0x20], r15
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x1400021ff
cmp dword [rsp + 0x60], 8
jne 0x1400021ff
mov rdx, qword [0x140026da0]
xor r9d, r9d
sub rdx, qword [rsp + 0x50]
xor r8d, r8d
mov rcx, qword [0x140024d98]
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
cmp eax, 0xffffffff
je 0x1400021b1
mov rcx, qword [0x140024d98]
lea r9, [rsp + 0x64]
mov r8d, 3
mov qword [rsp + 0x20], r15
lea rdx, [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x1400021f9
cmp dword [rsp + 0x64], 3
jne 0x1400021f9
cmp byte [rsp + 0x58], 0x4b
jne 0x1400021b1
cmp byte [rsp + 0x59], 0x41
jne 0x1400021b1
cmp byte [rsp + 0x5a], 0x58
jne 0x1400021b1
mov qword [rsp + 0x198], r13
lea rsi, [0x1400295b0]
lea r13, [0x140022d90]
mov edi, 0x5c
nop dword [rax]
mov rbx, rsi
mov rcx, qword [0x140024d98]
lea r9, [rsp + 0x68]
mov r8d, 2
mov qword [rsp + 0x20], r15
lea rdx, [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x1400021f3
cmp dword [rsp + 0x68], 2
jne 0x1400021f3
movzx eax, word [rsp + 0x60]
mov word [rbx], ax
test ax, ax
je 0x140001cf5
add rbx, 2
jmp 0x140001c53
xor r9d, r9d
mov dword [rsp + 0x20], r12d
lea r8, [rbp]
lea rdx, str.dont_search_path
call qword [sym.imp.imagehlp.dll_MapAndLoad]
test eax, eax
je 0x140001cda
mov rax, qword [rbp + 0x18]
test rax, rax
je 0x140001cd0
cmp dword [rax + 0x84], 4
jbe 0x140001cd0
mov esi, dword [rax + 0xa8]
lea rcx, [rbp]
call qword [sym.imp.imagehlp.dll_UnMapAndLoad]
mov rcx, rbx
call fcn.1400089b4
test esi, esi
je 0x140001b3a
lea edx, [rsi - 8]
xor r9d, r9d
jmp 0x140001b44
movzx r9d, word [0x1400295b0]
test r9w, r9w
je 0x140002054
mov rbx, rsi
movzx eax, r9w
nop
cmp ax, 0x5c
jne 0x140001e09
cmp word [0x140024da0], r15w
mov edx, 0x1000
mov word [rbx], r15w
mov rcx, r14
mov word [0x140022d90], r15w
mov r8, r13
je 0x140001d61
nop dword [rax + rax]
cmp rdx, r12
jb 0x1400021c9
movzx eax, word [rcx]
dec rdx
add rcx, 2
mov word [r8], ax
add r8, 2
cmp word [rcx], r15w
jne 0x140001d40
mov word [r8], r15w
mov ecx, 0x1000
cmp word [0x140022d90], r15w
mov rax, r13
je 0x140001d96
nop word [rax + rax]
add rax, 2
dec rcx
cmp word [rax], r15w
jne 0x140001d80
cmp rcx, r12
jb 0x1400021c9
mov dword [rax], 0x5c
mov edx, 0x1000
cmp word [0x140022d90], r15w
mov rax, r13
je 0x140001dbd
nop
add rax, 2
dec rdx
cmp word [rax], r15w
jne 0x140001db0
cmp word [0x1400295b0], r15w
je 0x140001def
mov r8, rsi
sub r8, rax
nop dword [rax]
cmp rdx, r12
jb 0x1400021c9
movzx ecx, word [rax + r8]
dec rdx
mov word [rax], cx
add rax, 2
cmp word [rax + r8], r15w
jne 0x140001dd0
xor edx, edx
mov word [rax], r15w
mov rcx, r13
mov word [rbx], di
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
movzx r9d, word [0x1400295b0]
movzx eax, word [rbx + 2]
add rbx, 2
test ax, ax
jne 0x140001d10
cmp word [0x140024da0], r15w
mov edx, 0x1000
mov word [0x140022d90], r15w
mov rcx, r13
je 0x140001e5f
mov r8, r14
sub r8, r13
nop word [rax + rax]
cmp rdx, r12
jb 0x1400021c9
movzx eax, word [rcx + r8]
dec rdx
mov word [rcx], ax
add rcx, 2
cmp word [rcx + r8], r15w
jne 0x140001e40
mov word [rcx], r15w
mov rax, r13
cmp word [0x140022d90], r15w
mov ecx, 0x1000
je 0x140001e96
nop word [rax + rax]
add rax, 2
dec rcx
cmp word [rax], r15w
jne 0x140001e80
cmp rcx, r12
jb 0x1400021c9
mov dword [rax], 0x5c
mov edx, 0x1000
cmp word [0x140022d90], r15w
mov rcx, r13
je 0x140001ebd
nop
add rcx, 2
dec rdx
cmp word [rcx], r15w
jne 0x140001eb0
test r9w, r9w
je 0x140001eef
mov r8, rsi
sub r8, rcx
nop dword [rax]
cmp rdx, r12
jb 0x1400021c9
movzx eax, word [rcx + r8]
dec rdx
mov word [rcx], ax
add rcx, 2
cmp word [rcx + r8], r15w
jne 0x140001ed0
cmp word [0x140026db0], r15w
mov word [rcx], r15w
jne 0x140001f43
cmp word [0x140022d90], r15w
lea rax, [0x140026db0]
mov rcx, rax
mov edx, 0x1000
je 0x140001f3f
mov r8, r13
sub r8, rax
nop dword [rax]
cmp rdx, r12
jb 0x1400021c9
movzx eax, word [rcx + r8]
dec rdx
mov word [rcx], ax
add rcx, 2
cmp word [rcx + r8], r15w
jne 0x140001f20
mov word [rcx], r15w
mov rcx, qword [0x140024d98]
lea r9, [rsp + 0x6c]
mov r8d, 8
mov qword [rsp + 0x20], r15
lea rdx, [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x1400021e7
cmp dword [rsp + 0x6c], 8
jne 0x1400021e7
mov rbx, qword [rsp + 0x70]
xor r9d, r9d
mov qword [rsp + 0x30], r15
mov edx, 0x40000000
mov dword [rsp + 0x28], r15d
mov rcx, r13
mov dword [rsp + 0x20], 2
lea r8d, [r9 + 2]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov r14, rax
cmp rax, 0xffffffffffffffff
je 0x1400021e1
test rbx, rbx
je 0x14000203f
nop word [rax + rax]
mov rcx, qword [0x140024d98]
lea r9, [rsp + 0x50]
mov esi, 0x8000
mov qword [rsp + 0x20], r15
cmp rbx, rsi
lea rdx, [0x140029dc0]
cmovbe esi, ebx
mov r8d, esi
movsxd rdi, esi
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x1400021d5
mov eax, dword [rsp + 0x50]
cmp rax, rdi
jne 0x1400021d5
xor r9d, r9d
mov qword [rsp + 0x20], r15
mov r8d, esi
lea rdx, [0x140029dc0]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x1400021cf
sub rbx, rdi
jne 0x140001fc0
lea edi, [rbx + 0x5c]
lea rsi, [0x1400295b0]
test rbx, rbx
jne 0x1400021db
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea r14, [0x140024da0]
jmp 0x140001c50
mov rcx, qword [0x140024d98]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
lea r8, [0x14001e898]
mov edx, 0x80
mov r9d, eax
lea rcx, [rbp]
call fcn.140001060
lea rdx, [rbp]
lea rcx, str.NUITKA_ONEFILE_PARENT
call qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableA]
xorps xmm0, xmm0
mov dword [rbp - 0x70], 0x68
xor eax, eax
movups xmmword [rbp - 0x6c], xmm0
mov dword [rbp - 0xc], eax
movups xmmword [rbp - 0x5c], xmm0
movups xmmword [rbp - 0x4c], xmm0
movups xmmword [rbp - 0x3c], xmm0
movups xmmword [rbp - 0x2c], xmm0
movups xmmword [rbp - 0x1c], xmm0
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
xor r9d, r9d
lea rcx, [0x140026db0]
mov rdx, rax
xor r8d, r8d
lea rax, [rsp + 0x78]
mov qword [rsp + 0x48], rax
lea rax, [rbp - 0x70]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], 0x20
mov dword [rsp + 0x20], r15d
call qword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
je 0x1400021ed
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0x78]
mov qword [0x140024d90], rcx
mov dword [rsp + 0x5c], r15d
test rcx, rcx
je 0x140002164
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [0x140024d90]
lea rdx, [rsp + 0x5c]
call qword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
mov ecx, dword [rsp + 0x5c]
test eax, eax
cmove ecx, r12d
mov dword [rsp + 0x5c], ecx
mov rcx, qword [0x140024d90]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [0x140024d90], r15
call fcn.1400017d0
mov eax, dword [rsp + 0x5c]
mov r13, qword [rsp + 0x198]
mov rdi, qword [rsp + 0x1d0]
mov rsi, qword [rsp + 0x1c8]
mov rbx, qword [rsp + 0x1c0]
mov r14, qword [rsp + 0x190]
mov rcx, qword [rbp + 0x80]
xor rcx, rsp
call fcn.140002220
add rsp, 0x1a0
pop r15
pop r12
pop rbp
ret
call fcn.1400016f0
int3
call fcn.1400017a0
int3
call fcn.140001730
int3
call fcn.140001730
int3
call fcn.1400060b8
int3
call fcn.1400016d0
int3
call fcn.140001710
int3
call fcn.140001710
int3
call fcn.140001770
int3
call fcn.140001710
int3
call fcn.140001750
int3
call fcn.140001710
int3
call fcn.140001710
int3
call fcn.140001710
int3