Function at 0x40efd0
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.0041a140
push 0x7f
lea ecx, [ebp - 0x127]
push edi
push ecx
mov byte [ebp - 0x128], 0
call fcn.0041a140
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 0x40f06a
lea eax, [ebp - 0x24]
mov dword [ebp + 0x10], eax
jmp 0x40f070
lea ecx, [ebp - 0x14]
mov dword [ebp + 0x10], ecx
mov edx, dword [ebp + 0xc]
push edx
xor esi, esi
call fcn.0041a390
add esp, 4
test eax, eax
je 0x40f2a8
test edi, edi
jne 0x40f0b2
mov eax, dword [ebp + 0xc]
cmp byte [esi + eax], 0x20
jne 0x40f09c
lea ecx, [esi + eax + 1]
mov dword [ebp - 4], ecx
mov edi, ecx
push eax
inc esi
call fcn.0041a390
add esp, 4
cmp esi, eax
jb 0x40f086
test edi, edi
je 0x40f2a8
cmp byte [edi], 0
je 0x40f2a8
push edi
xor esi, esi
call fcn.0041a390
add esp, 4
test eax, eax
je 0x40f11b
lea edx, [ebp - 0xa8]
jmp 0x40f0d5
mov edx, dword [ebp - 0x28]
mov al, byte [esi + edi]
cmp al, 0x30
jb 0x40f11b
cmp al, 0x46
ja 0x40f11b
cmp al, 0x40
movzx eax, al
jae 0x40f0ec
sub eax, 0x30
jmp 0x40f0ef
sub eax, 0x37
mov cl, byte [esi + edi + 1]
shl al, 4
cmp cl, 0x40
jae 0x40f100
sub cl, 0x30
jmp 0x40f103
sub cl, 0x37
add cl, al
mov byte [edx], cl
inc edx
push edi
add esi, 2
mov dword [ebp - 0x28], edx
call fcn.0041a390
add esp, 4
cmp esi, eax
jb 0x40f0d2
lea edx, [ebp - 0xa8]
push edx
call fcn.0041a390
mov edi, eax
add esp, 4
test edi, edi
jne 0x40f14b
mov esi, dword [ebp - 4]
push esi
call fcn.0041a390
push eax
push edi
push esi
call fcn.0041a140
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.0041a140
xor bl, byte [ebp - 0xa8]
lea ecx, [ebp - 0xa8]
push ecx
mov byte [ebp - 0x328], bl
call fcn.0041a390
push eax
lea edx, [ebp - 0xa7]
push edx
lea eax, [ebp - 0x327]
push eax
call fcn.0041a0c0
lea ecx, [ebp - 0x128]
push ecx
call fcn.0041a390
add esp, 0x20
cmp edi, eax
jbe 0x40f1c5
lea ebx, [ebx]
mov edx, dword [ebp + 0x10]
push 0
push edx
lea eax, [ebp - 0x128]
push eax
call fcn.0041a4c0
lea ecx, [ebp - 0x128]
push ecx
call fcn.0041a390
add esp, 0x10
cmp edi, eax
ja 0x40f1a0
push 0x7f
lea edx, [ebp - 0x2a7]
push 0
push edx
mov byte [ebp - 0x2a8], 0
call fcn.0041a140
push 0x7f
lea eax, [ebp - 0x227]
push 0
push eax
mov byte [ebp - 0x228], 0
call fcn.0041a140
push 0x7f
lea ecx, [ebp - 0x1a7]
push 0
push ecx
mov byte [ebp - 0x1a8], 0
call fcn.0041a140
add esp, 0x24
cmp edi, 1
jbe 0x40f239
xor eax, eax
lea ecx, [edi - 1]
jmp 0x40f220
mov dl, byte [ebp + eax - 0x128]
xor dl, byte [ebp + eax - 0xa7]
inc eax
dec ecx
mov byte [ebp + eax - 0x2a9], dl
jne 0x40f220
xor esi, esi
dec edi
je 0x40f285
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 0x40f25c
dec al
mov byte [ebp + esi - 0x228], al
lea eax, [ebp - 0x1a8]
push eax
call fcn.0041a390
mov cl, byte [ebp + esi - 0x228]
inc esi
add esp, 4
mov byte [ebp + eax - 0x1a8], cl
cmp esi, edi
jb 0x40f240
lea edx, [ebp - 0x1a8]
push edx
call fcn.0041a390
mov ecx, dword [ebp - 4]
add eax, 2
push eax
lea eax, [ebp - 0x1a8]
push eax
push ecx
call fcn.0041a0c0
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret