Function at 0x402df0
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 0x402e47
mov eax, dword [ebp - 0x24]
add eax, 1
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0xf
jae 0x402f98
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 0x402e3e
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
rol eax, 0xc1
inc esi
rcr ebx, 0x63
inc esi
neg ebx
mov eax, 0xb
imul esi
inc edi
imul edx
rol ebx, 0xa6
bswap edx
sub esi, 0x14
inc edi
inc eax
inc esi
inc esi
neg ebx
rcr eax, 0xdc
dec edx
inc eax
rol edx, 0x94
add ebx, 0xb5
dec esi
rcl ebx, 0xa2
bswap edi
mov esi, 0x28
rol edi, 0xf0
and edx, 0xa7
neg ebx
imul eax
sbb edx, 0xe7
not eax
dec edi
and edx, 0x67
neg eax
add eax, 0xf8
sub ebx, 0x50
sub edi, 0x9f
rcl esi, 0x47
neg ebx
sub edx, 0x97
not edi
ror ebx, 0xc
bswap eax
inc eax
not edx
imul ebx
and eax, 0xa3
neg edi
dec edx
lea eax, [ebp - 0x1c]
push eax
push 0x40
mov ecx, dword [0x40d00c]
push ecx
push fcn.00401450
call dword [ebp - 8]
mov dword [ebp - 0x20], eax
mov edx, dword [0x40d00c]
push edx
push fcn.00401450
call fcn.00401220
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret