Function at 0x1091c60b
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push 0x54
push 0x10935100
call fcn.10918fe8
xor edi, edi
mov dword [ebp - 4], edi
lea eax, [ebp - 0x64]
push eax
call dword [sym.imp.kernel32.dll_GetStartupInfoA]
mov dword [ebp - 4], 0xfffffffe
push 0x38
push 0x20
pop esi
push esi
call fcn.1091bb02
pop ecx
pop ecx
cmp eax, edi
je 0x1091c842
mov dword [0x1096a6c0], eax
mov dword [0x1096a6bc], esi
lea ecx, [eax + 0x700]
jmp 0x1091c67e
mov byte [eax + 4], 0
or dword [eax], 0xffffffff
mov byte [eax + 5], 0xa
mov dword [eax + 8], edi
mov byte [eax + 0x24], 0
mov byte [eax + 0x25], 0xa
mov byte [eax + 0x26], 0xa
add eax, 0x38
mov ecx, dword [0x1096a6c0]
add ecx, 0x700
cmp eax, ecx
jb 0x1091c655
cmp word [ebp - 0x32], di
je 0x1091c789
mov eax, dword [ebp - 0x30]
cmp eax, edi
je 0x1091c789
mov edi, dword [eax]
lea ebx, [eax + 4]
lea eax, [ebx + edi]
mov dword [ebp - 0x1c], eax
mov eax, 0x800
cmp edi, eax
jl 0x1091c6ad
mov edi, eax
xor esi, esi
inc esi
jmp 0x1091c704
push 0x38
push 0x20
call fcn.1091bb02
pop ecx
pop ecx
test eax, eax
je 0x1091c70e
lea ecx, [esi*4 + 0x1096a6c0]
mov dword [ecx], eax
add dword [0x1096a6bc], 0x20
lea edx, [eax + 0x700]
jmp 0x1091c6ff
mov byte [eax + 4], 0
or dword [eax], 0xffffffff
mov byte [eax + 5], 0xa
and dword [eax + 8], 0
and byte [eax + 0x24], 0x80
mov byte [eax + 0x25], 0xa
mov byte [eax + 0x26], 0xa
add eax, 0x38
mov edx, dword [ecx]
add edx, 0x700
cmp eax, edx
jb 0x1091c6d9
inc esi
cmp dword [0x1096a6bc], edi
jl 0x1091c6b2
jmp 0x1091c714
mov edi, dword [0x1096a6bc]
and dword [ebp - 0x20], 0
test edi, edi
jle 0x1091c789
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
cmp ecx, 0xffffffff
je 0x1091c77c
cmp ecx, 0xfffffffe
je 0x1091c77c
mov al, byte [ebx]
test al, 1
je 0x1091c77c
test al, 8
jne 0x1091c740
push ecx
call dword [sym.imp.kernel32.dll_GetFileType]
test eax, eax
je 0x1091c77c
mov esi, dword [ebp - 0x20]
mov eax, esi
sar eax, 5
and esi, 0x1f
imul esi, esi, 0x38
add esi, dword [eax*4 + 0x1096a6c0]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
mov dword [esi], eax
mov al, byte [ebx]
mov byte [esi + 4], al
push 0xfa0
lea eax, [esi + 0xc]
push eax
call fcn.1091ef07
pop ecx
pop ecx
test eax, eax
je 0x1091c842
inc dword [esi + 8]
inc dword [ebp - 0x20]
inc ebx
add dword [ebp - 0x1c], 4
cmp dword [ebp - 0x20], edi
jl 0x1091c71c
xor ebx, ebx
mov esi, ebx
imul esi, esi, 0x38
add esi, dword [0x1096a6c0]
mov eax, dword [esi]
cmp eax, 0xffffffff
je 0x1091c7a8
cmp eax, 0xfffffffe
je 0x1091c7a8
or byte [esi + 4], 0x80
jmp 0x1091c81a
mov byte [esi + 4], 0x81
test ebx, ebx
jne 0x1091c7b5
push 0xfffffffffffffff6
pop eax
jmp 0x1091c7bf
mov eax, ebx
dec eax
neg eax
sbb eax, eax
add eax, 0xfffffff5
push eax
call dword [sym.imp.kernel32.dll_GetStdHandle]
mov edi, eax
cmp edi, 0xffffffff
je 0x1091c810
test edi, edi
je 0x1091c810
push edi
call dword [sym.imp.kernel32.dll_GetFileType]
test eax, eax
je 0x1091c810
mov dword [esi], edi
and eax, 0xff
cmp eax, 2
jne 0x1091c7ee
or byte [esi + 4], 0x40
jmp 0x1091c7f7
cmp eax, 3
jne 0x1091c7f7
or byte [esi + 4], 8
push 0xfa0
lea eax, [esi + 0xc]
push eax
call fcn.1091ef07
pop ecx
pop ecx
test eax, eax
je 0x1091c842
inc dword [esi + 8]
jmp 0x1091c81a
or byte [esi + 4], 0x40
mov dword [esi], 0xfffffffe
inc ebx
cmp ebx, 3
jl 0x1091c78b
push dword [0x1096a6bc]
call dword [sym.imp.kernel32.dll_LockResource]
xor eax, eax
jmp 0x1091c845
or eax, 0xffffffff
call fcn.1091902d
ret