Function at 0x40f707
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push ebp
lea ebp, [esp - 0x1718]
mov eax, 0x1798
call fcn.00413c90
mov eax, dword [0x43bc80]
xor eax, ebp
mov dword [ebp + 0x1714], eax
fld dword [0x433f00]
push ebx
xor ebx, ebx
fst dword [ebp - 0x6c]
fstp dword [ebp - 0x78]
cmp dword [ebp + 0x1720], ebx
je 0x40f7da
lea eax, [ebp - 0x78]
push eax
lea eax, [ebp - 0x6c]
push eax
call fcn.0040f3b2
push eax
call fcn.0040f254
fldz
fcomp dword [ebp - 0x6c]
add esp, 0xc
fnstsw ax
test ah, 5
jp 0x40f76e
fld dword [ebp - 0x6c]
fdiv qword [0x434298]
jmp 0x40f770
fld1
push ecx
fstp dword [ebp - 0x68]
fld dword [ebp - 0x68]
push ecx
fstp qword [esp]
push str.scale_factor__f
call fcn.0040ea46
add esp, 0xc
cmp byte [0x448cbc], bl
jne 0x40faae
push edi
call fcn.00406847
push eax
lea eax, [ebp - 0x5c]
push str._s_bin_splashscreen.dll
push eax
call fcn.00414711
lea eax, [ebp - 0x5c]
push eax
push str.loading_splashscreen_dll_from__S
call fcn.0040ea46
add esp, 0x14
lea eax, [ebp - 0x5c]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov edi, eax
cmp edi, ebx
jne 0x40f7f1
push str.Could_not_load_splashscreen.dll
call fcn.0040e9dd
pop ecx
jmp 0x40faad
cmp byte [0x448cbc], bl
je 0x40faae
call dword [0x448cb4]
jmp 0x40faae
push esi
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.SplashClose
push edi
call esi
push str.SplashInit
push edi
mov dword [0x448cb4], eax
call esi
push str.SplashLoadMemory
push edi
mov dword [0x448cb0], eax
call esi
mov dword [0x448cb8], eax
cmp dword [0x448cb4], ebx
je 0x40faa1
cmp dword [0x448cb0], ebx
je 0x40faa1
cmp eax, ebx
je 0x40faa1
push str.SplashSetScaleFactor
push edi
call esi
mov dword [0x448cac], eax
call dword [0x448cb0]
cmp dword [0x448cac], ebx
je 0x40fa54
fld1
fcomp dword [ebp - 0x68]
fnstsw ax
test ah, 5
jp 0x40fa54
fld dword [ebp - 0x68]
fmul qword [0x434180]
call fcn.00418750
push 0xffffffffffffff9c
pop ecx
sub ecx, eax
mov eax, ecx
push 0x19
pop ecx
cdq
idiv ecx
mov esi, eax
push esi
push str.idOffset_start__d
mov dword [ebp - 0x64], esi
mov dword [ebp - 0x60], esi
call fcn.0040ea46
pop ecx
pop ecx
add esi, 0x2710
movzx eax, si
mov esi, dword [sym.imp.KERNEL32.dll_FindResourceA]
push 0xa
push eax
push ebx
call esi
mov edi, eax
cmp edi, ebx
jne 0x40f914
inc dword [ebp - 0x60]
cmp dword [ebp - 0x60], 0x40
jg 0x40f8d9
mov eax, dword [ebp - 0x60]
add eax, 0x2710
movzx eax, ax
push 0xa
push eax
push ebx
call esi
mov edi, eax
cmp edi, ebx
je 0x40f8b9
cmp edi, ebx
jne 0x40f914
mov eax, dword [ebp - 0x64]
jmp 0x40f8e5
mov eax, dword [ebp - 0x60]
dec eax
cmp eax, ebx
mov dword [ebp - 0x60], eax
jle 0x40f901
add eax, 0x2710
movzx eax, ax
push 0xa
push eax
push ebx
call esi
mov edi, eax
cmp edi, ebx
je 0x40f8e2
cmp edi, ebx
jne 0x40f914
push 0xa
push 0x2710
push ebx
mov dword [ebp - 0x60], ebx
call esi
mov edi, eax
fild dword [ebp - 0x60]
push edi
push ebx
fmul qword [0x434150]
fadd qword [0x434290]
fstp qword [ebp - 0x74]
call dword [sym.imp.KERNEL32.dll_LoadResource]
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
push edi
push ebx
mov dword [ebp - 0x64], eax
call dword [sym.imp.KERNEL32.dll_SizeofResource]
fld dword [ebp - 0x68]
fdiv qword [ebp - 0x74]
mov dword [ebp - 0x60], eax
fst qword [ebp - 0x80]
fld qword [0x434148]
fcomp st(1)
fnstsw ax
test ah, 5
jnp 0x40f96e
fld qword [0x434140]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x40fa04
push ecx
push ecx
fstp qword [esp]
push str.scaling_splash_image__f
call fcn.0040ea46
fld qword [ebp - 0x80]
add esp, 0xc
push dword [ebp - 0x60]
push dword [ebp - 0x64]
push ecx
push ecx
fstp qword [esp]
call fcn.0040f3c1
mov esi, eax
add esp, 0x10
cmp esi, ebx
je 0x40fa06
fld dword [ebp - 0x68]
push ecx
fstp dword [esp]
call dword [0x448cac]
pop ecx
lea eax, [ebp - 0x60]
push eax
push esi
mov dword [ebp - 0x60], ebx
call dword [sym.imp.ole32.dll_GetHGlobalFromStream]
push dword [ebp - 0x60]
call dword [sym.imp.KERNEL32.dll_GlobalLock]
push dword [ebp - 0x60]
mov ebx, dword [sym.imp.KERNEL32.dll_GlobalSize]
mov dword [ebp - 0x64], eax
call ebx
push eax
push dword [ebp - 0x64]
push edi
push dword [ebp - 0x60]
call ebx
push eax
push dword [ebp - 0x64]
call dword [0x448cb8]
pop ecx
pop ecx
push eax
push str.splash_load_memory_returned_1__d___p___p___d_
call fcn.0040ea46
add esp, 0x14
push dword [ebp - 0x60]
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov eax, dword [esi]
push esi
call dword [eax + 8]
jmp 0x40fa3d
fstp st(0)
fld qword [ebp - 0x74]
push ecx
fstp dword [ebp - 0x70]
fld dword [ebp - 0x70]
fstp dword [esp]
call dword [0x448cac]
pop ecx
push dword [ebp - 0x60]
push dword [ebp - 0x64]
push edi
push dword [ebp - 0x60]
push dword [ebp - 0x64]
call dword [0x448cb8]
pop ecx
pop ecx
push eax
push str.splash_load_memory_returned_2__d___p___p___d_
call fcn.0040ea46
add esp, 0x14
fld dword [ebp - 0x68]
push ecx
push ecx
fstp qword [esp]
push str.setting_scale_factor__f
call fcn.0040ea46
add esp, 0xc
jmp 0x40fa98
push 0xa
push 0x2710
push ebx
call dword [sym.imp.KERNEL32.dll_FindResourceA]
mov esi, eax
push esi
push ebx
call dword [sym.imp.KERNEL32.dll_LoadResource]
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
push esi
push ebx
mov edi, eax
call dword [sym.imp.KERNEL32.dll_SizeofResource]
push eax
push edi
push esi
push eax
push edi
call dword [0x448cb8]
pop ecx
pop ecx
push eax
push str.splash_load_memory_returned_3__d___p___p___d_
call fcn.0040ea46
add esp, 0x14
mov byte [0x448cbc], 1
jmp 0x40faac
push str.Could_not_find_functions_in_splashscreen.dll
call fcn.0040e9dd
pop ecx
pop esi
pop edi
mov ecx, dword [ebp + 0x1714]
xor ecx, ebp
pop ebx
call fcn.00413c78
add ebp, 0x1718
leave
ret