Function at 0x58cb70
Capabilities:
Delete registry value
Set registry value

Disassembly:
push ebp
lea ebp, [esp - 0x74]
sub esp, 0x74
push 0xffffffffffffffff
push 0x662bb9
mov eax, dword fs:[0]
push eax
sub esp, 0x2c
mov eax, dword [0x758898]
xor eax, ebp
mov dword [ebp + 0x70], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov esi, ecx
mov dword [ebp - 0x28], esi
xor eax, eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], eax
mov dword [ebp + 0x1c], 0xbb8
mov eax, dword [esi + 0xc8]
cmp byte [eax + 0x18b], 0
je 0x58cbd4
cmp byte [eax + 0x35b], 0
mov eax, 5
jne 0x58cbd9
mov eax, 0xf
lea ebx, [esi + 0x3200]
mov edx, dword [esi]
push eax
mov eax, dword [ebx]
push eax
mov ecx, esi
mov edx, dword [edx + 0x1c]
call edx
mov edi, eax
mov dword [ebp + 0x20], edi
mov eax, dword [esi + 0x3208]
cmp dword [eax + 0x1c], 0
jne 0x58cde4
cmp edi, 0x2751
je 0x58cc15
cmp edi, 0x2743
jne 0x58cd0f
mov eax, dword [esi + 0xc8]
test dword [eax + 0x15c], 0x2400000
jne 0x58cd0f
mov dword [ebp + 0x10], edi
mov dword [eax + 0x1bc], edi
mov eax, dword [esi + 0xc8]
xor ecx, ecx
cmp byte [eax + 0x18b], cl
sete cl
mov byte [eax + 0x18b], cl
mov edx, dword [esi]
push ebx
mov ecx, esi
mov eax, dword [edx + 0x18]
call eax
mov edx, dword [esi]
push 0x1e
mov eax, dword [ebx]
push eax
mov ecx, esi
mov edx, dword [edx + 0x1c]
call edx
mov edi, eax
mov dword [ebp + 0x20], edi
mov eax, dword [esi + 0x3208]
cmp dword [eax + 0x1c], 0
jne 0x58cde4
cmp dword [ebp + 0x10], edi
jne 0x58cc94
mov eax, dword [esi + 0xc8]
xor ecx, ecx
cmp byte [eax + 0x18b], cl
sete cl
mov byte [eax + 0x18b], cl
test edi, edi
je 0x58cdfe
push edi
mov ecx, esi
call fcn.00561ef0
test eax, eax
je 0x58ccb8
push edi
mov ecx, esi
call fcn.00561e70
test eax, eax
je 0x58cd98
mov ecx, esi
call fcn.00562c80
test eax, eax
je 0x58cd98
mov edx, dword [esi]
push ebx
mov ecx, esi
mov eax, dword [edx + 0x18]
call eax
mov edx, dword [esi]
push 0x1e
mov eax, dword [ebx]
push eax
mov ecx, esi
mov edx, dword [edx + 0x1c]
call edx
mov edi, eax
mov dword [ebp + 0x20], edi
mov eax, dword [esi + 0x3208]
cmp dword [eax + 0x1c], 0
jne 0x58cde4
test edi, edi
je 0x58cdfe
push edi
mov ecx, esi
call fcn.00561ef0
test eax, eax
je 0x58ccb8
mov eax, edi
jmp 0x58ee15
cmp edi, 0x274c
jne 0x58cc94
mov eax, dword [esi + 0xc8]
cmp byte [eax + 0x18b], 0
je 0x58cc9c
test dword [eax + 0x15c], 0x400000
jne 0x58cc9c
mov dword [eax + 0x1bc], edi
mov edx, dword [esi + 0xc8]
mov byte [edx + 0x18b], 0
mov eax, dword [esi]
push ebx
mov ecx, esi
mov edx, dword [eax + 0x18]
call edx
mov eax, dword [esi]
push 0x1e
mov ecx, dword [ebx]
push ecx
mov ecx, esi
mov edx, dword [eax + 0x1c]
call edx
mov edi, eax
mov dword [ebp + 0x20], edi
mov eax, dword [esi + 0x3208]
cmp dword [eax + 0x1c], 0
jne 0x58cde4
cmp edi, 0x274c
jne 0x58cc94
mov eax, dword [esi + 0xc8]
mov byte [eax + 0x18b], 1
jmp 0x58cc9c
test edi, edi
je 0x58cdfe
mov dword [ebp - 0x2c], 0
push edi
mov ecx, esi
call fcn.00561ef0
test eax, eax
jne 0x58cdf6
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp eax, 5
jg 0x58cdf6
mov eax, dword [esi]
push ebx
mov ecx, esi
mov edx, dword [eax + 0x18]
call edx
mov eax, dword [esi]
push 0x1e
mov ecx, dword [ebx]
push ecx
mov ecx, esi
mov edx, dword [eax + 0x1c]
call edx
mov edi, eax
mov dword [ebp + 0x20], edi
mov eax, dword [esi + 0x3208]
cmp dword [eax + 0x1c], 0
je 0x58cda3
lea ecx, [eax + 0x28]
call fcn.00559aa0
mov eax, 0x7540
jmp 0x58ee15
test edi, edi
jne 0x58cd08
mov dword [esi + 0x3254], 1
add dword [ebp + 0x1c], 0x7d0
mov eax, dword [esi + 0x19c]
test eax, eax
je 0x58ce7e
mov cl, byte [eax + 0x15c]
mov byte [ebp + 0xf], cl
test cl, cl
je 0x58ce82
mov ecx, esi
call fcn.0057bdd0
mov edi, eax
mov dword [ebp + 0x20], edi
test edi, edi
je 0x58d01b
cmp edi, 0x7585
jne 0x58cf11
push str.Restart_type_002_n
mov ecx, esi
call fcn.00561d40
mov ecx, esi
call fcn.0057d750
mov eax, dword [esi]
push ebx
mov ecx, esi
mov edx, dword [eax + 0x18]
call edx
mov dword [ebp + 0x20], eax
test eax, eax
jne 0x58ee15
mov eax, dword [ebp + 0x7c]
push eax
mov ecx, esi
call fcn.0058cb70
jmp 0x58ee15
mov byte [ebp + 0xf], 0
test eax, eax
je 0x58d01b
cmp byte [eax + 0x137], 0
je 0x58d01b
mov ecx, dword [esi + 0x3480]
test ecx, ecx
je 0x58d01b
lea edx, [ecx + 0x333c]
push edx
mov eax, dword [ecx + 0x3390]
push eax
call fcn.005dc0b0
mov dword [ebp + 0x20], eax
test eax, eax
jne 0x58ee15
mov ecx, dword [esi + 0x3480]
push 1
lea edx, [ecx + 0x334c]
push edx
lea eax, [ecx + 0x3344]
push eax
mov edx, dword [esi + 0x19c]
mov eax, dword [edx]
push eax
lea edx, [ecx + 0x333c]
push edx
mov eax, dword [ebx]
push eax
call fcn.005df050
mov dword [ebp + 0x20], eax
test eax, eax
je 0x58d009
cmp eax, 0x757e
jne 0x58ee15
push str.Restart_type_005_n
jmp 0x58cfa8
mov ecx, dword [esi + 0x19c]
mov al, byte [ecx + 0x15d]
test al, al
jne 0x58cf70
cmp edi, 0x7559
jne 0x58cf70
cmp dword [ecx + 0x154], 5
jne 0x58cf70
cmp byte [ecx + 0x15e], al
jne 0x58cf70
cmp byte [ecx + 0x15f], al
jne 0x58cf70
mov byte [ecx + 0x15e], 1
mov ecx, dword [esi + 0x19c]
mov byte [ecx + 0x15f], 1
mov edx, dword [esi + 0x19c]
mov dword [edx + 0x154], 4
push str.Restart_type_003_n
jmp 0x58ce4b
mov edx, dword [ecx + 0x154]
cmp edx, 5
jne 0x58cfdb
cmp edi, 0x7580
jne 0x58cfdb
cmp byte [ecx + 0x15e], 0
jne 0x58cfdb
mov byte [ecx + 0x15e], 1
mov ecx, dword [esi + 0x19c]
mov dword [ecx + 0x154], 4
push str.Restart_type_004_n
mov ecx, esi
call fcn.00561d40
mov ecx, esi
call fcn.0057d750
push ebx
mov edx, dword [esi]
mov ecx, esi
mov eax, dword [edx + 0x18]
call eax
mov dword [ebp + 0x20], eax
test eax, eax
jne 0x58ee15
mov ecx, dword [ebp + 0x7c]
push ecx
mov ecx, esi
call fcn.0058cb70
jmp 0x58ee15
test al, al
jne 0x58d002
cmp edx, 4
jne 0x58d002
cmp byte [ecx + 0x15e], al
je 0x58d002
cmp byte [ecx + 0x15f], al
je 0x58d002
mov dword [ecx + 0x154], edx
mov edi, 0x7559
mov dword [ebp + 0x20], edi
mov eax, edi
jmp 0x58ee15
mov ecx, dword [esi + 0x3480]
lea edx, [ecx + 0x3344]
push edx
call fcn.005dc790
add dword [ebp + 0x1c], 0x153
mov byte [ebp + 0xe], 1
mov eax, dword [esi + 0xcc]
test eax, eax
je 0x58d035
mov eax, dword [eax + 0x10]
jmp 0x58d03e
mov eax, dword [esi + 0xc8]
mov eax, dword [eax + 0x24]
cmp eax, 2
jne 0x58d17b
mov byte [ebp + 0xe], 0
mov ecx, dword [esi + 0x19c]
cmp dword [ecx], 0
je 0x58d09c
push 1
mov ecx, esi
call fcn.005896a0
mov dword [ebp + 0x20], eax
test eax, eax
jne 0x58ee15
cmp dword [esi + 0x325c], 0xc8
je 0x58d092
mov edx, dword [esi + 0x3244]
push edx
mov ecx, dword [esi + 0xb4]
call fcn.0056ae40
mov eax, 0x756d
jmp 0x58ee15
mov dword [esi + 0xa4], 0x10
lea eax, [esi + 0x333c]
push eax
mov eax, dword [esi + 0x3390]
push eax
mov ecx, esi
call fcn.005dc0b0
mov dword [ebp + 0x20], eax
test eax, eax
jne 0x58ee15
mov eax, dword [esi + 0xcc]
test eax, eax
je 0x58d0ca
mov eax, dword [eax]
jmp 0x58d0d2
mov ecx, dword [esi + 0xc8]
mov eax, dword [ecx]
lea edi, [esi + 0x3344]
push 1
lea edx, [esi + 0x334c]
push edx
push edi
push eax
lea eax, [esi + 0x333c]
push eax
mov eax, dword [ebx]
push eax
mov ecx, esi
call fcn.005df050
mov dword [ebp + 0x20], eax
mov ecx, esi
test eax, eax
je 0x58d175
call fcn.0057d750
cmp byte [esi + 0xe3], 0
jne 0x58d15c
mov ecx, dword [esi + 0xc8]
cmp dword [ecx + 0x178], 5
jne 0x58d15c
mov eax, dword [ebp + 0x20]
cmp eax, 0x80090304
jne 0x58d15f
mov ecx, esi
call fcn.00562c80
test eax, eax
je 0x58d16b
push str.Try_next_server_n
mov ecx, esi
call fcn.00561d40
mov edx, dword [esi + 0xc8]
mov dword [edx + 0x178], 0
push str.Restart_type_006_n
mov ecx, esi
call fcn.00561d40
jmp 0x58ce59
mov eax, dword [ebp + 0x20]
cmp eax, 0x757e
je 0x58d14b
jmp 0x58ee15
mov eax, 0x80090304
jmp 0x58ee15
push edi
call fcn.005dc790
mov ecx, esi
cmp dword [ebp + 0x7c], 0
je 0x58d18a
call fcn.0057b1d0
jmp 0x58d193
mov edx, dword [esi]
push 0
mov eax, dword [edx + 0x20]
call eax
mov dword [ebp + 0x20], eax
test eax, eax
jne 0x58ee15
mov ecx, dword [ebp + 0x7c]
push ecx
mov ecx, esi
call fcn.005892e0
mov edi, eax
mov dword [ebp + 0x20], edi
cmp edi, 0x757e
jne 0x58d252
mov eax, dword [esi + 0xcc]
test eax, eax
je 0x58d1c9
mov eax, dword [eax + 0x10]
jmp 0x58d1d2
mov edx, dword [esi + 0xc8]
mov eax, dword [edx + 0x24]
cmp eax, 2
jne 0x58d2ef
mov edx, dword [esi + 0x3234]
mov eax, edx
lea ebx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x58d1e6
sub eax, ebx
je 0x58d229
mov eax, dword [esi + 0xc8]
mov ecx, dword [eax]
mov eax, edx
jmp 0x58d200
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x58d220
test dl, dl
je 0x58d21c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x58d220
add eax, 2
add ecx, 2
test dl, dl
jne 0x58d200
xor eax, eax
jmp 0x58d225
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x58d233
cmp byte [ebp + 0xe], 0
je 0x58d2ef
push str.Restart_type_007_n
mov ecx, esi
call fcn.00561d40
mov ecx, esi
call fcn.0057d750
lea eax, [esi + 0x3200]
push eax
jmp 0x58cfb7
cmp edi, 0x7586
jne 0x58d281
mov eax, dword [esi + 0xcc]
test eax, eax
je 0x58d269
mov eax, dword [eax + 0x10]
jmp 0x58d272
mov edx, dword [esi + 0xc8]
mov eax, dword [edx + 0x24]
cmp eax, 2
jne 0x58d2ef
push str.Restart_type_007b_n
jmp 0x58ce4b
test edi, edi
jne 0x58d2ef
cmp dword [esi + 0x325c], 0xce
jne 0x58d2ef
mov eax, dword [esi + 0x3268]
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x58d2a0
sub eax, edx
je 0x58d2ef
mov eax, dword [esi + 0xcc]
test eax, eax
jne 0x58d2ce
mov ecx, dword [esi + 0xc8]
mov edx, dword [ecx]
push edx
lea ecx, [ebp + 0x10]
call fcn.004030c0
mov byte [ebp - 4], 1
or dword [ebp - 0x1c], 1
mov eax, dword [eax]
push str.sciencedirect.com
push eax
call fcn.006218e0
add esp, 8
test eax, eax
je 0x58d2ef
cmp dword [esi + 0x31fc], 2
je 0x58d2ef
mov bl, 1
jmp 0x58d2f1
xor bl, bl
mov dword [ebp - 4], 0
test byte [ebp - 0x1c], 1
je 0x58d30a
and dword [ebp - 0x1c], 0xfffffffe
lea ecx, [ebp + 0x10]
call fcn.00402580
test bl, bl
je 0x58d34a
mov ecx, dword [esi + 0x3208]
test ecx, ecx
je 0x58d321
mov eax, dword [ecx]
push 2
mov edx, dword [eax + 0xc]
call edx
mov dword [esi + 0x31fc], 2
mov ecx, esi
call fcn.0057d750
push str.Restart_type_11_n
mov ecx, esi
call fcn.00561d40
lea eax, [esi + 0x3200]
push eax
jmp 0x58cfb7
cmp dword [esi + 0x325c], 0xc8
jne 0x58d49f
mov edx, dword [esi + 0x58]
or edx, dword [esi + 0x5c]
jne 0x58d49f
cmp dword [esi + 0x64], edx
jg 0x58d49f
jl 0x58d37a
cmp dword [esi + 0x60], edx
ja 0x58d49f
cmp byte [esi + 0x320d], 0
jne 0x58d49f
mov eax, dword [esi + 0x3280]
mov ecx, dword [esi + 0x3284]
mov edx, eax
or edx, ecx
je 0x58d49f
add eax, 1
adc ecx, 0
cmp eax, dword [esi + 0x3218]
jne 0x58d49f
cmp ecx, dword [esi + 0x321c]
jne 0x58d49f
mov edi, 0x7542
mov dword [ebp + 0x20], edi
mov eax, dword [esi + 0xc8]
mov ecx, dword [eax + 0x32c]
cmp ecx, 0x40
je 0x58d3e0
cmp ecx, 0x80
jne 0x58d4c9
mov ecx, dword [esi + 0x3208]
test ecx, ecx
je 0x58d4c9
cmp byte [ecx + 0x259], 0
je 0x58d4c9
cmp byte [ecx + 0x25a], 0
jne 0x58d4c9
mov byte [ecx + 0x25a], 1
mov eax, dword [esi + 0xc8]
mov eax, dword [eax + 8]
push str._tmp_dashinit
push eax
call fcn.006218e0
add esp, 8
test eax, eax
je 0x58d480
lea ecx, [ebp + 0x1c]
call fcn.00402510
mov byte [ebp - 4], 2
mov ecx, dword [esi + 0xc8]
mov edx, dword [ecx + 8]
push edx
push 0x678ea8
lea eax, [ebp + 0x1c]
push eax
call fcn.00402f80
add esp, 0xc
push 0x67997c
push str._tmp_dashinit
lea ecx, [ebp + 0x1c]
call fcn.00402c20
push 1
mov ecx, dword [ebp + 0x1c]
push ecx
mov ecx, dword [esi + 0xc8]
call fcn.00426360
mov byte [ebp - 4], 0
lea ecx, [ebp + 0x1c]
call fcn.00402580
mov ecx, esi
call fcn.0057d750
push str.Restart_type_s020s1_n
mov ecx, esi
call fcn.00561d40
lea eax, [esi + 0x3200]
push eax
jmp 0x58cfb7
test edi, edi
je 0x58dbec
cmp edi, 0x7563
jne 0x58d4b6
mov eax, edi
jmp 0x58ee15
cmp edi, 0x7581
jne 0x58d3c3
mov eax, edi
jmp 0x58ee15
cmp byte [eax + 0x190], 0
jne 0x58d519
cmp dword [eax + 0x30c], 0
jl 0x58d519
jg 0x58d4e6
cmp dword [eax + 0x308], 0
jbe 0x58d519
mov ebx, 0x100
test dword [eax + 0x15c], ebx
je 0x58d51e
mov byte [eax + 0x190], 1
mov ecx, esi
call fcn.0057d750
push str.Restart_type_s021s2_n
mov ecx, esi
call fcn.00561d40
lea eax, [esi + 0x3200]
push eax
jmp 0x58cfb7
mov ebx, 0x100
cmp byte [eax + 0x1b2], 0
je 0x58d55e
cmp byte [eax + 0x1b1], 0
jne 0x58d55e
test dword [eax + 0x15c], ebx
je 0x58d55e
mov byte [eax + 0x1b1], 1
mov ecx, esi
call fcn.0057d750
push str.Restart_type_s021s3_n
mov ecx, esi
call fcn.00561d40
lea eax, [esi + 0x3200]
push eax
jmp 0x58cfb7
cmp dword [eax + 0x334], 0
jne 0x58d737
test dword [eax + 0x15c], ebx
je 0x58d737
test edi, edi
je 0x58d737
mov eax, dword [eax]
push str.youtube.com
push eax
call fcn.006218e0
add esp, 8
test eax, eax
jne 0x58d5b1
mov edx, dword [esi + 0xc8]
mov eax, dword [edx]
push str.googlevideo.com
push eax
call fcn.006218e0
add esp, 8
test eax, eax
je 0x58d737
mov eax, dword [esi + 0xc8]
mov eax, dword [eax + 8]
push str.sourceyt_otf
push eax
call fcn.006218e0
add esp, 8
test eax, eax
jne 0x58d5eb
mov ecx, dword [esi + 0xc8]
mov eax, dword [ecx + 8]
push str._sourceyt_otf
push eax
call fcn.006218e0
add esp, 8
test eax, eax
je 0x58d737
mov edx, dword [esi + 0xc8]
mov eax, dword [edx + 8]
push str.otf1
push eax
call fcn.006218e0
add esp, 8
test eax, eax
jne 0x58d625
mov eax, dword [esi + 0xc8]
mov eax, dword [eax + 8]
push str._otf1
push eax
call fcn.006218e0
add esp, 8
test eax, eax
je 0x58d737
mov ecx, dword [esi + 0xc8]
mov eax, dword [ecx + 8]
push 0x6b1fd8
push eax
call fcn.006218e0
add esp, 8
test eax, eax
jne 0x58d737
mov edx, dword [esi + 0xc8]
mov eax, dword [edx + 8]
push str._sq
push eax
call fcn.006218e0
add esp, 8
test eax, eax
jne 0x58d737
mov ecx, esi
call fcn.0057d750
push str.Restart_type_s020y_n
mov ecx, esi
call fcn.00561d40
mov eax, dword [esi + 0xc8]
mov dword [eax + 0x334], 0x200
mov ecx, dword [esi + 0xc8]
mov byte [ecx + 0x338], 1
mov eax, dword [esi + 0x3208]
test eax, eax
je 0x58d6b3
mov eax, dword [eax + 0xb8]
test eax, eax
je 0x58d6b3
push eax
mov ecx, dword [esi + 0xc8]
call fcn.005cfb40
lea ecx, [ebp + 0x1c]
call fcn.00402510
mov byte [ebp - 4], 3
mov edx, dword [esi + 0xc8]
mov eax, dword [edx + 8]
push eax
push str._ssq0
lea ecx, [ebp + 0x1c]
push ecx
call fcn.00402f80
add esp, 0xc
push 0
mov edx, dword [ebp + 0x1c]
push edx
mov ecx, dword [esi + 0xc8]
call fcn.00426360
mov edx, dword [esi]
lea eax, [esi + 0x3200]
push eax
mov ecx, esi
mov eax, dword [edx + 0x18]
call eax
mov ebx, eax
mov dword [ebp + 0x20], ebx
test ebx, ebx
je 0x58d717
mov byte [ebp - 4], 0
lea ecx, [ebp + 0x1c]
call fcn.00402580
mov eax, ebx
jmp 0x58ee15
mov ecx, dword [ebp + 0x7c]
push ecx
mov ecx, esi
call fcn.0058cb70
mov esi, eax
mov byte [ebp - 4], 0
lea ecx, [ebp + 0x1c]
call fcn.00402580
mov eax, esi
jmp 0x58ee15
cmp edi, 0x7566
jne 0x58d8b3
mov edx, dword [esi + 0xc8]
mov eax, dword [edx]
push str..dailymotion.com
push eax
call fcn.006218e0
add esp, 8
test eax, eax
jne 0x58d77b
mov eax, dword [esi + 0xc8]
mov eax, dword [eax]
push str..dmcdn.net
push eax
call fcn.006218e0
add esp, 8
test eax, eax
je 0x58d8b3
mov ecx, dword [esi + 0xc8]
mov eax, dword [ecx + 8]
test eax, eax
je 0x58d8b3
test dword [ecx + 0x15c], ebx
je 0x58d8b3
push 0x2e
push eax
call fcn.006229e0
add esp, 8
test eax, eax
je 0x58d8b3
push 0x681f60
push eax
call fcn.00621d5e
add esp, 8
test eax, eax
jne 0x58d8b3
lea ecx, [ebp + 0x10]
call fcn.00402510
mov byte [ebp - 4], 4
mov ecx, dword [esi + 0xc8]
mov edx, dword [ecx + 8]
push edx
push 0x678ea8
lea eax, [ebp + 0x10]
push eax
call fcn.00402f80
push 0x2e
mov ecx, dword [ebp + 0x10]
push ecx
call fcn.006229e0
add esp, 0x14
test eax, eax
je 0x58d8a7
mov byte [eax], 0
lea ecx, [ebp + 0x1c]
call fcn.00402510
mov byte [ebp - 4], 5
mov edx, dword [ebp + 0x10]
push edx
push str._s.mnft
lea eax, [ebp + 0x1c]
push eax
call fcn.00402f80
add esp, 0xc
push 0
mov ecx, dword [ebp + 0x1c]
push ecx
mov ecx, dword [esi + 0xc8]
call fcn.00426360
mov ecx, esi
call fcn.0057d750
push str.Restart_type_12_n
mov ecx, esi
call fcn.00561d40
mov edx, dword [esi]
lea eax, [esi + 0x3200]
push eax
mov ecx, esi
mov eax, dword [edx + 0x18]
call eax
mov ebx, eax
mov dword [ebp + 0x20], ebx
test ebx, ebx
je 0x58d87b
mov byte [ebp - 4], 4
lea ecx, [ebp + 0x1c]
call fcn.00402580
mov byte [ebp - 4], 0
lea ecx, [ebp + 0x10]
call fcn.00402580
mov eax, ebx
jmp 0x58ee15
mov ecx, dword [ebp + 0x7c]
push ecx
mov ecx, esi
call fcn.0058cb70
mov esi, eax
mov byte [ebp - 4], 4
lea ecx, [ebp + 0x1c]
call fcn.00402580
mov byte [ebp - 4], 0
lea ecx, [ebp + 0x10]
call fcn.00402580
mov eax, esi
jmp 0x58ee15
mov byte [ebp - 4], 0
lea ecx, [ebp + 0x10]
call fcn.00402580
cmp dword [esi + 0x64], 0
jg 0x58d942
jl 0x58d8c5
cmp dword [esi + 0x60], 0
ja 0x58d942
mov edx, dword [esi + 0xc8]
mov eax, dword [edx + 0x38c]
lea ebx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x58d8d4
sub eax, ebx
je 0x58d942
cmp byte [edx + 0x359], cl
jne 0x58d942
cmp edi, 0x7565
je 0x58d90f
cmp edi, 0x7566
je 0x58d90f
cmp edi, 0x7542
je 0x58d90f
cmp edi, 0x756e
je 0x58d90f
cmp edi, 0x755e
jne 0x58d942
mov byte [edx + 0x359], 1
mov edx, dword [esi + 0xc8]
mov byte [edx + 0x361], 1
mov ecx, esi
call fcn.0057d750
push str.Restart__type_18_n
mov ecx, esi
call fcn.00561d40
lea eax, [esi + 0x3200]
push eax
jmp 0x58cfb7
lea ecx, [ebp + 0x14]
call fcn.00402510
mov byte [ebp - 4], 6
push 0
lea edx, [ebp + 0x14]
push edx
mov ecx, dword [esi + 0xc8]
call fcn.005924c0
mov eax, dword [ebp + 0x14]
push eax
call fcn.004ae8b0
add esp, 4
cmp edi, 0x7565
je 0x58d97f
cmp edi, 0x7542
jne 0x58daa4
mov ecx, dword [esi + 0xc8]
cmp byte [ecx + 0x33b], 0
jne 0x58da35
test al, al
je 0x58da35
mov ecx, esi
call fcn.0057d750
push str.Restart_type_14_n
mov ecx, esi
call fcn.00561d40
cmp edi, 0x7542
jne 0x58d9eb
mov eax, dword [esi + 0xcc]
test eax, eax
je 0x58d9c4
mov eax, dword [eax + 0x10]
jmp 0x58d9cd
mov ecx, dword [esi + 0xc8]
mov eax, dword [ecx + 0x24]
cmp eax, 2
jne 0x58d9eb
mov eax, dword [esi + 0xc8]
cmp dword [eax + 0x178], 0
jne 0x58d9eb
mov dword [eax + 0x178], 1
mov edx, dword [esi]
lea eax, [esi + 0x3200]
push eax
mov ecx, esi
mov eax, dword [edx + 0x18]
call eax
mov ebx, eax
mov dword [ebp + 0x20], ebx
test ebx, ebx
jne 0x58de33
mov ecx, dword [esi + 0xc8]
mov byte [ecx + 0x33b], 1
mov edx, dword [ebp + 0x7c]
push edx
mov ecx, esi
call fcn.0058cb70
mov esi, eax
mov byte [ebp - 4], 0
lea ecx, [ebp + 0x14]
call fcn.00402580
mov eax, esi
jmp 0x58ee15
cmp edi, 0x7542
jne 0x58daa4
cmp dword [ebp + 0x7c], 0
jne 0x58daa4
cmp dword [esi + 0x64], 0
jl 0x58daba
jg 0x58da51
cmp dword [esi + 0x60], 0
jbe 0x58daa4
cmp dword [ecx + 0x310], 0
je 0x58daa4
mov eax, dword [esi + 0x3208]
mov edx, dword [eax + 0xb8]
push edx
push 0
call fcn.005cef90
mov ecx, esi
call fcn.0057d750
push str.Restart_type_15_n
mov ecx, esi
call fcn.00561d40
mov edx, dword [esi]
lea eax, [esi + 0x3200]
push eax
mov ecx, esi
mov eax, dword [edx + 0x18]
call eax
mov ebx, eax
mov dword [ebp + 0x20], ebx
test ebx, ebx
jne 0x58de33
push eax
jmp 0x58da19
cmp dword [esi + 0x64], 0
jg 0x58dba8
jl 0x58daba
cmp dword [esi + 0x60], 0
ja 0x58dba8
cmp byte [esi + 0x320d], 0
jne 0x58dba8
mov eax, dword [esi + 0xc8]
cmp byte [eax + 0x352], 0
je 0x58dba8
cmp byte [eax + 0x354], 0
jne 0x58dba8
cmp edi, 0x7565
je 0x58db13
cmp edi, 0x7566
je 0x58db13
cmp edi, 0x7542
je 0x58db13
cmp edi, 0x756e
je 0x58db13
cmp edi, 0x755e
jne 0x58dba8
mov byte [esi + 0x320c], 1
mov byte [esi + 0x320d], 1
cmp byte [eax + 0x352], 0
je 0x58db31
mov byte [eax + 0x354], 1
mov ecx, esi
call fcn.0057d750
push str.Restart_type_16_n
mov ecx, esi
call fcn.00561d40
cmp edi, 0x7542
jne 0x58db82
mov eax, dword [esi + 0xcc]
test eax, eax
je 0x58db5b
mov eax, dword [eax + 0x10]
jmp 0x58db64
mov ecx, dword [esi + 0xc8]
mov eax, dword [ecx + 0x24]
cmp eax, 2
jne 0x58db82
mov eax, dword [esi + 0xc8]
cmp dword [eax + 0x178], 0
jne 0x58db82
mov dword [eax + 0x178], 1
mov edx, dword [esi]
lea eax, [esi + 0x3200]
push eax
mov ecx, esi
mov eax, dword [edx + 0x18]
call eax
mov ebx, eax
mov dword [ebp + 0x20], ebx
test ebx, ebx
jne 0x58de33
mov ecx, dword [ebp + 0x7c]
push ecx
jmp 0x58da19
mov ecx, dword [esi + 0x3220]
test ecx, ecx
je 0x58dc44
call fcn.005a9720
test al, al
jne 0x58dc31
mov eax, dword [esi + 0xc8]
cmp byte [eax + 0x353], 0
je 0x58dc31
cmp byte [eax + 0x354], 0
jne 0x58dc31
cmp byte [eax + 0x355], 0
jne 0x58dc31
mov byte [ebp - 4], 0
lea ecx, [ebp + 0x14]
call fcn.00402580
cmp dword [esi + 0x3220], 0
je 0x58e3cf
mov edx, dword [esi + 0xc8]
mov eax, dword [edx + 0xbc]
test eax, eax
jne 0x58dc19
test edi, edi
je 0x58e3cf
test eax, eax
je 0x58de92
push str.text_html
push eax
call fcn.00621d5e
add esp, 8
test eax, eax
sete bl
jmp 0x58de94
mov byte [ebp - 4], 0
lea ecx, [ebp + 0x14]
call fcn.00402580
mov eax, edi
jmp 0x58ee15
mov ecx, dword [esi + 0xc8]
mov eax, dword [ecx + 0x408]
lea ebx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x58dc53
sub eax, ebx
je 0x58dcb0
cmp byte [ecx + 0x361], dl
jne 0x58dcb0
mov byte [ecx + 0x361], 1
mov ecx, esi
call fcn.0057d750
push str.Restart_type_26_n
mov ecx, esi
call fcn.00561d40
mov edx, dword [esi]
lea eax, [esi + 0x3200]
push eax
mov ecx, esi
mov eax, dword [edx + 0x18]
call eax
mov ebx, eax
mov dword [ebp + 0x20], ebx
test ebx, ebx
je 0x58db9f
mov byte [ebp - 4], 0
lea ecx, [ebp + 0x14]
call fcn.00402580
mov eax, ebx
jmp 0x58ee15
test dword [ecx + 0x15c], 0x80000
je 0x58dd33
mov ecx, dword [ecx + 0x19c]
push str.Firefox_
push ecx
call fcn.006218e0
add esp, 8
test eax, eax
jne 0x58dcf2
mov edx, dword [esi + 0xc8]
mov eax, dword [edx + 0x19c]
push str.Chrome_
push eax
call fcn.006218e0
add esp, 8
test eax, eax
je 0x58dd33
mov ecx, dword [esi + 0xc8]
add ecx, 0x19c
push 0x75da0c
call fcn.00405920
mov eax, dword [esi + 0xc8]
mov byte [eax + 0x359], 0
mov ecx, dword [esi + 0xc8]
mov byte [ecx + 0x35f], 1
mov ecx, esi
call fcn.0057d750
push str.Restart_type_25_n
jmp 0x58dc79
mov eax, dword [esi + 0x3228]
test eax, eax
jne 0x58dd42
mov eax, 0x67997c
push eax
lea ecx, [ebp + 0x1c]
call fcn.004030c0
mov byte [ebp - 4], 7
push 0x67997c
mov ecx, dword [esi + 0xc8]
call fcn.00453150
mov eax, dword [esi + 0x3208]
test eax, eax
je 0x58dd79
push 0x67997c
lea ecx, [eax + 0x18c]
call fcn.0054f250
mov edx, dword [esi + 0xc8]
mov byte [edx + 0x1b4], 0
mov ecx, esi
call fcn.00580eb0
mov edi, dword [esi + 0x3208]
test edi, edi
je 0x58de72
cmp byte [edi + 0x25b], 0
jne 0x58de72
mov eax, dword [esi + 0x3228]
test eax, eax
je 0x58de72
mov ecx, eax
lea ebx, [ecx + 1]
jmp 0x58ddc0
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x58ddc0
sub ecx, ebx
je 0x58de72
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x58ddd2
sub eax, edx
mov edx, eax
mov eax, dword [ebp + 0x1c]
lea ebx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x58dde3
sub eax, ebx
cmp edx, eax
je 0x58de72
mov byte [edi + 0x25b], 1
mov ecx, esi
call fcn.0057d750
push str.Restart_type_23_n
mov ecx, esi
call fcn.00561d40
mov edx, dword [esi]
lea eax, [esi + 0x3200]
push eax
mov ecx, esi
mov eax, dword [edx + 0x18]
call eax
mov ebx, eax
mov dword [ebp + 0x20], ebx
test ebx, ebx
je 0x58de46
mov byte [ebp - 4], 6
lea ecx, [ebp + 0x1c]
call fcn.00402580
mov byte [ebp - 4], 0
lea ecx, [ebp + 0x14]
call fcn.00402580
mov eax, ebx
jmp 0x58ee15
mov ecx, dword [ebp + 0x7c]
push ecx
mov ecx, esi
call fcn.0058cb70
mov esi, eax
mov byte [ebp - 4], 6
lea ecx, [ebp + 0x1c]
call fcn.00402580
mov byte [ebp - 4], 0
lea ecx, [ebp + 0x14]
call fcn.00402580
mov eax, esi
jmp 0x58ee15
mov byte [ebp - 4], 6
lea ecx, [ebp + 0x1c]
call fcn.00402580
mov byte [ebp - 4], 0
lea ecx, [ebp + 0x14]
call fcn.00402580
mov eax, dword [ebp + 0x20]
jmp 0x58ee15
xor bl, bl
mov ecx, dword [esi + 0x3220]
call fcn.005a9720
test al, al
jne 0x58e3cf
mov eax, dword [esi + 0xc8]
cmp byte [eax + 0x353], 0
je 0x58e3cf
cmp byte [eax + 0x354], 0
jne 0x58e3cf
cmp byte [eax + 0x355], 0
jne 0x58e3cf
test bl, bl
jne 0x58dee0
test edi, edi
je 0x58e3cf
lea ecx, [ebp - 0x14]
call fcn.00402510
mov byte [ebp - 4], 8
lea ecx, [ebp]
call fcn.00402510
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x18]
call fcn.00402510
mov byte [ebp - 4], 0xa
lea ecx, [ebp + 0x10]
call fcn.00402510
mov byte [ebp - 4], 0xb
lea ecx, [ebp + 0x14]
call fcn.00402510
mov byte [ebp - 4], 0xc
xor edi, edi
mov dword [ebp + 0x24], edi
mov dword [ebp + 0x2c], edi
xor eax, eax
mov word [ebp + 0x28], ax
mov byte [ebp - 4], 0xd
lea ecx, [ebp + 0x24]
push ecx
lea edx, [ebp + 0x14]
push edx
lea eax, [ebp + 0x10]
push eax
lea ecx, [ebp - 0x20]
push ecx
lea edx, [ebp + 8]
push edx
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebp]
push ecx
lea edx, [ebp - 0x14]
push edx
mov ecx, dword [esi + 0x3220]
call fcn.005a98e0
test al, al
je 0x58e387
mov eax, dword [esi + 0xc8]
mov byte [eax + 0x354], 1
mov ecx, dword [esi + 0xc8]
mov byte [ecx + 0x352], 1
mov edx, dword [esi + 0xc8]
mov byte [edx + 0x355], 1
mov ecx, dword [esi + 0x3220]
call fcn.005a98d0
mov eax, dword [esi + 0xc8]
mov ecx, dword [ebp - 0x20]
mov dword [eax + 0x24], ecx
mov eax, dword [esi + 0xc8]
mov edx, dword [ebp + 8]
mov dword [eax + 0x14], edx
mov eax, dword [ebp - 0x14]
push eax
mov ecx, dword [esi + 0xc8]
call fcn.004531d0
mov ebx, eax
cmp ebx, edi
je 0x58e00f
mov byte [ebp - 4], 0xc
lea ecx, [ebp + 0x24]
call fcn.00401210
mov byte [ebp - 4], 0xb
lea ecx, [ebp + 0x14]
call fcn.00402580
mov byte [ebp - 4], 0xa
lea ecx, [ebp + 0x10]
call fcn.00402580
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x18]
call fcn.00402580
mov byte [ebp - 4], 8
lea ecx, [ebp]
call fcn.00402580
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.00402580
mov eax, ebx
jmp 0x58ee15
mov ecx, dword [ebp]
push ecx
mov ecx, dword [esi + 0xc8]
call fcn.00453240
mov ebx, eax
cmp ebx, edi
jne 0x58dfc0
push edi
mov edx, dword [ebp - 0x18]
push edx
mov ecx, dword [esi + 0xc8]
call fcn.00426360
mov ebx, eax
cmp ebx, edi
jne 0x58dfc0
mov eax, dword [ebp + 0x14]
push eax
mov ecx, dword [esi + 0xc8]
call fcn.00453150
push 0x67997c
mov ecx, dword [esi + 0xc8]
add ecx, 0xc4
call fcn.0054f250
mov ecx, dword [esi + 0xc8]
mov byte [ecx + 0x341], 0
push 0x67997c
mov ecx, dword [esi + 0xc8]
call fcn.004530d0
mov eax, dword [esi + 0x3208]
cmp eax, edi
je 0x58e0c0
mov eax, dword [eax + 0xb8]
cmp eax, edi
je 0x58e0c0
mov ecx, dword [esi + 0xc8]
cmp dword [ecx + 0x48c], edi
jne 0x58e0a4
push eax
call fcn.005cee30
mov edx, dword [esi + 0xc8]
mov eax, dword [edx + 0x48c]
cmp eax, edi
je 0x58e0c0
push str.Referer
push eax
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
mov ebx, dword [ebp + 0x24]
cmp ebx, edi
mov eax, ebx
jne 0x58e0cc
lea eax, [ebp + 0x28]
lea edx, [eax + 2]
nop
mov cx, word [eax]
add eax, 2
cmp cx, di
jne 0x58e0d0
sub eax, edx
sar eax, 1
je 0x58e141
cmp ebx, edi
mov eax, ebx
jne 0x58e0ea
lea eax, [ebp + 0x28]
push eax
mov ecx, dword [esi + 0xc8]
call fcn.005cde10
mov eax, dword [esi + 0x3208]
cmp eax, edi
je 0x58e141
mov eax, dword [eax + 0xb8]
cmp eax, edi
je 0x58e116
push eax
mov ecx, dword [esi + 0xc8]
call fcn.005cfb10
mov eax, dword [esi + 0x3208]
mov ecx, dword [eax + 0x14]
cmp ecx, edi
je 0x58e141
mov eax, dword [eax + 0xb8]
push eax
push 0x13c9
push 0x111
mov ecx, dword [ecx]
push ecx
mov ebx, dword [sym.imp.USER32.dll_SendMessageA]
call ebx
jmp 0x58e147
mov ebx, dword [sym.imp.USER32.dll_SendMessageA]
mov edx, dword [esi + 0xc8]
mov byte [edx + 0x1ae], 1
push 0x67997c
mov ecx, dword [esi + 0xc8]
add ecx, 0x198
call fcn.0054f250
mov eax, dword [esi + 0xc8]
mov byte [eax + 0x194], 0
mov ecx, dword [esi + 0xc8]
mov byte [ecx + 0x347], 0
mov byte [esi + 0xe0], 0
mov edx, dword [esi + 0xc8]
push edx
call fcn.005124d0
add esp, 4
mov ecx, esi
call fcn.0057da40
cmp dword [esi + 0xc4], edi
jne 0x58e231
mov eax, dword [esi + 0xb8]
mov eax, dword [eax]
cmp dword [eax], edi
je 0x58e1c9
push edi
push 0x1478
push 0x111
mov ecx, dword [eax]
push ecx
call ebx
mov eax, dword [esi + 0x3208]
cmp eax, edi
je 0x58e231
mov eax, dword [eax + 0xb8]
cmp eax, edi
je 0x58e231
push edi
push edi
push eax
mov ecx, dword [esi + 0xc8]
call fcn.005d2110
mov eax, dword [esi + 0x3208]
mov ecx, dword [eax + 0x14]
cmp ecx, edi
je 0x58e20e
mov edx, dword [eax + 0xb8]
push edx
push 0x1395
push 0x111
mov eax, dword [ecx]
push eax
call ebx
mov eax, dword [esi + 0x3208]
mov ecx, dword [eax + 0x18]
cmp ecx, edi
je 0x58e231
mov edx, dword [eax + 0xb8]
push edx
push 0x1395
push 0x111
mov eax, dword [ecx]
push eax
call ebx
cmp dword [esi + 0x31f8], edi
je 0x58e265
mov byte [ebp - 4], 0xe
mov eax, dword [esi + 0x31f8]
push eax
call fcn.005f4517
add esp, 4
mov dword [ebp - 4], 0xd
jmp 0x58e265
mov dword [esi + 0x31f8], 0
mov ecx, dword [esi + 0xc8]
call fcn.005cba00
mov ecx, esi
call fcn.0057d750
push str.Restart_type_17_n
mov ecx, esi
call fcn.00561d40
mov edx, dword [esi]
lea eax, [esi + 0x3200]
push eax
mov ecx, esi
mov edx, dword [edx + 0x18]
call edx
mov edi, eax
test edi, edi
jne 0x58e338
mov eax, dword [ebp + 0x7c]
push eax
mov ecx, esi
call fcn.0058cb70
mov edi, eax
test edi, edi
jne 0x58e338
mov ecx, dword [esi + 0xc8]
mov eax, dword [ecx + 0xbc]
test eax, eax
je 0x58e338
push str.text_html
push eax
call fcn.00621d5e
add esp, 8
test eax, eax
je 0x58e338
mov eax, dword [esi + 0x3208]
test eax, eax
je 0x58e338
mov eax, dword [eax + 0xb8]
test eax, eax
je 0x58e338
mov ecx, dword [esi + 0xc8]
cmp dword [ecx + 0x48c], edi
jne 0x58e306
push eax
call fcn.005cee30
mov esi, dword [esi + 0xc8]
cmp dword [esi + 0x48c], 0
je 0x58e338
mov dword [ebp + 0x1c], 1
push 4
lea edx, [ebp + 0x1c]
push edx
push 4
push 0
push str.noSyntRef
mov eax, dword [esi + 0x48c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov byte [ebp - 4], 0xc
lea ecx, [ebp + 0x24]
call fcn.00401210
mov byte [ebp - 4], 0xb
lea ecx, [ebp + 0x14]
call fcn.00402580
mov byte [ebp - 4], 0xa
lea ecx, [ebp + 0x10]
call fcn.00402580
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x18]
call fcn.00402580
mov byte [ebp - 4], 8
lea ecx, [ebp]
call fcn.00402580
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.00402580
mov eax, edi
jmp 0x58ee15
mov byte [ebp - 4], 0xc
lea ecx, [ebp + 0x24]
call fcn.00401210
mov byte [ebp - 4], 0xb
lea ecx, [ebp + 0x14]
call fcn.00402580
mov byte [ebp - 4], 0xa
lea ecx, [ebp + 0x10]
call fcn.00402580
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x18]
call fcn.00402580
mov byte [ebp - 4], 8
lea ecx, [ebp]
call fcn.00402580
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.00402580
mov edx, dword [esi + 0x325c]
cmp edx, 0xc8
jne 0x58e3f7
mov ecx, dword [esi + 0x58]
or ecx, dword [esi + 0x5c]
jne 0x58e3f7
mov eax, dword [esi + 0x3218]
mov dword [esi + 0x58], eax
mov ecx, dword [esi + 0x321c]
mov dword [esi + 0x5c], ecx
cmp edx, 0xce
jne 0x58e4ef
mov eax, dword [esi + 0x58]
or eax, dword [esi + 0x5c]
jne 0x58e43d
cmp dword [esi + 0x64], eax
jg 0x58e43d
jl 0x58e417
cmp dword [esi + 0x60], eax
ja 0x58e43d
mov eax, dword [esi + 0x3218]
mov ecx, dword [esi + 0x321c]
mov edi, eax
or edi, ecx
je 0x58e43d
mov edi, dword [esi + 0x3280]
or edi, dword [esi + 0x3284]
jne 0x58e43d
mov dword [esi + 0x58], eax
mov dword [esi + 0x5c], ecx
cmp edx, 0xce
jne 0x58e4ef
mov ecx, dword [esi + 0x58]
or ecx, dword [esi + 0x5c]
jne 0x58e4ef
mov eax, dword [esi + 0x60]
mov edi, dword [esi + 0x64]
test edi, edi
jg 0x58e4dd
jl 0x58e469
test eax, eax
ja 0x58e499
mov ebx, dword [esi + 0x3280]
mov ecx, dword [esi + 0x3284]
mov edx, ebx
or edx, ecx
je 0x58e499
mov edx, dword [esi + 0x3218]
mov eax, dword [esi + 0x321c]
cmp ecx, eax
jg 0x58e499
jl 0x58e491
cmp ebx, edx
jae 0x58e499
mov dword [esi + 0x58], edx
mov dword [esi + 0x5c], eax
jmp 0x58e4ef
test edi, edi
jg 0x58e4dd
jl 0x58e4a5
cmp dword [esi + 0x60], 0
ja 0x58e4dd
mov edx, dword [esi + 0x3218]
mov ebx, dword [esi + 0x321c]
mov eax, edx
or eax, ebx
je 0x58e4dd
mov eax, edx
add eax, 1
mov ecx, ebx
adc ecx, 0
mov edi, dword [esi + 0x3280]
cmp edi, eax
jne 0x58e4dd
mov eax, dword [esi + 0x3284]
cmp eax, ecx
jne 0x58e4dd
mov dword [esi + 0x58], edx
mov dword [esi + 0x5c], ebx
jmp 0x58e4ef
mov ecx, dword [esi + 0x3280]
mov dword [esi + 0x58], ecx
mov edx, dword [esi + 0x3284]
mov dword [esi + 0x5c], edx
mov edx, dword [esi + 0x325c]
cmp edx, 0xc8
je 0x58e505
cmp edx, 0xce
jne 0x58e529
mov eax, dword [esi + 0x58]
or eax, dword [esi + 0x5c]
jne 0x58e529
mov ecx, dword [esi + 0x3298]
mov eax, dword [esi + 0x329c]
test eax, eax
jl 0x58e529
jg 0x58e523
test ecx, ecx
jbe 0x58e529
mov dword [esi + 0x58], ecx
mov dword [esi + 0x5c], eax
mov eax, dword [esi + 0xc8]
xor edi, edi
cmp dword [eax + 0x334], edi
je 0x58e577
mov eax, dword [esi + 0x3208]
cmp eax, edi
je 0x58e577
cmp dword [eax + 0x40], edi
je 0x58e577
cmp edx, 0xc8
jne 0x58e571
mov ecx, dword [esi + 0x3218]
mov eax, dword [esi + 0x321c]
cmp eax, edi
jl 0x58e571
jg 0x58e566
cmp ecx, edi
jbe 0x58e571
sub ecx, 1
sbb eax, edi
mov dword [esi + 0x78], ecx
mov dword [esi + 0x7c], eax
mov dword [esi + 0x58], edi
mov dword [esi + 0x5c], edi
mov edi, dword [esi + 0x58]
mov eax, dword [esi + 0x5c]
mov ecx, edi
or ecx, eax
je 0x58e659
mov eax, dword [esi + 0x3208]
mov ecx, dword [eax + 0xd0]
mov edx, dword [eax + 0xd4]
mov ebx, ecx
or ebx, edx
je 0x58e659
cmp ecx, edi
jne 0x58e5b0
cmp edx, dword [esi + 0x5c]
je 0x58e659
mov edi, dword [eax + 0xc8]
or edi, dword [eax + 0xcc]
je 0x58e659
cmp byte [esi + 0x3264], 0
jne 0x58ebbd
cmp dword [esi + 0x325c], 0xce
jne 0x58e60f
mov edi, dword [esi + 0x3280]
mov ebx, dword [esi + 0x3284]
sub ecx, 1
sbb edx, 0
cmp edi, ecx
jne 0x58e60f
cmp ebx, edx
jne 0x58e60f
mov edx, dword [esi + 0x3288]
or edx, dword [esi + 0x328c]
jne 0x58e60f
mov dword [esi + 0x3288], edi
mov dword [esi + 0x328c], ebx
mov edi, dword [esi + 0x3288]
mov ecx, dword [esi + 0x328c]
mov edx, edi
or edx, ecx
je 0x58e8f5
mov ebx, dword [eax + 0xd0]
mov edx, dword [eax + 0xd4]
mov dword [ebp + 8], edx
mov ecx, ebx
sub ecx, 1
sbb edx, 0
cmp edi, ecx
jne 0x58e8f5
cmp dword [esi + 0x328c], edx
jne 0x58e8f5
mov dword [esi + 0x58], ebx
mov eax, dword [ebp + 8]
mov dword [esi + 0x5c], eax
cmp byte [esi + 0x3264], 0
jne 0x58ebbd
mov eax, dword [esi + 0xc8]
mov edi, dword [eax + 0xbc]
xor ebx, ebx
cmp edi, ebx
je 0x58eb94
mov eax, dword [eax + 0x114]
mov dword [ebp + 8], eax
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x58e688
sub eax, edx
je 0x58eb94
mov eax, edi
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x58e6a0
sub eax, edx
je 0x58eb94
mov dword [ebp - 0x24], 1
push 0x3b
mov edx, dword [ebp + 8]
push edx
call fcn.00621820
add esp, 8
test eax, eax
je 0x58e719
mov eax, dword [esi + 0xc8]
mov eax, dword [eax + 0xbc]
push 0x3b
push eax
call fcn.00621820
add esp, 8
test eax, eax
jne 0x58e719
mov edi, dword [esi + 0xc8]
mov ecx, dword [edi + 0xbc]
mov eax, ecx
lea edx, [eax + 1]
mov dword [ebp + 8], edx
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x58e6f7
sub eax, dword [ebp + 8]
mov edi, dword [edi + 0x114]
push eax
push ecx
push edi
call fcn.0062797f
add esp, 0xc
test eax, eax
jne 0x58e719
mov dword [ebp - 0x24], ebx
mov edx, dword [esi + 0xc8]
mov edi, dword [edx + 0x114]
mov eax, edi
lea ecx, [eax + 1]
mov dword [ebp + 8], ecx
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x58e730
sub eax, dword [ebp + 8]
push eax
mov edx, dword [edx + 0xbc]
push edx
push edi
call fcn.0062797f
add esp, 0xc
test eax, eax
je 0x58eb94
cmp dword [ebp - 0x24], ebx
je 0x58eb94
mov byte [ebp + 0x1b], 1
mov eax, dword [esi + 0xc8]
mov eax, dword [eax + 0x114]
push 9
push str.text_html
push eax
call fcn.00624cad
add esp, 0xc
test eax, eax
jne 0x58e7a4
push 9
push str.text_html
mov ecx, dword [esi + 0xc8]
mov edx, dword [ecx + 0xbc]
push edx
call fcn.00624cad
add esp, 0xc
test eax, eax
je 0x58e7a4
mov byte [ebp + 0x1b], 0
mov eax, dword [esi + 0xc8]
mov eax, dword [eax + 0x114]
push 0xa
push 0x67e818
push eax
call fcn.00624cad
add esp, 0xc
test eax, eax
jne 0x58e7e8
push 9
push str.text_html
mov ecx, dword [esi + 0xc8]
mov edx, dword [ecx + 0xbc]
push edx
call fcn.00624cad
add esp, 0xc
test eax, eax
je 0x58e7e8
mov byte [ebp + 0x1b], 0
mov eax, dword [esi + 0xc8]
mov eax, dword [eax + 0x114]
push 0x15
push str.application_x_mpegURL
push eax
call fcn.0062797f
add esp, 0xc
test eax, eax
jne 0x58e860
push 0x1d
push str.application_vnd.apple.mpegurl
mov ecx, dword [esi + 0xc8]
mov edx, dword [ecx + 0xbc]
push edx
call fcn.0062797f
add esp, 0xc
test eax, eax
je 0x58e846
push str.video_MP2T
mov eax, dword [esi + 0xc8]
mov ecx, dword [eax + 0xbc]
push ecx
call fcn.00621d5e
add esp, 8
test eax, eax
jne 0x58e860
mov byte [ebp + 0x1b], 0
push 0x67997c
mov ecx, dword [esi + 0xc8]
add ecx, 0x114
call fcn.0054f250
push 9
push str.text_html
mov edx, dword [esi + 0xc8]
mov eax, dword [edx + 0xbc]
push eax
call fcn.00624cad
add esp, 0xc
test eax, eax
je 0x58eaf7
mov ecx, dword [esi + 0xc8]
mov eax, dword [ecx]
push str..youtube.com
push eax
call fcn.006218e0
add esp, 8
test eax, eax
jne 0x58e8bc
mov edx, dword [esi + 0xc8]
mov eax, dword [edx]
push str..googlevideo.com
push eax
call fcn.006218e0
add esp, 8
test eax, eax
je 0x58eaf7
mov eax, dword [esi + 0xc8]
mov edi, dword [eax + 8]
cmp edi, ebx
je 0x58eaf7
mov ecx, 0xe
mov eax, str.videoplayback_
cmp ecx, 4
jb 0x58ea64
mov edx, dword [edi]
cmp edx, dword [eax]
jne 0x58eaf7
sub ecx, 4
add eax, 4
add edi, 4
jmp 0x58e8d7
cmp dword [esi + 0x325c], 0xce
jne 0x58e94e
mov edi, dword [esi + 0x32a0]
mov ecx, dword [esi + 0x32a4]
mov edx, edi
or edx, ecx
je 0x58e94e
mov ebx, dword [eax + 0xd0]
mov edx, dword [eax + 0xd4]
mov dword [ebp + 8], edx
mov ecx, ebx
sub ecx, edi
sbb edx, dword [esi + 0x32a4]
mov edi, dword [esi + 0x3218]
cmp edi, ecx
jne 0x58e94e
mov ecx, dword [esi + 0x321c]
cmp ecx, edx
jne 0x58e94e
mov dword [esi + 0x58], ebx
mov edx, dword [ebp + 8]
mov dword [esi + 0x5c], edx
jmp 0x58e659
mov edx, dword [esi + 0xc8]
cmp dword [eax + 0x148], 0
je 0x58e97b
cmp byte [edx + 0x357], 0
jne 0x58e96f
cmp byte [edx + 0x18a], 0
je 0x58e97b
mov byte [esi + 0x3264], 1
jmp 0x58e659
mov bl, byte [esi + 0x3272]
test bl, bl
je 0x58e9b9
mov ecx, dword [eax + 0xd0]
mov eax, dword [eax + 0xd4]
mov edi, dword [esi + 0x3280]
cmp edi, ecx
jne 0x58e9b9
mov edi, dword [esi + 0x3284]
cmp edi, eax
jne 0x58e9b9
cmp dword [esi + 0x325c], 0xce
jne 0x58e9b9
mov dword [esi + 0x58], ecx
jmp 0x58e656
mov ecx, dword [esi + 0x60]
mov eax, dword [esi + 0x64]
test eax, eax
jg 0x58ea16
jl 0x58e9c9
test ecx, ecx
ja 0x58ea0c
cmp byte [esi + 0x320d], 0
jne 0x58ea0c
cmp byte [edx + 0x352], 0
je 0x58ea0c
cmp byte [edx + 0x354], 0
jne 0x58ea0c
mov byte [esi + 0x320c], 1
mov byte [esi + 0x320d], 1
cmp byte [edx + 0x352], 0
je 0x58ea02
mov byte [edx + 0x354], 1
push str.Restart_type_21a_n
jmp 0x58d238
test eax, eax
jl 0x58ea53
jg 0x58ea16
test ecx, ecx
jbe 0x58ea53
cmp byte [esi + 0x3214], 0
jne 0x58ea53
test bl, bl
jne 0x58ea53
mov byte [esi + 0x3272], 1
mov dword [edx + 0x310], 1
mov eax, dword [esi + 0xc8]
cmp byte [eax + 0x352], bl
je 0x58ea49
mov byte [eax + 0x354], 1
push str.Restart_type_21b_n
jmp 0x58d238
mov ecx, esi
call fcn.0057d750
mov eax, 0x757a
jmp 0x58ee15
mov cl, byte [eax]
cmp cl, byte [edi]
jne 0x58eaf7
mov dl, byte [eax + 1]
cmp dl, byte [edi + 1]
jne 0x58eaf7
push 6
push str.video_
mov eax, dword [esi + 0xc8]
mov ecx, dword [eax + 0xbc]
push ecx
call fcn.00624cad
add esp, 0xc
test eax, eax
jne 0x58ead8
push 6
push str.audio_
mov edx, dword [esi + 0xc8]
mov eax, dword [edx + 0xbc]
push eax
call fcn.00624cad
add esp, 0xc
test eax, eax
jne 0x58ead8
push str.application_octet_stream
mov ecx, dword [esi + 0xc8]
mov edx, dword [ecx + 0xbc]
push edx
call fcn.00621d5e
add esp, 8
test eax, eax
jne 0x58eaf7
mov byte [ebp + 0x1b], 0
push 0x67997c
mov ecx, dword [esi + 0xc8]
add ecx, 0x114
call fcn.0054f250
jmp 0x58eb94
cmp byte [ebp + 0x1b], 0
je 0x58eb94
mov ecx, dword [esi + 0x3208]
cmp dword [ecx + 0x148], ebx
je 0x58eb3e
mov eax, dword [esi + 0xc8]
cmp byte [eax + 0x357], 0
jne 0x58eb27
cmp byte [eax + 0x18a], 0
je 0x58eb3e
mov eax, dword [ecx + 0xc8]
or eax, dword [ecx + 0xcc]
je 0x58eb94
mov byte [esi + 0x3264], 1
jmp 0x58eb94
push 9
push str.text_html
mov ecx, dword [esi + 0xc8]
mov edx, dword [ecx + 0xbc]
push edx
call fcn.00624cad
add esp, 0xc
test eax, eax
je 0x58ea53
mov eax, dword [esi + 0x58]
mov edx, dword [esi + 0x5c]
mov ecx, eax
or ecx, edx
je 0x58ea53
mov ecx, dword [esi + 0xc8]
cmp eax, dword [ecx + 0x138]
jne 0x58ea53
cmp edx, dword [ecx + 0x13c]
jne 0x58ea53
mov byte [ebp + 0x1b], 0
cmp byte [esi + 0x3264], 0
jne 0x58ebbf
mov edx, dword [esi + 0x322c]
mov eax, edx
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x58eba8
sub eax, edi
je 0x58ebbf
push edx
mov ecx, esi
call fcn.0057c2d0
jmp 0x58ebbf
xor ebx, ebx
push 0x67997c
lea ecx, [esi + 0x322c]
call fcn.0054f250
cmp byte [esi + 0x3264], 0
je 0x58ed3a
mov byte [esi + 0x3264], 0
lea ecx, [esi + 0x10]
call fcn.0056af30
mov eax, dword [esi + 0x3208]
cmp dword [eax + 0xb0], ebx
setne byte [ebp + 0xf]
lea ecx, [eax + 0x28]
call fcn.0055a970
mov eax, dword [esi + 0x3208]
mov dword [eax + 0xc8], ebx
mov dword [eax + 0xcc], ebx
mov eax, dword [esi + 0x3208]
mov dword [eax + 0xd0], ebx
mov dword [eax + 0xd4], ebx
mov eax, dword [esi + 0x3208]
mov dword [eax + 0x1c8], ebx
mov dword [eax + 0x1cc], ebx
mov dword [esi + 0x3260], ebx
mov dword [esi + 0xa8], ebx
mov dword [esi + 0x60], ebx
mov dword [esi + 0x64], ebx
mov dword [esi + 0x78], ebx
mov dword [esi + 0x7c], ebx
mov dword [esi + 0x80], ebx
mov dword [esi + 0x84], ebx
mov dword [esi + 0x88], ebx
mov dword [esi + 0x8c], ebx
mov dword [esi + 0x70], ebx
mov dword [esi + 0x74], ebx
mov dword [esi + 0x3218], ebx
mov dword [esi + 0x321c], ebx
mov dword [esi + 0x3278], ebx
mov dword [esi + 0x327c], ebx
mov dword [esi + 0x3280], ebx
mov dword [esi + 0x3284], ebx
mov dword [esi + 0x3288], ebx
mov dword [esi + 0x328c], ebx
mov dword [esi + 0x58], ebx
mov dword [esi + 0x5c], ebx
mov dword [esi + 0x3298], ebx
mov dword [esi + 0x329c], ebx
mov eax, dword [esi + 0x3208]
cmp eax, ebx
je 0x58ecc2
mov byte [eax + 0x889], 0
push str.Restart_type_008_n
mov ecx, esi
call fcn.00561d40
mov ecx, esi
call fcn.0057d750
mov edx, dword [esi]
lea eax, [esi + 0x3200]
push eax
mov ecx, esi
mov edx, dword [edx + 0x18]
call edx
mov dword [ebp + 0x20], eax
cmp eax, ebx
jne 0x58ee15
mov eax, dword [ebp + 0x7c]
push eax
mov ecx, esi
call fcn.0058cb70
mov edi, eax
mov dword [ebp + 0x20], edi
cmp edi, ebx
jne 0x58cd08
cmp byte [ebp + 0xf], 0
je 0x58ed2c
mov ecx, dword [esi + 0xc8]
mov edx, dword [ecx + 0x30]
push edx
push esi
mov ecx, dword [esi + 0x3208]
add ecx, 0x28
call fcn.0055ab00
mov edi, eax
mov dword [ebp + 0x20], edi
mov ecx, esi
call fcn.00562040
mov eax, edi
jmp 0x58ee15
lea eax, [ebp - 0x38]
push eax
call fcn.00623d61
movzx ecx, word [ebp - 0x34]
push ecx
mov edx, dword [ebp - 0x38]
push edx
push str.Time:__ld._ld_r_n
lea eax, [ebp + 0x30]
push eax
call fcn.0062311b
add esp, 0x14
lea ecx, [ebp + 0x30]
push ecx
mov ecx, esi
call fcn.00561d40
mov dword [esi + 0xa4], 6
mov dword [esi + 0xc0], ebx
push 1
mov edx, dword [0x75eae0]
push edx
mov ecx, esi
call fcn.00562560
cmp dword [esi + 0xc4], ebx
jne 0x58edb6
mov eax, dword [esi + 0x3208]
mov ecx, dword [eax + 0x18]
cmp ecx, ebx
je 0x58edb6
mov eax, dword [eax + 0xb8]
push eax
mov edx, dword [ebp + 0x1c]
push edx
push 0x111
mov eax, dword [ecx]
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
cmp byte [ebp + 0xf], 0
je 0x58edf4
mov esi, dword [esi + 0x19c]
mov eax, 4
cmp dword [esi + 0x154], eax
jne 0x58edf4
cmp byte [esi + 0x15e], 0
je 0x58edf4
mov dword [ebp + 8], eax
push eax
lea ecx, [ebp + 8]
push ecx
push eax
push ebx
push str.SocksType
mov edx, dword [0x75dbe4]
push edx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
xor eax, eax
jmp 0x58ee15
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x70]
xor ecx, ebp
call fcn.0062023e
add ebp, 0x74
mov esp, ebp
pop ebp
ret 4