Function at 0x44dd34
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x54
movzx eax, word [ebp + 0xc]
push ebx
push esi
mov esi, dword [0x4d9b18]
push edi
push 0xf1
push eax
push esi
mov dword [ebp - 0xc], esi
mov dword [ebp - 8], eax
call dword [sym.imp.KERNEL32.dll_FindResourceA]
xor ebx, ebx
cmp eax, ebx
je 0x44dd79
push eax
push esi
call dword [sym.imp.KERNEL32.dll_LoadResource]
cmp eax, ebx
je 0x44dd79
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
mov edi, eax
cmp edi, ebx
jne 0x44dd80
xor eax, eax
jmp 0x44df38
xor eax, eax
cmp dword [ebp + 0x10], ebx
setne al
mov esi, eax
movzx eax, word [edi + 6]
add eax, esi
mov dword [ebp - 0x18], eax
lea eax, [eax + eax*4]
shl eax, 2
add eax, 3
and al, 0xfc
call fcn.004c5de0
cmp dword [ebp + 0x10], ebx
mov eax, esp
mov dword [ebp - 0x14], eax
je 0x44ddc3
mov dword [eax], 4
mov dword [eax + 4], ebx
mov byte [eax + 8], bl
mov byte [eax + 9], 1
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
xor edx, edx
cmp word [edi + 6], bx
mov dword [ebp - 4], ebx
jbe 0x44de18
lea esi, [esi + esi*4]
lea ecx, [edi + 8]
lea eax, [eax + esi*4 + 8]
cmp word [ecx], bx
je 0x44ddf4
mov esi, dword [ebp - 4]
inc dword [ebp - 4]
mov dword [eax - 8], esi
movzx esi, word [ecx]
mov dword [eax - 4], esi
mov byte [eax], 4
mov byte [eax + 1], bl
jmp 0x44de04
mov dword [eax - 8], 8
mov dword [eax - 4], ebx
mov byte [eax], bl
mov byte [eax + 1], 1
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
movzx esi, word [edi + 6]
inc edx
inc ecx
inc ecx
add eax, 0x14
cmp edx, esi
jl 0x44ddd8
mov eax, dword [0x4d9b14]
push ebx
push eax
push dword [ebp + 0x18]
push dword [ebp + 8]
push 0x64
push 0x64
push ebx
push ebx
push dword [ebp + 0x14]
push ebx
push str.ToolbarWindow32
push ebx
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
push ebx
push 0x14
push 0x41e
push eax
mov dword [ebp + 0x10], eax
call esi
push ebx
push ebx
push 0x31
push dword [ebp + 0x10]
call esi
cmp eax, ebx
jne 0x44de64
push 0x11
call dword [sym.imp.GDI32.dll_GetStockObject]
lea ecx, [ebp - 0x54]
push ecx
push 0x3c
push eax
call dword [sym.imp.GDI32.dll_GetObjectA]
push dword [ebp - 0x54]
call sub.MSVCRT.dll_abs
mov ecx, dword [ebp - 8]
mov dword [ebp + 0x18], eax
mov eax, esp
mov dword [eax], ecx
call fcn.0044df40
cmp al, bl
pop ecx
je 0x44deb4
movzx ecx, word [edi + 2]
mov eax, dword [0x4d9b18]
push 0x2040
push ebx
push 0xffffffffffffffff
push 1
push ecx
push dword [ebp - 8]
push eax
call dword [sym.imp.COMCTL32.dll_ImageList_LoadImageA]
push eax
push ebx
push 0x430
jmp 0x44decc
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0x10]
push eax
push dword [ebp - 4]
push 0x413
push dword [ebp + 0x10]
call esi
push dword [ebp - 0x14]
push dword [ebp - 0x18]
push 0x414
push dword [ebp + 0x10]
call esi
mov ax, word [edi + 4]
cmp ax, word [ebp + 0x18]
ja 0x44deee
mov eax, dword [ebp + 0x18]
movzx ecx, word [edi + 2]
movzx eax, ax
shl eax, 0x10
or eax, ecx
push eax
push ebx
push 0x420
push dword [ebp + 0x10]
call esi
mov ax, word [edi + 4]
cmp ax, word [ebp + 0x18]
ja 0x44df13
mov eax, dword [ebp + 0x18]
mov cx, word [edi + 2]
add eax, 7
movzx eax, ax
add cx, 7
movzx ecx, cx
shl eax, 0x10
or eax, ecx
push eax
push ebx
push 0x41f
push dword [ebp + 0x10]
call esi
mov eax, dword [ebp + 0x10]
lea esp, [ebp - 0x60]
pop edi
pop esi
pop ebx
leave
ret