Function at 0x45f220
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push ebp
lea ebp, [esp - 0x408]
sub esp, 0x408
push 0xffffffffffffffff
push 0x4a4ff0
mov eax, dword fs:[0]
push eax
sub esp, 0x1c
mov eax, dword [0x4c36a0]
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 [0x4c3558]
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 0x45f300
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push esi
add eax, 1
cdq
push 2
push edx
push eax
call fcn.00477130
mov edi, eax
add eax, 0x80000000
adc edx, esi
test edx, edx
ja 0x45f300
jb 0x45f2c1
cmp eax, 0xffffffff
ja 0x45f300
cmp edi, 0x400
jg 0x45f2e4
push edi
call fcn.00404fa0
add esp, 4
test al, al
je 0x45f2e4
mov eax, edi
call fcn.00477030
mov dword [ebp - 0x10], esp
mov eax, esp
jmp 0x45f2f0
push edi
lea ecx, [ebp - 0x14]
call fcn.00405240
mov esi, dword [ebp - 0x14]
mov edx, dword [ebp - 0x1c]
push edx
push edi
push ebx
push eax
call fcn.004010f0
test eax, eax
jne 0x45f32f
lea eax, [ebp + 4]
cmp dword [ebp], eax
je 0x45f310
lea ecx, [ebp]
call fcn.0045c4b0
test esi, esi
je 0x45f325
mov eax, esi
mov esi, dword [esi]
push eax
call fcn.004754d5
add esp, 4
test esi, esi
jne 0x45f314
mov eax, 0x8007000e
jmp 0x45f453
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 0x45f34f
call fcn.0041d9d0
mov edi, eax
jmp 0x45f429
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 0x45f36e
call fcn.0041d9d0
jmp 0x45f420
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_LoadResource]
test eax, eax
mov dword [ebp - 0x18], eax
jne 0x45f387
call fcn.0041d9d0
jmp 0x45f420
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 0x45f3bd
lea eax, [ebp + 4]
cmp dword [ebp], eax
je 0x45f3ab
lea ecx, [ebp]
call fcn.0045c4b0
lea ecx, [ebp - 0x14]
call fcn.00402aa0
mov eax, 0x8007000e
jmp 0x45f453
push eax
lea ecx, [ebp]
mov byte [ebp - 4], 2
call fcn.0045d290
mov dword [ebp - 4], 1
jmp 0x45f3e9
mov eax, dword [ebp]
test eax, eax
jne 0x45f3f7
mov edi, 0x8007000e
jmp 0x45f422
mov ecx, dword [ebp - 0x18]
push edi
push ecx
push edi
push eax
call fcn.0041bba0
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.0045e980
mov edi, eax
push ebx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
lea edx, [ebp + 4]
cmp dword [ebp], edx
je 0x45f439
lea ecx, [ebp]
call fcn.0045c4b0
test esi, esi
je 0x45f451
lea ecx, [ecx]
mov eax, esi
mov esi, dword [esi]
push eax
call fcn.004754d5
add esp, 4
test esi, esi
jne 0x45f440
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.00476554
add ebp, 0x408
mov esp, ebp
pop ebp
ret 0x10