Function at 0x49c160
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push 0x19c
mov eax, 0x4cc746
call fcn.0044d7c5
mov eax, dword [ebp + 8]
push dword [ebp + 0xc]
mov edi, dword [ebp + 0x10]
mov esi, ecx
lea ecx, [ebp - 0x16c]
mov dword [esi + 4], eax
call fcn.0041217e
xor ebx, ebx
lea ecx, [esi + 8]
push eax
mov dword [ebp - 4], ebx
call fcn.004115eb
mov ecx, dword [ebp - 0x16c]
or dword [ebp - 4], 0xffffffff
add ecx, 0xfffffff0
call fcn.0040f083
cmp edi, ebx
jne 0x49c1ce
push ebx
push dword [ebp + 0xc]
call fcn.0049b256
mov edi, eax
push edi
call fcn.0040a8b0
push edi
mov dword [esi + 0x1c], eax
call fcn.0044d8a0
add esp, 0x10
jmp 0x49c2ac
push edi
push dword [ebp + 0xc]
push dword [esi + 4]
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov edi, eax
mov dword [ebp - 0x16c], edi
cmp edi, ebx
je 0x49c2ac
push edi
push dword [esi + 4]
call dword [sym.imp.KERNEL32.dll_LoadResource]
cmp eax, ebx
je 0x49c2a0
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
push edi
push dword [esi + 4]
mov dword [ebp - 0x168], eax
call dword [sym.imp.KERNEL32.dll_SizeofResource]
cmp dword [ebp - 0x168], ebx
je 0x49c2a0
cmp eax, ebx
jbe 0x49c2a0
push eax
push dword [ebp - 0x168]
lea edi, [esi + 0x10]
mov ecx, edi
call fcn.0047b250
lea eax, [ebp - 0x1a0]
push eax
call fcn.0040c7f0
lea eax, [ebp - 0x1a0]
push eax
push edi
mov dword [ebp - 0x1a0], 0x49b327
mov dword [ebp - 0x19c], 0x49b32f
mov dword [ebp - 0x198], 0x49b352
mov dword [ebp - 0x194], 0x49b39b
mov dword [ebp - 0x190], 0x49b375
mov dword [ebp - 0x18c], 0x49b3bf
mov dword [ebp - 0x188], 0x49b3dd
mov dword [ebp - 0x184], ebx
call fcn.0040a7e0
add esp, 0xc
mov dword [esi + 0x1c], eax
push dword [ebp - 0x16c]
call dword [sym.imp.KERNEL32.dll_FreeResource]
cmp dword [esi + 0x1c], ebx
je 0x49c3ff
lea eax, [esi + 0x30]
push eax
mov dword [ebp - 0x170], eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
push dword [esi + 0x1c]
call fcn.0040b120
pop ecx
test eax, eax
jne 0x49c3ef
jmp 0x49c2da
xor ebx, ebx
push ebx
push ebx
push ebx
push ebx
push 0x104
lea eax, [ebp - 0x114]
push eax
lea eax, [ebp - 0x164]
push eax
push dword [esi + 0x1c]
call fcn.0040b050
add esp, 0x20
cmp eax, ebx
jne 0x49c3ef
push dword [esi + 0x1c]
call fcn.0040c170
mov edi, dword [ebp - 0x148]
mov dword [ebp - 0x16c], eax
lea eax, [ebp - 0x114]
push eax
call fcn.0044ca40
inc eax
push eax
lea eax, [ebp - 0x114]
push eax
call fcn.004c5498
lea eax, [ebp - 0x114]
push ebx
push eax
call fcn.0049b2ba
add esp, 0x18
push eax
lea ecx, [ebp - 0x168]
mov dword [ebp - 0x174], eax
call fcn.0041217e
lea ecx, [ebp - 0x168]
mov dword [ebp - 4], 1
call fcn.004113c5
mov eax, dword [ebp - 0x168]
add eax, 0xfffffff0
push eax
call fcn.0040f61d
lea ebx, [eax + 0x10]
mov eax, dword [ebp - 0x16c]
pop ecx
mov dword [ebp - 0x180], ebx
mov dword [ebp - 0x17c], eax
mov dword [ebp - 0x178], edi
push 0
lea eax, [ebp - 0x180]
push eax
lea ecx, [esi + 0x20]
mov byte [ebp - 4], 2
call fcn.0049bbcd
push eax
lea eax, [ebp - 0x1a8]
push eax
lea ecx, [esi + 0x20]
call fcn.0049bfec
lea ecx, [ebx - 0x10]
call fcn.0040f083
push dword [ebp - 0x174]
call fcn.0044d8a0
push dword [esi + 0x1c]
call fcn.0040b190
or dword [ebp - 4], 0xffffffff
pop ecx
pop ecx
mov ecx, dword [ebp - 0x168]
add ecx, 0xfffffff0
mov edi, eax
call fcn.0040f083
test edi, edi
je 0x49c2d8
push dword [ebp - 0x170]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov al, 1
jmp 0x49c401
xor al, al
call fcn.0044d848
ret 0xc