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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x328
push ebx
push esi
push edi
xor edi, edi
push 0x7f
lea eax, [ebp - 0xa7]
push edi
push eax
mov dword [ebp - 4], edi
mov byte [ebp - 0xa8], 0
call fcn.0041a150
push 0x7f
lea ecx, [ebp - 0x127]
push edi
push ecx
mov byte [ebp - 0x128], 0
call fcn.0041a150
xor eax, eax
mov dword [ebp - 0x1b], eax
mov word [ebp - 0x17], ax
mov byte [ebp - 0x15], al
mov byte [ebp - 0xc], al
mov dword [ebp - 0xb], eax
mov word [ebp - 7], ax
mov byte [ebp - 5], al
mov al, byte [ebp + 0x10]
add esp, 0x18
mov cl, 0x7e
mov dword [ebp - 0x24], 0x6172647e
mov dword [ebp - 0x20], 0x7e6e6f47
mov byte [ebp - 0x1c], 0
mov dword [ebp - 0x14], 0x3740467e
lea edx, [eax - 1]
movzx ebx, dl
neg ebx
sbb ebx, ebx
and ebx, 0x17
add ebx, 0x5a
mov dword [ebp - 0x10], 0x7e246d25
cmp al, 1
jne 0x40f07a
lea eax, [ebp - 0x24]
mov dword [ebp + 0x10], eax
jmp 0x40f080
lea ecx, [ebp - 0x14]
mov dword [ebp + 0x10], ecx
mov edx, dword [ebp + 0xc]
push edx
xor esi, esi
call fcn.0041a3a0
add esp, 4
test eax, eax
je 0x40f2b8
test edi, edi
jne 0x40f0c2
mov eax, dword [ebp + 0xc]
cmp byte [esi + eax], 0x20
jne 0x40f0ac
lea ecx, [esi + eax + 1]
mov dword [ebp - 4], ecx
mov edi, ecx
push eax
inc esi
call fcn.0041a3a0
add esp, 4
cmp esi, eax
jb 0x40f096
test edi, edi
je 0x40f2b8
cmp byte [edi], 0
je 0x40f2b8
push edi
xor esi, esi
call fcn.0041a3a0
add esp, 4
test eax, eax
je 0x40f12b
lea edx, [ebp - 0xa8]
jmp 0x40f0e5
mov edx, dword [ebp - 0x28]
mov al, byte [esi + edi]
cmp al, 0x30
jb 0x40f12b
cmp al, 0x46
ja 0x40f12b
cmp al, 0x40
movzx eax, al
jae 0x40f0fc
sub eax, 0x30
jmp 0x40f0ff
sub eax, 0x37
mov cl, byte [esi + edi + 1]
shl al, 4
cmp cl, 0x40
jae 0x40f110
sub cl, 0x30
jmp 0x40f113
sub cl, 0x37
add cl, al
mov byte [edx], cl
inc edx
push edi
add esi, 2
mov dword [ebp - 0x28], edx
call fcn.0041a3a0
add esp, 4
cmp esi, eax
jb 0x40f0e2
lea edx, [ebp - 0xa8]
push edx
call fcn.0041a3a0
mov edi, eax
add esp, 4
test edi, edi
jne 0x40f15b
mov esi, dword [ebp - 4]
push esi
call fcn.0041a3a0
push eax
push edi
push esi
call fcn.0041a150
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x7f
lea eax, [ebp - 0x327]
push 0
push eax
call fcn.0041a150
xor bl, byte [ebp - 0xa8]
lea ecx, [ebp - 0xa8]
push ecx
mov byte [ebp - 0x328], bl
call fcn.0041a3a0
push eax
lea edx, [ebp - 0xa7]
push edx
lea eax, [ebp - 0x327]
push eax
call fcn.0041a0d0
lea ecx, [ebp - 0x128]
push ecx
call fcn.0041a3a0
add esp, 0x20
cmp edi, eax
jbe 0x40f1d5
lea ebx, [ebx]
mov edx, dword [ebp + 0x10]
push 0
push edx
lea eax, [ebp - 0x128]
push eax
call fcn.0041a4d0
lea ecx, [ebp - 0x128]
push ecx
call fcn.0041a3a0
add esp, 0x10
cmp edi, eax
ja 0x40f1b0
push 0x7f
lea edx, [ebp - 0x2a7]
push 0
push edx
mov byte [ebp - 0x2a8], 0
call fcn.0041a150
push 0x7f
lea eax, [ebp - 0x227]
push 0
push eax
mov byte [ebp - 0x228], 0
call fcn.0041a150
push 0x7f
lea ecx, [ebp - 0x1a7]
push 0
push ecx
mov byte [ebp - 0x1a8], 0
call fcn.0041a150
add esp, 0x24
cmp edi, 1
jbe 0x40f249
xor eax, eax
lea ecx, [edi - 1]
jmp 0x40f230
mov dl, byte [ebp + eax - 0x128]
xor dl, byte [ebp + eax - 0xa7]
inc eax
dec ecx
mov byte [ebp + eax - 0x2a9], dl
jne 0x40f230
xor esi, esi
dec edi
je 0x40f295
mov edi, edi
mov al, byte [ebp + esi - 0x2a8]
mov cl, byte [ebp + esi - 0x328]
movzx ebx, al
movzx edx, cl
sub al, cl
sub ebx, edx
jns 0x40f26c
dec al
mov byte [ebp + esi - 0x228], al
lea eax, [ebp - 0x1a8]
push eax
call fcn.0041a3a0
mov cl, byte [ebp + esi - 0x228]
inc esi
add esp, 4
mov byte [ebp + eax - 0x1a8], cl
cmp esi, edi
jb 0x40f250
lea edx, [ebp - 0x1a8]
push edx
call fcn.0041a3a0
mov ecx, dword [ebp - 4]
add eax, 2
push eax
lea eax, [ebp - 0x1a8]
push eax
push ecx
call fcn.0041a0d0
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret