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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x70
mov eax, dword [ebp + 8]
add eax, dword [ecx + 0x60]
mov word [esp + 0x10], 0xabad
mov byte [esp + 0x12], 0xb2
mov dword [esp + 0x13], 0
mov dword [esp + 0x17], 0
mov dword [esp + 0x1b], 0
mov dword [esp + 8], 0
mov edx, dword [esp + 8]
cmp edx, 0xe
ja 0x409761
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, dword [esp + 8]
mov esi, dword [esp + 8]
movzx edi, byte [esp + esi + 0x10]
lea ebx, [edx - 0x5cc63268]
lea esi, [edx + edi]
add esi, 0xa339cd98
and ebx, edi
add edx, 0x98
and edx, edi
add edx, ebx
mov edi, edx
xor edi, esi
not edx
and edx, esi
add edx, edx
sub edx, edi
mov dword [esp + 0x20], edx
mov edx, dword [esp + 0x20]
mov esi, edx
xor esi, 0xd7
and edx, 0x57
lea edx, [esi + edx*2]
inc dl
mov esi, dword [esp + 8]
mov byte [esp + esi + 0x10], dl
inc dword [esp + 8]
mov edx, dword [esp + 8]
cmp edx, 0xf
jb 0x409700
mov dword [esp + 8], 0x1e1c1832
mov dword [esp + 0xc], 0x691e
mov dword [esp], 0
mov edx, dword [esp]
cmp edx, 7
ja 0x4097bd
mov edx, dword [esp]
mov esi, dword [esp]
movzx esi, byte [esp + esi + 8]
lea edi, [edx + esi]
add edi, 0xa67847d2
add edx, 0xa67847d2
and edx, esi
add edx, edx
sub edi, edx
mov dword [esp + 0x20], edi
mov edx, dword [esp + 0x20]
add dl, 0x42
mov esi, dword [esp]
mov byte [esp + esi + 8], dl
inc dword [esp]
mov edx, dword [esp]
cmp edx, 8
jb 0x409780
mov dword [esp + 0x20], 0x56506c6d
mov dword [esp + 0x24], 0x5252607c
mov dword [esp + 0x28], 0x4fbab07d
mov dword [esp + 0x2c], 0x4ab74eb3
mov dword [esp + 0x30], 0x7247b3b2
mov dword [esp + 0x34], 0xb8651f19
mov dword [esp + 0x38], 0xc53fcdc6
mov dword [esp + 0x3c], 0xc61a00c8
mov dword [esp + 0x40], 0xc0cdc1c3
mov dword [esp + 0x44], 0xc8cfc1cd
mov dword [esp + 0x48], 0x2d6a03d6
mov dword [esp + 0x4c], 0x12d3dfd3
mov dword [esp + 0x50], 0x22d62024
mov dword [esp + 0x54], 0x26d8650f
mov dword [esp + 0x58], 0x59371ce5
mov byte [esp + 0x5c], 0x7c
mov dword [esp + 0x5d], 0
mov dword [esp + 0x61], 0
mov byte [esp + 0x65], 0
mov dword [esp + 4], 0
mov edx, dword [esp + 4]
cmp edx, 0x45
ja 0x40989f
mov edx, dword [esp + 4]
mov esi, dword [esp + 4]
movzx esi, byte [esp + esi + 0x20]
lea edi, [edx + 0xa8]
and edi, esi
add edx, esi
add edi, edi
sub edx, edi
add edx, 0xd8185ba8
mov dword [esp], edx
mov edx, dword [esp]
add dl, 0x68
mov esi, dword [esp + 4]
mov byte [esp + esi + 0x20], dl
inc dword [esp + 4]
mov edx, dword [esp + 4]
cmp edx, 0x46
jb 0x409860
mov esi, dword [ebp + 0xc]
movzx ebx, byte [esp + 0x20]
mov edx, eax
test bl, bl
je 0x4098cb
lea edi, [esp + 0x21]
mov edx, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], bl
inc edx
movzx ebx, byte [edi]
inc edi
test bl, bl
jne 0x4098c0
mov byte [edx], 0
movzx ebx, byte [esi]
test bl, bl
je 0x4098eb
inc esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], bl
inc edx
movzx ebx, byte [esi]
inc esi
test bl, bl
jne 0x4098e0
mov esi, dword [ebp + 0x10]
mov byte [edx], 0
movzx ebx, byte [esp + 8]
test bl, bl
je 0x40990b
lea edi, [esp + 9]
nop
nop
mov byte [edx], bl
inc edx
movzx ebx, byte [edi]
inc edi
test bl, bl
jne 0x409900
mov byte [edx], 0
movzx ebx, byte [esi]
test bl, bl
je 0x40992b
inc esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], bl
inc edx
movzx ebx, byte [esi]
inc esi
test bl, bl
jne 0x409920
mov byte [edx], 0
movzx ebx, byte [esp + 0x10]
test bl, bl
je 0x40994b
lea esi, [esp + 0x11]
nop
nop
nop
nop
nop
mov byte [edx], bl
inc edx
movzx ebx, byte [esi]
inc esi
test bl, bl
jne 0x409940
mov byte [edx], 0
sub edx, eax
add dword [ecx + 0x60], edx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0xc