Function at 0x41a81a
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push 0x4bc
mov eax, 0x4b1464
call fcn.0049560c
mov ebx, ecx
mov dword [ebp - 0x49c], ebx
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 0xc]
mov esi, dword [0x4ef8b4]
mov dword [ebp - 0x4a0], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x498], eax
movzx eax, cx
push 0xf1
push eax
push esi
mov dword [ebp - 0x4a4], ecx
mov dword [ebp - 0x4c8], eax
call dword [sym.imp.KERNEL32.dll_FindResourceW]
test eax, eax
jne 0x41a873
xor eax, eax
jmp 0x41ac4d
push eax
push esi
call dword [sym.imp.KERNEL32.dll_LoadResource]
test eax, eax
je 0x41a86c
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
mov esi, eax
mov dword [ebp - 0x494], esi
test esi, esi
je 0x41a86c
xor edx, edx
push 4
pop eax
cmp dword [ebp + 0x10], edx
je 0x41a8ce
mov dword [ebp - 0x4b8], eax
lea ecx, [ebx + 0x24]
lea eax, [ebp - 0x4b8]
mov dword [ebp - 0x4b4], edx
push eax
mov word [ebp - 0x4b0], 0x100
mov dword [ebp - 0x4ac], edx
mov dword [ebp - 0x4a8], edx
call fcn.00416165
xor edx, edx
or dword [ebp - 0x4c0], 0xffffffff
xor eax, eax
mov ecx, edx
mov edi, edx
mov dword [ebp - 0x4bc], ecx
cmp ax, word [esi + 6]
jae 0x41a971
lea eax, [ebx + 0x24]
mov ebx, eax
movzx eax, word [esi + edi*2 + 8]
mov dword [ebp - 0x4ac], edx
test ax, ax
je 0x41a922
mov dword [ebp - 0x4b8], ecx
inc ecx
mov dword [ebp - 0x4bc], ecx
mov dword [ebp - 0x4b4], eax
mov byte [ebp - 0x4b0], 4
mov byte [ebp - 0x4af], dl
jmp 0x41a93f
mov dword [ebp - 0x4b8], 8
mov dword [ebp - 0x4b4], edx
mov byte [ebp - 0x4b0], dl
mov byte [ebp - 0x4af], 1
mov eax, dword [ebp - 0x4c0]
mov ecx, ebx
mov dword [ebp - 0x4a8], eax
lea eax, [ebp - 0x4b8]
push eax
call fcn.00416165
movzx eax, word [esi + 6]
inc edi
mov ecx, dword [ebp - 0x4bc]
push 0
pop edx
cmp edi, eax
jl 0x41a8f0
mov ebx, dword [ebp - 0x49c]
mov esi, dword [ebp + 0x1c]
test esi, esi
je 0x41a9b6
or dword [ebp - 0x498], 0x1010
jmp 0x41a9b2
cmp dword [ebx + 0x28], 0
mov edi, edx
jle 0x41a9af
lea eax, [ebx + 0x24]
push edi
mov ecx, eax
call fcn.00414a8d
mov ecx, dword [eax + 4]
cmp ecx, dword [esi]
jne 0x41a9a4
mov cl, byte [esi + 4]
or byte [eax + 9], cl
inc edi
lea eax, [ebx + 0x24]
cmp edi, dword [ebx + 0x28]
jl 0x41a98f
xor edx, edx
add esi, 8
cmp dword [esi], edx
jne 0x41a984
mov eax, dword [ebp + 0x18]
push edx
push ecx
mov ecx, esp
push edx
push dword [ebp - 0x498]
push edx
push ecx
mov dword [ecx], eax
mov eax, esp
push dword [ebp - 0x4a0]
mov ecx, ebx
mov dword [eax], 0x4e5004
call fcn.0041afd5
mov dword [ebp - 0x49c], eax
test eax, eax
je 0x41a86c
push ecx
mov eax, esp
lea edi, [ebx + 4]
mov dword [eax], 0xf00a
push dword [edi]
call fcn.00417f24
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
pop ecx
pop ecx
push 0
push 0x14
push 0x41e
push dword [edi]
call esi
push 0
push 0
push 0x31
push dword [edi]
call esi
mov esi, eax
mov dword [ebp - 0x4a0], esi
and dword [ebp - 4], 0
test esi, esi
jne 0x41aa3d
push 0x11
call dword [sym.imp.GDI32.dll_GetStockObject]
mov esi, eax
mov dword [ebp - 0x4a0], esi
push 0x5c
lea eax, [ebp - 0x6c]
push 0
push eax
call fcn.00491060
add esp, 0xc
lea eax, [ebp - 0x6c]
push eax
push 0x5c
push esi
call dword [sym.imp.GDI32.dll_GetObjectW]
push dword [ebp - 0x6c]
call fcn.0048e1bf
mov esi, dword [ebp - 0x4c8]
movzx eax, ax
mov dword [ebp - 0x498], eax
mov eax, esp
mov dword [eax], esi
call fcn.00417994
pop ecx
movzx ecx, ax
push 4
pop eax
cmp cx, ax
jbe 0x41aac9
push 0x2040
push 0
cmp ecx, 0x20
mov eax, 0xc0c0c0
cmove eax, dword [ebp - 0x4c0]
push eax
mov eax, dword [ebp - 0x494]
push 1
movzx eax, word [eax + 2]
push eax
push esi
push dword [0x4ef8b4]
call dword [sym.imp.COMCTL32.dll_ImageList_LoadImageW]
push eax
push 0
push 0x430
push dword [edi]
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x41aadc
push dword [ebp - 0x4a4]
mov ecx, edi
push dword [ebp - 0x4bc]
call fcn.004163f5
mov esi, dword [ebx + 0x28]
lea ecx, [ebx + 0x24]
push 0
call fcn.00414a8d
push eax
push esi
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push 0x444
push dword [edi]
call esi
mov ecx, dword [ebp - 0x494]
mov eax, dword [ebp - 0x498]
movzx edx, word [ecx + 4]
cmp dx, ax
jbe 0x41ab13
mov eax, edx
jmp 0x41ab16
movzx eax, ax
movzx eax, ax
push eax
movzx eax, word [ecx + 2]
mov ecx, edi
push eax
call fcn.00444881
mov ecx, dword [ebp - 0x494]
mov eax, dword [ebp - 0x498]
movzx edx, word [ecx + 4]
cmp dx, ax
jbe 0x41ab3f
mov eax, edx
jmp 0x41ab42
movzx eax, ax
movzx eax, ax
add eax, 7
push eax
movzx eax, word [ecx + 2]
mov ecx, edi
add eax, 7
push eax
call fcn.004448a9
push 0x19
push 0
push 0x454
push dword [edi]
call esi
push 0
push 1
push 0x43c
push dword [edi]
call esi
lea ecx, [ebp - 0x490]
call fcn.0040c3fd
xor esi, esi
mov byte [ebp - 4], 1
cmp dword [ebx + 0x28], esi
jle 0x41ac3c
push esi
lea ecx, [ebx + 0x24]
call fcn.00414a8d
mov dword [ebp - 0x494], eax
mov cl, byte [eax + 9]
test cl, 0x40
je 0x41ac32
push dword [eax + 4]
or cl, 0x10
mov byte [eax + 9], cl
lea ecx, [ebp - 0x484]
call fcn.00431ff3
test eax, eax
je 0x41ac32
push 0
push 0xa
lea ecx, [ebp - 0x484]
call fcn.00424123
test eax, eax
js 0x41ac32
inc eax
lea ecx, [ebp - 0x484]
push eax
lea eax, [ebp - 0x4a4]
push eax
call fcn.0043277e
push dword [eax]
push 0
push 0x44d
push dword [edi]
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [ebp - 0x494]
mov dword [ecx + 0x10], eax
mov ecx, dword [ebp - 0x4a4]
lea ecx, [ecx - 0x10]
call fcn.00443157
push 0
push esi
push 0x416
push dword [edi]
call dword [sym.imp.USER32.dll_SendMessageW]
push dword [ebp - 0x494]
push esi
push 0x443
push dword [edi]
call dword [sym.imp.USER32.dll_SendMessageW]
inc esi
cmp esi, dword [ebx + 0x28]
jl 0x41ab8c
lea ecx, [ebp - 0x490]
call fcn.00411f46
mov eax, dword [ebp - 0x49c]
call fcn.004955bb
ret 0x18