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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x50
mov esi, dword [esp + 0x68]
mov dword [esp + 0x1c], ecx
mov eax, dword [ecx + 0x80]
mov dword [esp + 0x18], eax
mov word [esp + 8], 0xd0f
mov byte [esp + 0xa], 0x1a
mov dword [esp + 0xb], 0
mov edx, 0xf274e0bb
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esp + edx + 0xd8b1f4d]
xor ecx, edx
mov ebx, ecx
and ebx, 1
xor ecx, 1
lea ecx, [ecx + ebx*2]
add cl, 0x58
mov byte [esp + edx + 0xd8b1f4d], cl
inc edx
cmp edx, 0xf274e0c2
jne 0x40a750
mov dword [esp + 0x10], 0x8a8c88b2
mov dword [esp + 0x14], 0xa78e
mov edx, 0xe4
mov ebp, 0x1b
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, byte [esp + ebp - 0xb]
mov eax, ebp
or eax, ebx
mov ecx, eax
sub ecx, ebx
add ecx, edx
and ecx, eax
add cl, 0x79
mov byte [esp + ebp - 0xb], cl
dec edx
inc ebp
cmp ebp, 0x23
jne 0x40a7a0
mov dword [esp + 0x20], 0x38579d9f
mov dword [esp + 0x24], 0x373d0b3a
mov dword [esp + 0x28], 0x365e7008
mov dword [esp + 0x2c], 0x102f2f0d
mov dword [esp + 0x30], 0x282d172b
mov dword [esp + 0x34], 0x2f76512a
mov dword [esp + 0x38], 0x62211d25
mov dword [esp + 0x3c], 0xd2e2d02c
mov dword [esp + 0x40], 0xd6d88ba9
mov dword [esp + 0x44], 0x9ba5dcdb
mov byte [esp + 0x48], 0x64
mov dword [esp + 0x49], 0
mov dword [esp + 0x4c], 0
mov edx, 1
mov ebp, 0xffffffff
nop
nop
lea ebx, [edx - 1]
movzx eax, byte [esp + edx + 0x1f]
mov ecx, ebp
or ecx, 0x18d99ae3
or ebx, 0x18d99ae3
add ebx, ecx
lea edi, [edx + ebx]
and edi, eax
add ebx, eax
lea eax, [edx + ebx]
add edi, edi
mov ecx, edx
sub ecx, edi
add ecx, ebx
and eax, 1
or ecx, 1
add ecx, eax
add cl, 0x90
mov byte [esp + edx + 0x1f], cl
inc edx
dec ebp
cmp edx, 0x31
jne 0x40a830
mov edi, dword [esp + 0x64]
add edi, dword [esp + 0x18]
mov word [esp], 0x181f
mov byte [esp + 2], 0x4a
mov word [esp + 3], 0
mov byte [esp + 5], 0
mov ebp, 0xdf435af3
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esp + ebp + 0x20bca50d]
mov ebx, ecx
and ebx, ebp
mov eax, ebx
or al, 0xfd
inc al
mov edx, ebx
and dl, 0xfd
mul dl
mov edx, eax
add dl, cl
mov eax, ebx
shr al, 1
and al, 1
or bl, 2
mul bl
add al, al
sub dl, al
movzx eax, dl
add eax, ebp
add al, 0x41
mov byte [esp + ebp + 0x20bca50d], al
inc ebp
cmp ebp, 0xdf435af9
jne 0x40a8a0
movzx edx, byte [esp]
mov eax, edi
test dl, dl
je 0x40a90b
lea ebx, [esp + 1]
mov eax, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [eax], dl
inc eax
movzx edx, byte [ebx]
inc ebx
test dl, dl
jne 0x40a900
mov byte [eax], 0
mov ecx, dword [esp + 0x1c]
movzx edx, byte [ecx + 0x60]
test dl, dl
je 0x40a92b
lea ebx, [ecx + 0x61]
nop
nop
nop
mov byte [eax], dl
inc eax
movzx edx, byte [ebx]
inc ebx
test dl, dl
jne 0x40a920
mov byte [eax], 0
movzx edx, byte [esp + 0x20]
test dl, dl
je 0x40a94b
lea ebx, [esp + 0x21]
nop
nop
nop
nop
nop
mov byte [eax], dl
inc eax
movzx edx, byte [ebx]
inc ebx
test dl, dl
jne 0x40a940
mov byte [eax], 0
movzx edx, byte [esi]
test dl, dl
je 0x40a96b
inc esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [eax], dl
inc eax
movzx edx, byte [esi]
inc esi
test dl, dl
jne 0x40a960
mov byte [eax], 0
movzx edx, byte [esp + 0x10]
test dl, dl
je 0x40a98b
lea esi, [esp + 0x11]
nop
nop
nop
nop
nop
mov byte [eax], dl
inc eax
movzx edx, byte [esi]
inc esi
test dl, dl
jne 0x40a980
mov byte [eax], 0
mov esi, dword [esp + 0x6c]
movzx edx, byte [esi]
test dl, dl
je 0x40a9ab
inc esi
nop
nop
nop
nop
nop
nop
mov byte [eax], dl
inc eax
movzx edx, byte [esi]
inc esi
test dl, dl
jne 0x40a9a0
mov byte [eax], 0
movzx edx, byte [esp + 8]
test dl, dl
je 0x40a9cb
lea esi, [esp + 9]
nop
nop
nop
nop
nop
mov byte [eax], dl
inc eax
movzx edx, byte [esi]
inc esi
test dl, dl
jne 0x40a9c0
mov byte [eax], 0
sub eax, edi
add dword [ecx + 0x80], eax
add esp, 0x50
pop esi
pop edi
pop ebx
pop ebp
ret 0xc