Function at 0x408e40
Capabilities:
Delete file
Extract resource via kernel32 functions
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x429cc9
mov eax, dword fs:[0]
push eax
mov eax, 0x8278
call fcn.00413f40
mov eax, dword [0x431290]
xor eax, ebp
mov dword [ebp - 0x18], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov byte [ebp - 0x5231], 0
lea eax, [ebp - 0x121b]
mov dword [ebp - 0x522c], eax
push 0x1000
push 0
lea ecx, [ebp - 0x121c]
push ecx
call fcn.00413ad0
add esp, 0xc
call fcn.00408c90
push 0x42c764
mov edx, dword [ebp + 8]
push edx
call fcn.00416151
add esp, 8
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jne 0x408f91
push str.BINARY
push str.1001
mov eax, dword [ebp + 0xc]
push eax
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov dword [ebp - 0x8248], eax
mov ecx, dword [ebp - 0x8248]
push ecx
mov edx, dword [ebp + 0xc]
push edx
call dword [sym.imp.KERNEL32.dll_LoadResource]
mov dword [ebp - 0x823c], eax
mov eax, dword [ebp - 0x823c]
mov dword [ebp - 0x8240], eax
mov ecx, dword [ebp - 0x8240]
movzx edx, byte [ecx]
test edx, edx
je 0x408f16
mov eax, dword [ebp - 0x8240]
add eax, 1
mov dword [ebp - 0x8240], eax
jmp 0x408ef8
lea ecx, [ebp - 0x121c]
push ecx
call fcn.0041781a
add esp, 4
push 0x42c788
mov edx, dword [ebp - 0x522c]
push edx
call fcn.00416c6e
add esp, 8
mov dword [ebp - 0x8244], eax
mov eax, dword [ebp - 0x8244]
push eax
push 1
mov ecx, dword [ebp - 0x8240]
sub ecx, dword [ebp - 0x823c]
push ecx
mov edx, dword [ebp - 0x823c]
push edx
call fcn.00415c3d
add esp, 0x10
mov eax, dword [ebp - 0x8244]
push eax
call fcn.00413fe2
add esp, 4
mov byte [ebp - 0x5231], 1
push 0x42c78c
mov ecx, dword [ebp - 0x522c]
push ecx
call fcn.00416c6e
add esp, 8
mov dword [ebp - 0x14], eax
mov byte [ebp - 0x8235], 0
mov edx, dword [ebp - 0x14]
push edx
push 4
lea eax, [ebp - 0x5228]
push eax
call fcn.004165eb
add esp, 0xc
mov ecx, dword [ebp - 0x5228]
and ecx, 0xffffff
cmp ecx, 0xbfbbef
jne 0x408fd3
push 0
push 3
mov edx, dword [ebp - 0x14]
push edx
call fcn.00415d49
add esp, 0xc
jmp 0x40900e
mov eax, dword [ebp - 0x5228]
and eax, 0xffff
cmp eax, 0xfeff
jne 0x408ffe
mov byte [ebp - 0x8235], 1
push 0
push 2
mov ecx, dword [ebp - 0x14]
push ecx
call fcn.00415d49
add esp, 0xc
jmp 0x40900e
push 0
push 0
mov edx, dword [ebp - 0x14]
push edx
call fcn.00415d49
add esp, 0xc
xor eax, eax
mov word [ebp - 0x21c], ax
push 0x1fe
push 0
lea ecx, [ebp - 0x21a]
push ecx
call fcn.00413ad0
add esp, 0xc
mov dword [ebp - 0x5224], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x5220], 0
mov dword [ebp - 0x5230], 0
mov edx, dword [ebp - 0x14]
push edx
call fcn.004165b7
add esp, 4
test eax, eax
jne 0x409422
movzx eax, byte [ebp - 0x8235]
test eax, eax
jne 0x4090cd
push 0x2000
push 0
lea ecx, [ebp - 0x7234]
push ecx
call fcn.00413ad0
add esp, 0xc
push 0x1000
push 0
lea edx, [ebp - 0x8234]
push edx
call fcn.00413ad0
add esp, 0xc
mov eax, dword [ebp - 0x14]
push eax
push 0xfff
lea ecx, [ebp - 0x8234]
push ecx
call fcn.004165eb
add esp, 0xc
lea edx, [ebp - 0x8234]
push edx
lea eax, [ebp - 0x7234]
push eax
call fcn.004045b0
add esp, 8
jmp 0x4090fb
push 0x2000
push 0
lea ecx, [ebp - 0x7234]
push ecx
call fcn.00413ad0
add esp, 0xc
mov edx, dword [ebp - 0x14]
push edx
push 0xfff
lea eax, [ebp - 0x7234]
push eax
call fcn.004164f6
add esp, 0xc
push 0x2000
push 0
lea ecx, [ebp - 0x321c]
push ecx
call fcn.00413ad0
add esp, 0xc
mov dword [ebp - 0x10], 0
mov edx, dword [ebp - 0x10]
mov dword [ebp - 0x5224], edx
movzx eax, word [ebp - 0x7234]
cmp eax, 0x5b
jne 0x40917e
lea ecx, [ebp - 0x7232]
mov dword [ebp - 0x5224], ecx
push 0x42c790
mov edx, dword [ebp - 0x5224]
push edx
call fcn.00404590
add esp, 8
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x40915b
jmp 0x409052
xor eax, eax
mov ecx, dword [ebp - 0x10]
mov word [ecx], ax
mov edx, dword [ebp - 0x5224]
push edx
lea eax, [ebp - 0x21c]
push eax
call fcn.00413aae
add esp, 8
jmp 0x409052
push 0x42c794
lea ecx, [ebp - 0x7234]
push ecx
call fcn.00404590
add esp, 8
mov dword [ebp - 0x5224], eax
cmp dword [ebp - 0x5224], 0
jne 0x4091a6
jmp 0x409052
mov edx, dword [ebp - 0x5224]
add edx, 4
mov dword [ebp - 0x5224], edx
push 0x42c79c
lea eax, [ebp - 0x7234]
push eax
call fcn.00404590
add esp, 8
mov dword [ebp - 0x5220], eax
push 0x42c7a0
lea ecx, [ebp - 0x7234]
push ecx
call fcn.00404590
add esp, 8
mov dword [ebp - 0x5230], eax
cmp dword [ebp - 0x5220], 0
je 0x409200
mov edx, dword [ebp - 0x5230]
cmp edx, dword [ebp - 0x5220]
jae 0x40920c
mov eax, dword [ebp - 0x5230]
mov dword [ebp - 0x5220], eax
mov ecx, dword [ebp - 0x5220]
cmp ecx, dword [ebp - 0x5224]
jbe 0x409221
jmp 0x409052
xor edx, edx
mov eax, dword [ebp - 0x5220]
mov word [eax], dx
push 0x2000
push 0
lea ecx, [ebp - 0x521c]
push ecx
call fcn.00413ad0
add esp, 0xc
lea edx, [ebp - 0x7234]
push edx
lea eax, [ebp - 0x21c]
push eax
push 0x42c7a4
lea ecx, [ebp - 0x521c]
push ecx
call fcn.00404470
add esp, 0x10
lea edx, [ebp - 0x521c]
push edx
call fcn.004048c0
add esp, 4
mov dword [ebp - 0x8268], eax
mov eax, dword [ebp - 0x8268]
push eax
lea ecx, [ebp - 0x8284]
call fcn.004058c0
mov dword [ebp - 4], 0
mov ecx, dword [ebp - 0x8268]
push ecx
call fcn.00404570
add esp, 4
push 0x42c7b4
mov edx, dword [ebp - 0x5224]
push edx
call fcn.00404590
add esp, 8
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x4093a9
mov eax, dword [ebp - 0x14]
push eax
call fcn.004165b7
add esp, 4
test eax, eax
jne 0x4093a9
mov ecx, dword [ebp - 0x5224]
push ecx
lea edx, [ebp - 0x321c]
push edx
call fcn.00413a80
add esp, 8
movzx eax, byte [ebp - 0x8235]
test eax, eax
jne 0x409353
push 0x2000
push 0
lea ecx, [ebp - 0x7234]
push ecx
call fcn.00413ad0
add esp, 0xc
push 0x1000
push 0
lea edx, [ebp - 0x8234]
push edx
call fcn.00413ad0
add esp, 0xc
mov eax, dword [ebp - 0x14]
push eax
push 0xfff
lea ecx, [ebp - 0x8234]
push ecx
call fcn.004165eb
add esp, 0xc
lea edx, [ebp - 0x8234]
push edx
lea eax, [ebp - 0x7234]
push eax
call fcn.004045b0
add esp, 8
jmp 0x409381
push 0x2000
push 0
lea ecx, [ebp - 0x7234]
push ecx
call fcn.00413ad0
add esp, 0xc
mov edx, dword [ebp - 0x14]
push edx
push 0xfff
lea eax, [ebp - 0x7234]
push eax
call fcn.004164f6
add esp, 0xc
lea ecx, [ebp - 0x7234]
mov dword [ebp - 0x5224], ecx
push 0x42c7bc
mov edx, dword [ebp - 0x5224]
push edx
call fcn.00404590
add esp, 8
mov dword [ebp - 0x10], eax
jmp 0x4092b8
xor eax, eax
mov ecx, dword [ebp - 0x10]
mov word [ecx], ax
mov edx, dword [ebp - 0x5224]
push edx
lea eax, [ebp - 0x321c]
push eax
call fcn.00413a80
add esp, 8
lea ecx, [ebp - 0x321c]
push ecx
lea ecx, [ebp - 0x8264]
call fcn.00404a00
mov byte [ebp - 4], 1
lea edx, [ebp - 0x8264]
push edx
lea eax, [ebp - 0x8284]
push eax
mov ecx, 0x43b610
call fcn.00409460
mov ecx, eax
call fcn.00404a60
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x8264]
call fcn.00404a40
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x8284]
call fcn.00405940
jmp 0x409052
mov ecx, dword [ebp - 0x14]
push ecx
call fcn.00413fe2
add esp, 4
movzx edx, byte [ebp - 0x5231]
test edx, edx
je 0x409446
mov eax, dword [ebp - 0x522c]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x18]
xor ecx, ebp
call fcn.00413f30
mov esp, ebp
pop ebp
ret