Function at 0x41dfa0
Capabilities:
Extract resource via kernel32 functions

Disassembly:
sub esp, 0x3c
push ebp
push esi
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov esi, eax
movzx eax, word [esp + 0x48]
push 0x47d0a4
push eax
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov ebp, eax
test ebp, ebp
jne 0x41dfcf
pop esi
pop ebp
add esp, 0x3c
ret 4
push ebx
push ebp
push esi
call dword [sym.imp.KERNEL32.dll_LoadResource]
mov ebx, eax
push ebp
test ebx, ebx
jne 0x41dff0
call dword [sym.imp.KERNEL32.dll_FreeResource]
pop ebx
pop esi
xor eax, eax
pop ebp
add esp, 0x3c
ret 4
push esi
call dword [sym.imp.KERNEL32.dll_SizeofResource]
mov esi, eax
test esi, esi
je 0x41dfe5
push edi
push esi
call fcn.00459cc6
add esp, 4
push esi
push ebx
mov edi, eax
call dword [sym.imp.KERNEL32.dll_LockResource]
push eax
push edi
call fcn.0045d210
add esp, 0xc
push ebp
call dword [sym.imp.KERNEL32.dll_FreeResource]
push 4
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x20]
push eax
push esi
push edi
call fcn.0044f640
push edi
mov esi, eax
call fcn.00459cd1
xor edi, edi
add esp, 0x1c
cmp esi, edi
je 0x41e0ba
push 0x2c
lea ecx, [esp + 0x24]
push edi
push ecx
call fcn.0045cac0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x30], eax
imul eax, ecx
add esp, 0xc
add eax, eax
push edi
add eax, eax
push edi
mov edx, ecx
neg edx
mov dword [esp + 0x3c], eax
lea eax, [esp + 0x18]
push eax
mov dword [esp + 0x34], edx
push edi
mov edx, 1
lea ecx, [esp + 0x30]
mov word [esp + 0x3c], dx
push ecx
mov edx, 0x20
push edi
mov dword [esp + 0x38], 0x28
mov word [esp + 0x46], dx
mov dword [esp + 0x48], edi
xor bl, bl
mov dword [esp + 0x28], edi
call dword [sym.imp.GDI32.dll_CreateDIBSection]
mov ebp, eax
cmp ebp, edi
jne 0x41e0c6
pop edi
pop ebx
pop esi
xor eax, eax
pop ebp
add esp, 0x3c
ret 4
mov edx, dword [esp + 0x14]
imul edx, dword [esp + 0x18]
xor ecx, ecx
test edx, edx
jle 0x41e1a6
mov eax, dword [esp + 0x10]
add esi, 3
mov dl, byte [esi]
mov byte [eax + ecx*4 + 3], dl
mov edi, dword [esp + 0x10]
cmp byte [edi + ecx*4 + 3], 0xff
jae 0x41e144
movzx eax, byte [esi]
movzx edx, byte [esi - 1]
imul edx, eax
mov eax, 0x80808081
mul edx
shr edx, 7
mov byte [edi + ecx*4], dl
movzx eax, byte [esi]
movzx edx, byte [esi - 2]
imul edx, eax
mov eax, 0x80808081
mul edx
mov eax, dword [esp + 0x10]
shr edx, 7
mov byte [eax + ecx*4 + 1], dl
movzx eax, byte [esi]
movzx edx, byte [esi - 3]
imul edx, eax
mov eax, 0x80808081
mul edx
mov eax, dword [esp + 0x10]
shr edx, 7
mov byte [eax + ecx*4 + 2], dl
mov bl, 1
jmp 0x41e162
mov dl, byte [esi - 1]
mov byte [edi + ecx*4], dl
movzx eax, byte [esi - 2]
mov edx, dword [esp + 0x10]
mov byte [edx + ecx*4 + 1], al
movzx eax, byte [esi - 3]
mov edx, dword [esp + 0x10]
mov byte [edx + ecx*4 + 2], al
mov eax, dword [esp + 0x10]
cmp dword [eax + ecx*4], 0
jne 0x41e191
mov byte [eax + ecx*4], 0
mov eax, dword [esp + 0x10]
mov byte [eax + ecx*4 + 1], 0
mov edx, dword [esp + 0x10]
mov byte [edx + ecx*4 + 2], 0
mov eax, dword [esp + 0x10]
mov byte [eax + ecx*4 + 3], 0
mov eax, dword [esp + 0x10]
mov bl, 1
mov edx, dword [esp + 0x14]
imul edx, dword [esp + 0x18]
inc ecx
add esi, 4
cmp ecx, edx
jl 0x41e0e0
push 0x10
call fcn.00459c10
mov dword [eax], ebp
mov ecx, dword [esp + 0x18]
add esp, 4
pop edi
mov dword [eax + 4], ecx
mov edx, dword [esp + 0x14]
mov byte [eax + 0xc], bl
pop ebx
pop esi
mov dword [eax + 8], edx
pop ebp
add esp, 0x3c
ret 4