Function at 0x41e090
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 rsi
push rbx
sub rsp, 0x28
lea rbp, [rsp + 0x80]
lea rcx, str.libgcc_s_dw2_1.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov r12, rax
test rax, rax
je 0x401750
lea rcx, str.libgcc_s_dw2_1.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov rsi, qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.__register_frame_info
mov rcx, r12
mov qword [0x00430040], rax
call rsi
lea rdx, str.__deregister_frame_info
mov rcx, r12
mov rbx, rax
call rsi
mov qword [0x00427010], rax
test rbx, rbx
jne 0x401765
lea rcx, [0x00401780]
add rsp, 0x28
pop rbx
pop rsi
pop r12
pop rbp
jmp fcn.00401680
lea rax, [0x004016c0]
lea rbx, [0x004016b0]
mov qword [0x00427010], rax
lea rdx, [0x00430060]
lea rcx, [section..eh_fram]
call rbx
jmp 0x401738
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x128
call qword [0x00427100]
xor ecx, ecx
mov r8d, 0x1000
lea rdx, [0x0043b0c0]
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x41e9d8
mov r8d, 0x1000
lea rdx, str._TEMP_onefile__PID___TIME_
lea rcx, [0x0043d0e0]
call fcn.0041dda0
test al, al
je 0x41ed64
mov edx, 1
lea rcx, [0x00403d90]
call qword [sym.imp.KERNEL32.dll_SetConsoleCtrlHandler]
test eax, eax
je 0x41e6df
mov rax, qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
xor edx, edx
lea rcx, [0x0043d0e0]
mov qword [rsp + 0x60], rax
call rax
mov rax, qword [sym.imp.KERNEL32.dll_CreateFileW]
xor r9d, r9d
mov byte [0x0043d0c0], 1
mov qword [rsp + 0x30], 0
mov r8d, 1
mov edx, 0x80000000
lea rcx, [0x0043b0c0]
mov dword [rsp + 0x28], 0
mov dword [rsp + 0x20], 3
mov qword [rsp + 0x58], rax
call rax
mov qword [0x0043f130], rax
cmp rax, 0xffffffffffffffff
je 0x41ec61
xor r8d, r8d
xor edx, edx
lea rcx, [0x0043b0c0]
mov rsi, qword [sym.imp.KERNEL32.dll_GetShortPathNameW]
call rsi
lea ecx, [rax + 1]
mov ebx, eax
add rcx, rcx
call sub.msvcrt.dll_malloc
mov r13, rax
test rax, rax
je 0x41edad
mov r8d, ebx
mov rdx, r13
lea rcx, [0x0043b0c0]
call rsi
lea rbp, [rsp + 0xa0]
test eax, eax
je 0x41ec54
xor r8d, r8d
xor edx, edx
mov rsi, qword [sym.imp.msvcrt.dll_wcstombs_s]
mov r9, r13
mov qword [rsp + 0x20], 0xffffffffffffffff
mov rcx, rbp
call rsi
test eax, eax
jne 0x41ec54
mov rbx, qword [rsp + 0xa0]
mov rcx, rbx
call sub.msvcrt.dll_malloc
mov r12, rax
test rax, rax
je 0x41ec0f
mov r9, r13
mov r8, rbx
mov rdx, rax
mov rcx, rbp
mov qword [rsp + 0x20], 0xffffffffffffffff
call rsi
test eax, eax
jne 0x41ec4c
xor r9d, r9d
mov r8, rbp
lea rdx, str.dont_search_path
mov rcx, r12
mov dword [rsp + 0x20], 1
call qword [sym.imp.imagehlp.dll_MapAndLoad]
test eax, eax
jne 0x41eb3d
mov rcx, r12
call sub.msvcrt.dll_free
mov rcx, qword [0x0043f130]
mov rbx, qword [sym.imp.KERNEL32.dll_SetFilePointer]
xor r8d, r8d
mov edx, 0xfffffff8
mov r9d, 2
call rbx
cmp eax, 0xffffffff
je 0x41ecdd
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x0043f130]
mov r9d, 1
call rbx
mov rcx, qword [0x0043f130]
mov rsi, qword [sym.imp.KERNEL32.dll_ReadFile]
mov rdx, rbp
mov eax, eax
mov r8d, 8
mov qword [rsp + 0x20], 0
mov qword [0x0043f0e0], rax
lea rax, [rsp + 0x80]
mov qword [rsp + 0x68], rax
mov r9, rax
call rsi
test eax, eax
je 0x41ebd1
cmp dword [rsp + 0x80], 8
jne 0x41eb1e
xor r9d, r9d
xor r8d, r8d
mov edx, dword [rsp + 0xa0]
mov rcx, qword [0x0043f130]
call rbx
cmp eax, 0xffffffff
je 0x41ecbe
mov rcx, qword [0x0043f130]
lea rdx, [rsp + 0x79]
mov r9, rbp
mov qword [rsp + 0x20], 0
mov r8d, 3
call rsi
test eax, eax
je 0x41ebb2
cmp dword [rsp + 0xa0], 3
jne 0x41eaf7
cmp byte [rsp + 0x79], 0x4b
jne 0x41ead0
cmp byte [rsp + 0x7a], 0x41
jne 0x41eaa9
cmp byte [rsp + 0x7b], 0x59
jne 0x41ea8a
mov ecx, 0x20003
call sub.msvcrt.dll_malloc
mov qword [0x0043f110], rax
test rax, rax
je 0x41ed26
mov ecx, 0x20000
call sub.msvcrt.dll_malloc
mov qword [0x0043f0f0], rax
test rax, rax
je 0x41ed45
mov ecx, 0x274b8
call sub.msvcrt.dll_malloc
mov r8, rax
test rax, rax
je 0x41ecfc
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 0x41eb90
mov dword [r8 + 0x73d0], ecx
mov qword [r8 + 0x7410], 0x8000001
mov dword [r8 + 0x7458], 0
mov qword [r8 + 0x7388], 0
mov dword [r8 + 0x7390], 1
mov qword [0x0043f128], r8
lea r14, [0x0043f0e0]
nop word cs:[rax + rax]
lea rbx, [0x004300c0]
jmp 0x41e494
add rbx, 2
mov edx, 2
mov rcx, rbp
call fcn.0041cde0
movzx eax, word [rsp + 0xa0]
mov word [rbx], ax
test ax, ax
jne 0x41e490
lea rax, [0x004300c0]
movzx edx, word [rax]
test dx, dx
je 0x41e8c0
movzx eax, word [0x0043d0e0]
lea rsi, [0x0043d0e0]
lea rbx, [0x004300c0]
lea rdi, [0x004390c0]
cmp dx, 0x5c
je 0x41e750
movzx edx, word [rbx + 2]
add rbx, 2
test dx, dx
jne 0x41e4e0
xor r8d, r8d
lea rdx, [0x004390c0]
lea rcx, [0x0043d0e0]
mov word [0x004390c0], r8w
lea r8, [rdx + 0x2000]
test ax, ax
jne 0x41e529
jmp 0x41e53c
cmp rdx, r8
je 0x426720
add rcx, 2
mov word [rdx], ax
add rdx, 2
movzx eax, word [rcx]
test ax, ax
jne 0x41e520
xor ecx, ecx
mov word [rdx], cx
cmp word [0x004390c0], 0
je 0x41ea58
mov edx, 0x1000
lea rax, [0x004390c0]
nop dword [rax + rax]
add rax, 2
sub rdx, 1
cmp word [rax], 0
jne 0x41e560
test rdx, rdx
je 0x41edd6
mov dword [rax], 0x5c
lea rax, [0x004300c0]
cmp word [0x004390c0], 0
movzx ecx, word [rax]
je 0x41ea38
mov edx, 0x1000
lea rax, [0x004390c0]
nop dword [rax]
add rax, 2
sub rdx, 1
cmp word [rax], 0
jne 0x41e5a8
test cx, cx
je 0x41e5f1
test rdx, rdx
je 0x41eddb
lea r8, [0x004300c0]
jmp 0x41e5d9
test rdx, rdx
je 0x41ede0
add r8, 2
mov word [rax], cx
add rax, 2
sub rdx, 1
movzx ecx, word [r8]
test cx, cx
jne 0x41e5d0
xor edx, edx
cmp word [0x004388c0], 0
mov word [rax], dx
je 0x41e870
mov dword [rsp + 0x28], 0
mov rax, qword [rsp + 0x58]
xor r9d, r9d
mov r8d, 2
mov qword [rsp + 0x30], 0
mov edx, 0x40000000
lea rcx, [0x004390c0]
mov dword [rsp + 0x20], 2
call rax
mov r12, rax
cmp rax, 0xffffffffffffffff
je 0x41ed82
mov edx, 8
mov rcx, rbp
mov edi, 0x8000
call fcn.0041cde0
mov r15, qword [rsp + 0xa0]
mov r13, qword [sym.imp.KERNEL32.dll_WriteFile]
lea rsi, [0x004308c0]
test r15, r15
jne 0x41e67d
jmp 0x41e6d1
sub r15, rbx
je 0x41e6d1
cmp r15, 0x8000
mov rbx, rdi
mov rcx, rsi
cmovbe rbx, r15
mov rdx, rbx
call fcn.0041cde0
xor r9d, r9d
mov r8d, ebx
mov rdx, rsi
mov qword [rsp + 0x20], 0
mov rcx, r12
call r13
test eax, eax
jne 0x41e678
mov r8d, 0xa2
lea rdx, str.static_srcOnefileBootstrap.c
lea rcx, str.bool_res
call qword [sym.imp.msvcrt.dll__assert]
sub r15, rbx
jne 0x41e67d
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x41e480
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9d, 0x400
xor edx, edx
mov ecx, 0x1300
mov r8d, eax
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_FormatMessageA]
lea rcx, str.Error__failed_to_register_signal_handler.
call sub.msvcrt.dll_puts
mov rcx, qword [rsp + 0xa0]
call sub.msvcrt.dll_puts
mov eax, 1
add rsp, 0x128
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
xor r12d, r12d
xor r13d, r13d
lea rcx, [0x004390c0]
mov word [rbx], r12w
lea rdx, [0x0043d0e0]
mov word [0x004390c0], r13w
test ax, ax
jne 0x41e789
jmp 0x41e79c
cmp rdx, r14
je 0x426720
add rdx, 2
mov word [rcx], ax
add rcx, 2
movzx eax, word [rdx]
test ax, ax
jne 0x41e780
xor r11d, r11d
mov word [rcx], r11w
cmp word [rdi], 0
je 0x41ea7e
mov edx, 0x1000
lea rax, [0x004390c0]
nop dword [rax]
add rax, 2
sub rdx, 1
cmp word [rax], 0
jne 0x41e7c0
test rdx, rdx
je 0x41edd1
mov dword [rax], 0x5c
lea rax, [0x004300c0]
cmp word [rdi], 0
movzx ecx, word [rax]
je 0x41ea64
mov edx, 0x1000
lea rax, [0x004390c0]
nop dword [rax]
add rax, 2
sub rdx, 1
cmp word [rax], 0
jne 0x41e800
test cx, cx
je 0x41e849
test rdx, rdx
je 0x41ede5
lea r8, [0x004300c0]
jmp 0x41e831
test rdx, rdx
je 0x41edcc
add r8, 2
mov word [rax], cx
add rax, 2
sub rdx, 1
movzx ecx, word [r8]
test cx, cx
jne 0x41e828
xor r9d, r9d
mov r10d, 0x5c
xor edx, edx
mov rcx, rdi
mov word [rax], r9w
mov rax, qword [rsp + 0x60]
mov word [rbx], r10w
call rax
movzx eax, word [rsi]
jmp 0x41e4ea
movzx ecx, word [0x004390c0]
lea rax, [0x004390c0]
lea rdx, [0x004388c0]
lea r8, [rax + 0x2000]
test cx, cx
jne 0x41e8a1
jmp 0x41e8b4
cmp rax, r8
je 0x426720
add rax, 2
mov word [rdx], cx
add rdx, 2
movzx ecx, word [rax]
test cx, cx
jne 0x41e898
xor eax, eax
mov word [rdx], ax
jmp 0x41e604
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov edx, pe_nt_image_headers64
mov rcx, rbp
mov rdi, rbp
mov r9d, eax
lea r8, [0x00429908]
call fcn.00402370
mov rdx, rbp
lea rcx, str.NUITKA_ONEFILE_PARENT
call qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableA]
xor eax, eax
mov ecx, 0xd
rep stosq qword [rdi], rax
mov dword [rsp + 0xa0], 0x68
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x40], rbp
mov rdx, rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x38], 0
lea rcx, [0x004388c0]
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x48], rax
mov dword [rsp + 0x28], 0x200
mov dword [rsp + 0x20], 0
call qword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
je 0x41ebf0
mov rcx, qword [rsp + 0x88]
mov rbx, qword [sym.imp.KERNEL32.dll_CloseHandle]
call rbx
mov rcx, qword [rsp + 0x80]
mov dword [rsp + 0x7c], 0
mov qword [0x004300a0], rcx
test rcx, rcx
je 0x41e9c4
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [0x004300a0]
lea rdx, [rsp + 0x7c]
call qword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
test eax, eax
jne 0x41e9b0
mov dword [rsp + 0x7c], 1
mov rcx, qword [0x004300a0]
call rbx
mov qword [0x004300a0], 0
call fcn.00403c60
mov eax, dword [rsp + 0x7c]
jmp 0x41e737
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9d, 0x400
xor edx, edx
mov ecx, 0x1300
mov r8d, eax
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_FormatMessageA]
lea rcx, str.Error__failed_to_locate_onefile_filename.
call sub.msvcrt.dll_puts
mov rcx, qword [rsp + 0xa0]
call sub.msvcrt.dll_puts
mov eax, 1
jmp 0x41e737
lea rax, [0x004390c0]
mov edx, 0x1000
test cx, cx
jne 0x41e5c4
jmp 0x41e5f1
lea rax, [0x004390c0]
jmp 0x41e577
lea rax, [0x004390c0]
mov edx, 0x1000
test cx, cx
jne 0x41e81c
jmp 0x41e849
lea rax, [0x004390c0]
jmp 0x41e7d7
mov r8d, 0x2e4
lea rdx, str.static_srcOnefileBootstrap.c
lea rcx, str.header_2___Y
call qword [sym.imp.msvcrt.dll__assert]
jmp 0x41e349
mov r8d, 0x2e0
lea rdx, str.static_srcOnefileBootstrap.c
lea rcx, str.header_1___A
call qword [sym.imp.msvcrt.dll__assert]
cmp byte [rsp + 0x7b], 0x59
je 0x41e349
jmp 0x41ea8a
mov r8d, 0x2df
lea rdx, str.static_srcOnefileBootstrap.c
lea rcx, str.header_0___K
call qword [sym.imp.msvcrt.dll__assert]
cmp byte [rsp + 0x7a], 0x41
je 0x41e33e
jmp 0x41eaa9
mov r8d, 0xeb
lea rdx, str.static_srcOnefileBootstrap.c
lea rcx, str.read_size__size
call qword [sym.imp.msvcrt.dll__assert]
cmp byte [rsp + 0x79], 0x4b
je 0x41e333
jmp 0x41ead0
mov r8d, 0xeb
lea rdx, str.static_srcOnefileBootstrap.c
lea rcx, str.read_size__size
call qword [sym.imp.msvcrt.dll__assert]
jmp 0x41e2d3
mov rax, qword [rsp + 0xb8]
test rax, rax
je 0x41eba4
cmp dword [rax + 0x84], 4
jbe 0x41eba4
mov ebx, dword [rax + 0xa8]
mov rcx, rbp
call qword [sym.imp.imagehlp.dll_UnMapAndLoad]
mov rcx, r12
call sub.msvcrt.dll_free
test ebx, ebx
je 0x41e247
lea edx, [rbx - 8]
mov rcx, qword [0x0043f130]
xor r9d, r9d
xor r8d, r8d
mov rbx, qword [sym.imp.KERNEL32.dll_SetFilePointer]
call rbx
jmp 0x41e265
mov eax, 7
cpuid
shr ebx, 8
mov ecx, ebx
and ecx, 1
jmp 0x41e435
mov rcx, rbp
call qword [sym.imp.imagehlp.dll_UnMapAndLoad]
jmp 0x41e23f
mov r8d, 0xea
lea rdx, str.static_srcOnefileBootstrap.c
lea rcx, str.bool_res
call qword [sym.imp.msvcrt.dll__assert]
jmp 0x41e31a
mov r8d, 0xea
lea rdx, str.static_srcOnefileBootstrap.c
lea rcx, str.bool_res
call qword [sym.imp.msvcrt.dll__assert]
jmp 0x41e2c5
mov r8d, 0x357
lea rdx, str.static_srcOnefileBootstrap.c
lea rcx, str.bool_res
call qword [sym.imp.msvcrt.dll__assert]
jmp 0x41e95a
mov r8d, 0x1f5
lea rdx, str.static_srcOnefileBootstrap.c
lea rcx, str.ansiPath
call qword [sym.imp.msvcrt.dll__assert]
xor edx, edx
mov r9, r13
mov rcx, rbp
mov qword [rsp + 0x20], 0xffffffffffffffff
mov r8, qword [rsp + 0xa0]
call rsi
test eax, eax
je 0x41e247
mov rcx, r12
call sub.msvcrt.dll_free
mov rcx, r13
call sub.msvcrt.dll_free
jmp 0x41e247
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9d, 0x400
xor edx, edx
mov ecx, 0x1300
mov r8d, eax
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_FormatMessageA]
lea rcx, str.Error__failed_to_access_unpacked_executable.
call sub.msvcrt.dll_puts
mov rcx, qword [rsp + 0xa0]
call sub.msvcrt.dll_puts
mov eax, 1
jmp 0x41e737
mov r8d, 0x2d7
lea rdx, str.static_srcOnefileBootstrap.c
lea rcx, str.res___INVALID_SET_FILE_POINTER
call qword [sym.imp.msvcrt.dll__assert]
jmp 0x41e2f2
mov r8d, 0x2c8
lea rdx, str.static_srcOnefileBootstrap.c
lea rcx, str.res___INVALID_SET_FILE_POINTER
call qword [sym.imp.msvcrt.dll__assert]
jmp 0x41e26e
mov r8d, 0xd5
lea rdx, str.static_srcOnefileBootstrap.c
lea rcx, str.dctx___NULL
mov qword [0x0043f128], 0
call qword [sym.imp.msvcrt.dll__assert]
jmp 0x41e46f
mov r8d, 0xce
lea rdx, str.static_srcOnefileBootstrap.c
lea rcx, str.input.src
call qword [sym.imp.msvcrt.dll__assert]
jmp 0x41e363
mov r8d, 0xd2
lea rdx, str.static_srcOnefileBootstrap.c
lea rcx, str.output.dst
call qword [sym.imp.msvcrt.dll__assert]
jmp 0x41e37d
lea rcx, str.Error__couldnt_runtime_expand_temporary_directory_pattern:
call sub.msvcrt.dll_puts
lea rcx, str._TEMP_onefile__PID___TIME_
call qword [sym.imp.msvcrt.dll__putws]
call sub.msvcrt.dll_abort
mov ecx, 2
call qword [fcn.004263b0]
lea r8, [0x004390c0]
lea rdx, str.Error__failed_to_open__ls_for_writing.
mov rcx, rax
call fcn.004024e0
mov ecx, 2
call sub.msvcrt.dll_exit
mov r8d, 0x1e9
lea rdx, str.static_srcOnefileBootstrap.c
lea rcx, str.shortPath
call qword [sym.imp.msvcrt.dll__assert]
jmp 0x41e19a
jmp 0x426720
jmp 0x426720
jmp 0x426720
jmp 0x426720
jmp 0x426720
jmp 0x426720
call sub.msvcrt.dll_abort
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp 0x4016d0