Function at 0x1000511b
Capabilities:
Encode data using xor
Encrypt data using rc4 ksa

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x350
push 0xf
xor eax, eax
mov dword [ebp - 0x50], 0x4a
pop edx
mov dword [ebp - 0x4c], 0x51
mov ecx, eax
mov dword [ebp - 0x48], 0x32
mov dword [ebp - 0x44], 0x45
mov dword [ebp - 0x40], 0xfffffefc
sub edx, dword [ebp + ecx*4 - 0x50]
inc ecx
cmp ecx, 5
jl 0x1000514e
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x10], 0xfd343424
mov dword [ebp - 0xc], 0xf952b022
mov dword [ebp - 8], 0xe9d2e7d1
mov dword [ebp - 4], 0xae281b8d
inc eax
cmp eax, 0xfa9
je 0x1000518f
cmp byte [eax + str.Advanced], 0
jne 0x10005177
mov eax, dword [0x1002a458]
jmp 0x1000519e
call fcn.100015c4
mov eax, dword [0x1002a458]
xor eax, 0xd914c4d2
push esi
push edi
add eax, 0x6aaa53f4
or eax, 0x2b29438a
push str._tconst_CleaningResultsHeading_t_t_8130_
mov dword [ebp - 0x14], eax
call fcn.10001941
movzx eax, byte [str.SSL___An_unexpected_message_was_received_from_our_peer]
lea edi, [ebp - 0x34]
mov esi, str.TAG_ATTR
mov edx, 0x1fec
pop ecx
mov ecx, str.SSL___An_unexpected_message_was_received_from_our_peer
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
jmp 0x100051e4
add edx, eax
inc ecx
cmp edx, 0xb6e
ja 0x10005218
movzx eax, byte [ecx]
test eax, eax
jne 0x100051d6
mov eax, dword [ebp - 0x14]
imul esi, eax, 0x394018be
xor eax, eax
mov ecx, eax
cmp byte [str.SSL___An_unexpected_message_was_received_from_our_peer], al
je 0x1000522f
inc ecx
cmp ecx, 0xe3a
jg 0x10005222
cmp byte [ecx + str.SSL___An_unexpected_message_was_received_from_our_peer], al
jne 0x100051fd
cmp ecx, 0x818
jle 0x1000522f
jmp 0x10005228
mov eax, dword [ebp - 0x14]
xor eax, 0x599bb0c
jmp 0x100051eb
imul esi, esi, 0xf4225fb
call fcn.100015c4
xor eax, eax
imul esi, esi, 0x36a76a91
mov ecx, eax
mov dword [ebp - 0x1c], eax
or esi, 0x234a008c
mov dword [ebp - 0x14], esi
mov byte [ebp + ecx - 0x184], cl
inc ecx
cmp ecx, 0x100
jb 0x10005243
mov esi, dword [ebp - 0x1c]
mov edi, eax
mov dl, byte [ebp + edi - 0x184]
mov eax, edi
and eax, 7
movzx ecx, dl
movzx eax, byte [ebp + eax - 0x34]
add eax, esi
add ecx, eax
movzx esi, cl
mov al, byte [ebp + esi - 0x184]
mov byte [ebp + edi - 0x184], al
inc edi
mov byte [ebp + esi - 0x184], dl
cmp edi, 0x100
jb 0x10005258
xor eax, eax
mov dword [ebp - 0x18], eax
mov ecx, eax
mov edi, eax
lea eax, [ecx + 1]
movzx eax, al
mov dword [ebp - 0x1c], eax
mov esi, dword [ebp - 0x1c]
mov cl, byte [ebp + eax - 0x184]
mov eax, dword [ebp - 0x18]
movzx edx, cl
add eax, edx
movzx eax, al
mov dword [ebp - 0x18], eax
mov al, byte [ebp + eax - 0x184]
mov byte [ebp + esi - 0x184], al
mov eax, dword [ebp - 0x18]
mov byte [ebp + eax - 0x184], cl
mov ecx, esi
mov esi, dword [ebp - 0x14]
movzx eax, byte [ebp + ecx - 0x184]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x184]
xor al, byte [ebp + edi - 0x10]
mov byte [ebp + edi - 0x84], al
inc edi
cmp edi, 0x10
jb 0x1000529a
push 0x49
pop eax
mov dword [ebp - 0x10], eax
xorps xmm1, xmm1
mov dword [ebp - 8], eax
xorps xmm2, xmm2
mov dword [ebp - 0xc], 4
mov edx, 0x15d5
mov dword [ebp - 4], 0xffffff75
movups xmm0, xmmword [ebp - 0x10]
push 0x53
mov byte [ebp - 0x74], 0
psubd xmm1, xmm0
movaps xmm0, xmm1
psrldq xmm0, 8
paddd xmm1, xmm0
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd eax, xmm1
pop ecx
add eax, 0xc
xor esi, 0x2a9641d
mov dword [ebp - 0x28], eax
mov eax, str.STATE_MOVING
add edx, ecx
inc eax
cmp edx, 0x26e1
ja 0x1000536f
movsx ecx, byte [eax]
test ecx, ecx
jne 0x1000535b
jmp 0x1000537f
mov ecx, str._tconst_CleaningResultsHeading_t_t_8130_
call fcn.10002669
xor esi, 0x1d7e5b04
sub esi, 0x24b59e49
mov dword [ebp - 0x14], esi
call fcn.10002396
push 7
pop ecx
mov esi, str.disabled_by_default_gpu.debug
mov dword [ebp - 0x10], 0x57309ed1
lea edi, [ebp - 0x70]
mov dword [ebp - 0xc], 0x3486af91
rep movsd dword es:[edi], dword [esi]
xor eax, eax
mov dword [ebp - 8], 0xc16211e6
mov dword [ebp - 4], 0xf137ea93
mov ecx, eax
movsw word es:[edi], word [esi]
mov edi, eax
mov byte [ebp + ecx - 0x184], cl
inc ecx
cmp ecx, 0x100
jb 0x100053be
mov esi, eax
mov dword [ebp - 0x1c], 0x1d
xor edx, edx
mov cl, byte [ebp + esi - 0x184]
mov eax, esi
mov byte [ebp - 0x1d], cl
div dword [ebp - 0x1c]
movzx ecx, cl
movzx eax, byte [ebp + edx - 0x70]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x184]
mov byte [ebp + esi - 0x184], al
inc esi
mov al, byte [ebp - 0x1d]
mov byte [ebp + edi - 0x184], al
cmp esi, 0x100
jb 0x100053d7
xor eax, eax
mov dword [ebp - 0x18], eax
mov edi, eax
mov esi, eax
lea eax, [edi + 1]
movzx edi, al
mov eax, dword [ebp - 0x18]
mov cl, byte [ebp + edi - 0x184]
movzx edx, cl
add eax, edx
movzx eax, al
mov dword [ebp - 0x18], eax
mov al, byte [ebp + eax - 0x184]
mov byte [ebp + edi - 0x184], al
mov eax, dword [ebp - 0x18]
mov byte [ebp + eax - 0x184], cl
movzx eax, byte [ebp + edi - 0x184]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x184]
xor al, byte [ebp + esi - 0x10]
mov byte [ebp + esi - 0x50], al
inc esi
cmp esi, 0x10
jb 0x10005421
push 0x1f
pop edi
mov dword [ebp - 0x10], edi
movaps xmm1, xmm2
mov dword [ebp - 0xc], 0x3d
mov ecx, str.Advanced
mov dword [ebp - 8], 0x13
mov al, 0x41
mov dword [ebp - 4], 0xffffff45
movups xmm0, xmmword [ebp - 0x10]
mov byte [ebp - 0x40], 0
paddd xmm1, xmm0
movaps xmm0, xmm1
psrldq xmm0, 8
paddd xmm1, xmm0
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd esi, xmm1
sub al, 0x30
cmp al, 9
ja 0x100054d5
inc ecx
mov al, byte [ecx]
test al, al
jne 0x100054c3
mov eax, dword [ebp - 0x14]
jmp 0x100054dd
mov eax, dword [ebp - 0x14]
add eax, 0x62614277
and eax, 0xa7afe23d
mov dword [0x1002a458], eax
call fcn.10001ee4
mov ecx, dword [ebp - 0x24]
lea edx, [ebp - 0x84]
call fcn.1001d36b
call eax
mov ecx, dword [ebp - 0x28]
lea edx, [ebp - 0x350]
push edx
push eax
lea edx, [ebp - 0x50]
mov dword [ebp - 0x350], 0x10010
call fcn.1001d36b
call eax
test eax, eax
je 0x10005877
mov esi, dword [0x1002a458]
xorps xmm2, xmm2
mov dword [ebp - 0x10], 0x53
xor esi, 0x85d14a60
mov dword [ebp - 0xc], 0xa
mov dword [ebp - 8], 4
mov dword [ebp - 4], 0xffffff80
movups xmm1, xmmword [ebp - 0x10]
push 0x61
pop ecx
movaps xmm0, xmm1
mov dword [ebp - 0x38], ecx
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [ebp - 0x34], ecx
movups xmm0, xmm1
mov dword [ebp - 0x3c], 0x4d
psrldq xmm0, 4
paddd xmm1, xmm0
mov dword [ebp - 0x30], 0x10
movd eax, xmm1
mov dword [ebp - 0x2c], 0xfffffee1
add eax, edi
mov dword [ebp - 0x28], eax
xor eax, eax
mov edx, eax
mov ecx, eax
sub edx, dword [ebp + ecx*4 - 0x3c]
inc ecx
cmp ecx, 5
jl 0x10005597
push 0x41
mov dword [ebp - 0x24], edx
mov edi, 0x1874
mov ecx, str.Advanced
pop edx
add edi, edx
inc ecx
cmp edi, 0x157b
ja 0x100055c5
movsx edx, byte [ecx]
test edx, edx
jne 0x100055b1
jmp 0x100055d2
call fcn.10002019
and esi, 0x9064ae2
xor eax, eax
or esi, 0xfaf5a
mov ecx, 0x914
add esi, 0x6e08a0a
mov edx, str.Advanced
push 0x41
or esi, 0xa62ec361
pop edi
add ecx, edi
inc edx
cmp ecx, 0x232b
ja 0x10005605
movsx edi, byte [edx]
test edi, edi
jne 0x100055f1
jmp 0x1000560b
and esi, 0x6d73c5e9
xor esi, 0xfe6f533
mov dword [ebp - 0x30], 0x29
push 0x4b
add esi, 0x4561cada
mov dword [ebp - 0x2c], 0xffffff8c
pop edx
mov ecx, eax
add edx, dword [ebp + ecx*4 - 0x30]
inc ecx
cmp ecx, 2
jl 0x1000562a
mov dword [ebp - 0x10], 0x2d
movaps xmm1, xmm2
mov dword [ebp - 0xc], 0x3b
mov dword [ebp - 8], 0x61
mov dword [ebp - 4], 0xfffffee9
movups xmm0, xmmword [ebp - 0x10]
mov dword [ebp - 0x10], 0x19
mov dword [ebp - 0xc], 0x56
paddd xmm1, xmm0
mov dword [ebp - 8], 0x32
movaps xmm0, xmm1
mov dword [ebp - 4], 0xffffff25
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [ebp - 0x1c], edx
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movups xmm0, xmmword [ebp - 0x10]
movd ecx, xmm1
movaps xmm1, xmm2
paddd xmm1, xmm0
movaps xmm0, xmm1
psrldq xmm0, 8
add ecx, 0x4e
paddd xmm1, xmm0
mov dword [ebp - 0x18], ecx
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd ecx, xmm1
add ecx, 0x3a
cmp byte [str.SSL___An_unexpected_message_was_received_from_our_peer], 0
mov dword [ebp - 0x14], ecx
mov ecx, eax
je 0x10005703
inc ecx
cmp ecx, 0x13ba
je 0x100056fd
cmp byte [ecx + str.SSL___An_unexpected_message_was_received_from_our_peer], 0
jne 0x100056d4
cmp ecx, 0x17e6
jle 0x10005703
call fcn.10002440
add esi, 0xfa26ef5b
xor eax, eax
jmp 0x10005709
or esi, 0x78600cb7
add esi, 0x503c1756
and esi, 0xdc96c16d
inc eax
cmp eax, 0x21db
je 0x10005722
cmp byte [eax + str.Advanced], 0
jne 0x1000570f
jmp 0x1000572d
call fcn.10001c01
xor esi, 0xe00af0c3
imul eax, esi, 0x630a9911
mov esi, 0xc2d18ff6
push 0x40
pop edi
mov dword [ebp - 0x34], 0x54
mov dword [ebp - 0x30], edi
sub esi, eax
mov dword [ebp - 0x2c], 0xffffff22
xor eax, eax
inc eax
cmp eax, 0x779
je 0x10005763
cmp byte [eax + str.Advanced], 0
jne 0x10005750
jmp 0x1000576e
call fcn.10001df3
sub esi, 0x6edbf400
add esi, 0x2967f056
push 0x4a
or esi, 0xae875d62
xor eax, eax
pop ecx
add ecx, dword [ebp + eax*4 - 0x34]
inc eax
cmp eax, 3
jl 0x1000577f
push 0x1d
pop eax
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp - 8], edi
inc eax
mov dword [ebp - 0xc], 0x37
mov dword [ebp - 4], 0xffffff0d
movups xmm0, xmmword [ebp - 0x10]
mov dword [ebp - 0x2c], ecx
mov ecx, str.RegKey1HKCUSoftwareAudacityAudacityRecentFiles
mov dword [ebp - 0x68], eax
paddd xmm2, xmm0
mov dword [ebp - 0x5c], eax
mov al, byte [str.RegKey1HKCUSoftwareAudacityAudacityRecentFiles]
movaps xmm0, xmm2
psrldq xmm0, 8
paddd xmm2, xmm0
mov dword [ebp - 0x64], 0xd
movups xmm0, xmm2
mov dword [ebp - 0x60], 2
psrldq xmm0, 4
paddd xmm2, xmm0
mov dword [ebp - 0x58], 0xffffffef
movd edi, xmm2
imul edx, esi, 0xa82711de
jmp 0x10005800
sub al, 0x30
cmp al, 9
ja 0x10005806
inc ecx
mov al, byte [ecx]
test al, al
jne 0x100057f7
jmp 0x1000580c
and edx, 0xe1b5961e
xor edx, 0xb418c9c2
mov ecx, str._tconst_CleaningResultsHeading_t_t_8130_
mov dword [0x1002a458], edx
call fcn.10001569
xor eax, eax
mov ecx, eax
sub eax, dword [ebp + ecx*4 - 0x68]
inc ecx
cmp ecx, 5
jl 0x10005826
mov ecx, dword [ebp - 0x28]
cmp dword [ebp - 0x34c], ecx
jne 0x10005872
mov ecx, dword [ebp - 0x24]
cmp dword [ebp - 0x348], ecx
jne 0x10005872
mov ecx, dword [ebp - 0x1c]
cmp dword [ebp - 0x344], ecx
jne 0x10005872
mov ecx, dword [ebp - 0x18]
cmp dword [ebp - 0x340], ecx
jne 0x10005872
mov ecx, dword [ebp - 0x14]
cmp dword [ebp - 0x33c], ecx
jne 0x10005872
mov ecx, dword [ebp - 0x2c]
cmp dword [ebp - 0x338], ecx
je 0x1000587a
lea eax, [edi + 0x60]
jmp 0x1000587a
lea eax, [esi + 0x4c]
pop edi
pop esi
leave
ret