Function at 0x40a690
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x509374
mov eax, dword fs:[0]
push eax
sub esp, 0x8c8
mov eax, dword [0x5645bc]
xor eax, ebp
mov dword [ebp - 0x68], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x8cc], ecx
push 0x10
call fcn.0045ac81
add esp, 4
mov dword [ebp - 0x880], eax
mov dword [ebp - 4], 0
cmp dword [ebp - 0x880], 0
je 0x40a6f4
mov ecx, dword [ebp - 0x880]
call fcn.00423170
mov dword [ebp - 0x8d0], eax
jmp 0x40a6fe
mov dword [ebp - 0x8d0], 0
mov eax, dword [ebp - 0x8d0]
mov dword [ebp - 0x87c], eax
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x8cc]
mov edx, dword [ebp - 0x87c]
mov dword [ecx + 0x2ac], edx
mov eax, dword [ebp - 0x8cc]
cmp dword [eax + 0x2ac], 0
jne 0x40a737
jmp 0x40ab34
lea ecx, [ebp - 0x64]
call fcn.004ada10
mov dword [ebp - 4], 1
mov dword [ebp - 0x18], 0
push 0x512eb8
push str.CONFIGUREDATA
mov ecx, dword [ebp - 0x8cc]
mov edx, dword [ecx + 0x14e4]
push edx
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov dword [ebp - 0x864], eax
cmp dword [ebp - 0x864], 0
jne 0x40a78d
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x64]
call fcn.0040c270
jmp 0x40ab34
mov eax, dword [ebp - 0x864]
push eax
mov ecx, dword [ebp - 0x8cc]
mov edx, dword [ecx + 0x14e4]
push edx
call dword [sym.imp.KERNEL32.dll_LoadResource]
mov dword [ebp - 0x85c], eax
mov eax, dword [ebp - 0x85c]
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
mov dword [ebp - 0x848], eax
mov ecx, dword [ebp - 0x864]
push ecx
mov edx, dword [ebp - 0x8cc]
mov eax, dword [edx + 0x14e4]
push eax
call dword [sym.imp.KERNEL32.dll_SizeofResource]
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x14]
add ecx, 1
push ecx
call fcn.0045acac
add esp, 4
mov dword [ebp - 0x884], eax
mov edx, dword [ebp - 0x884]
mov dword [ebp - 0x84c], edx
mov eax, dword [ebp - 0x14]
add eax, 1
push eax
push 0
mov ecx, dword [ebp - 0x84c]
push ecx
call fcn.00463f00
add esp, 0xc
mov edx, dword [ebp - 0x14]
push edx
mov eax, dword [ebp - 0x848]
push eax
mov ecx, dword [ebp - 0x84c]
push ecx
call fcn.00465c00
add esp, 0xc
push 0
push 0
mov edx, dword [ebp - 0x84c]
push edx
lea ecx, [ebp - 0x64]
call fcn.004afcf0
push 0x512ee0
lea ecx, [ebp - 0x64]
call fcn.004ad0a0
mov dword [ebp - 0x458], eax
cmp dword [ebp - 0x458], 0
jne 0x40a8a1
cmp dword [ebp - 0x84c], 0
je 0x40a88d
mov eax, dword [ebp - 0x84c]
mov dword [ebp - 0x888], eax
mov ecx, dword [ebp - 0x888]
push ecx
call fcn.004e0b6b
add esp, 4
mov dword [ebp - 0x84c], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x64]
call fcn.0040c270
jmp 0x40ab34
mov dword [ebp - 0x860], 0
mov dword [ebp - 0x850], 0
mov dword [ebp - 0x858], 0
mov word [ebp - 0x454], 0
push 0x3e6
push 0
lea edx, [ebp - 0x452]
push edx
call fcn.00463f00
add esp, 0xc
mov word [ebp - 0x844], 0
push 0x3e6
push 0
lea eax, [ebp - 0x842]
push eax
call fcn.00463f00
add esp, 0xc
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x854], 0
push 0x512ef0
mov ecx, dword [ebp - 0x458]
call fcn.004ad0a0
mov dword [ebp - 0x860], eax
cmp dword [ebp - 0x860], 0
je 0x40ab25
mov ecx, dword [ebp - 0x860]
call fcn.004ad070
mov dword [ebp - 0x850], eax
cmp dword [ebp - 0x850], 0
je 0x40ab25
push 8
call fcn.0045ac81
add esp, 4
mov dword [ebp - 0x890], eax
mov byte [ebp - 4], 2
cmp dword [ebp - 0x890], 0
je 0x40a97f
mov ecx, dword [ebp - 0x890]
call fcn.00410000
mov dword [ebp - 0x8d4], eax
jmp 0x40a989
mov dword [ebp - 0x8d4], 0
mov ecx, dword [ebp - 0x8d4]
mov dword [ebp - 0x88c], ecx
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0x88c]
mov dword [ebp - 0x868], edx
mov ecx, dword [ebp - 0x850]
call fcn.004ad070
mov dword [ebp - 0x858], eax
cmp dword [ebp - 0x858], 0
je 0x40aaf7
mov dword [ebp - 0x870], 0
mov dword [ebp - 0x86c], 0
mov dword [ebp - 0x878], 0
mov ecx, dword [ebp - 0x858]
call fcn.0040c230
mov dword [ebp - 0x870], eax
mov ecx, dword [ebp - 0x858]
call fcn.00457360
mov dword [ebp - 0x874], eax
cmp dword [ebp - 0x874], 0
je 0x40aa25
mov eax, dword [ebp - 0x874]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x874]
mov eax, dword [edx + 0x30]
call eax
mov dword [ebp - 0x854], eax
cmp dword [ebp - 0x854], 0
jne 0x40aa3a
mov dword [ebp - 0x86c], 0
jmp 0x40aa4b
mov ecx, dword [ebp - 0x854]
call fcn.0040c230
mov dword [ebp - 0x86c], eax
lea ecx, [ebp - 0x454]
push ecx
mov edx, dword [ebp - 0x870]
push edx
call fcn.004380a0
add esp, 8
lea eax, [ebp - 0x844]
push eax
mov ecx, dword [ebp - 0x86c]
push ecx
call fcn.004380a0
add esp, 8
lea edx, [ebp - 0x844]
push edx
lea ecx, [ebp - 0x8ac]
call fcn.00401c90
mov byte [ebp - 4], 3
lea eax, [ebp - 0x454]
push eax
lea ecx, [ebp - 0x8c8]
call fcn.00401c90
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x8ac]
push ecx
lea edx, [ebp - 0x8c8]
push edx
mov eax, dword [ebp - 0x868]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x868]
mov eax, dword [edx]
call eax
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x8c8]
call fcn.00401cd0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x8ac]
call fcn.00401cd0
mov ecx, dword [ebp - 0x858]
call fcn.004ad0e0
mov dword [ebp - 0x858], eax
jmp 0x40a9b6
lea ecx, [ebp - 0x868]
push ecx
mov edx, dword [ebp - 0x8cc]
mov ecx, dword [edx + 0x2ac]
call fcn.00417670
mov ecx, dword [ebp - 0x850]
call fcn.004ad0e0
mov dword [ebp - 0x850], eax
jmp 0x40a942
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x64]
call fcn.0040c270
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x68]
xor ecx, ebp
call fcn.00463ee8
mov esp, ebp
pop ebp
ret