Function at 0x40f134
Capabilities:
Contain obfuscated stackstrings
Extract resource via kernel32 functions
Terminate process

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x27dc
call fcn.004428b0
push 0x2349
push 0x68
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.KERNEL32.dll_FindResourceA]
mov dword [ebp - 0x279c], eax
cmp dword [ebp - 0x279c], 0
jne 0x40f17d
mov ecx, dword [ebp + 0x14]
push ecx
call fcn.0040ef00
add esp, 4
test eax, eax
je 0x40f176
jmp 0x40f806
xor eax, eax
jmp 0x40f80b
mov edx, dword [ebp - 0x279c]
push edx
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.KERNEL32.dll_LoadResource]
mov dword [ebp - 0x268c], eax
cmp dword [ebp - 0x268c], 0
jne 0x40f1b8
push 0x10
push 0x4df4a0
push 0x4df4a8
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
xor eax, eax
jmp 0x40f80b
mov ecx, dword [ebp - 0x268c]
push ecx
call dword [sym.imp.KERNEL32.dll_LockResource]
mov dword [0x51478c], eax
cmp dword [0x51478c], 0
jne 0x40f1ee
push 0x10
push 0x4df4c4
push str.Cant_load_dll_from_Res_
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
xor eax, eax
jmp 0x40f80b
mov edx, dword [ebp - 0x279c]
push edx
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.KERNEL32.dll_SizeofResource]
mov ecx, dword [ebp + 0x14]
mov dword [ecx], eax
push 0x2660
mov edx, dword [ebp + 0x14]
mov eax, dword [edx]
mov ecx, dword [0x51478c]
lea edx, [ecx + eax - 0x2660]
push edx
mov eax, dword [ebp + 0xc]
push eax
call sub.MSVCRT.dll_memcpy
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetTickCount]
xor edx, edx
mov ecx, 0x1ff
div ecx
mov dword [0x514a2c], edx
mov byte [ebp - 0x2680], 0x14
mov byte [ebp - 0x267f], 0x28
mov byte [ebp - 0x267e], 0x30
mov byte [ebp - 0x267d], 0x60
mov byte [ebp - 0x267c], 0xc8
mov byte [ebp - 0x267b], 0x30
mov byte [ebp - 0x267a], 0x45
mov byte [ebp - 0x2679], 0x12
mov byte [ebp - 0x2678], 0x18
mov byte [ebp - 0x2677], 0x61
mov byte [ebp - 0x2676], 0xe
mov byte [ebp - 0x2675], 0
mov byte [ebp - 0x2674], 0x22
mov byte [ebp - 0x2673], 0
mov byte [ebp - 0x2672], 0x20
mov byte [ebp - 0x2671], 0
mov byte [ebp - 0x2670], 0x90
mov byte [ebp - 0x266f], 0x66
mov byte [ebp - 0x266e], 0xe
mov byte [ebp - 0x266d], 0
mov byte [ebp - 0x266c], 0xe8
mov byte [ebp - 0x266b], 2
mov byte [ebp - 0x266a], 0x7f
mov byte [ebp - 0x2669], 0x3a
mov byte [ebp - 0x2668], 0x6b
mov byte [ebp - 0x2667], 0x23
mov byte [ebp - 0x2666], 0x36
mov byte [ebp - 0x2665], 0x20
mov byte [ebp - 0x2664], 0x80
mov byte [ebp - 0x2663], 0x60
mov byte [ebp - 0x2662], 0x30
mov byte [ebp - 0x2661], 0
push 0x4c8
lea edx, [ebp - 0x2680]
push edx
push 0x64
mov eax, dword [ebp + 0xc]
add eax, 0x130
push eax
call fcn.00402e45
add esp, 0x10
mov dword [ebp - 0x2684], 0
push 0x2660
mov ecx, dword [ebp + 0xc]
push ecx
lea edx, [ebp - 0x2660]
push edx
call sub.MSVCRT.dll_memcpy
add esp, 0xc
mov eax, 1
test eax, eax
je 0x40f79c
mov dword [ebp - 0x27b8], 0xffffffa4
push 0x2660
lea ecx, [ebp - 0x2660]
push ecx
mov edx, dword [ebp + 0xc]
push edx
call sub.MSVCRT.dll_memcpy
add esp, 0xc
mov eax, dword [ebp + 0xc]
xor ecx, ecx
mov cl, byte [eax + 0x574]
cmp ecx, 1
jne 0x40f3d0
lea edx, [ebp - 0x2798]
push edx
mov eax, dword [ebp - 0x2684]
push eax
mov ecx, dword [0x5149f0]
call fcn.00409743
mov dword [ebp - 0x27b8], eax
lea ecx, [ebp - 0x2798]
push ecx
mov ecx, dword [0x5149f0]
call fcn.00406796
jmp 0x40f403
lea edx, [ebp - 0x2798]
push edx
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x564]
push ecx
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0x568]
push eax
mov ecx, dword [ebp - 0x2684]
push ecx
mov ecx, dword [0x5149f0]
call fcn.00409716
mov dword [ebp - 0x27b8], eax
cmp dword [ebp - 0x27b8], 0
je 0x40f41f
mov edx, dword [ebp + 0xc]
push edx
call fcn.0040eec3
add esp, 4
xor eax, eax
jmp 0x40f80b
lea eax, [ebp - 0x2798]
push eax
push 0x10
mov ecx, dword [ebp + 0xc]
add ecx, 0x120
push ecx
call fcn.00402dad
add esp, 0xc
test eax, eax
jne 0x40f445
xor eax, eax
jmp 0x40f80b
lea edx, [ebp - 0x2798]
push edx
push 0x120
mov eax, dword [ebp + 0xc]
push eax
call fcn.00402dad
add esp, 0xc
test eax, eax
jne 0x40f468
xor eax, eax
jmp 0x40f80b
mov ecx, dword [ebp + 0xc]
add ecx, 0x5f8
push ecx
push 0x120
mov edx, dword [ebp + 0xc]
push edx
call fcn.004030cd
add esp, 0xc
mov eax, dword [ebp + 0xc]
xor ecx, ecx
mov cl, byte [eax + 0xd]
test ecx, ecx
je 0x40f54c
lea edx, [ebp - 0x2798]
push edx
lea eax, [ebp - 0x27d0]
push eax
mov ecx, dword [0x5149f0]
call fcn.0040d0b1
test eax, eax
je 0x40f4c4
mov ecx, dword [ebp - 0x2684]
add ecx, 1
mov dword [ebp - 0x2684], ecx
jmp 0x40f35e
mov dl, byte [0x514a54]
mov byte [ebp - 0x27cc], dl
xor eax, eax
mov dword [ebp - 0x27cb], eax
mov dword [ebp - 0x27c7], eax
mov dword [ebp - 0x27c3], eax
mov dword [ebp - 0x27bf], eax
lea ecx, [ebp - 0x2798]
push ecx
lea edx, [ebp - 0x27cc]
push edx
mov ecx, dword [0x5149f0]
call fcn.0040d86a
test eax, eax
je 0x40f51b
mov eax, dword [ebp - 0x2684]
add eax, 1
mov dword [ebp - 0x2684], eax
jmp 0x40f35e
lea ecx, [ebp - 0x27cc]
push ecx
mov edx, dword [ebp + 0xc]
add edx, 0x10d
push edx
call sub.MSVCRT.dll__stricmp
add esp, 8
test eax, eax
je 0x40f54c
mov eax, dword [ebp - 0x2684]
add eax, 1
mov dword [ebp - 0x2684], eax
jmp 0x40f35e
mov ecx, dword [ebp + 0xc]
xor edx, edx
mov dl, byte [ecx + 0x574]
cmp edx, 3
jne 0x40f5be
mov eax, dword [ebp + 0xc]
xor ecx, ecx
mov cl, byte [eax + 0x32]
test ecx, ecx
je 0x40f5be
lea edx, [ebp - 0x2798]
push edx
mov ecx, dword [0x5149f0]
call fcn.00406796
lea eax, [ebp - 0x2798]
push eax
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + 0x56c]
push edx
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x570]
push ecx
mov edx, dword [ebp - 0x2684]
push edx
mov ecx, dword [0x5149f0]
call fcn.004096e9
test eax, eax
je 0x40f5be
mov eax, dword [ebp + 0xc]
push eax
call fcn.0040eec3
add esp, 4
xor eax, eax
jmp 0x40f80b
mov ecx, dword [ebp + 0xc]
xor edx, edx
mov dl, byte [ecx + 0x31]
test edx, edx
je 0x40f5f5
lea eax, [ebp - 0x2798]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.0040d989
add esp, 8
test eax, eax
jne 0x40f5f5
mov edx, dword [ebp - 0x2684]
add edx, 1
mov dword [ebp - 0x2684], edx
jmp 0x40f35e
mov eax, dword [ebp + 0xc]
xor ecx, ecx
mov cl, byte [eax + 0x33]
test ecx, ecx
je 0x40f62c
lea edx, [ebp - 0x2798]
push edx
mov eax, dword [ebp + 0xc]
push eax
call fcn.0040d9eb
add esp, 8
test eax, eax
jne 0x40f62c
mov ecx, dword [ebp - 0x2684]
add ecx, 1
mov dword [ebp - 0x2684], ecx
jmp 0x40f35e
mov edx, dword [ebp + 0xc]
xor eax, eax
mov al, byte [edx + 0x32]
test eax, eax
je 0x40f663
lea ecx, [ebp - 0x2798]
push ecx
mov edx, dword [ebp + 0xc]
push edx
call fcn.0040d8e0
add esp, 8
test eax, eax
jne 0x40f663
mov eax, dword [ebp - 0x2684]
add eax, 1
mov dword [ebp - 0x2684], eax
jmp 0x40f35e
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + 0x120]
push edx
push 0x4df4e8
lea eax, [ebp - 0x27a8]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + 0x124]
push edx
push 0x4df4ec
lea eax, [ebp - 0x27b4]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
lea ecx, [ebp - 0x2798]
push ecx
lea edx, [ebp - 0x27b4]
push edx
lea eax, [ebp - 0x27a8]
push eax
push 0
lea ecx, [ebp - 0x2690]
push ecx
mov ecx, dword [0x5149f0]
call fcn.004091df
test eax, eax
jne 0x40f788
lea edx, [ebp - 0x2798]
push edx
lea eax, [ebp - 0x27b4]
push eax
lea ecx, [ebp - 0x27a8]
push ecx
mov edx, dword [ebp + 0xc]
push edx
call fcn.0040ee19
add esp, 0x10
test eax, eax
jne 0x40f70b
mov eax, dword [ebp - 0x2684]
add eax, 1
mov dword [ebp - 0x2684], eax
jmp 0x40f35e
lea ecx, [ebp - 0x2798]
push ecx
mov edx, dword [ebp + 0x10]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov eax, dword [ebp + 0xc]
xor ecx, ecx
mov cl, byte [eax + 0x33]
test ecx, ecx
je 0x40f739
lea edx, [ebp - 0x2798]
push edx
mov eax, dword [ebp + 0xc]
push eax
call dword [0x514a24]
mov ecx, dword [0x5149f0]
mov dword [ebp - 0x27d8], ecx
mov edx, dword [ebp - 0x27d8]
mov dword [ebp - 0x27d4], edx
cmp dword [ebp - 0x27d4], 0
je 0x40f774
push 1
mov eax, dword [ebp - 0x27d4]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x27d4]
call dword [edx]
mov dword [ebp - 0x27dc], eax
jmp 0x40f77e
mov dword [ebp - 0x27dc], 0
mov eax, 1
jmp 0x40f80b
mov eax, dword [ebp - 0x2684]
add eax, 1
mov dword [ebp - 0x2684], eax
jmp 0x40f35e
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + 0x560]
push edx
mov eax, dword [ebp + 0xc]
add eax, 0x22a
push eax
mov ecx, dword [ebp + 0xc]
add ecx, 0x25c
push ecx
push 0
call fcn.00410528
add esp, 0x10
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov dword [ebp - 0x2688], eax
mov edx, dword [ebp - 0x2688]
push edx
push 0
push 1
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov dword [ebp - 0x2694], eax
push 0
mov eax, dword [ebp - 0x2694]
push eax
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
mov ecx, dword [ebp - 0x2694]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
jmp 0x40f80b
jmp 0x40f204
mov esp, ebp
pop ebp
ret