Function at 0x4054b0
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x410250
push 0x40a994
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
add esp, 0xfffffcb0
push ebx
push esi
push edi
mov dword [ebp - 0x18], esp
cmp dword [0x41dbbc], 0
je 0x4054f2
push 0x41d4e8
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x41dbc0], eax
push 0x2346
push 0x68
mov eax, dword [0x41dbc0]
push eax
call dword [sym.imp.KERNEL32.dll_FindResourceA]
mov dword [ebp - 0x320], eax
cmp dword [ebp - 0x320], 0
jne 0x40551b
xor eax, eax
jmp 0x405a68
mov ecx, dword [ebp - 0x320]
push ecx
mov edx, dword [0x41dbc0]
push edx
call dword [sym.imp.KERNEL32.dll_LoadResource]
mov dword [ebp - 0x210], eax
cmp dword [ebp - 0x210], 0
jne 0x405545
xor eax, eax
jmp 0x405a68
je 0x40554a
jne 0x40554a
jmp 0x4054d6
mov eax, dword [ebp - 0x210]
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
mov dword [0x41dbb8], eax
cmp dword [0x41dbb8], 0
jne 0x40556c
xor eax, eax
jmp 0x405a68
mov ecx, dword [ebp - 0x320]
push ecx
mov edx, dword [0x41dbc0]
push edx
call dword [sym.imp.KERNEL32.dll_SizeofResource]
mov ecx, dword [ebp + 0x10]
mov dword [ecx], eax
push 0x1d0
mov edx, dword [ebp + 0x10]
mov eax, dword [edx]
mov ecx, dword [0x41dbb8]
lea edx, [ecx + eax - 0x1d0]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.00409f00
add esp, 0xc
push 0x1d0
mov ecx, dword [ebp + 8]
push ecx
push 0x41d708
call fcn.00409f00
add esp, 0xc
mov edx, dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 0x33c], edx
mov esi, dword [ebp - 0x33c]
mov al, byte [esi]
cmp al, 0xcc
je 0x405749
mov eax, dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0x34c], eax
mov esi, dword [ebp - 0x34c]
mov al, byte [esi]
cmp al, 0xcc
je 0x405749
mov ecx, dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 0x344], ecx
mov esi, dword [ebp - 0x344]
mov al, byte [esi]
cmp al, 0xcc
je 0x405749
mov edx, dword [sym.imp.KERNEL32.dll_FindResourceA]
mov dword [ebp - 0x348], edx
mov esi, dword [ebp - 0x348]
mov al, byte [esi]
cmp al, 0xcc
je 0x405749
mov eax, dword [sym.imp.KERNEL32.dll_LoadResource]
mov dword [ebp - 0x340], eax
mov esi, dword [ebp - 0x340]
mov al, byte [esi]
cmp al, 0xcc
je 0x405749
mov byte [ebp - 0x208], 4
mov byte [ebp - 0x207], 8
mov byte [ebp - 0x206], 0
mov byte [ebp - 0x205], 0
mov byte [ebp - 0x204], 0xc8
mov byte [ebp - 0x203], 0
mov byte [ebp - 0x202], 0
mov byte [ebp - 0x201], 0
mov byte [ebp - 0x200], 0x18
mov byte [ebp - 0x1ff], 0x61
mov byte [ebp - 0x1fe], 0xe
mov byte [ebp - 0x1fd], 0
mov byte [ebp - 0x1fc], 0x22
mov byte [ebp - 0x1fb], 0
mov byte [ebp - 0x1fa], 0
mov byte [ebp - 0x1f9], 0
mov byte [ebp - 0x1f8], 0x90
mov byte [ebp - 0x1f7], 0x66
mov byte [ebp - 0x1f6], 0xe
mov byte [ebp - 0x1f5], 0
mov byte [ebp - 0x1f4], 0xe8
mov byte [ebp - 0x1f3], 2
mov byte [ebp - 0x1f2], 0
mov byte [ebp - 0x1f1], 0
mov byte [ebp - 0x1f0], 0
mov byte [ebp - 0x1ef], 0
mov byte [ebp - 0x1ee], 0
mov byte [ebp - 0x1ed], 0
mov byte [ebp - 0x1ec], 0
mov byte [ebp - 0x1eb], 0
mov byte [ebp - 0x1ea], 0
mov byte [ebp - 0x1e9], 0
push 0x130
lea ecx, [ebp - 0x208]
push ecx
push 0x64
mov edx, dword [ebp + 8]
add edx, 0xa0
push edx
call fcn.004046c6
add esp, 0x10
mov dword [ebp - 0x20c], 0
mov dword [ebp - 4], 0
push 0x1d0
mov eax, dword [ebp + 8]
push eax
lea ecx, [ebp - 0x1e8]
push ecx
call fcn.00409f00
add esp, 0xc
mov edx, 1
test edx, edx
je 0x4059c5
push 0x1d0
lea eax, [ebp - 0x1e8]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.00409f00
add esp, 0xc
push 0xffffffffffffffff
mov edx, dword [0x41dbb4]
push edx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
lea eax, [ebp - 0x31c]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x1c4]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x1c8]
push ecx
mov edx, dword [ebp - 0x20c]
push edx
call fcn.00406fe0
test eax, eax
je 0x405858
push 0
push 1
mov eax, dword [0x41dbb4]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
push 0x10
mov ecx, dword [ebp + 8]
add ecx, 0xa0
push ecx
mov edx, dword [ebp + 8]
add edx, 0xb4
push edx
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov eax, dword [0x41d4e0]
push eax
push 0
push 1
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov dword [ebp - 0x350], eax
push 0
mov ecx, dword [ebp - 0x350]
push ecx
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
mov edx, dword [ebp - 0x350]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0xffffffffffffffff
mov dword [ebp - 0x354], 0
lea eax, [ebp - 0x10]
push eax
call fcn.00409e46
add esp, 8
mov eax, dword [ebp - 0x354]
jmp 0x405a68
push 0
push 1
mov ecx, dword [0x41dbb4]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
lea edx, [ebp - 0x31c]
push edx
push 0xc
mov eax, dword [ebp + 8]
add eax, 0x94
push eax
call fcn.00404922
add esp, 0xc
test eax, eax
jne 0x4058aa
push 0xffffffffffffffff
mov dword [ebp - 0x358], 0
lea ecx, [ebp - 0x10]
push ecx
call fcn.00409e46
add esp, 8
mov eax, dword [ebp - 0x358]
jmp 0x405a68
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x94]
push eax
push 0x417790
lea ecx, [ebp - 0x32c]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x98]
push eax
push 0x417790
lea ecx, [ebp - 0x338]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
lea edx, [ebp - 0x31c]
push edx
push 0
lea eax, [ebp - 0x338]
push eax
lea ecx, [ebp - 0x32c]
push ecx
mov edx, dword [ebp + 8]
xor eax, eax
mov al, byte [edx + 0x9e]
push eax
mov ecx, dword [ebp + 8]
xor edx, edx
mov dl, byte [ecx + 0x9f]
push edx
call fcn.00404e57
add esp, 0x18
test eax, eax
jne 0x405937
mov eax, dword [ebp - 0x20c]
add eax, 1
mov dword [ebp - 0x20c], eax
jmp 0x405772
push 0xffffffffffffffff
mov ecx, dword [0x41dbb4]
push ecx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
lea edx, [ebp - 0x31c]
push edx
lea eax, [ebp - 0x338]
push eax
lea ecx, [ebp - 0x32c]
push ecx
push 0
lea edx, [ebp - 0x214]
push edx
call fcn.00406f20
test eax, eax
jne 0x4059a0
push 0
push 1
mov eax, dword [0x41dbb4]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
push 0xffffffffffffffff
mov dword [ebp - 0x35c], 1
lea ecx, [ebp - 0x10]
push ecx
call fcn.00409e46
add esp, 8
mov eax, dword [ebp - 0x35c]
jmp 0x405a68
push 0
push 1
mov edx, dword [0x41dbb4]
push edx
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
mov eax, dword [ebp - 0x20c]
add eax, 1
mov dword [ebp - 0x20c], eax
jmp 0x405772
mov dword [ebp - 4], 0xffffffff
call fcn.004059d3
jmp 0x405a16
push 0x10
mov edx, dword [ebp + 8]
add edx, 0xa0
push edx
mov eax, dword [ebp + 8]
add eax, 0xb4
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov ecx, dword [0x41d4e0]
push ecx
push 0
push 1
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov dword [ebp - 0x218], eax
push 0
mov edx, dword [ebp - 0x218]
push edx
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
mov eax, dword [ebp - 0x218]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret