Function at 0x40a440
Capabilities:
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x54
mov edx, dword [esp + 0x70]
mov esi, dword [esp + 0x6c]
mov eax, dword [esp + 0x68]
mov dword [esp + 0xc], eax
mov dword [esp + 0x20], ecx
mov eax, dword [ecx + 0x80]
mov dword [esp + 0x1c], eax
mov word [esp + 4], 0x4d4f
mov byte [esp + 6], 0x3a
mov word [esp + 7], 0
mov byte [esp + 9], 0
mov ecx, 0xb
mov edi, 0x74
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx eax, byte [esp + ecx - 7]
lea ebx, [eax + eax]
not ebx
add ebx, eax
and ebx, 0x6c
and eax, 0xffffff93
or eax, ebx
mov ebp, edi
and ebp, 0x6c
mov ebx, ecx
and ebx, 0x13
or ebx, ebp
xor ebx, eax
add bl, 0xc9
mov byte [esp + ecx - 7], bl
inc ecx
dec edi
cmp ecx, 0x11
jne 0x40a490
mov dword [esp + 0x10], 0x2e24203e
mov word [esp + 0x14], 0x132a
mov dword [esp + 0x16], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0xc5
xor cl, byte [esp + eax + 0x10]
add cl, 0x27
mov byte [esp + eax + 0x10], cl
inc eax
cmp eax, 0xa
jne 0x40a4e0
mov dword [esp + 0x24], 0x6c410b0d
mov dword [esp + 0x28], 0x6963716a
mov dword [esp + 0x2c], 0x624e247c
mov dword [esp + 0x30], 0x7c617d7f
mov dword [esp + 0x34], 0x7c7b6579
mov dword [esp + 0x38], 0x71362f7a
mov dword [esp + 0x3c], 0x36776b77
mov dword [esp + 0x40], 0x7e6a7c78
mov dword [esp + 0x44], 0x424c011b
mov dword [esp + 0x48], 0x51b4049
mov byte [esp + 0x4c], 0x28
mov dword [esp + 0x4d], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
xor byte [esp + eax + 0x24], al
inc eax
cmp eax, 0x2d
jne 0x40a560
mov eax, dword [esp + 0x1c]
add dword [esp + 0xc], eax
mov dword [esp], 0x326465
mov edi, 0x963b908c
nop
nop
movzx eax, byte [esp + edi + 0x69c46f74]
xor eax, edi
mov ecx, eax
and ecx, 0x43
xor eax, 0x43
lea eax, [eax + ecx*2]
inc al
mov byte [esp + edi + 0x69c46f74], al
inc edi
cmp edi, 0x963b9090
jne 0x40a580
movzx ebx, byte [esp]
mov ecx, dword [esp + 0xc]
mov edi, ecx
test bl, bl
je 0x40a5cc
lea ebp, [esp + 1]
mov edi, ecx
nop
nop
nop
nop
nop
mov byte [edi], bl
inc edi
movzx ebx, byte [ebp]
inc ebp
test bl, bl
jne 0x40a5c0
mov byte [edi], 0
mov eax, dword [esp + 0x20]
movzx ebx, byte [eax + 0x60]
test bl, bl
je 0x40a5ec
lea ebp, [eax + 0x61]
nop
nop
mov byte [edi], bl
inc edi
movzx ebx, byte [ebp]
inc ebp
test bl, bl
jne 0x40a5e0
mov byte [edi], 0
movzx ebx, byte [esp + 0x24]
test bl, bl
je 0x40a60c
lea ebp, [esp + 0x25]
nop
nop
nop
nop
mov byte [edi], bl
inc edi
movzx ebx, byte [ebp]
inc ebp
test bl, bl
jne 0x40a600
mov byte [edi], 0
movzx ebx, byte [esi]
test bl, bl
je 0x40a62b
inc esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edi], bl
inc edi
movzx ebx, byte [esi]
inc esi
test bl, bl
jne 0x40a620
mov byte [edi], 0
movzx ebx, byte [esp + 0x10]
test bl, bl
je 0x40a64b
lea esi, [esp + 0x11]
nop
nop
nop
nop
nop
mov byte [edi], bl
inc edi
movzx ebx, byte [esi]
inc esi
test bl, bl
jne 0x40a640
mov byte [edi], 0
movzx ebx, byte [edx]
test bl, bl
je 0x40a66b
inc edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edi], bl
inc edi
movzx ebx, byte [edx]
inc edx
test bl, bl
jne 0x40a660
mov byte [edi], 0
movzx edx, byte [esp + 4]
test dl, dl
je 0x40a68b
lea esi, [esp + 5]
nop
nop
nop
nop
nop
mov byte [edi], dl
inc edi
movzx edx, byte [esi]
inc esi
test dl, dl
jne 0x40a680
mov byte [edi], 0
sub edi, ecx
add dword [eax + 0x80], edi
add esp, 0x54
pop esi
pop edi
pop ebx
pop ebp
ret 0xc