Function at 0x409fa0
Capabilities:
Create process on windows
Extract resource via kernel32 functions
Resolve function by parsing pe exports
Set environment variable
Write and execute a file
Write file on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x24c
mov eax, dword [section..data]
xor eax, esp
mov dword [esp + 0x248], eax
push ebx
push esi
push edi
call fcn.0040de83
call fcn.0040de89
push 0x1000
mov edx, str.TEMPonefile_PID_TIME
mov ecx, 0x438cb0
call fcn.00409320
add esp, 4
test al, al
je 0x40a596
push 1
push 0x409c70
call dword [sym.imp.KERNEL32.dll_SetConsoleCtrlHandler]
test eax, eax
je 0x40a5a0
push 0xa
push 0x1b
push 0
call dword [sym.imp.KERNEL32.dll_FindResourceA]
mov esi, eax
push esi
push 0
call dword [sym.imp.KERNEL32.dll_LoadResource]
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
push esi
push 0
mov dword [0x428ca8], eax
mov dword [0x428ca4], eax
call dword [sym.imp.KERNEL32.dll_SizeofResource]
mov ecx, dword [0x428ca4]
mov dword [0x428c90], eax
mov dword [0x428c94], 0
mov ax, word [ecx]
mov word [esp + 0x10], ax
mov al, byte [ecx + 2]
add ecx, 3
cmp byte [esp + 0x10], 0x4b
mov dword [0x428ca4], ecx
jne 0x40a591
cmp byte [esp + 0x11], 0x41
jne 0x40a591
cmp al, 0x59
jne 0x40a591
push 0x20000
mov dword [0x428c98], 0
call fcn.00410809
add esp, 4
mov dword [0x43e4b0], eax
test eax, eax
je 0x40a5b4
movq xmm0, qword [0x424aa8]
mov edi, dword [0x424ab0]
push 0x27420
movq qword [esp + 0x24], xmm0
call fcn.00410809
mov esi, eax
add esp, 4
test esi, esi
je 0x40a5aa
movq xmm0, qword [esp + 0x20]
mov ecx, esi
movq qword [esi + 0x736c], xmm0
mov dword [esi + 0x7374], edi
call fcn.00404f40
mov eax, dword [0x428ca4]
mov dword [0x428c98], eax
mov eax, dword [0x428c90]
mov dword [0x428488], esi
mov dword [0x428ca0], 0
mov dword [0x428c9c], eax
mov byte [0x42848c], 1
nop dword [eax + eax]
mov edx, 2
lea ecx, [esp + 0x10]
mov esi, 0x43acb0
call fcn.00409830
mov ax, word [esp + 0x10]
mov word [0x43acb0], ax
test ax, ax
je 0x40a31f
nop word [eax + eax]
mov edx, 2
lea ecx, [esp + 0x10]
lea esi, [esi + 2]
call fcn.00409830
mov ax, word [esp + 0x10]
mov word [esi], ax
test ax, ax
jne 0x40a140
cmp word [0x43acb0], ax
je 0x40a31f
xor eax, eax
mov edx, 0x1000
mov ecx, 0x4484d0
mov word [0x4484d0], ax
cmp word [0x438cb0], ax
je 0x40a1ab
mov esi, 0x438cb0
sub esi, ecx
nop dword [eax]
cmp edx, 1
jb 0x40a5c3
mov ax, word [ecx + esi]
dec edx
mov word [ecx], ax
add ecx, 2
cmp word [ecx + esi], 0
jne 0x40a190
xor eax, eax
mov word [ecx], ax
mov ecx, 0x1000
cmp word [0x4484d0], 0
mov eax, 0x4484d0
je 0x40a1d7
add eax, 2
dec ecx
cmp word [eax], 0
jne 0x40a1c4
cmp ecx, 1
jb 0x40a5c3
mov dword [eax], 0x5c
mov edx, 0x1000
cmp word [0x4484d0], 0
mov eax, 0x4484d0
je 0x40a1fb
add eax, 2
dec edx
cmp word [eax], 0
jne 0x40a1f1
mov esi, 0x43acb0
sub esi, eax
cmp edx, 1
jb 0x40a5c3
mov cx, word [eax + esi]
dec edx
mov word [eax], cx
add eax, 2
cmp word [eax + esi], 0
jne 0x40a202
xor ecx, ecx
mov word [eax], cx
cmp word [0x428490], cx
jne 0x40a266
cmp word [0x4484d0], 0
mov edx, 0x1000
mov ecx, 0x428490
je 0x40a261
mov esi, 0x4484d0
sub esi, ecx
cmp edx, 1
jb 0x40a5c3
mov ax, word [ecx + esi]
dec edx
mov word [ecx], ax
add ecx, 2
cmp word [ecx + esi], 0
jne 0x40a246
xor eax, eax
mov word [ecx], ax
mov edx, 8
lea ecx, [esp + 0x20]
call fcn.00409830
mov ecx, 0x4484d0
call fcn.00409a60
push 0
push 0
push 2
push 0
push 2
push 0x40000000
push 0x4484d0
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov ebx, eax
mov dword [esp + 0x18], ebx
cmp ebx, 0xffffffff
je 0x40a5be
mov ebx, dword [esp + 0x24]
mov esi, dword [esp + 0x20]
test ebx, ebx
jne 0x40a2b9
test esi, esi
je 0x40a310
test ebx, ebx
ja 0x40a2c9
jb 0x40a2c5
cmp esi, 0x8000
ja 0x40a2c9
mov edi, esi
jmp 0x40a2ce
mov edi, 0x8000
mov edx, edi
mov ecx, 0x4404c8
call fcn.00409830
push 0
lea eax, [esp + 0x18]
mov dword [esp + 0x18], 0
push eax
push edi
push 0x4404c8
push dword [esp + 0x28]
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x40a5b9
mov eax, edi
cdq
sub esi, eax
sbb ebx, edx
jne 0x40a2b7
jb 0x40a310
test esi, esi
jne 0x40a2b7
push dword [esp + 0x18]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x40a110
call fcn.00405110
push dword [0x43e4b0]
call fcn.004107b4
add esp, 4
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x423ac0
lea eax, [esp + 0xd8]
push 0x80
push eax
call fcn.00401040
xor eax, eax
lea edx, [esp + 0xe0]
push 0x80
lea ecx, [esp + 0x164]
mov word [esp + 0x164], ax
call fcn.00409670
add esp, 0x14
lea esi, [esp + 0x80]
xor eax, eax
mov ebx, str.NUITKA_ONEFILE_PARENT
mov word [esp + 0x80], ax
lea edi, [eax + 0x28]
mov al, 0x4e
mov byte [esp + 0x10], al
lea eax, [esp + 0x10]
push 2
push eax
lea eax, [esp + 0x1c]
mov byte [esp + 0x19], 0
push eax
call fcn.0040dce7
add esp, 0xc
cmp eax, 1
jne 0x40a5c3
cmp word [esi], 0
mov eax, edi
mov ecx, esi
je 0x40a3ca
add ecx, 2
dec eax
cmp word [ecx], 0
jne 0x40a3c0
cmp eax, 1
jb 0x40a5c3
mov ax, word [esp + 0x14]
inc ebx
mov word [ecx], ax
add esi, 2
xor eax, eax
dec edi
mov word [ecx + 2], ax
mov al, byte [ebx]
test al, al
jne 0x40a390
lea eax, [esp + 0x150]
push eax
lea eax, [esp + 0x84]
push eax
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
call fcn.00409220
mov dword [esp + 0x18], eax
lea esi, [esp + 0x80]
xor eax, eax
mov ebx, str.NUITKA_ONEFILE_BINARY
mov word [esp + 0x80], ax
mov cl, 0x4e
lea edi, [eax + 0x28]
push 2
lea eax, [esp + 0x14]
mov byte [esp + 0x14], cl
push eax
lea eax, [esp + 0x1c]
mov byte [esp + 0x19], 0
push eax
call fcn.0040dce7
add esp, 0xc
cmp eax, 1
jne 0x40a5c3
cmp word [esi], 0
mov eax, edi
mov ecx, esi
je 0x40a460
add ecx, 2
dec eax
cmp word [ecx], 0
jne 0x40a456
cmp eax, 1
jb 0x40a5c3
mov ax, word [esp + 0x14]
inc ebx
mov word [ecx], ax
add esi, 2
xor eax, eax
dec edi
mov word [ecx + 2], ax
mov cl, byte [ebx]
test cl, cl
jne 0x40a426
push dword [esp + 0x18]
lea eax, [esp + 0x84]
push eax
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
mov esi, dword [sym.imp.KERNEL32.dll_GetStdHandle]
xorps xmm0, xmm0
push 0xfffffffffffffff6
movlpd qword [esp + 0x40], xmm0
movlpd qword [esp + 0x48], xmm0
movlpd qword [esp + 0x50], xmm0
movlpd qword [esp + 0x58], xmm0
movlpd qword [esp + 0x60], xmm0
movlpd qword [esp + 0x6c], xmm0
mov dword [esp + 0x68], 0x100
call esi
push 0xfffffffffffffff5
mov dword [esp + 0x74], eax
call esi
push 0xfffffffffffffff4
mov dword [esp + 0x78], eax
call esi
mov dword [esp + 0x78], eax
lea eax, [esp + 0x28]
push eax
lea eax, [esp + 0x3c]
mov dword [esp + 0x3c], 0x44
push eax
push 0
push 0
push 0x20
push 1
push 0
push 0
call fcn.00409cb0
push eax
push 0x428490
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
je 0x40a5c8
push dword [esp + 0x2c]
mov ebx, dword [sym.imp.KERNEL32.dll_CloseHandle]
call ebx
mov eax, dword [esp + 0x28]
mov dword [0x428484], eax
mov dword [esp + 0x1c], 0
test eax, eax
je 0x40a571
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
lea eax, [esp + 0x1c]
push eax
push dword [0x428484]
call dword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
test eax, eax
jne 0x40a55f
mov dword [esp + 0x1c], 1
push dword [0x428484]
call ebx
mov dword [0x428484], 0
call fcn.00409b60
mov ecx, dword [esp + 0x254]
mov eax, dword [esp + 0x1c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0040a5d6
mov esp, ebp
pop ebp
ret 0x10
call fcn.004097b0
mov ecx, str.TEMPonefile_PID_TIME
call fcn.00409810
mov ecx, str.Error__failed_to_register_signal_handler.
call fcn.00409750
mov dword [0x428488], 0
call fcn.004097c0
call fcn.00409780
call fcn.004097e0
call fcn.0040d991
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
call fcn.004097d0
int3