Function at 0x41f390
Capabilities:
Extract resource via kernel32 functions

Disassembly:
mov eax, 0x20090
call fcn.004a78d0
push ebx
push ebp
mov ebp, dword [esp + 0x200a4]
push esi
push edi
test ebp, ebp
je 0x41f6f4
cmp word [ebp], 0
je 0x41f6f4
mov edi, dword [0x4da5cc]
mov eax, dword [0x4da5c8]
cmp edi, eax
jl 0x41f45a
cmp edi, 0xffff
jl 0x41f3f6
mov ecx, dword [esp + 0x200a4]
push 0x4af9bc
push str.Too_many_includes.
call fcn.0043a450
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20090
ret 0x14
test eax, eax
je 0x41f40c
lea esi, [eax + eax]
cmp esi, 0xffff
jle 0x41f411
mov esi, 0xffff
jmp 0x41f411
mov esi, 0x64
mov ecx, dword [0x4da5c4]
lea eax, [esi*4]
push eax
push ecx
call fcn.00499a37
add esp, 8
test eax, eax
jne 0x41f44f
mov ecx, dword [esp + 0x200a4]
push 0x4af9bc
push str.Out_of_memory.
call fcn.0043a450
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20090
ret 0x14
mov dword [0x4da5c4], eax
mov dword [0x4da5c8], esi
mov ebx, edi
test ebx, ebx
jne 0x41f481
cmp word [ebp], 0x2a
je 0x41f488
mov edx, dword [esp + 0x200a4]
mov eax, dword [edx + 0xac8]
mov ecx, dword [0x4da5c4]
mov dword [ecx], eax
jmp 0x41f50b
cmp word [ebp], 0x2a
jne 0x41f4b2
push 0x7fff
lea edx, [esp + 0x24]
push ebp
push edx
call fcn.0049cb74
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 0x41f4c8
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 0x41f4fe
xor esi, esi
test ebx, ebx
jle 0x41f4fe
mov edi, dword [sym.imp.KERNEL32.dll_lstrcmpiW]
mov edi, edi
mov edx, dword [0x4da5c4]
mov eax, dword [edx + esi*4]
lea ecx, [esp + 0x20]
push ecx
push eax
call edi
test eax, eax
je 0x41f59f
inc esi
cmp esi, ebx
jl 0x41f4e0
mov ecx, dword [0x4da5c4]
mov dword [ecx + ebx*4], 0
mov edi, ebp
mov ebp, dword [0x4d9698]
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 0x41f5be
add eax, 2
cmp word [eax], cx
je 0x41f5be
push 0xa
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov esi, eax
test esi, esi
je 0x41f5be
push esi
push 0
call dword [sym.imp.KERNEL32.dll_LoadResource]
test eax, eax
je 0x41f5e0
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
mov dword [esp + 0x10], eax
test eax, eax
je 0x41f5e0
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.00499ff2
add esp, 4
test eax, eax
je 0x41f5b1
mov esi, eax
call fcn.0041d5a0
mov edx, dword [esp + 0x200a8]
mov dword [edx], eax
jmp 0x41f5e0
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 0x41f5e0
push 0x38
call fcn.00499ff2
add esp, 4
test eax, eax
je 0x41f5d5
mov esi, eax
call fcn.00404180
jmp 0x41f5d7
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 0x41f695
push 0x30c
mov eax, ebp
mov edx, edi
call fcn.0047d2a0
test al, al
je 0x41f695
mov eax, dword [0x4da5c4]
cmp dword [eax + ebx*4], 0
jne 0x41f633
lea ecx, [esp + 0x20]
push ecx
or ecx, 0xffffffff
call fcn.0047c7a0
mov edx, dword [0x4da5c4]
add esp, 4
mov dword [edx + ebx*4], eax
test eax, eax
je 0x41f42c
inc dword [0x4da5cc]
test ebx, ebx
jne 0x41f683
push 0xa
push 2
push ebx
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov esi, dword [esp + 0x200a4]
test eax, eax
je 0x41f669
push ebx
push ebx
push 0x4b653c
mov ecx, esi
call fcn.0041f710
test eax, eax
je 0x41f6f4
mov eax, dword [esi + 0xaf0]
test eax, eax
je 0x41f683
push 0
push 0
push eax
mov ecx, esi
call fcn.0041f710
test eax, eax
je 0x41f6f4
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20090
ret 0x14
cmp byte [esp + 0x200b4], 0
jne 0x41f59f
mov eax, str.Include
test ebx, ebx
jne 0x41f6b1
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.0047f800
mov ecx, dword [esp + 0x200b0]
add esp, 0xc
push 0x4af9bc
mov edx, edi
push edx
call fcn.0043a450
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