Function at 0x524190
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push ebp
mov ebp, esp
mov ecx, 8
push 0
push 0
dec ecx
jne 0x524198
push ecx
push ebx
push esi
push edi
mov dword [ebp - 0xc], eax
xor eax, eax
push ebp
push 0x524679
push dword fs:[eax]
mov dword fs:[eax], esp
call fcn.00531f14
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x398]
mov edx, dword [0x551900]
call fcn.00451a24
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x398]
mov eax, dword [eax + 0x68]
mov edx, 0x8000
call fcn.0042f4e0
mov edx, dword [0x552250]
mov edx, dword [edx]
mov eax, dword [0x5528f0]
mov eax, dword [eax]
call fcn.00539e3c
lea edx, [ebp - 8]
mov eax, 0x52468c
call fcn.004d7abc
lea eax, [ebp - 0x14]
mov edx, dword [0x552a1c]
mov edx, dword [edx]
call fcn.00405c7c
mov ecx, dword [ebp - 0x14]
mov edx, 0x524698
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx + 0x50]
mov eax, dword [0x552a7c]
mov eax, dword [eax]
cdq
push edx
push eax
mov edx, 0x5246a4
mov eax, dword [ebp - 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea eax, [ebp - 0x18]
mov edx, dword [0x552670]
mov edx, dword [edx]
call fcn.00405c7c
mov ecx, dword [ebp - 0x18]
mov edx, 0x5246b4
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx + 0x50]
lea eax, [ebp - 0x1c]
mov edx, dword [0x55270c]
mov edx, dword [edx]
call fcn.00405c7c
mov ecx, dword [ebp - 0x1c]
mov edx, 0x5246c4
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx + 0x50]
mov eax, dword [0x552268]
mov eax, dword [eax]
cdq
push edx
push eax
mov edx, 0x5246d8
mov eax, dword [ebp - 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, dword [0x552c80]
mov eax, dword [eax]
cdq
push edx
push eax
mov edx, 0x5246ec
mov eax, dword [ebp - 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea eax, [ebp - 0x20]
mov edx, dword [0x55232c]
mov edx, dword [edx]
call fcn.00405c7c
mov ecx, dword [ebp - 0x20]
mov edx, 0x524708
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx + 0x50]
lea edx, [ebp - 0x28]
mov eax, 1
call fcn.0040a964
mov edx, dword [ebp - 0x28]
lea eax, [ebp - 0x24]
call fcn.00405c7c
mov ecx, dword [ebp - 0x24]
mov edx, 0x52471c
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx + 0x50]
lea eax, [ebp - 0x2c]
mov edx, dword [0x552250]
mov edx, dword [edx]
call fcn.00405c7c
mov ecx, dword [ebp - 0x2c]
mov edx, 0x52472c
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx + 0x50]
xor ecx, ecx
mov edx, 0x524744
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx + 0x50]
push 0
push 0
mov edx, 0x524758
mov eax, dword [ebp - 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, dword [0x5529c0]
mov eax, dword [eax]
cdq
push edx
push eax
mov edx, 0x524788
mov eax, dword [ebp - 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea eax, [ebp - 0x30]
mov edx, dword [0x552644]
mov edx, dword [edx]
call fcn.00405c7c
mov ecx, dword [ebp - 0x30]
mov edx, 0x5247ac
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx + 0x50]
mov eax, dword [0x552344]
mov eax, dword [eax]
cdq
push edx
push eax
mov edx, 0x5247c8
mov eax, dword [ebp - 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea eax, [ebp - 0x3c]
push eax
mov cl, 1
mov dl, 1
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx + 0x9c]
mov edx, dword [ebp - 0x3c]
lea eax, [ebp - 0x38]
call fcn.0040552c
mov eax, dword [ebp - 0x38]
lea edx, [ebp - 0x34]
call fcn.004dfbb4
mov ecx, dword [ebp - 0x34]
lea eax, [ebp - 4]
mov edx, 0x5247e8
call fcn.004055bc
mov eax, dword [0x5528f0]
mov eax, dword [eax]
cmp byte [eax + 0x19], 0
je 0x5244f0
push 0
push 0xf020
push 0x112
mov eax, dword [0x552918]
mov eax, dword [eax]
mov eax, dword [eax + 0x30]
push eax
call sub.user32.dll_PostMessageA
push 0x5247ec
push 0x5247ec
mov eax, dword [0x5557f8]
push eax
call sub.kernel32.dll_FindResourceA
mov ebx, eax
test ebx, ebx
je 0x524492
push ebx
mov eax, dword [0x5557f8]
push eax
call sub.kernel32.dll_SizeofResource
mov esi, eax
test esi, esi
je 0x524462
push ebx
mov eax, dword [0x5557f8]
push eax
call sub.kernel32.dll_LoadResource
test eax, eax
je 0x524456
push eax
call sub.kernel32.dll_LockResource
test eax, eax
je 0x52444a
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp - 4]
mov edx, esi
call fcn.0051f5c4
mov eax, 0x5247fc
call fcn.00533a0c
jmp 0x52446c
mov eax, 0x524810
call fcn.00533a0c
jmp 0x52446c
mov eax, 0x524830
call fcn.00533a0c
jmp 0x52446c
mov eax, 0x524850
call fcn.00533a0c
cmp dword [ebp - 0x10], 0
jbe 0x52449c
mov eax, dword [ebp - 0x10]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x40]
call fcn.0040ab34
mov edx, dword [ebp - 0x40]
mov eax, dword [0x55292c]
mov eax, dword [eax]
mov ecx, dword [eax]
call dword [ecx + 0x38]
jmp 0x52449c
mov eax, 0x524870
call fcn.00533a0c
xor eax, eax
push ebp
push 0x5244e1
push dword fs:[eax]
mov dword fs:[eax], esp
push 0
push 0x524894
push 0
mov eax, dword [0x552250]
mov eax, dword [eax]
push eax
mov edx, dword [0x552644]
mov edx, dword [edx]
mov eax, dword [0x5528f0]
mov eax, dword [eax]
mov ecx, 0x5248a0
call fcn.0053a174
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x524617
push 0
push 0xf020
push 0x112
mov eax, dword [0x552918]
mov eax, dword [eax]
mov eax, dword [eax + 0x30]
push eax
call sub.user32.dll_PostMessageA
push 0x5247ec
push 0x5247ec
mov eax, dword [0x5557f8]
push eax
call sub.kernel32.dll_FindResourceA
mov ebx, eax
test ebx, ebx
je 0x5245b9
push ebx
mov eax, dword [0x5557f8]
push eax
call sub.kernel32.dll_SizeofResource
mov esi, eax
test esi, esi
je 0x524589
push ebx
mov eax, dword [0x5557f8]
push eax
call sub.kernel32.dll_LoadResource
test eax, eax
je 0x52457d
push eax
call sub.kernel32.dll_LockResource
test eax, eax
je 0x524571
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp - 4]
mov edx, esi
call fcn.0051f5c4
mov eax, 0x5248b0
call fcn.00533a0c
jmp 0x524593
mov eax, 0x5248c4
call fcn.00533a0c
jmp 0x524593
mov eax, 0x5248e4
call fcn.00533a0c
jmp 0x524593
mov eax, 0x524904
call fcn.00533a0c
cmp dword [ebp - 0x10], 0
jbe 0x5245c3
mov eax, dword [ebp - 0x10]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x44]
call fcn.0040ab34
mov edx, dword [ebp - 0x44]
mov eax, dword [0x55292c]
mov eax, dword [eax]
mov ecx, dword [eax]
call dword [ecx + 0x38]
jmp 0x5245c3
mov eax, 0x524920
call fcn.00533a0c
xor eax, eax
push ebp
push 0x524605
push dword fs:[eax]
mov dword fs:[eax], esp
push 0
push 0x524894
push 0
mov eax, dword [0x552250]
mov eax, dword [eax]
push eax
mov edx, dword [0x552644]
mov edx, dword [edx]
mov eax, dword [0x5528f0]
mov eax, dword [eax]
mov ecx, 0x5248a0
call fcn.0053a174
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x52460f
mov eax, dword [ebp - 0xc]
call fcn.00523eb0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x524680
lea eax, [ebp - 0x44]
mov edx, 2
call fcn.004052c8
lea eax, [ebp - 0x3c]
call fcn.00405ab0
lea eax, [ebp - 0x38]
mov edx, 2
call fcn.004052c8
lea eax, [ebp - 0x30]
mov edx, 2
call fcn.00405ac8
lea eax, [ebp - 0x28]
call fcn.004052a4
lea eax, [ebp - 0x24]
mov edx, 5
call fcn.00405ac8
lea eax, [ebp - 8]
call fcn.004073c8
lea eax, [ebp - 4]
call fcn.004052a4
ret