Function at 0x41f060
Capabilities:
Extract resource via kernel32 functions

Disassembly:
mov eax, 0x20090
call fcn.004a7170
push ebx
push ebp
mov ebp, dword [esp + 0x200a4]
push esi
push edi
test ebp, ebp
je 0x41f3c4
cmp word [ebp], 0
je 0x41f3c4
mov edi, dword [0x4d95cc]
mov eax, dword [0x4d95c8]
cmp edi, eax
jl 0x41f12a
cmp edi, 0xffff
jl 0x41f0c6
mov ecx, dword [esp + 0x200a4]
push 0x4af9bc
push str.Too_many_includes.
call fcn.0043a0d0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20090
ret 0x14
test eax, eax
je 0x41f0dc
lea esi, [eax + eax]
cmp esi, 0xffff
jle 0x41f0e1
mov esi, 0xffff
jmp 0x41f0e1
mov esi, 0x64
mov ecx, dword [0x4d95c4]
lea eax, [esi*4]
push eax
push ecx
call fcn.004992d7
add esp, 8
test eax, eax
jne 0x41f11f
mov ecx, dword [esp + 0x200a4]
push 0x4af9bc
push str.Out_of_memory.
call fcn.0043a0d0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20090
ret 0x14
mov dword [0x4d95c4], eax
mov dword [0x4d95c8], esi
mov ebx, edi
test ebx, ebx
jne 0x41f151
cmp word [ebp], 0x2a
je 0x41f158
mov edx, dword [esp + 0x200a4]
mov eax, dword [edx + 0xac8]
mov ecx, dword [0x4d95c4]
mov dword [ecx], eax
jmp 0x41f1db
cmp word [ebp], 0x2a
jne 0x41f182
push 0x7fff
lea edx, [esp + 0x24]
push ebp
push edx
call fcn.0049c414
add esp, 0xc
lea ecx, [esp + 0x20]
xor eax, eax
push ecx
mov word [esp + 0x10022], ax
call dword [sym.imp.USER32.dll_CharUpperW]
jmp 0x41f198
lea edx, [esp + 0x1c]
push edx
lea eax, [esp + 0x24]
push eax
push 0x8000
push ebp
call dword [sym.imp.KERNEL32.dll_GetFullPathNameW]
cmp byte [esp + 0x200b0], 0
jne 0x41f1ce
xor esi, esi
test ebx, ebx
jle 0x41f1ce
mov edi, dword [sym.imp.KERNEL32.dll_lstrcmpiW]
mov edi, edi
mov edx, dword [0x4d95c4]
mov eax, dword [edx + esi*4]
lea ecx, [esp + 0x20]
push ecx
push eax
call edi
test eax, eax
je 0x41f26f
inc esi
cmp esi, ebx
jl 0x41f1b0
mov ecx, dword [0x4d95c4]
mov dword [ecx + ebx*4], 0
mov edi, ebp
mov ebp, dword [0x4d8698]
xor ecx, ecx
mov eax, edi
cmp word [eax], 0x2a
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], ecx
mov byte [esp + 0x18], cl
jne 0x41f28e
add eax, 2
cmp word [eax], cx
je 0x41f28e
push 0xa
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov esi, eax
test esi, esi
je 0x41f28e
push esi
push 0
call dword [sym.imp.KERNEL32.dll_LoadResource]
test eax, eax
je 0x41f2b0
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
mov dword [esp + 0x10], eax
test eax, eax
je 0x41f2b0
push esi
push 0
call dword [sym.imp.KERNEL32.dll_SizeofResource]
push 0x44
mov dword [esp + 0x18], eax
lea edi, [esp + 0x14]
mov ebp, 0xfde9
call fcn.00499892
add esp, 4
test eax, eax
je 0x41f281
mov esi, eax
call fcn.0041d240
mov edx, dword [esp + 0x200a8]
mov dword [edx], eax
jmp 0x41f2b0
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20090
ret 0x14
mov edx, dword [esp + 0x200a8]
xor eax, eax
mov dword [edx], eax
jmp 0x41f2b0
push 0x38
call fcn.00499892
add esp, 4
test eax, eax
je 0x41f2a5
mov esi, eax
call fcn.004040e0
jmp 0x41f2a7
xor eax, eax
mov ecx, dword [esp + 0x200a8]
mov dword [ecx], eax
mov edx, dword [esp + 0x200a8]
mov ecx, dword [edx]
test ecx, ecx
je 0x41f365
push 0x30c
mov eax, ebp
mov edx, edi
call fcn.0047ccb0
test al, al
je 0x41f365
mov eax, dword [0x4d95c4]
cmp dword [eax + ebx*4], 0
jne 0x41f303
lea ecx, [esp + 0x20]
push ecx
or ecx, 0xffffffff
call fcn.0047c1b0
mov edx, dword [0x4d95c4]
add esp, 4
mov dword [edx + ebx*4], eax
test eax, eax
je 0x41f0fc
inc dword [0x4d95cc]
test ebx, ebx
jne 0x41f353
push 0xa
push 2
push ebx
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov esi, dword [esp + 0x200a4]
test eax, eax
je 0x41f339
push ebx
push ebx
push 0x4b6474
mov ecx, esi
call fcn.0041f3e0
test eax, eax
je 0x41f3c4
mov eax, dword [esi + 0xaf0]
test eax, eax
je 0x41f353
push 0
push 0
push eax
mov ecx, esi
call fcn.0041f3e0
test eax, eax
je 0x41f3c4
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20090
ret 0x14
cmp byte [esp + 0x200b4], 0
jne 0x41f26f
mov eax, str.Include
test ebx, ebx
jne 0x41f381
mov eax, str.Script
mov ecx, dword [esp + 0x200ac]
push ecx
push eax
push str._s_file___s__cannot_be_opened.
mov esi, 0x8040
lea edi, [esp + 0x1002c]
call fcn.0047f1f0
mov ecx, dword [esp + 0x200b0]
add esp, 0xc
push 0x4af9bc
mov edx, edi
push edx
call fcn.0043a0d0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20090
ret 0x14
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x20090
ret 0x14