Function at 0x404043
Capabilities:
Extract resource via kernel32 functions

Disassembly:
jmp 0x4d5610
push ebp
lea ebp, [esp - 0x408]
sub esp, 0x408
push 0xffffffffffffffff
push 0x786900
mov eax, dword fs:[0]
push eax
sub esp, 0x1c
mov eax, dword [0x856918]
xor eax, ebp
mov dword [ebp + 0x404], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov eax, dword [ebp + 0x414]
mov edx, dword [ebp + 0x418]
mov ebx, dword [ebp + 0x410]
xor esi, esi
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], edx
xor edi, edi
mov dword [ebp - 0x14], esi
mov dword [ebp - 4], edi
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], edi
mov dword [ebp], edi
mov byte [ebp - 4], 1
cmp ebx, edi
je 0x4d56e5
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push edi
inc eax
cdq
push 2
push edx
push eax
call fcn.005662f0
mov edi, eax
add eax, 0x80000000
adc edx, esi
test edx, edx
ja 0x4d56e3
jb 0x4d56a6
cmp eax, 0xffffffff
ja 0x4d56e3
cmp edi, 0x400
jg 0x4d56c9
push edi
call fcn.00406f19
add esp, 4
test al, al
je 0x4d56c9
mov eax, edi
call fcn.005661f0
mov dword [ebp - 0x10], esp
mov eax, esp
jmp 0x4d56d5
push edi
lea ecx, [ebp - 0x14]
call fcn.00403d55
mov esi, dword [ebp - 0x14]
push 3
push edi
push ebx
push eax
call fcn.00405024
test eax, eax
jne 0x4d571b
xor edi, edi
lea eax, [ebp + 4]
cmp dword [ebp], eax
je 0x4d56f5
lea ecx, [ebp]
call fcn.00404cf5
cmp esi, edi
je 0x4d5711
lea esp, [esp]
mov eax, esi
mov esi, dword [esi]
push eax
call fcn.00565e48
add esp, 4
cmp esi, edi
jne 0x4d5700
mov eax, 0x8007000e
jmp 0x4d5843
push 2
push 0
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryExA]
mov ebx, eax
mov dword [ebp - 0x20], ebx
test ebx, ebx
jne 0x4d573b
call fcn.00401398
mov edi, eax
jmp 0x4d5815
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x18]
push ecx
push edx
push ebx
call dword [sym.imp.KERNEL32.dll_FindResourceA]
mov edi, eax
test edi, edi
jne 0x4d575a
call fcn.00401398
jmp 0x4d580c
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_LoadResource]
mov dword [ebp - 0x1c], eax
test eax, eax
jne 0x4d5773
call fcn.00401398
jmp 0x4d580c
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_SizeofResource]
mov edi, eax
lea eax, [edi + 1]
mov dword [ebp - 0x18], edi
cmp eax, edi
jae 0x4d57a9
lea eax, [ebp + 4]
cmp dword [ebp], eax
je 0x4d5797
lea ecx, [ebp]
call fcn.00404cf5
lea ecx, [ebp - 0x14]
call fcn.004042b4
mov eax, 0x8007000e
jmp 0x4d5843
push eax
lea ecx, [ebp]
mov byte [ebp - 4], 2
call fcn.004052c7
mov dword [ebp - 4], 1
jmp 0x4d57d5
mov eax, dword [ebp]
test eax, eax
jne 0x4d57e3
mov edi, 0x8007000e
jmp 0x4d580e
mov ecx, dword [ebp - 0x1c]
push edi
push ecx
push edi
push eax
call fcn.004031c5
mov edx, dword [ebp]
mov eax, dword [ebp + 0x41c]
add esp, 0x10
mov byte [edx + edi], 0
mov ecx, dword [ebp]
push eax
push ecx
lea ecx, [ebp - 0x28]
call fcn.00406889
mov edi, eax
push ebx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
lea edx, [ebp + 4]
cmp dword [ebp], edx
je 0x4d5825
lea ecx, [ebp]
call fcn.00404cf5
test esi, esi
je 0x4d5841
lea esp, [esp]
mov eax, esi
mov esi, dword [esi]
push eax
call fcn.00565e48
add esp, 4
test esi, esi
jne 0x4d5830
mov eax, edi
lea esp, [ebp - 0x38]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x404]
xor ecx, ebp
call fcn.00564b24
add ebp, 0x408
mov esp, ebp
pop ebp
ret 0x10