Function at 0x41f410
Capabilities:
Extract resource via kernel32 functions

Disassembly:
mov eax, 0x20090
call fcn.004a7dd0
push ebx
push ebp
mov ebp, dword [esp + 0x200a4]
push esi
push edi
test ebp, ebp
je 0x41f774
cmp word [ebp], 0
je 0x41f774
mov edi, dword [0x4da634]
mov eax, dword [0x4da630]
cmp edi, eax
jl 0x41f4da
cmp edi, 0xffff
jl 0x41f476
mov ecx, dword [esp + 0x200a4]
push 0x4b0cf8
push str.Too_many_includes.
call fcn.0043a420
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20090
ret 0x14
test eax, eax
je 0x41f48c
lea esi, [eax + eax]
cmp esi, 0xffff
jle 0x41f491
mov esi, 0xffff
jmp 0x41f491
mov esi, 0x64
mov ecx, dword [0x4da62c]
lea eax, [esi*4]
push eax
push ecx
call fcn.0049a1c7
add esp, 8
test eax, eax
jne 0x41f4cf
mov ecx, dword [esp + 0x200a4]
push 0x4b0cf8
push str.Out_of_memory.
call fcn.0043a420
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20090
ret 0x14
mov dword [0x4da62c], eax
mov dword [0x4da630], esi
mov ebx, edi
test ebx, ebx
jne 0x41f501
cmp word [ebp], 0x2a
je 0x41f508
mov edx, dword [esp + 0x200a4]
mov eax, dword [edx + 0xac8]
mov ecx, dword [0x4da62c]
mov dword [ecx], eax
jmp 0x41f58b
cmp word [ebp], 0x2a
jne 0x41f532
push 0x7fff
lea edx, [esp + 0x24]
push ebp
push edx
call fcn.0049d054
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 0x41f548
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 0x41f57e
xor esi, esi
test ebx, ebx
jle 0x41f57e
mov edi, dword [sym.imp.KERNEL32.DLL_lstrcmpiW]
mov edi, edi
mov edx, dword [0x4da62c]
mov eax, dword [edx + esi*4]
lea ecx, [esp + 0x20]
push ecx
push eax
call edi
test eax, eax
je 0x41f61f
inc esi
cmp esi, ebx
jl 0x41f560
mov ecx, dword [0x4da62c]
mov dword [ecx + ebx*4], 0
mov edi, ebp
mov ebp, dword [0x4d9704]
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 0x41f63e
add eax, 2
cmp word [eax], cx
je 0x41f63e
push 0xa
push eax
push ecx
call dword [sym.imp.KERNEL32.DLL_FindResourceW]
mov esi, eax
test esi, esi
je 0x41f63e
push esi
push 0
call dword [sym.imp.KERNEL32.DLL_LoadResource]
test eax, eax
je 0x41f660
push eax
call dword [sym.imp.KERNEL32.DLL_LockResource]
mov dword [esp + 0x10], eax
test eax, eax
je 0x41f660
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.0049a782
add esp, 4
test eax, eax
je 0x41f631
mov esi, eax
call fcn.0041d5d0
mov edx, dword [esp + 0x200a8]
mov dword [edx], eax
jmp 0x41f660
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 0x41f660
push 0x38
call fcn.0049a782
add esp, 4
test eax, eax
je 0x41f655
mov esi, eax
call fcn.00404140
jmp 0x41f657
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 0x41f715
push 0x30c
mov eax, ebp
mov edx, edi
call fcn.0047da40
test al, al
je 0x41f715
mov eax, dword [0x4da62c]
cmp dword [eax + ebx*4], 0
jne 0x41f6b3
lea ecx, [esp + 0x20]
push ecx
or ecx, 0xffffffff
call fcn.0047cf40
mov edx, dword [0x4da62c]
add esp, 4
mov dword [edx + ebx*4], eax
test eax, eax
je 0x41f4ac
inc dword [0x4da634]
test ebx, ebx
jne 0x41f703
push 0xa
push 2
push ebx
call dword [sym.imp.KERNEL32.DLL_FindResourceW]
mov esi, dword [esp + 0x200a4]
test eax, eax
je 0x41f6e9
push ebx
push ebx
push 0x4b6514
mov ecx, esi
call fcn.0041f790
test eax, eax
je 0x41f774
mov eax, dword [esi + 0xaf0]
test eax, eax
je 0x41f703
push 0
push 0
push eax
mov ecx, esi
call fcn.0041f790
test eax, eax
je 0x41f774
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20090
ret 0x14
cmp byte [esp + 0x200b4], 0
jne 0x41f61f
mov eax, str.Include
test ebx, ebx
jne 0x41f731
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.0047ffb0
mov ecx, dword [esp + 0x200b0]
add esp, 0xc
push 0x4b0cf8
mov edx, edi
push edx
call fcn.0043a420
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