Function at 0x409630
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 + 0x18], 0xc3c1
mov byte [esp + 0x1a], 0xf2
mov dword [esp + 0x1b], 0
mov dword [esp + 0x1f], 0
mov dword [esp + 0x23], 0
mov dword [esp + 8], 0
mov edx, dword [esp + 8]
cmp edx, 0xe
ja 0x4096da
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edi, dword [esp + 8]
mov edx, dword [esp + 8]
movzx ebx, byte [esp + edx + 0x18]
lea edx, [edi - 0x467a88a2]
lea esi, [edi + ebx]
add esi, 0xb985775e
add edi, 0x5e
and edi, ebx
and edx, ebx
add edx, edi
mov edi, edx
xor edi, esi
not edx
and edx, esi
add edx, edx
sub edx, edi
mov dword [esp + 0x28], edx
mov edx, dword [esp + 0x28]
mov esi, edx
or esi, 0x6d
and edx, 0x6d
add edx, esi
inc dl
mov esi, dword [esp + 8]
mov byte [esp + esi + 0x18], dl
inc dword [esp + 8]
mov edx, dword [esp + 8]
cmp edx, 0xf
jb 0x409680
mov dword [esp + 8], 0xfefcc0ea
mov word [esp + 0xc], 0xf1fe
mov dword [esp + 0xe], 0
mov byte [esp + 0x12], 0
mov dword [esp], 0
mov edx, dword [esp]
cmp edx, 0xa
ja 0x409747
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, dword [esp]
mov esi, dword [esp]
movzx esi, byte [esp + esi + 8]
lea edi, [edx - 0x1e8f11a2]
add edx, 0x5e
and edx, esi
or edi, esi
sub edi, edx
mov dword [esp + 0x28], edi
mov edx, dword [esp + 0x28]
add dl, 0x6e
mov esi, dword [esp]
mov byte [esp + esi + 8], dl
inc dword [esp]
mov edx, dword [esp]
cmp edx, 0xb
jb 0x409710
mov dword [esp + 0x28], 0xbc82f6f1
mov dword [esp + 0x2c], 0x8080d2ea
mov dword [esp + 0x30], 0x878882d1
mov dword [esp + 0x34], 0x888f888b
mov dword [esp + 0x38], 0xc08f8384
mov dword [esp + 0x3c], 0x9eb1f7e5
mov dword [esp + 0x40], 0x9d978598
mov dword [esp + 0x44], 0x9cb8d286
mov dword [esp + 0x48], 0x8e91918b
mov dword [esp + 0x4c], 0x6e677199
mov dword [esp + 0x50], 0x65183368
mov dword [esp + 0x54], 0x2063676b
mov dword [esp + 0x58], 0x507c526a
mov dword [esp + 0x5c], 0x4c7a0d37
mov dword [esp + 0x60], 0x92f7679
mov byte [esp + 0x64], 0xea
mov word [esp + 0x65], 0
mov byte [esp + 0x67], 0
mov dword [esp + 4], 0
mov edx, dword [esp + 4]
cmp edx, 0x3f
ja 0x40983a
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, dword [esp + 4]
mov esi, dword [esp + 4]
movzx esi, byte [esp + esi + 0x28]
lea edi, [edx + esi]
add edi, 0xf18740db
add edx, 0xf18740db
and edx, esi
add edx, edx
sub edi, edx
mov dword [esp], edi
mov edx, dword [esp]
mov esi, edx
xor esi, 2
and edx, 2
lea edx, [esi + edx*2]
inc dl
mov esi, dword [esp + 4]
mov byte [esp + esi + 0x28], dl
inc dword [esp + 4]
mov edx, dword [esp + 4]
cmp edx, 0x40
jb 0x4097f0
mov esi, dword [ebp + 0xc]
movzx ebx, byte [esp + 0x28]
mov edx, eax
test bl, bl
je 0x40985b
lea edi, [esp + 0x29]
mov edx, eax
nop
nop
mov byte [edx], bl
inc edx
movzx ebx, byte [edi]
inc edi
test bl, bl
jne 0x409850
mov byte [edx], 0
movzx ebx, byte [esi]
test bl, bl
je 0x40987b
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 0x409870
mov esi, dword [ebp + 0x10]
mov byte [edx], 0
movzx ebx, byte [esp + 8]
test bl, bl
je 0x40989b
lea edi, [esp + 9]
nop
nop
mov byte [edx], bl
inc edx
movzx ebx, byte [edi]
inc edi
test bl, bl
jne 0x409890
mov byte [edx], 0
movzx ebx, byte [esi]
test bl, bl
je 0x4098bb
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 0x4098b0
mov byte [edx], 0
movzx ebx, byte [esp + 0x18]
test bl, bl
je 0x4098db
lea esi, [esp + 0x19]
nop
nop
nop
nop
nop
mov byte [edx], bl
inc edx
movzx ebx, byte [esi]
inc esi
test bl, bl
jne 0x4098d0
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