Function at 0x411660
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x489ab8
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x54
mov eax, dword [ebp + 8]
push ebx
xor ebx, ebx
xor ecx, ecx
push esi
mov word [ebp - 0x40], cx
mov ecx, eax
push edi
mov dword [ebp - 0x2c], 7
mov dword [ebp - 0x30], ebx
lea esi, [ecx + 2]
jmp 0x4116a0
mov dx, word [ecx]
add ecx, 2
cmp dx, bx
jne 0x4116a0
sub ecx, esi
sar ecx, 1
push ecx
lea esi, [ebp - 0x40]
call fcn.00405330
mov dword [ebp - 4], ebx
cmp dword [ebp - 0x2c], 8
mov eax, dword [ebp - 0x40]
jae 0x4116c6
mov eax, esi
mov edx, dword [ebp - 0x30]
cmp word [eax + edx*2 - 2], 0x5c
je 0x4116e0
push 1
mov eax, 0x4a1578
lea ecx, [ebp - 0x40]
call fcn.00411a10
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x1c], ebx
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0x24]
push ecx
mov byte [ebp - 4], 1
call fcn.0040ff40
add esp, 8
cmp al, bl
je 0x411711
lea edx, [ebp - 0x40]
push edx
lea eax, [ebp - 0x24]
push eax
call fcn.004111e0
add esp, 8
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x24]
push ecx
push edx
lea eax, [ebp - 0x14]
push eax
lea ecx, [ebp - 0x24]
push ecx
call fcn.00411c00
push 0x4a1bec
push 0x6a
push ebx
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov esi, eax
cmp esi, ebx
jne 0x411779
mov esi, dword [ebp - 0x24]
cmp esi, ebx
je 0x411754
mov edi, dword [ebp - 0x20]
mov eax, esi
call fcn.00409a00
push esi
call fcn.0041a981
add esp, 4
cmp dword [ebp - 0x2c], 8
jb 0x411766
mov edx, dword [ebp - 0x40]
push edx
call fcn.0041a981
add esp, 4
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push esi
push ebx
call dword [sym.imp.KERNEL32.dll_SizeofResource]
mov edi, eax
cmp edi, ebx
jne 0x4117c6
mov esi, dword [ebp - 0x24]
cmp esi, ebx
je 0x4117a1
mov edi, dword [ebp - 0x20]
mov eax, esi
call fcn.00409a00
push esi
call fcn.0041a981
add esp, 4
cmp dword [ebp - 0x2c], 8
jb 0x411766
mov eax, dword [ebp - 0x40]
push eax
call fcn.0041a981
add esp, 4
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push esi
push ebx
call dword [sym.imp.KERNEL32.dll_LoadResource]
mov esi, eax
cmp esi, ebx
jne 0x411817
mov esi, dword [ebp - 0x24]
cmp esi, ebx
je 0x4117ee
mov edi, dword [ebp - 0x20]
mov eax, esi
call fcn.00409a00
push esi
call fcn.0041a981
add esp, 4
cmp dword [ebp - 0x2c], 8
jb 0x411766
mov ecx, dword [ebp - 0x40]
push ecx
call fcn.0041a981
add esp, 4
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push esi
call dword [sym.imp.KERNEL32.dll_LockResource]
cmp eax, ebx
jne 0x411857
mov esi, dword [ebp - 0x24]
cmp esi, ebx
je 0x41183c
mov edi, dword [ebp - 0x20]
mov eax, esi
call fcn.00409a00
push esi
call fcn.0041a981
add esp, 4
lea esi, [ebp - 0x40]
call fcn.0040ff10
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push edi
push eax
lea ecx, [ebp - 0x5c]
mov dword [ebp - 0x48], 0xf
mov dword [ebp - 0x4c], ebx
mov byte [ebp - 0x5c], bl
call fcn.00409650
push esi
mov byte [ebp - 4], 2
call dword [sym.imp.KERNEL32.dll_FreeResource]
lea edx, [ebp - 0x40]
push edx
lea eax, [ebp - 0x24]
push eax
lea ecx, [ebp - 0x5c]
call fcn.00410ca0
lea ecx, [ebp - 0x40]
push ecx
lea edx, [ebp - 0x24]
push edx
call fcn.004111e0
add esp, 0x10
lea ecx, [ebp - 0x5c]
call fcn.00403b10
mov esi, dword [ebp - 0x24]
cmp esi, ebx
je 0x4118bb
mov edi, dword [ebp - 0x20]
mov eax, esi
call fcn.00409a00
push esi
call fcn.0041a981
add esp, 4
lea esi, [ebp - 0x40]
call fcn.0040ff10
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov al, 1
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret