Function at 0x100079e2
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1b4
mov edx, dword [0x1002a708]
push esi
mov esi, dword [0x1002a7a4]
sub edx, 0x481698a8
push edi
add esi, 0x4d9737fa
mov dword [ebp - 0x7c], ecx
push 0x4a
xor eax, eax
mov dword [ebp - 0x1c], 0x55
pop edi
mov dword [ebp - 0x18], 0x361
mov ecx, eax
add edi, dword [ebp + ecx*4 - 0x1c]
inc ecx
cmp ecx, 2
jl 0x10007a1d
push 0x5b
mov dword [ebp - 0x74], edi
mov ecx, eax
pop edi
mov dword [ebp - 0x1c], 0x23
mov dword [ebp - 0x18], 0x182
add edi, dword [ebp + ecx*4 - 0x1c]
inc ecx
cmp ecx, 2
jl 0x10007a3d
push 0x45
mov dword [ebp - 0x70], edi
pop ecx
mov dword [ebp - 0x20], 0x4d
mov dword [ebp - 0x1c], 0x44
mov dword [ebp - 0x18], 0xffffff2a
add ecx, dword [ebp + eax*4 - 0x20]
inc eax
cmp eax, 3
jl 0x10007a62
push 0x63
mov dword [ebp - 0x78], ecx
mov eax, str.c:_tempUninstalItems.log
pop ecx
mov edi, 0x20b3
mov dword [ebp - 8], eax
mov dword [ebp - 0x6c], ecx
add edi, ecx
inc eax
cmp edi, 0x6d8
ja 0x10007a96
movsx ecx, byte [eax]
test ecx, ecx
jne 0x10007a82
jmp 0x10007aa1
call fcn.100075af
lea edx, [esi + 0x5200fe06]
lea eax, [edx - 0x7327c0ba]
or eax, 0x2bd0519f
add eax, 0x8d14d17b
push ecx
mov dword [ebp - 0x10], eax
mov dword [0x1002a708], eax
call fcn.1000763a
pop ecx
mov dword [ebp - 0x3c], 0x2e
lea edi, [ebp - 0x48]
mov dword [ebp - 0x38], 0x4f
mov esi, str.ShowSkypeCleanSuspendedWarning
mov dword [ebp - 0x34], 0x61
xorps xmm1, xmm1
mov dword [ebp - 0x30], 0xffffff22
movups xmm0, xmmword [ebp - 0x3c]
push 7
pop ecx
rep movsd dword es:[edi], dword [esi]
psubd xmm1, xmm0
mov dword [ebp - 0x68], 0x98807a42
movaps xmm0, xmm1
mov dword [ebp - 0x64], 0x372e3db4
psrldq xmm0, 8
paddd xmm1, xmm0
movsw word es:[edi], word [esi]
movups xmm0, xmm1
mov dword [ebp - 0x60], 0x86d7fcee
psrldq xmm0, 4
paddd xmm1, xmm0
mov dword [ebp - 0x5c], 0x68758269
movd dword [ebp - 0x80], xmm1
mov dword [ebp - 0x58], 0xd537b88f
mov dword [ebp - 0x54], 0xf4956f88
mov dword [ebp - 0x50], 0x5993831c
mov dword [ebp - 0x4c], 0x150e9022
movsb byte es:[edi], byte [esi]
call fcn.10006f51
xor eax, eax
mov edi, eax
mov ecx, eax
mov byte [ebp + ecx - 0x1b4], cl
inc ecx
cmp ecx, 0x100
jb 0x10007b57
mov esi, eax
xor edx, edx
mov dword [ebp - 0x14], 0x1e
mov eax, esi
mov cl, byte [ebp + esi - 0x1b4]
div dword [ebp - 0x14]
mov byte [ebp - 1], cl
movzx ecx, cl
movzx eax, byte [ebp + edx - 0x48]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x1b4]
mov byte [ebp + esi - 0x1b4], al
inc esi
mov al, byte [ebp - 1]
mov byte [ebp + edi - 0x1b4], al
cmp esi, 0x100
jb 0x10007b69
mov esi, dword [ebp - 0x10]
xor ecx, ecx
mov dword [ebp - 0xc], ecx
mov edx, ecx
mov edi, ecx
lea eax, [edx + 1]
movzx eax, al
mov dword [ebp - 0x14], eax
mov al, byte [ebp + eax - 0x1b4]
movzx edx, al
mov byte [ebp - 1], al
mov eax, dword [ebp - 0xc]
add eax, edx
mov dword [ebp - 0x10], edx
movzx eax, al
mov dword [ebp - 0xc], eax
inc ecx
cmp ecx, 0x22a
je 0x10007bf5
cmp byte [ecx + str.c:_tempUninstalItems.log], 0
jne 0x10007be1
jmp 0x10007c00
call fcn.10007737
add esi, 0x6cfdddc8
add esi, 0x1574f67
push ecx
lea eax, [esi + 0x969e2dd]
mov edx, str.ossl_rand_drbg_new
push ecx
mov dword [0x1002a7a4], eax
call fcn.1000754c
pop ecx
pop ecx
xor ecx, ecx
mov eax, ecx
cmp byte [str.end_of_file_in_stringizer_expression], al
je 0x10007c47
inc eax
cmp eax, 0x732
je 0x10007c3d
cmp byte [eax + str.end_of_file_in_stringizer_expression], cl
jne 0x10007c2b
jmp 0x10007c47
imul esi, dword [0x1002a7a4], 0x829d1ee6
mov eax, dword [ebp - 0xc]
and esi, 0x23626dc1
mov edx, dword [ebp - 0x14]
mov al, byte [ebp + eax - 0x1b4]
mov byte [ebp + edx - 0x1b4], al
mov eax, dword [ebp - 0xc]
mov dl, byte [ebp - 1]
mov byte [ebp + eax - 0x1b4], dl
mov edx, dword [ebp - 0x14]
movzx eax, byte [ebp + edx - 0x1b4]
add eax, dword [ebp - 0x10]
movzx eax, al
mov al, byte [ebp + eax - 0x1b4]
xor al, byte [ebp + edi - 0x68]
mov byte [ebp + edi - 0xb4], al
inc edi
cmp edi, 0x20
jb 0x10007bbd
push 0x63
mov byte [ebp - 0x94], cl
pop eax
sub al, 0x30
cmp al, 9
ja 0x10007cb9
mov eax, dword [ebp - 8]
inc eax
mov dword [ebp - 8], eax
mov al, byte [eax]
test al, al
jne 0x10007ca4
jmp 0x10007cbf
and esi, 0x9dc090ee
add esi, 0x50022a4e
mov eax, ecx
or esi, 0x5ce8ec
inc eax
cmp eax, 0x20
jb 0x10007cc7
push 0x3b
pop edx
mov dword [ebp - 0x1c], 0x30
mov eax, ecx
mov dword [ebp - 0x18], 0xffffff95
add edx, dword [ebp + eax*4 - 0x1c]
inc eax
cmp eax, 2
jl 0x10007ce6
push 0x53
mov dword [ebp - 0x88], edx
mov edi, ecx
pop edx
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x3c], 0x1a
mov dword [ebp - 0x38], 0x24
mov dword [ebp - 0x34], 0x62
mov dword [ebp - 0x30], 0x30d
inc ecx
cmp ecx, 0x1715
jg 0x10007d2e
cmp byte [ecx + str.c:_tempUninstalItems.log], 0
jne 0x10007d1a
jmp 0x10007d33
call fcn.100076a0
or esi, 0xb9765d51
mov dword [ebp - 0x10], esi
and esi, 0xb3ac4343
call fcn.10007737
mov eax, dword [ebp - 0x14]
add eax, dword [ebp + edi*4 - 0x3c]
inc edi
mov dword [ebp - 0x14], eax
push 0
pop ecx
cmp edi, 4
jl 0x10007d1a
push 0x35
mov dword [ebp - 0x3c], 0x23
pop esi
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x34], 0x38
mov dword [ebp - 0x30], 0x118
movups xmm1, xmmword [ebp - 0x3c]
mov dword [ebp - 0x3c], 0x62
mov dword [ebp - 0x38], 0x22
movaps xmm0, xmm1
mov dword [ebp - 0x34], 0x4a
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [ebp - 0x30], 0xffffff32
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movups xmm0, xmmword [ebp - 0x3c]
mov dword [ebp - 0x3c], 0x10
movd eax, xmm1
xorps xmm1, xmm1
psubd xmm1, xmm0
mov dword [ebp - 0x38], 7
movaps xmm0, xmm1
mov dword [ebp - 0x34], 0x64
psrldq xmm0, 8
add eax, 0x58
paddd xmm1, xmm0
mov dword [ebp - 0x84], eax
movups xmm0, xmm1
mov dword [ebp - 0x30], 0xffffff51
psrldq xmm0, 4
xor eax, eax
paddd xmm1, xmm0
movd dword [ebp - 0x8c], xmm1
inc eax
cmp eax, 0x2561
jg 0x10007e16
cmp byte [eax + str.c:_tempUninstalItems.log], 0
jne 0x10007e03
jmp 0x10007e1b
call fcn.100070c3
movups xmm1, xmmword [ebp - 0x3c]
mov edx, dword [ebp - 0x10]
lea edi, [ebp - 0x38]
sub edx, 0x79a9f308
mov dword [ebp - 0x28], 0x6b227aef
movaps xmm0, xmm1
mov dword [0x1002a708], edx
psrldq xmm0, 8
mov ecx, str._tvar_selectedCategories__view.getSelectedCategories___
paddd xmm1, xmm0
mov byte [ebp - 0x24], 0xf4
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd eax, xmm1
add eax, esi
mov esi, str.JumplistTasks
mov dword [ebp - 0x90], eax
xor edx, 0x7a5956f2
mov al, 9
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
sub al, 0x30
cmp al, 9
ja 0x10007e86
inc ecx
mov al, byte [ecx]
test al, al
jne 0x10007e77
jmp 0x10007e8c
sub edx, 0x22fd73b3
push ecx
add edx, 0x4daa1622
call fcn.10007880
pop ecx
imul edi, edx, 0x8b0a1ced
xor esi, esi
mov eax, esi
mov dword [0x1002a7a4], edi
inc eax
cmp eax, 0x1b00
je 0x10007ebc
cmp byte [eax + str._tvar_selectedCategories__view.getSelectedCategories___], 0
jne 0x10007ea9
jmp 0x10007ecd
call fcn.10006f51
sub edi, 0x4f97251
mov dword [0x1002a7a4], edi
add edi, 0x4e6e6835
mov dword [0x1002a708], edi
call fcn.100071fe
mov eax, esi
inc eax
cmp eax, 0x148e
jl 0x10007ef3
cmp byte [eax + str._tvar_selectedCategories__view.getSelectedCategories___], 0
jne 0x10007ee0
jmp 0x10007efc
push ecx
push ecx
call fcn.10007184
pop ecx
pop ecx
mov eax, edi
xor eax, 0x51b67a02
mov dword [ebp - 0x10], eax
call fcn.100077e5
mov dword [ebp - 0xc], esi
mov eax, esi
mov byte [ebp + eax - 0x1b4], al
inc eax
cmp eax, 0x100
jb 0x10007f10
mov eax, esi
mov esi, dword [ebp - 0x10]
mov dword [ebp - 8], eax
mov cl, byte [ebp + eax - 0x1b4]
xor edx, edx
mov dword [ebp - 0x10], 0xd
div dword [ebp - 0x10]
mov byte [ebp - 1], cl
movzx ecx, cl
push 9
movzx eax, byte [ebp + edx - 0x38]
mov edx, 0xe13
add eax, dword [ebp - 0xc]
add ecx, eax
movzx eax, cl
mov ecx, dword [ebp - 8]
mov dword [ebp - 0xc], eax
mov al, byte [ebp + eax - 0x1b4]
mov byte [ebp + ecx - 0x1b4], al
mov eax, str._tvar_selectedCategories__view.getSelectedCategories___
pop ecx
add edx, ecx
inc eax
cmp edx, 0x7d5
ja 0x10007f82
movsx ecx, byte [eax]
test ecx, ecx
jne 0x10007f6e
jmp 0x10007f8d
call fcn.100075af
lea edi, [esi - 0x3964b54f]
add edi, 0x66008634
mov eax, dword [ebp - 0xc]
lea esi, [edi + 0x2c7fa94b]
mov cl, byte [ebp - 1]
mov byte [ebp + eax - 0x1b4], cl
mov eax, dword [ebp - 8]
inc eax
mov dword [ebp - 8], eax
cmp eax, 0x100
jb 0x10007f27
xor esi, esi
lea eax, [edi + 0x690036c1]
mov dword [ebp - 8], esi
mov dword [ebp - 0x10], eax
lea edi, [eax - 0x3221507b]
mov dword [0x1002a7a4], edi
call fcn.100075af
mov ecx, str.end_of_file_in_stringizer_expression
mov edx, esi
lea eax, [edx + 1]
mov edx, 0x169d
movzx eax, al
mov dword [ebp - 0xc], eax
mov al, byte [ebp + eax - 0x1b4]
mov byte [ebp - 1], al
movzx eax, al
add eax, dword [ebp - 8]
movzx eax, al
mov dword [ebp - 8], eax
movzx eax, byte [str.end_of_file_in_stringizer_expression]
test eax, eax
je 0x10008036
add edx, eax
inc ecx
cmp edx, 0x6ba
ja 0x1000802a
movzx eax, byte [ecx]
test eax, eax
jne 0x1000800d
mov edi, dword [ebp - 0x10]
and edi, 0x69b03ca0
jmp 0x1000804a
imul edi, edi, 0x37ed6669
mov dword [0x1002a7a4], edi
push ecx
push ecx
mov edx, str.FileKey1_appdata_Apple_ComputerSafariHistory.plist
call fcn.1000754c
pop ecx
pop ecx
imul edi, edi, 0xa3d3e4b0
push ecx
add edi, 0x8692f11a
mov ecx, str.CCLEANER_28X25.6_240
mov dword [0x1002a7a4], edi
call fcn.100072d1
mov edx, dword [ebp - 0xc]
pop ecx
mov ecx, dword [ebp - 8]
mov al, byte [ebp + ecx - 0x1b4]
mov byte [ebp + edx - 0x1b4], al
mov al, byte [ebp - 1]
mov byte [ebp + ecx - 0x1b4], al
movzx ecx, al
movzx eax, byte [ebp + edx - 0x1b4]
add ecx, eax
movzx eax, cl
mov ecx, str.end_of_file_in_stringizer_expression
mov al, byte [ebp + eax - 0x1b4]
xor al, byte [ebp + esi - 0x28]
mov byte [ebp + esi - 0x1c], al
inc esi
cmp esi, 5
jb 0x10007fde
xor eax, eax
mov dword [ebp - 0x38], 0x25
mov byte [ebp - 0x17], al
mov dword [ebp - 0x34], 0x38
mov dword [ebp - 0x30], 0x9e
mov dword [ebp - 8], eax
mov esi, eax
inc esi
cmp esi, 0x1fb0
jl 0x100080e1
cmp byte [esi + str._tvar_selectedCategories__view.getSelectedCategories___], 0
jne 0x100080cd
jmp 0x100080f4
call fcn.100078a9
add edi, 0x4eb70dee
cmp esi, 0x91b
jle 0x100080f9
call fcn.10007737
mov eax, edi
or eax, 0xca631690
push ecx
mov ecx, str.EC_key_for_ECDH
mov dword [0x1002a708], eax
call fcn.100072d1
mov eax, dword [ebp - 0x6c]
pop ecx
mov ecx, dword [ebp - 8]
push 0
add eax, dword [ebp + ecx*4 - 0x38]
inc ecx
mov dword [ebp - 0x6c], eax
mov dword [ebp - 8], ecx
pop eax
cmp ecx, 3
jl 0x100080cb
mov dword [0x1002a7a4], edi
call fcn.1001d30e
call fcn.10005909
test eax, eax
jne 0x100082b9
mov ecx, dword [ebp - 0x70]
imul ecx, dword [ebp - 0x74]
call fcn.10013f5c
mov edi, eax
call fcn.10002d30
test eax, eax
je 0x100081ae
xor eax, eax
inc eax
cmp eax, 0x14f5
je 0x10008186
cmp byte [eax + str._tvar_selectedCategories__view.getSelectedCategories___], 0
jne 0x1000815b
cmp eax, 0x40e
jg 0x1000818d
mov ecx, dword [0x1002a708]
imul eax, ecx, 0xe4103d54
mov dword [0x1002a7a4], eax
jmp 0x10008199
push ecx
call fcn.10007458
pop ecx
mov ecx, dword [0x1002a7a4]
add ecx, 0x33cc5e85
imul eax, ecx, 0x38f484f
mov dword [0x1002a708], eax
call fcn.100077e5
jmp 0x100082b9
call fcn.10004dea
test eax, eax
jne 0x100082b9
cmp edi, dword [ebp - 0x78]
je 0x100082b9
call fcn.1000511b
test eax, eax
jne 0x100082b9
movzx eax, byte [str.end_of_file_in_stringizer_expression]
mov ecx, 0x11d6
test eax, eax
je 0x100081f8
mov edx, str.end_of_file_in_stringizer_expression
add ecx, eax
inc edx
cmp ecx, 0x1728
ja 0x1000823a
movzx eax, byte [edx]
test eax, eax
jne 0x100081e6
mov ecx, dword [0x1002a708]
mov eax, ecx
and eax, 0x2fe6ad7f
mov dword [0x1002a7a4], eax
and ecx, 0x253b0118
mov edx, edi
mov dword [0x1002a708], ecx
mov ecx, dword [ebp - 0x7c]
call fcn.1000c427
mov esi, eax
mov dword [ebp - 8], esi
call fcn.100027e6
test eax, eax
je 0x10008246
add dword [0x1002a708], 0xfbfef9c
jmp 0x100082b9
imul ecx, dword [0x1002a7a4], 0x639b13b3
jmp 0x100081fe
mov ecx, esi
call fcn.10013f5c
mov esi, eax
cmp esi, dword [ebp - 0x80]
je 0x100082b9
mov edx, dword [ebp - 8]
lea eax, [ebp - 0xb4]
push esi
push ecx
push eax
mov ecx, edi
call fcn.1001951d
mov eax, dword [ebp - 0x84]
imul eax, dword [ebp - 0x14]
push eax
push dword [ebp - 0x88]
push edi
call fcn.10014466
mov ecx, edi
call fcn.100141c8
mov ecx, esi
call fcn.1001650f
push dword [ebp - 8]
push dword [ebp - 0x8c]
push esi
call fcn.10014466
add esp, 0x24
mov ecx, esi
call fcn.100141c8
mov eax, dword [ebp - 0x6c]
lea edx, [ebp - 0x1c]
mov ecx, dword [ebp - 0x90]
push eax
call fcn.1001d36b
call eax
pop edi
pop esi
leave
ret