Function at 0x1009dce0
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10139816
mov eax, dword fs:[0]
push eax
sub esp, 0x18
mov eax, dword [0x10194008]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov edi, dword [ebp + 8]
mov ebx, dword [ebp + 0xc]
mov dword [ebp - 0x1c], ebx
test edi, edi
jne 0x1009dd21
xor al, al
jmp 0x1009dee7
lea eax, [esi + 0x2c]
mov dword [ebp - 0x18], 0
push eax
lea ecx, [ebp - 0x18]
mov dword [ebp - 0x24], eax
call fcn.1000b9f0
mov dword [ebp - 4], 0
mov eax, dword [esi + 4]
cmp eax, 1
jne 0x1009dd6e
lea ecx, [esi + 8]
call fcn.100055f0
test al, al
jne 0x1009de04
push ebx
push edi
mov ecx, esi
call fcn.1009e0c0
mov bl, al
test bl, bl
jne 0x1009ded6
jmp 0x1009de04
cmp eax, 2
jne 0x1009de04
cmp dword [esi + 0x28], 0
je 0x1009de04
lea eax, [esi + 0x2c]
mov dword [ebp - 0x14], 0
push eax
lea ecx, [ebp - 0x14]
call fcn.1000b9f0
mov byte [ebp - 4], 1
mov ebx, dword [sym.imp.KERNEL32.dll_FindResourceW]
push 0x1015f5ac
movzx eax, di
push eax
push dword [esi + 0x28]
call ebx
mov dword [ebp - 0x20], eax
test eax, eax
jne 0x1009ddc0
mov byte [ebp - 4], al
lea ecx, [ebp - 0x14]
call fcn.1000ba20
jmp 0x1009de0a
push eax
push dword [esi + 0x28]
call dword [sym.imp.KERNEL32.dll_SizeofResource]
mov ebx, eax
test ebx, ebx
je 0x1009ddf8
push dword [ebp - 0x20]
push dword [esi + 0x28]
call dword [sym.imp.KERNEL32.dll_LoadResource]
mov esi, eax
test esi, esi
je 0x1009ddf8
push esi
call dword [sym.imp.KERNEL32.dll_LockResource]
test eax, eax
jne 0x1009deb7
push esi
call dword [sym.imp.KERNEL32.dll_FreeResource]
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.1000ba20
mov ebx, dword [sym.imp.KERNEL32.dll_FindResourceW]
push dword [ebp - 0x24]
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], 0
call fcn.1000b9f0
mov byte [ebp - 4], 2
mov eax, dword [0x1019adc8]
test al, 1
jne 0x1009de55
or eax, 1
mov dword [0x1019adc8], eax
mov byte [ebp - 4], 3
mov dword [0x1019adcc], 0
call fcn.10088590
push 0x10143a40
call fcn.100fc939
add esp, 4
mov byte [ebp - 4], 2
mov eax, dword [0x1019adcc]
mov esi, 0x10000000
push 0x1015f5ac
mov eax, dword [eax + 0x44]
test eax, eax
cmovne esi, eax
movzx eax, di
push eax
push esi
call ebx
mov edi, eax
test edi, edi
je 0x1009dea7
push edi
push esi
call dword [sym.imp.KERNEL32.dll_SizeofResource]
mov ebx, eax
test ebx, ebx
je 0x1009dea7
push edi
push esi
call dword [sym.imp.KERNEL32.dll_LoadResource]
mov esi, eax
test esi, esi
je 0x1009dea7
push esi
call dword [sym.imp.KERNEL32.dll_LockResource]
test eax, eax
jne 0x1009deb7
push esi
call dword [sym.imp.KERNEL32.dll_FreeResource]
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.1000ba20
xor bl, bl
jmp 0x1009ded6
mov ecx, dword [ebp - 0x1c]
push ebx
push eax
call fcn.10005720
push esi
call dword [sym.imp.KERNEL32.dll_FreeResource]
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.1000ba20
mov bl, 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x18]
call fcn.1000ba20
mov al, bl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100fc499
mov esp, ebp
pop ebp
ret 8