Function at 0x405340
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x426fe6
mov eax, dword fs:[0]
push eax
sub esp, 0x9d8
mov eax, dword [0x431464]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
lea eax, [ebp - 0x394]
push eax
push 0x104
call fcn.0040ebf0
test eax, eax
jne 0x405387
xor eax, eax
jmp 0x40588c
lea ecx, [ebp - 0x97c]
push ecx
push 0
push 0x429300
lea edx, [ebp - 0x394]
push edx
call fcn.0040fb80
test eax, eax
jne 0x4053ac
xor eax, eax
jmp 0x40588c
lea eax, [ebp - 0x2c]
push eax
call fcn.00406170
add esp, 4
mov dword [ebp - 0x988], eax
mov ecx, dword [ebp - 0x988]
mov dword [ebp - 0x98c], ecx
mov dword [ebp - 4], 0
mov edx, dword [ebp - 0x98c]
push edx
lea eax, [ebp - 0x48]
push eax
call fcn.00405b70
add esp, 4
mov dword [ebp - 0x990], eax
mov ecx, dword [ebp - 0x990]
mov dword [ebp - 0x994], ecx
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0x994]
push edx
lea eax, [ebp - 0x64]
push eax
call fcn.00405d20
add esp, 4
mov dword [ebp - 0x998], eax
mov ecx, dword [ebp - 0x998]
mov dword [ebp - 0x99c], ecx
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x99c]
push edx
push 0x429318
lea eax, [ebp - 0x80]
push eax
call fcn.00405d50
add esp, 4
mov dword [ebp - 0x9a0], eax
mov ecx, dword [ebp - 0x9a0]
mov dword [ebp - 0x9a4], ecx
mov byte [ebp - 4], 3
mov edx, dword [ebp - 0x9a4]
push edx
lea eax, [ebp - 0x9c]
push eax
call fcn.004061a0
add esp, 4
mov dword [ebp - 0x9a8], eax
mov ecx, dword [ebp - 0x9a8]
mov dword [ebp - 0x9ac], ecx
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x9ac]
push edx
push 0x42931c
lea eax, [ebp - 0xb8]
push eax
call fcn.0040ac60
add esp, 0xc
mov dword [ebp - 0x9b0], eax
mov ecx, dword [ebp - 0x9b0]
mov dword [ebp - 0x9b4], ecx
mov byte [ebp - 4], 5
mov edx, dword [ebp - 0x9b4]
push edx
lea eax, [ebp - 0xd4]
push eax
call fcn.0040aa40
add esp, 0xc
mov dword [ebp - 0x9b8], eax
mov ecx, dword [ebp - 0x9b8]
mov dword [ebp - 0x9bc], ecx
mov byte [ebp - 4], 6
mov edx, dword [ebp - 0x9bc]
push edx
lea eax, [ebp - 0xf0]
push eax
call fcn.0040aaf0
add esp, 0xc
mov dword [ebp - 0x9c0], eax
mov ecx, dword [ebp - 0x9c0]
mov dword [ebp - 0x9c4], ecx
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x9c4]
push edx
lea eax, [ebp - 0x10c]
push eax
call fcn.0040aa40
add esp, 0xc
mov dword [ebp - 0x9c8], eax
mov ecx, dword [ebp - 0x9c8]
mov dword [ebp - 0x9cc], ecx
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0x9cc]
push edx
lea eax, [ebp - 0x128]
push eax
call fcn.0040aa40
add esp, 0xc
mov dword [ebp - 0x9d0], eax
mov ecx, dword [ebp - 0x9d0]
mov dword [ebp - 0x9d4], ecx
mov byte [ebp - 4], 9
mov edx, dword [ebp - 0x9d4]
push edx
lea eax, [ebp - 0x17c]
push eax
call fcn.0040aa40
add esp, 0xc
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x128]
call fcn.00401d20
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x10c]
call fcn.00401d20
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0xf0]
call fcn.00401d20
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0xd4]
call fcn.00401d20
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0xb8]
call fcn.00401d20
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x9c]
call fcn.00401d20
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x80]
call fcn.00401d20
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x64]
call fcn.00401d20
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x48]
call fcn.00401d20
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x2c]
call fcn.00401d20
lea ecx, [ebp - 0x17c]
push ecx
lea edx, [ebp - 0x144]
push edx
call fcn.0040ea50
add esp, 8
mov dword [ebp - 0x9d8], eax
mov eax, dword [ebp - 0x9d8]
mov dword [ebp - 0x9dc], eax
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x9dc]
push ecx
lea ecx, [ebp - 0x17c]
call fcn.00406490
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x144]
call fcn.00401d20
lea edx, [ebp - 0x17c]
push edx
lea eax, [ebp - 0x160]
push eax
call fcn.00401240
add esp, 8
mov dword [ebp - 0x9e0], eax
mov ecx, dword [ebp - 0x9e0]
mov dword [ebp - 0x9e4], ecx
mov byte [ebp - 4], 0x16
mov edx, dword [ebp - 0x9e4]
push edx
lea ecx, [ebp - 0x17c]
call fcn.00406490
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x160]
call fcn.00401d20
lea ecx, [ebp - 0x17c]
call fcn.004064c0
push eax
lea eax, [ebp - 0x97c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
lea ecx, [ebp + eax*2 - 0x984]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
mov dword [ebp - 0x184], 0x66
cmp dword [ebp + 0xc], 4
jne 0x4056d9
mov dword [ebp - 0x184], 0x67
push str.RT_MEAT
movzx edx, word [ebp - 0x184]
push edx
push 0
call dword [sym.imp.KERNEL32.dll_FindResourceA]
mov dword [ebp - 0x64c], eax
mov eax, dword [ebp - 0x64c]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_SizeofResource]
mov dword [ebp - 0x188], eax
mov ecx, dword [ebp - 0x64c]
push ecx
push 0
call dword [sym.imp.KERNEL32.dll_LoadResource]
mov dword [ebp - 0x774], eax
mov edx, dword [ebp - 0x774]
push edx
call dword [sym.imp.KERNEL32.dll_LockResource]
mov dword [ebp - 0x180], eax
push 1
push 0x40
push 0x22
lea eax, [ebp - 0x97c]
push eax
lea ecx, [ebp - 0x43c]
call fcn.00406540
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x188]
xor edx, edx
push edx
push ecx
mov eax, dword [ebp - 0x180]
push eax
lea ecx, [ebp - 0x43c]
call fcn.00406290
lea ecx, [ebp - 0x43c]
call fcn.004066c0
push 0x42932c
lea ecx, [ebp - 0x97c]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcatW]
lea edx, [ebp - 0x770]
push edx
mov ecx, dword [ebp + 8]
call fcn.0040c510
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x770]
call fcn.004064c0
push eax
lea eax, [ebp - 0x644]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
xor ecx, ecx
mov word [ebp - 0x43e], cx
lea edx, [ebp - 0x644]
push edx
lea eax, [ebp - 0x97c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatW]
push 0x104
lea ecx, [ebp - 0x97c]
push ecx
lea edx, [ebp - 0x754]
push edx
call fcn.00419552
add esp, 0xc
lea eax, [ebp - 0x754]
push eax
call fcn.004035c0
add esp, 4
mov byte [ebp - 0x645], al
movzx ecx, byte [ebp - 0x645]
test ecx, ecx
jne 0x40584c
mov dword [ebp - 0x980], 0
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x770]
call fcn.00401d20
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x43c]
call fcn.004061d0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x17c]
call fcn.00401d20
mov eax, dword [ebp - 0x980]
jmp 0x40588c
mov dword [ebp - 0x984], 1
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x770]
call fcn.00401d20
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x43c]
call fcn.004061d0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x17c]
call fcn.00401d20
mov eax, dword [ebp - 0x984]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00416d51
mov esp, ebp
pop ebp
ret