Function at 0x40c420
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push ebp
lea ebp, [esp - 0x408]
sub esp, 0x408
push 0xffffffffffffffff
push 0x4262e0
mov eax, dword fs:[0]
push eax
sub esp, 0x1c
mov eax, dword [0x435264]
xor eax, ebp
mov dword [ebp + 0x404], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov eax, dword [ebp + 0x414]
mov edx, dword [ebp + 0x418]
mov ebx, dword [ebp + 0x410]
xor esi, esi
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], edx
xor edi, edi
mov dword [ebp - 0x14], esi
mov dword [ebp - 4], edi
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], edi
mov dword [ebp], edi
mov byte [ebp - 4], 1
cmp ebx, edi
je 0x40c4f5
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push edi
inc eax
cdq
push 2
push edx
push eax
call fcn.00414c30
mov edi, eax
add eax, 0x80000000
adc edx, esi
test edx, edx
ja 0x40c4f3
jb 0x40c4b6
cmp eax, 0xffffffff
ja 0x40c4f3
cmp edi, 0x400
jg 0x40c4d9
push edi
call fcn.00407330
add esp, 4
test al, al
je 0x40c4d9
mov eax, edi
call fcn.00414c00
mov dword [ebp - 0x10], esp
mov eax, esp
jmp 0x40c4e5
push edi
lea ecx, [ebp - 0x14]
call fcn.00407800
mov esi, dword [ebp - 0x14]
push 3
push edi
push ebx
push eax
call fcn.00406430
test eax, eax
jne 0x40c52b
xor edi, edi
lea eax, [ebp + 4]
cmp dword [ebp], eax
je 0x40c505
lea ecx, [ebp]
call fcn.00407200
cmp esi, edi
je 0x40c521
lea esp, [esp]
mov eax, esi
mov esi, dword [esi]
push eax
call fcn.0041477e
add esp, 4
cmp esi, edi
jne 0x40c510
mov eax, 0x8007000e
jmp 0x40c653
push 2
push 0
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryExA]
mov ebx, eax
mov dword [ebp - 0x20], ebx
test ebx, ebx
jne 0x40c54b
call fcn.00406670
mov edi, eax
jmp 0x40c625
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x18]
push ecx
push edx
push ebx
call dword [sym.imp.KERNEL32.dll_FindResourceA]
mov edi, eax
test edi, edi
jne 0x40c56a
call fcn.00406670
jmp 0x40c61c
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_LoadResource]
mov dword [ebp - 0x1c], eax
test eax, eax
jne 0x40c583
call fcn.00406670
jmp 0x40c61c
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_SizeofResource]
mov edi, eax
lea eax, [edi + 1]
mov dword [ebp - 0x18], edi
cmp eax, edi
jae 0x40c5b9
lea eax, [ebp + 4]
cmp dword [ebp], eax
je 0x40c5a7
lea ecx, [ebp]
call fcn.00407200
lea ecx, [ebp - 0x14]
call fcn.004071a0
mov eax, 0x8007000e
jmp 0x40c653
push eax
lea ecx, [ebp]
mov byte [ebp - 4], 2
call fcn.00409110
mov dword [ebp - 4], 1
jmp 0x40c5e5
mov eax, dword [ebp]
test eax, eax
jne 0x40c5f3
mov edi, 0x8007000e
jmp 0x40c61e
mov ecx, dword [ebp - 0x1c]
push edi
push ecx
push edi
push eax
call fcn.00406560
mov edx, dword [ebp]
mov eax, dword [ebp + 0x41c]
add esp, 0x10
mov byte [edx + edi], 0
mov ecx, dword [ebp]
push eax
push ecx
lea ecx, [ebp - 0x28]
call fcn.0040bf70
mov edi, eax
push ebx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
lea edx, [ebp + 4]
cmp dword [ebp], edx
je 0x40c635
lea ecx, [ebp]
call fcn.00407200
test esi, esi
je 0x40c651
lea esp, [esp]
mov eax, esi
mov esi, dword [esi]
push eax
call fcn.0041477e
add esp, 4
test esi, esi
jne 0x40c640
mov eax, edi
lea esp, [ebp - 0x38]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x404]
xor ecx, ebp
call fcn.00413580
add ebp, 0x408
mov esp, ebp
pop ebp
ret 0x10