Function at 0x4667e0
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push ebp
lea ebp, [esp - 0x408]
sub esp, 0x408
push 0xffffffffffffffff
push 0x4acf20
mov eax, dword fs:[0]
push eax
sub esp, 0x1c
mov eax, dword [0x4cc748]
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 edi, ecx
mov eax, dword [ebp + 0x414]
mov ecx, dword [ebp + 0x418]
mov ebx, dword [ebp + 0x410]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x18], ecx
call dword [0x4cdbfc]
xor esi, esi
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x14], esi
mov dword [ebp - 4], esi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x28], esi
mov dword [ebp], esi
cmp ebx, esi
mov byte [ebp - 4], 1
je 0x4668c0
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push esi
add eax, 1
cdq
push 2
push edx
push eax
call fcn.0047d0c0
mov edi, eax
add eax, 0x80000000
adc edx, esi
test edx, edx
ja 0x4668c0
jb 0x466881
cmp eax, 0xffffffff
ja 0x4668c0
cmp edi, 0x400
jg 0x4668a4
push edi
call fcn.00402430
add esp, 4
test al, al
je 0x4668a4
mov eax, edi
call fcn.0047cf80
mov dword [ebp - 0x10], esp
mov eax, esp
jmp 0x4668b0
push edi
lea ecx, [ebp - 0x14]
call fcn.00402790
mov esi, dword [ebp - 0x14]
mov edx, dword [ebp - 0x1c]
push edx
push edi
push ebx
push eax
call fcn.00401a90
test eax, eax
jne 0x4668ef
lea eax, [ebp + 4]
cmp dword [ebp], eax
je 0x4668d0
lea ecx, [ebp]
call fcn.00463dc0
test esi, esi
je 0x4668e5
mov eax, esi
mov esi, dword [esi]
push eax
call fcn.0047bae2
add esp, 4
test esi, esi
jne 0x4668d4
mov eax, 0x8007000e
jmp 0x466a13
push 2
push 0
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryExA]
mov ebx, eax
test ebx, ebx
mov dword [ebp - 0x1c], ebx
jne 0x46690f
call fcn.00409aa0
mov edi, eax
jmp 0x4669e9
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x20]
push ecx
push edx
push ebx
call dword [sym.imp.KERNEL32.dll_FindResourceA]
mov edi, eax
test edi, edi
jne 0x46692e
call fcn.00409aa0
jmp 0x4669e0
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_LoadResource]
test eax, eax
mov dword [ebp - 0x18], eax
jne 0x466947
call fcn.00409aa0
jmp 0x4669e0
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_SizeofResource]
mov edi, eax
lea eax, [edi + 1]
cmp eax, edi
mov dword [ebp - 0x20], edi
jae 0x46697d
lea eax, [ebp + 4]
cmp dword [ebp], eax
je 0x46696b
lea ecx, [ebp]
call fcn.00463dc0
lea ecx, [ebp - 0x14]
call fcn.004020c0
mov eax, 0x8007000e
jmp 0x466a13
push eax
lea ecx, [ebp]
mov byte [ebp - 4], 2
call fcn.00464ba0
mov dword [ebp - 4], 1
jmp 0x4669a9
mov eax, dword [ebp]
test eax, eax
jne 0x4669b7
mov edi, 0x8007000e
jmp 0x4669e2
mov ecx, dword [ebp - 0x18]
push edi
push ecx
push edi
push eax
call fcn.00404ef0
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.00466000
mov edi, eax
push ebx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
lea edx, [ebp + 4]
cmp dword [ebp], edx
je 0x4669f9
lea ecx, [ebp]
call fcn.00463dc0
test esi, esi
je 0x466a11
lea ecx, [ecx]
mov eax, esi
mov esi, dword [esi]
push eax
call fcn.0047bae2
add esp, 4
test esi, esi
jne 0x466a00
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.0047b88d
add ebp, 0x408
mov esp, ebp
pop ebp
ret 0x10