Function at 0x409f90
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
push 0x1000
mov edx, str.TEMPonefile_PID_TIME
mov ecx, 0x43acb0
call fcn.00409320
add esp, 4
test al, al
je 0x40a57e
push 1
push 0x409c70
call dword [sym.imp.KERNEL32.dll_SetConsoleCtrlHandler]
test eax, eax
je 0x40a588
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 0x40a579
cmp byte [esp + 0x11], 0x41
jne 0x40a579
cmp al, 0x59
jne 0x40a579
push 0x20000
mov dword [0x428c98], 0
call fcn.004107c9
add esp, 4
mov dword [0x4404b0], eax
test eax, eax
je 0x40a59c
movq xmm0, qword [0x424ab8]
mov edi, dword [0x424ac0]
push 0x27420
movq qword [esp + 0x24], xmm0
call fcn.004107c9
mov esi, eax
add esp, 4
test esi, esi
je 0x40a592
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
mov edx, 2
lea ecx, [esp + 0x10]
mov esi, 0x43ccb0
call fcn.00409830
mov ax, word [esp + 0x10]
mov word [0x43ccb0], ax
test ax, ax
je 0x40a2ff
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 0x40a120
cmp word [0x43ccb0], ax
je 0x40a2ff
xor eax, eax
mov edx, 0x1000
mov ecx, 0x438cb0
mov word [0x438cb0], ax
cmp word [0x43acb0], ax
je 0x40a18b
mov esi, 0x43acb0
sub esi, ecx
nop dword [eax]
cmp edx, 1
jb 0x40a5ab
mov ax, word [esi + ecx]
dec edx
mov word [ecx], ax
add ecx, 2
cmp word [esi + ecx], 0
jne 0x40a170
xor eax, eax
mov word [ecx], ax
mov ecx, 0x1000
cmp word [0x438cb0], 0
mov eax, 0x438cb0
je 0x40a1b7
add eax, 2
dec ecx
cmp word [eax], 0
jne 0x40a1a4
cmp ecx, 1
jb 0x40a5ab
mov dword [eax], 0x5c
mov edx, 0x1000
cmp word [0x438cb0], 0
mov eax, 0x438cb0
je 0x40a1db
add eax, 2
dec edx
cmp word [eax], 0
jne 0x40a1d1
mov esi, 0x43ccb0
sub esi, eax
cmp edx, 1
jb 0x40a5ab
mov cx, word [eax + esi]
dec edx
mov word [eax], cx
add eax, 2
cmp word [eax + esi], 0
jne 0x40a1e2
xor ecx, ecx
mov word [eax], cx
cmp word [0x428490], cx
jne 0x40a246
cmp word [0x438cb0], 0
mov edx, 0x1000
mov ecx, 0x428490
je 0x40a241
mov esi, 0x438cb0
sub esi, ecx
cmp edx, 1
jb 0x40a5ab
mov ax, word [ecx + esi]
dec edx
mov word [ecx], ax
add ecx, 2
cmp word [ecx + esi], 0
jne 0x40a226
xor eax, eax
mov word [ecx], ax
mov edx, 8
lea ecx, [esp + 0x20]
call fcn.00409830
mov ecx, 0x438cb0
call fcn.00409a60
push 0
push 0
push 2
push 0
push 2
push 0x40000000
push 0x438cb0
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov ebx, eax
mov dword [esp + 0x18], ebx
cmp ebx, 0xffffffff
je 0x40a5a6
mov ebx, dword [esp + 0x24]
mov esi, dword [esp + 0x20]
test ebx, ebx
jne 0x40a299
test esi, esi
je 0x40a2f0
test ebx, ebx
ja 0x40a2a9
jb 0x40a2a5
cmp esi, 0x8000
ja 0x40a2a9
mov edi, esi
jmp 0x40a2ae
mov edi, 0x8000
mov edx, edi
mov ecx, 0x4424c8
call fcn.00409830
push 0
lea eax, [esp + 0x18]
mov dword [esp + 0x18], 0
push eax
push edi
push 0x4424c8
push dword [esp + 0x28]
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x40a5a1
mov eax, edi
cdq
sub esi, eax
sbb ebx, edx
jne 0x40a297
jb 0x40a2f0
test esi, esi
jne 0x40a297
push dword [esp + 0x18]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x40a0f0
call fcn.00405110
push dword [0x4404b0]
call fcn.00410774
add esp, 4
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x423ad0
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, byte [str.NUITKA_ONEFILE_PARENT]
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.0040dca7
add esp, 0xc
cmp eax, 1
jne 0x40a5ab
cmp word [esi], 0
mov eax, edi
mov ecx, esi
je 0x40a3ad
add ecx, 2
dec eax
cmp word [ecx], 0
jne 0x40a3a3
cmp eax, 1
jb 0x40a5ab
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 0x40a373
lea eax, [esp + 0x150]
push eax
lea eax, [esp + 0x84]
push eax
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
call fcn.00409220
mov cl, byte [str.NUITKA_ONEFILE_BINARY]
lea esi, [esp + 0x80]
mov dword [esp + 0x18], eax
mov ebx, str.NUITKA_ONEFILE_BINARY
xor eax, eax
mov word [esp + 0x80], ax
lea edi, [eax + 0x28]
nop dword [eax]
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.0040dca7
add esp, 0xc
cmp eax, 1
jne 0x40a5ab
cmp word [esi], 0
mov eax, edi
mov ecx, esi
je 0x40a44a
add ecx, 2
dec eax
cmp word [ecx], 0
jne 0x40a440
cmp eax, 1
jb 0x40a5ab
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 0x40a410
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 0x40a5b0
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 0x40a55b
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 0x40a549
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.0040a5be
mov esp, ebp
pop ebp
ret
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.0040d951
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
call fcn.004097d0
int3