Function at 0x402da0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
push ebx
push esi
push edi
mov byte [ebp - 0x18], 0xd
mov byte [ebp - 0x17], 0x8d
mov byte [ebp - 0x16], 0x90
mov byte [ebp - 0x15], 0x55
mov byte [ebp - 0x14], 0x5a
mov byte [ebp - 0x13], 0xa4
mov byte [ebp - 0x12], 0x27
mov byte [ebp - 0x11], 0x73
mov byte [ebp - 0x10], 0x30
mov byte [ebp - 0xf], 0x36
mov byte [ebp - 0xe], 0x3a
mov byte [ebp - 0xd], 0x43
mov byte [ebp - 0xc], 9
mov byte [ebp - 0xb], 0xa
mov byte [ebp - 0xa], 0x2c
mov dword [ebp - 0x24], 0
jmp 0x402df7
mov eax, dword [ebp - 0x24]
add eax, 1
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0xf
jae 0x402f48
mov ecx, dword [ebp - 0x24]
mov dl, byte [ebp + ecx - 0x18]
mov byte [ebp - 0x25], dl
movzx eax, byte [ebp - 0x25]
add eax, dword [ebp - 0x24]
mov byte [ebp - 0x25], al
movzx ecx, byte [ebp - 0x25]
sar ecx, 2
movzx edx, byte [ebp - 0x25]
shl edx, 6
or ecx, edx
mov byte [ebp - 0x25], cl
movzx eax, byte [ebp - 0x25]
sub eax, dword [ebp - 0x24]
mov byte [ebp - 0x25], al
movzx ecx, byte [ebp - 0x25]
sar ecx, 5
movzx edx, byte [ebp - 0x25]
shl edx, 3
or ecx, edx
mov byte [ebp - 0x25], cl
movzx eax, byte [ebp - 0x25]
sub eax, dword [ebp - 0x24]
mov byte [ebp - 0x25], al
movzx ecx, byte [ebp - 0x25]
sar ecx, 7
movzx edx, byte [ebp - 0x25]
shl edx, 1
or ecx, edx
mov byte [ebp - 0x25], cl
movzx eax, byte [ebp - 0x25]
add eax, 0x74
mov byte [ebp - 0x25], al
movzx ecx, byte [ebp - 0x25]
sar ecx, 2
movzx edx, byte [ebp - 0x25]
shl edx, 6
or ecx, edx
mov byte [ebp - 0x25], cl
movzx eax, byte [ebp - 0x25]
sub eax, dword [ebp - 0x24]
mov byte [ebp - 0x25], al
movzx ecx, byte [ebp - 0x25]
neg ecx
mov byte [ebp - 0x25], cl
movzx edx, byte [ebp - 0x25]
add edx, dword [ebp - 0x24]
mov byte [ebp - 0x25], dl
movzx eax, byte [ebp - 0x25]
neg eax
mov byte [ebp - 0x25], al
movzx ecx, byte [ebp - 0x25]
sub ecx, 9
mov byte [ebp - 0x25], cl
movzx edx, byte [ebp - 0x25]
neg edx
mov byte [ebp - 0x25], dl
movzx eax, byte [ebp - 0x25]
sar eax, 1
movzx ecx, byte [ebp - 0x25]
shl ecx, 7
or eax, ecx
mov byte [ebp - 0x25], al
movzx edx, byte [ebp - 0x25]
not edx
mov byte [ebp - 0x25], dl
movzx eax, byte [ebp - 0x25]
sar eax, 2
movzx ecx, byte [ebp - 0x25]
shl ecx, 6
or eax, ecx
mov byte [ebp - 0x25], al
movzx edx, byte [ebp - 0x25]
neg edx
mov byte [ebp - 0x25], dl
movzx eax, byte [ebp - 0x25]
sar eax, 3
movzx ecx, byte [ebp - 0x25]
shl ecx, 5
or eax, ecx
mov byte [ebp - 0x25], al
movzx edx, byte [ebp - 0x25]
sub edx, dword [ebp - 0x24]
mov byte [ebp - 0x25], dl
movzx eax, byte [ebp - 0x25]
not eax
mov byte [ebp - 0x25], al
movzx ecx, byte [ebp - 0x25]
neg ecx
mov byte [ebp - 0x25], cl
movzx edx, byte [ebp - 0x25]
sub edx, 0x49
mov byte [ebp - 0x25], dl
movzx eax, byte [ebp - 0x25]
neg eax
mov byte [ebp - 0x25], al
movzx ecx, byte [ebp - 0x25]
not ecx
mov byte [ebp - 0x25], cl
mov edx, dword [ebp - 0x24]
mov al, byte [ebp - 0x25]
mov byte [ebp + edx - 0x18], al
jmp 0x402dee
lea ecx, [ebp - 0x18]
push ecx
mov edx, dword [str.kernel32.dll]
push edx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 8], eax
not edx
rol edi, 0x2c
neg ebx
imul edx
rol edi, 0x47
sbb esi, 0x8d
mov edi, 0x27
bswap ebx
inc ebx
neg esi
rcl eax, 0x8f
inc esi
sbb eax, 0x15
ror edx, 0xa
dec edx
sub eax, 0x33
dec eax
dec eax
inc eax
imul esi
neg esi
bswap eax
inc eax
or eax, 0x8e
sbb esi, 0x5b
mov eax, 0x6a
rcl ebx, 6
not eax
imul esi
ror esi, 0x67
neg edx
and ebx, 0x79
rol edi, 0x37
imul edi
neg edx
imul eax
sbb esi, 0xa8
inc ebx
dec eax
inc edi
mov esi, 0x98
sbb edx, 0xbf
and edx, 0xb1
ror eax, 0x5b
bswap edi
ror ebx, 0x80
add edi, 0xae
dec ebx
bswap edi
add ebx, 0xcf
lea eax, [ebp - 0x1c]
push eax
push 0x40
mov ecx, dword [0x40d00c]
push ecx
push fcn.00401440
call dword [ebp - 8]
mov dword [ebp - 0x20], eax
mov edx, dword [0x40d00c]
push edx
push fcn.00401440
call fcn.00401220
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret