Function at 0x41557d
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.004206cd
push 0x7f
lea ecx, [ebp - 0x127]
push edi
push ecx
mov byte [ebp - 0x128], 0
call fcn.004206cd
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 0x415617
lea eax, [ebp - 0x24]
mov dword [ebp + 0x10], eax
jmp 0x41561d
lea ecx, [ebp - 0x14]
mov dword [ebp + 0x10], ecx
mov edx, dword [ebp + 0xc]
push edx
xor esi, esi
call fcn.0042091d
add esp, 4
test eax, eax
je 0x415855
test edi, edi
jne 0x41565f
mov eax, dword [ebp + 0xc]
cmp byte [esi + eax], 0x20
jne 0x415649
lea ecx, [esi + eax + 1]
mov dword [ebp - 4], ecx
mov edi, ecx
push eax
inc esi
call fcn.0042091d
add esp, 4
cmp esi, eax
jb 0x415633
test edi, edi
je 0x415855
cmp byte [edi], 0
je 0x415855
push edi
xor esi, esi
call fcn.0042091d
add esp, 4
test eax, eax
je 0x4156c8
lea edx, [ebp - 0xa8]
jmp 0x415682
mov edx, dword [ebp - 0x28]
mov al, byte [esi + edi]
cmp al, 0x30
jb 0x4156c8
cmp al, 0x46
ja 0x4156c8
cmp al, 0x40
movzx eax, al
jae 0x415699
sub eax, 0x30
jmp 0x41569c
sub eax, 0x37
mov cl, byte [esi + edi + 1]
shl al, 4
cmp cl, 0x40
jae 0x4156ad
sub cl, 0x30
jmp 0x4156b0
sub cl, 0x37
add cl, al
mov byte [edx], cl
inc edx
push edi
add esi, 2
mov dword [ebp - 0x28], edx
call fcn.0042091d
add esp, 4
cmp esi, eax
jb 0x41567f
lea edx, [ebp - 0xa8]
push edx
call fcn.0042091d
mov edi, eax
add esp, 4
test edi, edi
jne 0x4156f8
mov esi, dword [ebp - 4]
push esi
call fcn.0042091d
push eax
push edi
push esi
call fcn.004206cd
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.004206cd
xor bl, byte [ebp - 0xa8]
lea ecx, [ebp - 0xa8]
push ecx
mov byte [ebp - 0x328], bl
call fcn.0042091d
push eax
lea edx, [ebp - 0xa7]
push edx
lea eax, [ebp - 0x327]
push eax
call fcn.0042064d
lea ecx, [ebp - 0x128]
push ecx
call fcn.0042091d
add esp, 0x20
cmp edi, eax
jbe 0x415772
lea ebx, [ebx]
mov edx, dword [ebp + 0x10]
push 0
push edx
lea eax, [ebp - 0x128]
push eax
call fcn.00420a4d
lea ecx, [ebp - 0x128]
push ecx
call fcn.0042091d
add esp, 0x10
cmp edi, eax
ja 0x41574d
push 0x7f
lea edx, [ebp - 0x2a7]
push 0
push edx
mov byte [ebp - 0x2a8], 0
call fcn.004206cd
push 0x7f
lea eax, [ebp - 0x227]
push 0
push eax
mov byte [ebp - 0x228], 0
call fcn.004206cd
push 0x7f
lea ecx, [ebp - 0x1a7]
push 0
push ecx
mov byte [ebp - 0x1a8], 0
call fcn.004206cd
add esp, 0x24
cmp edi, 1
jbe 0x4157e6
xor eax, eax
lea ecx, [edi - 1]
jmp 0x4157cd
mov dl, byte [ebp + eax - 0x128]
xor dl, byte [ebp + eax - 0xa7]
inc eax
dec ecx
mov byte [ebp + eax - 0x2a9], dl
jne 0x4157cd
xor esi, esi
dec edi
je 0x415832
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 0x415809
dec al
mov byte [ebp + esi - 0x228], al
lea eax, [ebp - 0x1a8]
push eax
call fcn.0042091d
mov cl, byte [ebp + esi - 0x228]
inc esi
add esp, 4
mov byte [ebp + eax - 0x1a8], cl
cmp esi, edi
jb 0x4157ed
lea edx, [ebp - 0x1a8]
push edx
call fcn.0042091d
mov ecx, dword [ebp - 4]
add eax, 2
push eax
lea eax, [ebp - 0x1a8]
push eax
push ecx
call fcn.0042064d
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret