Function at 0x41f1b0
Capabilities:
Extract resource via kernel32 functions

Disassembly:
mov eax, 0x20090
call fcn.004a7400
push ebx
push ebp
mov ebp, dword [esp + 0x200a4]
push esi
push edi
test ebp, ebp
je 0x41f514
cmp word [ebp], 0
je 0x41f514
mov edi, dword [0x4d95cc]
mov eax, dword [0x4d95c8]
cmp edi, eax
jl 0x41f27a
cmp edi, 0xffff
jl 0x41f216
mov ecx, dword [esp + 0x200a4]
push 0x4af9bc
push str.Too_many_includes.
call fcn.0043a180
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20090
ret 0x14
test eax, eax
je 0x41f22c
lea esi, [eax + eax]
cmp esi, 0xffff
jle 0x41f231
mov esi, 0xffff
jmp 0x41f231
mov esi, 0x64
mov ecx, dword [0x4d95c4]
lea eax, [esi*4]
push eax
push ecx
call fcn.00499567
add esp, 8
test eax, eax
jne 0x41f26f
mov ecx, dword [esp + 0x200a4]
push 0x4af9bc
push str.Out_of_memory.
call fcn.0043a180
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 0x41f2a1
cmp word [ebp], 0x2a
je 0x41f2a8
mov edx, dword [esp + 0x200a4]
mov eax, dword [edx + 0xac8]
mov ecx, dword [0x4d95c4]
mov dword [ecx], eax
jmp 0x41f32b
cmp word [ebp], 0x2a
jne 0x41f2d2
push 0x7fff
lea edx, [esp + 0x24]
push ebp
push edx
call fcn.0049c6a4
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 0x41f2e8
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 0x41f31e
xor esi, esi
test ebx, ebx
jle 0x41f31e
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 0x41f3bf
inc esi
cmp esi, ebx
jl 0x41f300
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 0x41f3de
add eax, 2
cmp word [eax], cx
je 0x41f3de
push 0xa
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov esi, eax
test esi, esi
je 0x41f3de
push esi
push 0
call dword [sym.imp.KERNEL32.dll_LoadResource]
test eax, eax
je 0x41f400
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
mov dword [esp + 0x10], eax
test eax, eax
je 0x41f400
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.00499b22
add esp, 4
test eax, eax
je 0x41f3d1
mov esi, eax
call fcn.0041d3c0
mov edx, dword [esp + 0x200a8]
mov dword [edx], eax
jmp 0x41f400
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 0x41f400
push 0x38
call fcn.00499b22
add esp, 4
test eax, eax
je 0x41f3f5
mov esi, eax
call fcn.00404180
jmp 0x41f3f7
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 0x41f4b5
push 0x30c
mov eax, ebp
mov edx, edi
call fcn.0047cf40
test al, al
je 0x41f4b5
mov eax, dword [0x4d95c4]
cmp dword [eax + ebx*4], 0
jne 0x41f453
lea ecx, [esp + 0x20]
push ecx
or ecx, 0xffffffff
call fcn.0047c440
mov edx, dword [0x4d95c4]
add esp, 4
mov dword [edx + ebx*4], eax
test eax, eax
je 0x41f24c
inc dword [0x4d95cc]
test ebx, ebx
jne 0x41f4a3
push 0xa
push 2
push ebx
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov esi, dword [esp + 0x200a4]
test eax, eax
je 0x41f489
push ebx
push ebx
push 0x4b6474
mov ecx, esi
call fcn.0041f530
test eax, eax
je 0x41f514
mov eax, dword [esi + 0xaf0]
test eax, eax
je 0x41f4a3
push 0
push 0
push eax
mov ecx, esi
call fcn.0041f530
test eax, eax
je 0x41f514
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20090
ret 0x14
cmp byte [esp + 0x200b4], 0
jne 0x41f3bf
mov eax, str.Include
test ebx, ebx
jne 0x41f4d1
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.0047f480
mov ecx, dword [esp + 0x200b0]
add esp, 0xc
push 0x4af9bc
mov edx, edi
push edx
call fcn.0043a180
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