Function at 0x5be7b0
Capabilities:
Query or enumerate registry value
Set registry value

Disassembly:
push ebp
lea ebp, [esp - 0xb4]
sub esp, 0xb4
push 0xffffffffffffffff
push 0x665b54
mov eax, dword fs:[0]
push eax
sub esp, 0xe0
mov eax, dword [0x758898]
xor eax, ebp
mov dword [ebp + 0xb0], 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 - 0x34], esi
mov eax, dword [ebp + 0xc4]
mov dword [ebp - 0x28], eax
xor ebx, ebx
mov dword [ebp - 4], ebx
cmp dword [esi + 0x940], ebx
je 0x5be821
push ebx
push ebx
mov ecx, dword [esi + 0x4f8]
push ecx
lea ecx, [esi + 0x20]
call fcn.005d1670
mov dword [esi + 0x940], ebx
cmp dword [esi + 0xadc], ebx
je 0x5be833
mov dword [esi + 0xacc], 0x7540
cmp dword [esi + 0xacc], 0x7573
jne 0x5be858
push 3
mov ecx, esi
call fcn.005b6e00
lea ecx, [esi + 0x52c]
call fcn.0056ab70
jmp 0x5bef28
cmp dword [esi + 4], ebx
jne 0x5be865
push ebx
mov ecx, esi
call fcn.005b6e00
cmp dword [esi + 0xadc], ebx
je 0x5be8a8
push ebx
mov ecx, esi
call fcn.005b6e00
push 1
mov edx, dword [esi + 0x4f8]
push edx
mov eax, dword [0x75ec14]
push eax
mov ecx, dword [esi + 0xacc]
push ecx
lea ecx, [esi + 0x20]
call fcn.005cb660
push str.Cancel_by_user._n
lea ecx, [esi + 0x52c]
call fcn.0056a780
jmp 0x5bef28
mov ecx, dword [esi + 0xacc]
cmp ecx, 0x7540
jne 0x5be8d4
push str.Cancel_by_user._n
lea ecx, [esi + 0x52c]
call fcn.0056a780
push 2
mov ecx, esi
call fcn.005b6e00
jmp 0x5bef28
mov byte [ebp - 0x21], bl
mov byte [ebp - 0x19], bl
mov byte [ebp - 0x23], 1
mov eax, ecx
cmp eax, 0x753b
jg 0x5be978
je case.0x5be989.30040
cmp eax, 0x80090304
je case.0x5be989.30018
cmp eax, 0x17
je case.0x5be989.30040
cmp eax, 0x70
je case.0x5be989.30040
cmp byte [esi + 0x35e], bl
jne case.0x5be989.30040
cmp byte [esi + 0xaff], bl
jne 0x5beaf9
cmp byte [0x75e77d], bl
je 0x5beaf1
cmp dword [esi + 4], ebx
jne 0x5beaf1
test dword [esi + 0x17c], 0x80000
je 0x5beaf1
lea ecx, [ebp - 0x14]
call fcn.00402510
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x20]
call fcn.00402510
mov byte [ebp - 4], 2
cmp byte [esi + 0xab8], 0
je 0x5be990
mov eax, dword [esi + 0xaa0]
push eax
mov ecx, dword [esi + 0xa9c]
push ecx
jmp 0x5be9a7
sub eax, 0x7542
cmp eax, 0x40
ja case.0x5be989.30019
movzx edx, byte [eax + 0x5c0458]
jmp dword [edx*4 + 0x5c044c]
mov eax, dword [esi + 0x95c]
cmp eax, ebx
jne 0x5be99f
mov eax, 0x67997c
mov ecx, dword [esi + 0x960]
push ecx
push eax
push str._s:_ld
lea edx, [ebp - 0x14]
push edx
call fcn.00402f80
add esp, 0x10
mov byte [esi + 0xaff], 1
push esi
call fcn.004b3490
push esi
call fcn.004b6fd0
add esp, 8
cmp byte [esi + 0xab8], 0
je 0x5be9e7
mov eax, dword [esi + 0xaa0]
push eax
mov ecx, dword [esi + 0xa9c]
push ecx
jmp 0x5be9fe
mov eax, dword [esi + 0x95c]
cmp eax, ebx
jne 0x5be9f6
mov eax, 0x67997c
mov ecx, dword [esi + 0x960]
push ecx
push eax
push str._s:_ld
lea edx, [ebp - 0x20]
push edx
call fcn.00402f80
add esp, 0x10
mov eax, dword [ebp - 0x14]
push eax
mov ecx, dword [ebp - 0x20]
push ecx
call fcn.00621d5e
add esp, 8
test eax, eax
je 0x5beab0
lea edi, [esi + 0x52c]
push str.Try_via_the_same_proxy_as_in_browser_request._n
mov ecx, edi
call fcn.0056a780
mov edx, dword [esi + 0xacc]
mov dword [esi + 0xb04], edx
mov edi, dword [edi]
cmp edi, ebx
je 0x5bea60
push edi
push 0x678ea8
lea eax, [esi + 0xb08]
push eax
call fcn.00402f80
add esp, 0xc
mov ecx, dword [esi + 0x14]
cmp ecx, ebx
je 0x5bea85
mov eax, dword [esi + 0x4f8]
cmp eax, ebx
je 0x5bea85
push eax
push 0x1431
push 0x111
push ecx
call dword [sym.imp.USER32.dll_PostMessageA]
jmp 0x5bea93
mov dword [esi + 0x958], ebx
push ebx
mov ecx, esi
call fcn.005c7940
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x20]
call fcn.00402580
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.00402580
jmp 0x5bef28
mov byte [esi + 0xaff], 0
cmp byte [esi + 0xb00], 0
je 0x5bead4
push str.Cannot_detect_proxy_in_browser_proxy_script_:__n
lea ecx, [esi + 0x52c]
call fcn.0056a780
mov byte [ebp - 0x19], 1
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x20]
call fcn.00402580
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.00402580
jmp 0x5beb48
mov byte [ebp - 0x23], bl
cmp byte [esi + 0xaff], bl
je 0x5beb48
cmp ecx, 0x756f
je 0x5beb09
cmp ecx, 0x7559
jne 0x5beb42
mov ecx, dword [esi + 0xb04]
mov dword [esi + 0xacc], ecx
mov edx, dword [esi + 0xb08]
mov eax, edx
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x5beb20
lea ecx, [esi + 0x52c]
sub eax, edi
je 0x5beb39
push edx
call fcn.0056ae40
jmp 0x5beb3e
call fcn.0056abe0
mov byte [ebp - 0x19], 1
mov byte [esi + 0xaff], bl
mov byte [ebp - 0x1a], 0
mov dword [ebp + 0x54], ebx
mov dword [ebp + 0x5c], ebx
xor edx, edx
mov word [ebp + 0x58], dx
mov byte [ebp - 4], 3
mov eax, dword [esi + 0xacc]
cmp eax, 0x7532
jg 0x5beee6
je case.0x5bed97.10060
cmp eax, 0x271d
jg 0x5bed71
je 0x5bed69
cmp eax, 0xffffffff
jg 0x5bec79
je 0x5bebeb
cmp eax, 0x80090304
je case.0x5beefb.30009
cmp eax, 0x8009030e
je case.0x5beefb.30009
cmp eax, 0xfffffffc
je case.0x5beefb.30009
mov eax, dword [esi + 0x44]
cmp eax, 4
je 0x5bf743
cmp eax, 5
je 0x5bf743
lea edx, [esi + 0x530]
push edx
lea ecx, [ebp + 0x48]
call fcn.00402190
mov byte [ebp - 4], 0x17
mov eax, dword [ebp + 0x48]
cmp eax, ebx
jne 0x5bebe0
lea eax, [ebp + 0x4c]
mov edx, dword [0x75e9c8]
jmp 0x5bf6a2
mov eax, dword [esi + 0x44]
cmp eax, 4
je case.0x5beefb.30009
cmp eax, 5
je case.0x5beefb.30009
lea eax, [esi + 0x530]
push eax
lea ecx, [ebp + 0x3c]
call fcn.00402190
mov bl, 0x15
mov byte [ebp - 4], bl
lea ecx, [esi + 0xb24]
push ecx
lea ecx, [ebp + 0x48]
call fcn.00402190
mov byte [ebp - 4], 0x16
mov ecx, dword [ebp + 0x48]
test ecx, ecx
jne 0x5bec29
lea ecx, [ebp + 0x4c]
mov eax, dword [ebp + 0x3c]
test eax, eax
jne 0x5bec33
lea eax, [ebp + 0x40]
mov edx, dword [0x75dd28]
push edx
push ecx
push eax
mov eax, dword [0x75e9c4]
push eax
lea ecx, [ebp + 0x54]
call fcn.00402330
mov byte [ebp - 4], bl
lea ecx, [ebp + 0x48]
call fcn.00401210
mov byte [ebp - 4], 3
lea ecx, [ebp + 0x3c]
call fcn.00401210
jmp 0x5bf758
mov ecx, dword [0x75dd28]
push ecx
mov edx, dword [0x75e9d0]
push edx
jmp 0x5bf750
cmp eax, 5
je 0x5bed56
cmp eax, 0x17
je 0x5bed44
cmp eax, 0x70
jne case.0x5beefb.30004
mov eax, dword [0x75dd28]
push eax
mov ecx, dword [0x75eeec]
push ecx
lea ecx, [ebp + 0x48]
call fcn.0045e870
mov bl, 0x11
mov byte [ebp - 4], bl
xor edi, edi
mov dword [ebp + 0x18], edi
mov dword [ebp + 0x20], edi
xor edx, edx
mov word [ebp + 0x1c], dx
mov byte [ebp - 4], 0x12
push edi
push edi
lea eax, [ebp - 0x18]
push eax
push 0x400
push 0x70
push edi
push 0x1100
call dword [sym.imp.KERNEL32.dll_FormatMessageW]
mov eax, dword [ebp + 0x48]
cmp eax, edi
jne 0x5bece3
lea eax, [ebp + 0x4c]
push edi
mov ecx, dword [ebp - 0x18]
push ecx
push eax
push str._r_n_r_n_s_s
lea ecx, [ebp + 0x18]
call fcn.00402330
mov edx, dword [ebp - 0x18]
push edx
call dword [sym.imp.KERNEL32.dll_LocalFree]
mov eax, dword [0x75dd28]
push eax
mov ecx, dword [0x75e9d0]
push ecx
lea ecx, [ebp + 0x54]
call fcn.00401990
mov eax, dword [ebp + 0x18]
cmp eax, edi
jne 0x5bed1f
lea eax, [ebp + 0x1c]
push eax
lea ecx, [ebp + 0x54]
call fcn.00405330
mov byte [ebp - 4], bl
lea ecx, [ebp + 0x18]
call fcn.00401210
mov byte [ebp - 4], 3
lea ecx, [ebp + 0x48]
call fcn.00401210
jmp 0x5bf758
mov edx, dword [0x75dd28]
push edx
mov eax, dword [0x75f474]
push eax
jmp 0x5bf750
mov ecx, dword [0x75dd28]
push ecx
mov edx, dword [0x75f004]
push edx
jmp 0x5bf750
mov ecx, dword [0x75e9dc]
jmp 0x5beda4
cmp eax, 0x2af9
jg 0x5bee92
je 0x5bee87
sub eax, 0x2726
cmp eax, 0x2b
ja case.0x5beefb.30004
movzx edx, byte [eax + 0x5c04c8]
jmp dword [edx*4 + 0x5c049c]
mov ecx, dword [0x75e9d8]
mov eax, dword [0x75dd28]
push eax
push ecx
lea ecx, [ebp + 0x54]
call fcn.00401990
mov byte [esi + 0x371], 1
jmp 0x5bf758
lea ecx, [ebp - 0x14]
call fcn.00402510
mov byte [ebp - 4], 0xb
mov eax, dword [0x75e9d0]
mov edx, dword [0x75f100]
push edx
push eax
push str._s_r_n_r_n_s
lea ecx, [ebp - 0x14]
push ecx
call fcn.00402f80
add esp, 0x10
mov edx, dword [0x75dd28]
push edx
mov eax, dword [ebp - 0x14]
push eax
lea ecx, [ebp + 0x54]
call fcn.00401990
mov byte [esi + 0x371], 1
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x14]
call fcn.00402580
jmp 0x5bf758
mov ecx, dword [0x75dd28]
push ecx
mov edx, dword [0x75e9e0]
push edx
jmp 0x5bf750
mov ecx, dword [0x75e9e4]
jmp 0x5bf749
mov edx, dword [0x75dd28]
push edx
mov eax, dword [0x75e9e8]
push eax
jmp 0x5bf750
mov ecx, dword [0x75dd28]
push ecx
mov edx, dword [0x75e9f0]
push edx
jmp 0x5bf750
mov ecx, dword [0x75e9f4]
jmp 0x5bf749
mov edx, dword [0x75dd28]
push edx
mov eax, dword [0x75e9f8]
push eax
jmp 0x5bf750
mov ecx, dword [0x75dd28]
push ecx
mov edx, dword [0x75e9fc]
push edx
jmp 0x5bf750
mov ecx, dword [0x75e9ec]
jmp 0x5beda4
sub eax, 0x2afa
je case.0x5beefb.30009
sub eax, 2
jne case.0x5beefb.30004
lea ecx, [ebp - 0x14]
call fcn.00402510
mov byte [ebp - 4], 0xc
mov eax, dword [0x75ebf0]
jmp 0x5bedd0
mov eax, dword [esi + 0x17c]
test al, 8
jne 0x5beecd
test eax, 0x100
je case.0x5beefb.30003
mov byte [esi + 0x371], 1
mov edx, dword [0x75dd28]
push edx
mov eax, dword [0x75ec30]
push eax
jmp 0x5bf750
sub eax, 0x7533
cmp eax, 0x57
ja case.0x5beefb.30004
movzx ecx, byte [eax + 0x5c0568]
jmp dword [ecx*4 + 0x5c04f4]
mov edx, dword [0x75dd28]
push edx
mov eax, dword [0x75ea00]
push eax
jmp 0x5bf750
push ebx
mov ecx, esi
call fcn.005b6e00
mov byte [ebp - 4], 0
lea ecx, [ebp + 0x54]
call fcn.00401210
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0xb0]
xor ecx, ebp
call fcn.0062023e
add ebp, 0xb4
mov esp, ebp
pop ebp
ret 0xc
push ebx
mov ecx, esi
call fcn.005b6e00
cmp dword [esi + 8], ebx
jne 0x5bf168
cmp dword [esi + 4], ebx
jne 0x5bf168
cmp byte [ebp + 0xbc], 0
je 0x5bf168
mov eax, dword [esi + 0x528]
cmp eax, ebx
je 0x5befa1
mov ecx, dword [eax + 0x20]
push ecx
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x5befa1
mov edx, dword [esi + 0x528]
mov eax, dword [edx + 0x20]
push eax
call fcn.005f908d
mov edi, eax
jmp 0x5befa3
xor edi, edi
mov ecx, dword [esi + 0x44]
push ecx
call fcn.0049c6b0
add esp, 4
push eax
lea ecx, [ebp - 0x20]
call fcn.004030c0
mov byte [ebp - 4], 4
mov eax, dword [esi + 0x1e0]
lea ebx, [esi + 0x20]
push edi
push 0
push 0
push eax
mov edx, dword [ebx]
push edx
mov eax, dword [ebp - 0x20]
push eax
lea ecx, [ebp - 0xec]
call fcn.004f9510
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xec]
call fcn.005f647d
cmp eax, 1
jne 0x5bf14d
mov eax, dword [esi + 0x10]
test eax, eax
je 0x5bf00f
push 0
push 0x1472
push 0x111
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov dword [esi + 0x10], 0
mov ecx, dword [ebp - 0x74]
push ecx
mov edx, dword [ebp - 0x78]
push edx
mov ecx, esi
call fcn.005b7120
mov eax, dword [esi + 0x4f8]
test eax, eax
je 0x5bf0bb
cmp dword [esi + 0x4ac], 0
jne 0x5bf044
push eax
mov ecx, ebx
call fcn.005cee30
mov edx, dword [esi + 0x4ac]
test edx, edx
je 0x5bf0bb
mov edi, dword [ebp - 0x78]
mov eax, edi
lea ebx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x5bf056
sub eax, ebx
inc eax
push eax
push edi
push 1
push 0
push 0x68cb9c
push edx
mov edi, dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
call edi
cmp byte [esi + 0x1d0], 0
je 0x5bf09c
mov dword [ebp - 0x28], 1
push 4
lea eax, [ebp - 0x28]
push eax
push 4
push 0
push str.bUNRA
mov ecx, dword [esi + 0x4ac]
push ecx
call edi
push 0
mov edx, dword [ebp - 0x74]
push edx
push str.EncPassword
push 0x69b594
mov eax, dword [esi + 0x4ac]
push eax
call fcn.005ba240
add esp, 0x14
lea ecx, [ebp - 0x14]
call fcn.00402510
mov byte [ebp - 4], 6
mov ecx, dword [esi + 0xacc]
push ecx
mov edx, dword [0x75e9bc]
push edx
push str._r_n_s_r_ndownlResult___ldsetting_new_login_r_n
lea eax, [ebp - 0x14]
push eax
call fcn.00402f80
add esp, 0x10
mov ecx, dword [ebp - 0x14]
push ecx
lea ecx, [esi + 0x52c]
call fcn.0056a780
cmp byte [ebp + 0xc0], 0
je 0x5bf121
mov eax, dword [esi + 0x14]
test eax, eax
je 0x5bf121
mov esi, dword [esi + 0x4f8]
test esi, esi
je 0x5bf121
push esi
push 0x1431
push 0x111
push eax
call dword [sym.imp.USER32.dll_PostMessageA]
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x14]
call fcn.00402580
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xec]
call fcn.004ba880
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x20]
call fcn.00402580
jmp 0x5bef1c
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xec]
call fcn.004ba880
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x20]
call fcn.00402580
mov edx, dword [0x75dd28]
push edx
mov eax, dword [0x75e9bc]
push eax
jmp 0x5bf750
push 0x67997c
lea ecx, [esi + 0x3c0]
call fcn.0054f250
cmp dword [esi + 8], ebx
jne 0x5bf32f
cmp dword [esi + 4], ebx
jne 0x5bf32f
cmp byte [ebp + 0xbc], 0
je 0x5bf32f
push ebx
mov ecx, esi
call fcn.005b6e00
mov eax, dword [esi + 0x528]
cmp eax, ebx
je 0x5bf1dc
mov ecx, dword [eax + 0x20]
push ecx
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x5bf1dc
mov edx, dword [esi + 0x528]
mov eax, dword [edx + 0x20]
push eax
call fcn.005f908d
mov ebx, eax
jmp 0x5bf1de
xor ebx, ebx
mov ecx, dword [esi + 0x44]
push ecx
call fcn.0049c6b0
add esp, 4
push eax
lea ecx, [ebp - 0x18]
call fcn.004030c0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x20]
call fcn.00402510
mov byte [ebp - 4], 8
cmp byte [esi + 0xa92], 0
jne 0x5bf243
cmp dword [0x75e774], 2
jne 0x5bf21e
test byte [0x75e788], 0x10
jne 0x5bf243
lea edi, [esi + 0x95c]
mov eax, dword [edi]
lea ecx, [ebp - 0x20]
test eax, eax
je 0x5bf235
push eax
call fcn.0054f250
jmp 0x5bf278
lea edx, [esi + 0xa9c]
push edx
call fcn.00405920
jmp 0x5bf278
lea edi, [esi + 0x95c]
mov eax, dword [edi]
lea edx, [ebp - 0x20]
test eax, eax
je 0x5bf25c
mov ecx, dword [esi + 0x960]
push ecx
push eax
jmp 0x5bf26a
mov eax, dword [esi + 0xaa0]
push eax
mov ecx, dword [esi + 0xa9c]
push ecx
push str._s:_ld
push edx
call fcn.00402f80
add esp, 0x10
mov eax, dword [esi + 0xa7c]
push ebx
movzx ecx, byte [esi + 0xa92]
push ecx
push 1
push eax
mov edx, dword [ebp - 0x20]
push edx
mov eax, dword [ebp - 0x18]
push eax
lea ecx, [ebp - 0xec]
call fcn.004f9510
mov bl, 9
mov byte [ebp - 4], bl
lea ecx, [ebp - 0xec]
call fcn.005f647d
cmp eax, 1
jne 0x5bf308
mov byte [esi + 0xa95], al
mov eax, dword [esi + 0x10]
test eax, eax
je 0x5bf2d2
push 0
push 0x1472
push 0x111
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov dword [esi + 0x10], 0
mov byte [ebp - 0x24], 1
cmp dword [edi], 0
je 0x5bf351
mov ecx, dword [ebp - 0x78]
push ecx
mov ecx, edi
call fcn.004b7d40
test eax, eax
jne 0x5bf304
mov edx, dword [ebp - 0x74]
push edx
mov ecx, edi
call fcn.004b7db0
test eax, eax
je 0x5bf385
mov byte [ebp - 0x24], 0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0xec]
call fcn.004ba880
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x20]
call fcn.00402580
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x18]
call fcn.00402580
cmp byte [esi + 0xa92], 0
mov eax, 0x75f630
jne 0x5bf342
mov eax, 0x75e9c0
mov eax, dword [eax]
mov ecx, dword [0x75dd28]
push ecx
push eax
jmp 0x5bf750
mov byte [esi + 0xab9], 1
mov eax, dword [ebp - 0x78]
push eax
push 0x678ea8
lea ecx, [esi + 0xaa4]
push ecx
call fcn.00402f80
mov edx, dword [ebp - 0x74]
push edx
push 0x678ea8
lea eax, [esi + 0xaa8]
push eax
call fcn.00402f80
add esp, 0x18
lea ecx, [ebp - 0x14]
call fcn.00402510
mov byte [ebp - 4], 0xa
cmp byte [esi + 0xa92], 0
mov eax, dword [0x75f630]
jne 0x5bf3a4
mov eax, dword [0x75e9c0]
mov ecx, dword [esi + 0xacc]
push ecx
push eax
push str._r_n_s_r_ndownlResult___ldsetting_new_login_r_n
lea edx, [ebp - 0x14]
push edx
call fcn.00402f80
add esp, 0x10
mov eax, dword [ebp - 0x14]
push eax
lea ecx, [esi + 0x52c]
call fcn.0056a780
cmp byte [ebp + 0xc0], 0
je 0x5bf3f8
mov eax, dword [esi + 0x14]
test eax, eax
je 0x5bf3f8
mov esi, dword [esi + 0x4f8]
test esi, esi
je 0x5bf3f8
push esi
push 0x1431
push 0x111
push eax
call dword [sym.imp.USER32.dll_PostMessageA]
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x14]
call fcn.00402580
mov byte [ebp - 4], 8
lea ecx, [ebp - 0xec]
call fcn.004ba880
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x20]
call fcn.00402580
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x18]
call fcn.00402580
jmp 0x5bef1c
mov edx, dword [0x75dd28]
push edx
mov eax, dword [0x75e9d4]
push eax
jmp 0x5bf750
mov ecx, dword [0x75dd28]
push ecx
mov edx, dword [0x75ec08]
push edx
jmp 0x5bf750
mov ecx, dword [0x75e9cc]
jmp 0x5bf749
mov edx, dword [0x75dd28]
push edx
mov eax, dword [0x75ea68]
push eax
jmp 0x5bf750
mov ecx, dword [0x75dd28]
push ecx
mov edx, dword [0x75ea6c]
push edx
jmp 0x5bf750
mov ecx, dword [0x75ea70]
jmp 0x5bf749
mov edx, dword [0x75dd28]
push edx
mov eax, dword [0x75e9b8]
push eax
jmp 0x5bf750
mov ecx, dword [0x75dd28]
push ecx
mov edx, dword [0x75ebd4]
push edx
jmp 0x5bf750
mov ecx, dword [0x75ec1c]
jmp 0x5bf749
mov edx, dword [0x75dd28]
push edx
mov eax, dword [0x75ec6c]
push eax
jmp 0x5bf750
mov ecx, dword [0x75dd28]
push ecx
mov edx, dword [0x75ec24]
push edx
jmp 0x5bf750
mov ecx, dword [0x75ecb4]
jmp 0x5bf749
mov edx, dword [0x75dd28]
push edx
mov eax, dword [0x75ec2c]
push eax
jmp 0x5bf750
lea ecx, [ebp + 0xa0]
push ecx
mov edx, dword [esi + 0x50c]
push edx
mov eax, dword [esi + 0x508]
push eax
mov ecx, esi
call fcn.005b77a0
mov dword [ebp], ebx
mov dword [ebp + 8], ebx
xor ecx, ecx
mov word [ebp + 4], cx
mov byte [ebp - 4], 0xd
lea edx, [ebp]
push edx
mov ecx, esi
call fcn.005b8b30
lea eax, [ebp + 0xa0]
push eax
lea ecx, [ebp + 0x3c]
call fcn.00406fb0
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x18]
call fcn.00402510
mov byte [ebp - 4], 0xf
mov ecx, dword [esi + 0x50c]
push ecx
mov edx, dword [esi + 0x508]
push edx
push str._I64d
lea eax, [ebp - 0x18]
push eax
call fcn.00402f80
add esp, 0x10
mov ecx, dword [ebp - 0x18]
push ecx
lea ecx, [ebp + 0x48]
call fcn.00406fb0
mov byte [ebp - 4], 0x10
push str._I64d
mov edx, dword [0x75ebf4]
push edx
call fcn.006218e0
add esp, 8
test eax, eax
je 0x5bf5aa
push 0x678ea8
push str._I64d
jmp 0x5bf5cb
push 0x6795fc
mov eax, dword [0x75ebf4]
push eax
call fcn.006218e0
add esp, 8
test eax, eax
je 0x5bf5d5
push 0x678ea8
push 0x6795fc
mov ecx, 0x75ebf4
call fcn.00402c20
cmp dword [esi + 0x54], ebx
je 0x5bf5df
mov edi, dword [esi + 0x54]
jmp 0x5bf5e2
lea edi, [esi + 0x58]
mov edx, dword [ebp + 0x48]
cmp edx, ebx
jne 0x5bf5ec
lea edx, [ebp + 0x4c]
mov ecx, dword [ebp + 0x3c]
cmp ecx, ebx
jne 0x5bf5f6
lea ecx, [ebp + 0x40]
mov eax, dword [ebp]
cmp eax, ebx
jne 0x5bf600
lea eax, [ebp + 4]
mov ebx, dword [0x75dd28]
push ebx
push edi
push edx
push ecx
push eax
mov ecx, dword [0x75ebf4]
push ecx
lea ecx, [ebp + 0x54]
call fcn.0043bd30
mov byte [ebp - 4], 0xf
lea ecx, [ebp + 0x48]
call fcn.00401210
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x18]
call fcn.00402580
mov byte [ebp - 4], 0xd
lea ecx, [ebp + 0x3c]
call fcn.00401210
mov byte [ebp - 4], 3
lea ecx, [ebp]
call fcn.00401210
jmp 0x5bf758
mov ecx, dword [0x75dd28]
push ecx
mov edx, dword [0x75eaa8]
push edx
jmp 0x5bf750
mov ecx, dword [0x75f418]
jmp 0x5bf749
mov edx, dword [0x75dd28]
push edx
mov eax, dword [0x75f4c4]
push eax
jmp 0x5bf750
lea eax, [esi + 0x530]
push eax
lea ecx, [ebp + 0x48]
call fcn.00402190
mov byte [ebp - 4], 0x13
mov eax, dword [ebp + 0x48]
cmp eax, ebx
jne 0x5bf69c
lea eax, [ebp + 0x4c]
mov edx, dword [0x75f10c]
mov ecx, dword [0x75dd28]
push ecx
push eax
push edx
lea ecx, [ebp + 0x54]
call fcn.004021c0
mov byte [ebp - 4], 3
lea ecx, [ebp + 0x48]
call fcn.00401210
jmp 0x5bf758
lea ecx, [ebp - 0x14]
call fcn.00402510
mov byte [ebp - 4], 0x14
mov eax, dword [0x75f5e0]
push eax
push 0x678ea8
lea ecx, [ebp - 0x14]
push ecx
call fcn.00402f80
push 0x67b29c
mov edx, dword [ebp - 0x14]
push edx
call fcn.006229a0
add esp, 0x14
cmp eax, ebx
je 0x5bf6fc
mov byte [eax], 0
mov eax, dword [0x75dd28]
push eax
mov ecx, dword [ebp - 0x14]
push ecx
lea ecx, [ebp + 0x54]
call fcn.00401990
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x14]
call fcn.00402580
jmp 0x5bf758
mov edx, dword [0x75dd28]
push edx
mov eax, dword [0x75f780]
push eax
jmp 0x5bf750
mov ecx, dword [0x75dd28]
push ecx
mov edx, dword [0x75f784]
push edx
jmp 0x5bf750
mov ecx, dword [0x75f788]
jmp 0x5bf749
mov ecx, dword [0x75e9d0]
mov eax, dword [0x75dd28]
push eax
push ecx
lea ecx, [ebp + 0x54]
call fcn.00401990
mov eax, dword [esi + 0x14]
test eax, eax
je 0x5bf777
mov edx, dword [esi + 0x4f8]
push edx
push 0x13c7
push 0x111
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [esi + 0xacc]
add eax, 0xffff8abe
cmp eax, 0x38
ja case.0x5bf792.30019
movzx eax, byte [eax + 0x5c05cc]
jmp dword [eax*4 + 0x5c05c0]
mov ecx, dword [esi + 0x158]
or ecx, dword [esi + 0x15c]
je case.0x5bf792.30019
push 0x679978
lea ecx, [ebp + 0x54]
call fcn.00405330
mov edx, dword [0x75dd28]
push edx
mov eax, dword [0x75f4c4]
push eax
lea ecx, [ebp + 0x48]
call fcn.0045e870
mov byte [ebp - 4], 0x18
mov eax, dword [ebp + 0x48]
test eax, eax
jne 0x5bf7db
lea eax, [ebp + 0x4c]
push eax
lea ecx, [ebp + 0x54]
call fcn.00405330
mov byte [ebp - 4], 3
lea ecx, [ebp + 0x48]
call fcn.00401210
mov cl, byte [esi + 0x1a5]
test cl, cl
jne 0x5bf966
mov eax, dword [esi + 0x160]
test eax, eax
jle 0x5bf819
mov edx, dword [esi + 0x164]
sub edx, eax
cmp edx, 0x3c
jl 0x5bf951
cmp byte [0x75e2ab], 0
jne 0x5bf90b
mov eax, dword [esi + 0x108]
cmp eax, dword [esi + 0x158]
jne 0x5bf90b
mov ecx, dword [esi + 0x10c]
cmp ecx, dword [esi + 0x15c]
jne 0x5bf90b
cmp dword [esi + 0xdc], 0
je 0x5bf90b
mov ebx, dword [esi + 0x134]
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x5bf862
sub eax, edx
je 0x5bf90b
mov edi, dword [esi + 0x104]
mov eax, edi
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x5bf880
sub eax, edx
je 0x5bf90b
mov edx, ebx
mov eax, edi
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x5bf8b3
test cl, cl
je 0x5bf8af
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x5bf8b3
add eax, 2
add edx, 2
test cl, cl
jne 0x5bf893
xor eax, eax
jmp 0x5bf8b8
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x5bf90b
mov ecx, ebx
mov eax, dword [esi + 0xdc]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x5bf8e4
test dl, dl
je 0x5bf8e0
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x5bf8e4
add eax, 2
add ecx, 2
test dl, dl
jne 0x5bf8c4
xor eax, eax
jmp 0x5bf8e9
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x5bf90b
mov byte [ebp - 0x21], 1
mov edx, dword [0x75dd28]
push edx
mov eax, dword [0x75f3c0]
push eax
lea ecx, [ebp + 0x54]
call fcn.00401990
jmp case.0x5bf792.30019
push str._r_n_r_n
lea ecx, [ebp + 0x54]
call fcn.00405330
mov ecx, dword [0x75dd28]
push ecx
mov edx, dword [0x75f4e4]
push edx
lea ecx, [ebp + 0x48]
call fcn.0045e870
mov byte [ebp - 4], 0x1a
mov eax, dword [ebp + 0x48]
test eax, eax
jne 0x5bf93c
lea eax, [ebp + 0x4c]
push eax
lea ecx, [ebp + 0x54]
call fcn.00405330
mov byte [ebp - 4], 3
lea ecx, [ebp + 0x48]
jmp 0x5bfac7
test cl, cl
jne 0x5bf966
push 1
mov eax, dword [esi + 0x4f8]
push eax
lea ecx, [esi + 0x20]
call fcn.005d1440
cmp dword [esi + 0x50c], 0
jl 0x5bf995
jg 0x5bf97a
cmp dword [esi + 0x508], 0
jbe 0x5bf995
mov ecx, dword [0x75dd28]
push ecx
mov edx, dword [0x75f4e8]
push edx
lea ecx, [ebp + 0x54]
call fcn.00401990
jmp case.0x5bf792.30019
xor bl, bl
test byte [esi + 0x17c], 0x70
je 0x5bf9a2
mov bl, 1
xor edi, edi
mov dword [ebp + 0xc], edi
mov dword [ebp + 0x14], edi
xor eax, eax
mov word [ebp + 0x10], ax
mov byte [ebp - 4], 0x19
lea ecx, [ebp + 0xc]
push ecx
mov ecx, esi
call fcn.005b8b30
test bl, bl
je 0x5bfa89
mov edx, dword [esi + 0xe8]
mov eax, edx
lea ebx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x5bf9d2
mov ecx, 0x75e934
sub eax, ebx
je 0x5bf9ea
push edx
call fcn.00545e60
jmp 0x5bf9f3
mov edx, dword [esi + 0x20]
push edx
call fcn.00545d40
cmp dword [esi + 0x11c], edi
je 0x5bfa03
mov eax, dword [esi + 0x11c]
jmp 0x5bfa09
lea eax, [esi + 0x120]
lea edx, [eax + 2]
lea esp, [esp]
mov cx, word [eax]
add eax, 2
cmp cx, di
jne 0x5bfa10
sub eax, edx
sar eax, 1
je 0x5bfa39
cmp dword [esi + 0x11c], edi
je 0x5bfa31
mov eax, dword [esi + 0x11c]
jmp 0x5bfa43
lea eax, [esi + 0x120]
jmp 0x5bfa43
mov eax, dword [ebp + 0xc]
cmp eax, edi
jne 0x5bfa43
lea eax, [ebp + 0x10]
mov ecx, dword [0x75dd28]
push ecx
push eax
mov edx, dword [0x75f3c4]
push edx
lea ecx, [ebp + 0x54]
call fcn.004021c0
test dword [esi + 0x17c], 0x100
jne 0x5bfac0
mov eax, dword [esi + 0x160]
cmp eax, edi
jle 0x5bfac0
mov ecx, dword [esi + 0x164]
sub ecx, eax
cmp ecx, 0x3c
jge 0x5bfac0
cmp byte [ebp - 0x19], 0
jne 0x5bfac0
mov byte [ebp - 0x1a], 1
jmp 0x5bfac0
cmp byte [esi + 0x1a3], 0
je 0x5bfaaa
cmp byte [0x75e2ab], 0
jne 0x5bfaaa
mov edx, dword [0x75dd28]
push edx
mov eax, dword [0x75f3c0]
push eax
jmp 0x5bfab8
mov ecx, dword [0x75dd28]
push ecx
mov edx, dword [0x75f4e8]
push edx
lea ecx, [ebp + 0x54]
call fcn.00401990
mov byte [ebp - 4], 3
lea ecx, [ebp + 0xc]
call fcn.00401210
cmp dword [esi + 0xacc], 0x7582
je 0x5bfb8a
cmp dword [esi + 0x52c], 0
je 0x5bfb8a
push str._r_n_r_n
lea ecx, [ebp + 0x54]
call fcn.00405330
xor edi, edi
mov dword [ebp + 0xa4], edi
mov dword [ebp + 0xac], edi
xor eax, eax
mov word [ebp + 0xa8], ax
mov bl, 0x1b
mov byte [ebp - 4], bl
mov ecx, dword [0x75dd28]
push ecx
mov edx, dword [0x75eeec]
push edx
lea ecx, [ebp + 0xa4]
call fcn.00401990
mov eax, dword [ebp + 0xa4]
cmp eax, edi
jne 0x5bfb3b
lea eax, [ebp + 0xa8]
push eax
lea ecx, [ebp + 0x54]
call fcn.00405330
mov eax, dword [0x75dd28]
push eax
mov ecx, dword [esi + 0x52c]
push ecx
lea ecx, [ebp + 0x48]
call fcn.0045e870
mov byte [ebp - 4], 0x1c
mov eax, dword [ebp + 0x48]
cmp eax, edi
jne 0x5bfb67
lea eax, [ebp + 0x4c]
push eax
lea ecx, [ebp + 0x54]
call fcn.00405330
mov byte [ebp - 4], bl
lea ecx, [ebp + 0x48]
call fcn.00401210
mov byte [ebp - 4], 3
lea ecx, [ebp + 0xa4]
call fcn.00401210
cmp byte [ebp - 0x19], 0
je 0x5bfcb8
push str._r_n_r_n
lea ecx, [ebp + 0x54]
call fcn.00405330
mov edx, dword [0x75dd28]
push edx
mov eax, dword [0x75f754]
push eax
lea ecx, [ebp + 0x3c]
call fcn.0045e870
mov bl, 0x1d
mov byte [ebp - 4], bl
mov eax, dword [ebp + 0x3c]
test eax, eax
jne 0x5bfbc5
lea eax, [ebp + 0x40]
push eax
lea ecx, [ebp + 0x54]
call fcn.00405330
mov byte [ebp - 0x22], 0
mov edx, dword [esi + 0x148]
mov eax, edx
lea edi, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x5bfbe0
sub eax, edi
je 0x5bfcac
push 0x5c
push edx
call fcn.006229e0
add esp, 8
mov edi, eax
test edi, edi
je 0x5bfc03
inc edi
jmp 0x5bfc09
mov edi, dword [esi + 0x148]
push 0xa
push str.chromeexe
push edi
call fcn.00624cad
add esp, 0xc
test eax, eax
je 0x5bfc63
push str.idmbrbtn.dll
push edi
call fcn.00621d5e
add esp, 8
test eax, eax
jne 0x5bfcac
mov eax, dword [esi + 0x1bc]
push str.Chrome
push eax
call fcn.006218e0
add esp, 8
test eax, eax
je 0x5bfcac
mov eax, dword [esi + 0x1bc]
push str.Firefox
push eax
call fcn.006218e0
add esp, 8
test eax, eax
jne 0x5bfcac
mov byte [ebp - 0x22], 1
push 0x685f0c
lea ecx, [ebp + 0x54]
call fcn.00405330
mov ecx, dword [0x75dd28]
push ecx
mov edx, dword [0x75f758]
push edx
lea ecx, [ebp + 0x48]
call fcn.0045e870
mov byte [ebp - 4], 0x1e
mov eax, dword [ebp + 0x48]
test eax, eax
jne 0x5bfc98
lea eax, [ebp + 0x4c]
push eax
lea ecx, [ebp + 0x54]
call fcn.00405330
mov byte [ebp - 4], bl
lea ecx, [ebp + 0x48]
call fcn.00401210
mov byte [ebp - 4], 3
lea ecx, [ebp + 0x3c]
call fcn.00401210
mov eax, dword [ebp + 0x54]
xor ebx, ebx
cmp eax, ebx
jne 0x5bfcc4
lea eax, [ebp + 0x58]
mov ecx, dword [0x75dd28]
push ecx
push eax
lea edx, [ebp - 0x2c]
push edx
call fcn.00402a80
add esp, 0xc
mov byte [ebp - 4], 0x1f
lea ecx, [esi + 0x20]
push ebx
mov eax, dword [esi + 0x4f8]
push eax
mov edx, dword [ebp - 0x2c]
push edx
mov eax, dword [esi + 0xacc]
push eax
call fcn.005cb660
lea edi, [esi + 0x52c]
mov ecx, dword [ebp - 0x2c]
push ecx
mov ecx, edi
call fcn.0056a780
mov edx, dword [esi + 0xacc]
push edx
push str._r_ndownlResult___ld_r_n
lea eax, [ebp + 0x60]
push eax
call fcn.0062311b
add esp, 0xc
lea ecx, [ebp + 0x60]
push ecx
mov ecx, edi
call fcn.0056a780
mov eax, dword [esi + 0xacc]
add eax, 0xffff8abe
cmp eax, 0x38
ja case.0x5bfd46.30019
movzx edx, byte [eax + 0x5c0614]
jmp dword [edx*4 + 0x5c0608]
mov eax, dword [esi + 0x158]
or eax, dword [esi + 0x15c]
je case.0x5bfd46.30019
cmp dword [esi + 8], ebx
jne case.0x5bfd46.30019
cmp dword [esi + 4], ebx
jne case.0x5bfd46.30019
cmp byte [ebp + 0xbc], 0
je case.0x5bfd46.30019
cmp dword [esi + 0x14], ebx
je case.0x5bfd46.30019
cmp dword [esi + 0x4f8], ebx
je case.0x5bfd46.30019
cmp byte [esi + 0x1a5], 0
jne case.0x5bfd46.30019
cmp byte [ebp - 0x21], 0
jne case.0x5bfd46.30019
push ebx
mov ecx, esi
call fcn.005b6e00
mov ecx, dword [esi + 0x4f8]
push ecx
push 0x1463
push 0x111
mov edx, dword [esi + 0x14]
push edx
call dword [sym.imp.USER32.dll_PostMessageA]
mov byte [esi + 0x371], 0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x2c]
call fcn.00402580
jmp 0x5bef1c
mov dword [ebp + 0x24], ebx
mov dword [ebp + 0x2c], ebx
xor eax, eax
mov word [ebp + 0x28], ax
mov byte [ebp - 4], 0x20
lea ecx, [ebp + 0x24]
push ecx
mov ecx, esi
call fcn.005b8b30
cmp dword [esi + 8], ebx
jne 0x5c0292
cmp dword [esi + 4], ebx
jne 0x5c0292
cmp byte [ebp + 0xbc], 0
je 0x5c0292
cmp dword [esi + 0x4f8], ebx
je 0x5c0292
cmp dword [esi + 0x524], ebx
jne 0x5c0292
mov eax, dword [esi + 0xacc]
cmp eax, 0x7540
je 0x5c0292
cmp eax, 0x7553
jne 0x5bfe86
mov eax, dword [ebp + 0x24]
cmp eax, ebx
mov ecx, eax
jne 0x5bfe3b
lea ecx, [ebp + 0x28]
mov eax, dword [ebp + 0x54]
cmp eax, ebx
jne 0x5bfe45
lea eax, [ebp + 0x58]
push 0x10024
push ecx
push eax
push ebx
call fcn.00473410
add esp, 0x10
cmp eax, 6
jne 0x5c0292
mov eax, dword [esi + 0x14]
cmp eax, ebx
je 0x5c0292
mov edx, dword [esi + 0x4f8]
push edx
push 0x13bb
push 0x111
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
jmp 0x5c0292
mov dword [ebp + 0x30], ebx
mov dword [ebp + 0x38], ebx
xor eax, eax
mov word [ebp + 0x34], ax
mov byte [ebp - 4], 0x21
mov eax, dword [ebp - 0x28]
cmp eax, ebx
je 0x5bfeaf
mov ecx, dword [0x75dd28]
push ecx
push eax
lea ecx, [ebp + 0x30]
call fcn.00401990
jmp 0x5bfec2
mov eax, dword [ebp + 0x24]
cmp eax, ebx
jne 0x5bfeb9
lea eax, [ebp + 0x28]
push eax
lea ecx, [ebp + 0x30]
call fcn.00401800
cmp dword [esi + 0xacc], 0x80090326
jne 0x5bff80
cmp dword [0x75dbac], ebx
jne 0x5bff80
xor edi, edi
mov dword [ebp + 0x3c], edi
mov dword [ebp + 0x44], edi
xor edx, edx
mov word [ebp + 0x40], dx
mov bl, 0x22
mov byte [ebp - 4], bl
mov eax, dword [0x75dd28]
push eax
mov ecx, dword [0x75f6e8]
push ecx
lea ecx, [ebp + 0x48]
call fcn.0045e870
mov byte [ebp - 4], 0x23
mov eax, dword [ebp + 0x48]
cmp eax, edi
mov ecx, eax
jne 0x5bff16
lea ecx, [ebp + 0x4c]
mov eax, dword [ebp + 0x54]
cmp eax, edi
jne 0x5bff20
lea eax, [ebp + 0x58]
push edi
push ecx
push eax
push str._s_r_n_r_n_r_n_s
lea ecx, [ebp + 0x3c]
call fcn.00402330
mov eax, dword [ebp + 0x30]
cmp eax, edi
mov ecx, eax
jne 0x5bff3c
lea ecx, [ebp + 0x34]
mov eax, dword [ebp + 0x3c]
cmp eax, edi
jne 0x5bff46
lea eax, [ebp + 0x40]
push 0x50034
push ecx
push eax
push edi
call fcn.00473410
add esp, 0x10
cmp eax, 6
jne 0x5bff69
push str.https:__www.internetdownloadmanager.com_support_xp_https_problems.html
push edi
call fcn.004b3db0
add esp, 8
mov byte [ebp - 4], bl
lea ecx, [ebp + 0x48]
call fcn.00401210
mov byte [ebp - 4], 0x21
lea ecx, [ebp + 0x3c]
jmp 0x5c027f
cmp byte [esi + 0x371], 0
je 0x5c00c1
mov dword [ebp + 0x48], ebx
mov dword [ebp + 0x50], ebx
xor edx, edx
mov word [ebp + 0x4c], dx
mov byte [ebp - 4], 0x24
mov eax, dword [0x75dd28]
push eax
mov ecx, dword [0x75f644]
push ecx
lea ecx, [ebp + 0x3c]
call fcn.0045e870
mov byte [ebp - 4], 0x25
mov eax, dword [ebp + 0x3c]
cmp eax, ebx
mov ecx, eax
jne 0x5bffc2
lea ecx, [ebp + 0x40]
mov eax, dword [ebp + 0x54]
cmp eax, ebx
jne 0x5bffcc
lea eax, [ebp + 0x58]
push ebx
push ecx
push eax
push str._s_r_n_r_n_r_n_s
lea ecx, [ebp + 0x48]
call fcn.00402330
mov eax, dword [ebp + 0x30]
cmp eax, ebx
mov ecx, eax
jne 0x5bffe8
lea ecx, [ebp + 0x34]
mov eax, dword [ebp + 0x48]
cmp eax, ebx
jne 0x5bfff2
lea eax, [ebp + 0x4c]
push 0x50034
push ecx
push eax
push ebx
call fcn.00473410
add esp, 0x10
cmp eax, 6
jne 0x5c00b0
lea ecx, [ebp - 0x14]
call fcn.00402510
mov bl, 0x26
mov byte [ebp - 4], bl
push 0
lea edx, [ebp - 0x14]
push edx
lea edi, [esi + 0x20]
mov ecx, edi
call fcn.005924c0
lea ecx, [ebp - 0x18]
call fcn.00402510
mov byte [ebp - 4], 0x27
mov eax, dword [edi]
test eax, eax
mov ecx, eax
jne 0x5c0041
mov ecx, 0x67997c
cmp byte [esi + 0xab8], 0
jne 0x5c0057
cmp dword [esi + 0x95c], 0
jne 0x5c0057
xor eax, eax
jmp 0x5c005c
mov eax, 1
push ecx
push eax
xor eax, eax
cmp byte [esi + 0x1ab], al
setne al
push eax
mov ecx, dword [esi + 0x1dc]
push ecx
mov edx, dword [esi + 0xacc]
push edx
push str.https:__www.internetdownloadmanager.com_register_new_faq_How_to_configure_Firewalls_for_IDM.html
push str._s_err_ldocr_ldv6_ldproxy_ldsrv_s
lea eax, [ebp - 0x18]
push eax
call fcn.00402f80
mov ecx, dword [ebp - 0x18]
push ecx
push 0
call fcn.004b3db0
add esp, 0x28
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x18]
call fcn.00402580
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x14]
call fcn.00402580
mov byte [ebp - 4], 0x24
lea ecx, [ebp + 0x3c]
call fcn.00401210
jmp 0x5c0278
mov eax, dword [ebp + 0x54]
cmp eax, ebx
jne 0x5c00cb
lea eax, [ebp + 0x58]
push eax
lea ecx, [ebp + 0x48]
call fcn.00402190
mov bl, 0x28
mov byte [ebp - 4], bl
cmp byte [ebp - 0x1a], 0
je 0x5c01d8
cmp byte [ebp - 0x21], 0
je 0x5c00f2
mov byte [ebp - 0x1a], 0
jmp 0x5c01d8
mov dword [ebp - 0x30], 1
test dword [esi + 0x17c], 0x100000
jne 0x5c01d8
mov edx, dword [esi + 0x148]
mov eax, edx
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x5c0114
sub eax, edi
je 0x5c01d8
push 0x5c
push edx
call fcn.006229e0
add esp, 8
mov edi, eax
test edi, edi
je 0x5c0137
inc edi
jmp 0x5c013d
mov edi, dword [esi + 0x148]
push 0xb
push str.firefox.exe
push edi
call fcn.0062797f
add esp, 0xc
test eax, eax
je 0x5c018d
push 0xa
push str.chrome.exe
push edi
call fcn.00624cad
add esp, 0xc
test eax, eax
je 0x5c018d
push 0xa
push str.msedge.exe
push edi
call fcn.00624cad
add esp, 0xc
test eax, eax
je 0x5c018d
push 0x13
push str.MicrosoftEdgeCP.exe
push edi
call fcn.00624cad
add esp, 0xc
test eax, eax
jne 0x5c01d8
mov dword [ebp - 0x30], 0
mov edx, dword [0x75dd28]
push edx
mov eax, dword [0x75f74c]
push eax
lea ecx, [ebp + 0x3c]
call fcn.0045e870
mov byte [ebp - 4], 0x29
push str._r_n_r_n
lea ecx, [ebp + 0x48]
call fcn.00405330
mov eax, dword [ebp + 0x3c]
test eax, eax
jne 0x5c01c4
lea eax, [ebp + 0x40]
push eax
lea ecx, [ebp + 0x48]
call fcn.00405330
mov byte [ebp - 4], bl
lea ecx, [ebp + 0x3c]
call fcn.00401210
mov eax, dword [esi + 0xacc]
cmp eax, 0xffffffff
je 0x5c01ef
cmp eax, 0x753b
mov eax, 0x30
jne 0x5c01f4
mov eax, 0x10
mov edx, dword [ebp + 0x30]
test edx, edx
jne 0x5c01fe
lea edx, [ebp + 0x34]
mov ecx, dword [ebp + 0x48]
test ecx, ecx
jne 0x5c0208
lea ecx, [ebp + 0x4c]
or eax, 0x50000
push eax
push edx
push ecx
push 0
call fcn.00473410
add esp, 0x10
cmp byte [ebp - 0x1a], 0
je 0x5c0264
cmp byte [esi + 0x37f], 0
je 0x5c0249
cmp dword [esi + 0x4ac], 0
jne 0x5c0241
mov ecx, dword [esi + 0x4f8]
push ecx
lea ecx, [esi + 0x20]
call fcn.005cee30
lea ecx, [esi + 0x20]
call fcn.005d2090
mov edx, dword [esi + 0x4f8]
push edx
push 0x14cd
push 0x111
mov eax, dword [esi + 0x14]
push eax
call dword [sym.imp.USER32.dll_PostMessageA]
cmp dword [esi + 0xacc], 0x757a
jne 0x5c0278
lea ecx, [esi + 0x20]
call fcn.005cd4a0
mov byte [ebp - 4], 0x21
lea ecx, [ebp + 0x48]
call fcn.00401210
mov byte [ebp - 4], 0x20
lea ecx, [ebp + 0x30]
call fcn.00401210
xor ebx, ebx
mov eax, dword [esi + 4]
cmp eax, ebx
je 0x5c03f4
cmp eax, 3
jne 0x5c02b2
cmp dword [esi + 0xacc], 0x756e
je 0x5c035a
cmp byte [ebp + 0xbc], 0
je 0x5c035a
cmp dword [esi + 0xacc], 0xffffffff
jne 0x5c02ef
push 0x50010
push 0x678d88
mov ecx, dword [0x75ec18]
push ecx
push ebx
call fcn.00472fb0
add esp, 0x10
push ebx
mov ecx, esi
call fcn.005b6e00
jmp 0x5c03fb
push 0x678d88
lea ecx, [ebp + 0x48]
call fcn.00406fb0
mov byte [ebp - 4], 0x2a
mov eax, dword [esi + 0xacc]
cmp eax, 0xffffffff
je 0x5c0317
cmp eax, 0x753b
mov eax, 0x30
jne 0x5c031c
mov eax, 0x10
mov edx, dword [ebp + 0x48]
cmp edx, ebx
jne 0x5c0326
lea edx, [ebp + 0x4c]
mov ecx, dword [ebp + 0x54]
cmp ecx, ebx
jne 0x5c0330
lea ecx, [ebp + 0x58]
or eax, 0x50000
push eax
push edx
push ecx
push ebx
call fcn.00473410
add esp, 0x10
mov byte [ebp - 4], 0x20
lea ecx, [ebp + 0x48]
call fcn.00401210
push ebx
mov ecx, esi
call fcn.005b6e00
jmp 0x5c03fb
cmp eax, 4
jne 0x5c03ea
cmp byte [esi + 0x371], 0
je 0x5c03ea
mov byte [esi + 0x371], 0
mov dword [ebp - 0x14], eax
lea edx, [ebp - 0x14]
push edx
lea eax, [ebp - 0x18]
push eax
push ebx
push ebx
push str.bHDIShwd
mov ecx, dword [0x75dbe4]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
je 0x5c03ea
mov dword [ebp - 0x18], 1
push 4
lea edx, [ebp - 0x18]
push edx
push 4
push ebx
push str.bHDIShwd
mov eax, dword [0x75dbe4]
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
call fcn.004110b0
push eax
lea ecx, [ebp - 0xc8]
call fcn.0052cbf0
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0xc8]
call fcn.005f647d
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0xc8]
call fcn.0052cc70
push ebx
mov ecx, esi
call fcn.005b6e00
jmp 0x5c03fb
mov byte [esi + 0x371], 0
mov byte [ebp - 4], 0x1f
lea ecx, [ebp + 0x24]
call fcn.00401210
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x2c]
call fcn.00402580
mov byte [ebp - 4], 0
lea ecx, [ebp + 0x54]
call fcn.00401210
mov dword [ebp - 4], 0xffffffff
jmp 0x5bef28