Function at 0x5c96b0
Capabilities:
Parse pe header
Query or enumerate registry value
Set registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x653210
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x200
push ebx
push esi
mov esi, ecx
xor ebx, ebx
push edi
mov dword [ebp - 0x58], esi
mov eax, dword [esi + 0x8e8]
mov dword [ebp - 0x10], esp
cmp eax, ebx
mov dword [ebp - 4], ebx
je 0x5c96ff
mov eax, dword [esi + 0x4a0]
push ebx
push ebx
push eax
lea ecx, [esi + 0x20]
call fcn.005e3590
mov dword [esi + 0x8e8], ebx
cmp dword [esi + 0xa84], ebx
je 0x5c9711
mov dword [esi + 0xa74], 0x7540
cmp dword [esi + 0xa74], 0x7573
jne 0x5c9744
push 3
mov ecx, esi
call fcn.005cf540
lea ecx, [esi + 0x4d4]
call fcn.00570250
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp dword [esi + 4], ebx
jne 0x5c9751
push ebx
mov ecx, esi
call fcn.005cf540
cmp dword [esi + 0xa84], ebx
je 0x5c97a3
push ebx
mov ecx, esi
call fcn.005cf540
mov ecx, dword [esi + 0x4a0]
mov edx, dword [0x6fdd24]
mov eax, dword [esi + 0xa74]
push 1
push ecx
push edx
push eax
lea ecx, [esi + 0x20]
call fcn.005df1f0
push str.Cancel_by_user._n
lea ecx, [esi + 0x4d4]
call fcn.0056fe30
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ecx, dword [esi + 0xa74]
cmp ecx, 0x7540
jne 0x5c97dd
push str.Cancel_by_user._n
lea ecx, [esi + 0x4d4]
call fcn.0056fe30
push 2
mov ecx, esi
call fcn.005cf540
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp ecx, 0x7566
mov byte [ebp - 0x51], 0
jg 0x5c9833
cmp ecx, 0x7565
jge case.0x5c9846.30065
cmp ecx, 0x7542
jg 0x5c981b
je case.0x5c9846.30065
cmp ecx, 0x17
je case.0x5c9846.30064
cmp ecx, 0x70
je case.0x5c9846.30064
cmp ecx, 0x753b
je case.0x5c9846.30064
jmp case.0x5c9846.30066
mov eax, ecx
sub eax, 0x7558
je case.0x5c9846.30064
sub eax, 8
je case.0x5c9846.30064
jmp case.0x5c9846.30066
lea eax, [ecx - 0x7570]
cmp eax, 0x12
ja case.0x5c9846.30066
xor edx, edx
mov dl, byte [eax + 0x5cc578]
jmp dword [edx*4 + 0x5cc56c]
mov al, byte [esi + 0x326]
test al, al
jne case.0x5c9846.30064
mov al, byte [esi + 0xaa6]
test al, al
jne 0x5c9a26
cmp dword [esi + 4], ebx
jne case.0x5c9846.30064
test dword [esi + 0x16c], 0x80000
je case.0x5c9846.30064
mov eax, dword [0x6f7b78]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x5c], eax
mov al, byte [esi + 0xa60]
mov byte [ebp - 4], 2
test al, al
je 0x5c98ab
mov eax, dword [esi + 0xa48]
mov ecx, dword [esi + 0xa44]
push eax
push ecx
jmp 0x5c98c2
mov eax, dword [esi + 0x904]
cmp eax, ebx
jne 0x5c98ba
mov eax, 0x6fc418
mov ecx, dword [esi + 0x908]
push ecx
push eax
lea edx, [ebp - 0x2c]
push str._s:_ld
push edx
call fcn.0061fae1
add esp, 0x10
mov byte [esi + 0xaa6], 1
push esi
call fcn.004af700
add esp, 4
push esi
call fcn.004b0640
mov al, byte [esi + 0xa60]
add esp, 4
test al, al
je 0x5c9906
mov eax, dword [esi + 0xa48]
mov ecx, dword [esi + 0xa44]
push eax
push ecx
jmp 0x5c991d
mov eax, dword [esi + 0x904]
cmp eax, ebx
jne 0x5c9915
mov eax, 0x6fc418
mov ecx, dword [esi + 0x908]
push ecx
push eax
lea edx, [ebp - 0x5c]
push str._s:_ld
push edx
call fcn.0061fae1
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x5c]
add esp, 0x10
push eax
push ecx
call fcn.0060a000
add esp, 8
test eax, eax
je 0x5c99dd
lea edi, [esi + 0x4d4]
push str.Try_via_the_same_proxy_as_in_browser_request._n
mov ecx, edi
call fcn.0056fe30
mov eax, dword [edi]
mov edx, dword [esi + 0xa74]
cmp eax, ebx
mov dword [esi + 0xaa8], edx
je 0x5c997f
push eax
lea eax, [esi + 0xaac]
push 0x6c910c
push eax
call fcn.0061fae1
add esp, 0xc
mov ecx, dword [esi + 0x14]
cmp ecx, ebx
je 0x5c99a4
mov eax, dword [esi + 0x4a0]
cmp eax, ebx
je 0x5c99a4
push eax
push 0x1431
push 0x111
push ecx
call dword [sym.imp.USER32.dll_PostMessageA]
jmp 0x5c99b2
push ebx
mov ecx, esi
mov dword [esi + 0x900], ebx
call fcn.005cfb70
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 1
call fcn.00622d8a
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0
call fcn.00622d8a
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov al, byte [esi + 0xaa7]
mov byte [esi + 0xaa6], 0
test al, al
je 0x5c9a02
push str.Cannot_detect_proxy_in_browser_proxy_script_:__n
lea ecx, [esi + 0x4d4]
call fcn.0056fe30
mov byte [ebp - 0x51], 1
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 1
call fcn.00622d8a
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0
call fcn.00622d8a
jmp 0x5c9a7a
mov al, byte [esi + 0xaa6]
test al, al
je 0x5c9a7a
cmp ecx, 0x756f
je 0x5c9a36
cmp ecx, 0x7559
jne 0x5c9a73
mov ecx, dword [esi + 0xaa8]
mov edx, dword [esi + 0xaac]
mov dword [esi + 0xa74], ecx
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x5c9a64
push edx
lea ecx, [esi + 0x4d4]
call fcn.00570270
jmp 0x5c9a6f
lea ecx, [esi + 0x4d4]
call fcn.00570330
mov byte [ebp - 0x51], 1
mov byte [esi + 0xaa6], 0
mov byte [ebp - 0x5d], 0
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x14], ebx
mov word [ebp - 0x18], bx
mov eax, dword [esi + 0xa74]
mov byte [ebp - 4], 3
cmp eax, 0x7550
jg 0x5ca064
je case.0x5ca07a.30034
cmp eax, 0x274c
jg 0x5c9f0d
je 0x5c9ff1
cmp eax, 0x271d
jg 0x5c9e62
je 0x5c9e47
cmp eax, 0xffffffff
jg 0x5c9da4
je 0x5c9c12
cmp eax, 0x80090304
je case.0x5ca07a.30034
cmp eax, 0x8009030e
je case.0x5ca07a.30034
cmp eax, 0xfffffffc
je case.0x5ca07a.30034
mov eax, dword [esi + 0x44]
cmp eax, 4
je case.0x5ca07a.30034
cmp eax, 5
je case.0x5ca07a.30034
lea ecx, [esi + 0x4d8]
mov dword [ebp - 0x28], ebx
push ecx
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x20], ebx
mov word [ebp - 0x24], bx
call fcn.00401f20
mov eax, dword [ebp - 0x28]
mov byte [ebp - 4], 0x40
cmp eax, ebx
jne 0x5c9b2f
lea eax, [ebp - 0x24]
mov edi, dword [0x6fdf70]
cmp edi, ebx
je 0x5c9bff
test eax, eax
je 0x5c9bff
xor ebx, ebx
push eax
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x30], ebx
mov word [ebp - 0x34], bx
call fcn.00401f20
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x41
call fcn.00401070
lea ecx, [ebp - 0x6c]
call fcn.004027c0
push ebx
push edi
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 0x42
call fcn.004027e0
mov edi, dword [ebp - 0x64]
lea ecx, [ebp - 0x38]
call fcn.00401f10
push eax
call fcn.00609a4e
lea ebx, [eax + edi + 2]
lea edi, [ebx + ebx]
push edi
call fcn.00622acb
mov edx, eax
add esp, 8
test edx, edx
mov dword [ebp - 0x1c], edx
je 0x5c9be7
mov ecx, edi
mov edi, edx
mov edx, ecx
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
lea ecx, [ebp - 0x38]
call fcn.00401f10
lea ecx, [ebp - 0x6c]
mov edi, eax
call fcn.00401f10
push edi
push eax
mov eax, dword [ebp - 0x1c]
push ebx
push eax
call fcn.006099de
mov ecx, dword [ebp - 0x1c]
push ecx
call fcn.00609a4e
add esp, 0x14
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 0x41
call fcn.00401070
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x40
call fcn.00401070
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 3
call fcn.00401070
xor ebx, ebx
jmp 0x5cad4c
mov eax, dword [esi + 0x44]
cmp eax, 4
je case.0x5ca07a.30034
cmp eax, 5
je case.0x5ca07a.30034
lea edx, [esi + 0x4d8]
lea ecx, [ebp - 0x50]
push edx
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x48], ebx
mov word [ebp - 0x4c], bx
call fcn.00401f20
lea eax, [esi + 0xac8]
lea ecx, [ebp - 0x44]
push eax
mov byte [ebp - 4], 0x3b
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x3c], ebx
mov word [ebp - 0x40], bx
call fcn.00401f20
mov eax, dword [ebp - 0x44]
cmp eax, ebx
mov ebx, eax
jne 0x5c9c69
lea ebx, [ebp - 0x40]
mov eax, dword [ebp - 0x50]
test eax, eax
mov edi, eax
jne 0x5c9c75
lea edi, [ebp - 0x4c]
mov eax, dword [0x6fdf74]
test eax, eax
je 0x5c9d85
test edi, edi
je 0x5c9d85
test ebx, ebx
je 0x5c9d85
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x20], ecx
mov word [ebp - 0x24], cx
push ecx
push eax
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x3d
call fcn.004027e0
push edi
lea ecx, [ebp - 0x6c]
call fcn.00401ee0
push ebx
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0x3e
call fcn.00401ee0
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x3f
call fcn.00401070
mov edi, dword [ebp - 0x20]
lea ecx, [ebp - 0x6c]
call fcn.00401f10
lea ecx, [ebp - 0x78]
mov ebx, eax
call fcn.00401f10
push eax
call fcn.00609a4e
mov edx, eax
push ebx
mov dword [ebp + 0xc], edx
call fcn.00609a4e
mov ecx, dword [ebp + 0xc]
add edi, ecx
lea ebx, [eax + edi + 3]
lea edi, [ebx + ebx]
push edi
call fcn.00622acb
mov edx, eax
add esp, 0xc
test edx, edx
mov dword [ebp - 0x1c], edx
je 0x5c9d61
mov ecx, edi
mov edi, edx
mov edx, ecx
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
lea ecx, [ebp - 0x78]
call fcn.00401f10
lea ecx, [ebp - 0x6c]
mov edi, eax
call fcn.00401f10
lea ecx, [ebp - 0x28]
mov esi, eax
call fcn.00401f10
push edi
push esi
push eax
mov eax, dword [ebp - 0x1c]
push ebx
push eax
call fcn.006099de
mov ecx, dword [ebp - 0x1c]
push ecx
call fcn.00609a4e
mov esi, dword [ebp - 0x58]
add esp, 0x18
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0x3e
call fcn.00401070
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 0x3d
call fcn.00401070
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x3c
call fcn.00401070
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x3b
call fcn.00401070
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 3
call fcn.00401070
xor ebx, ebx
jmp 0x5cad4c
cmp eax, 5
je 0x5c9e3b
cmp eax, 0x17
je 0x5c9e2e
cmp eax, 0x70
jne case.0x5ca07a.30055
mov eax, dword [0x6f7b78]
mov dword [ebp + 0xc], eax
push ebx
lea ecx, [ebp - 0x2c]
push ebx
push ecx
push 0x400
push 0x70
push ebx
push 0x1100
mov byte [ebp - 4], 0x36
call dword [sym.imp.KERNEL32.dll_FormatMessageA]
mov edx, dword [ebp - 0x2c]
lea eax, [ebp + 0xc]
push edx
push 0x6c910c
push eax
call fcn.0061fae1
mov ecx, dword [ebp - 0x2c]
add esp, 0xc
push ecx
call dword [sym.imp.KERNEL32.dll_LocalFree]
mov edx, dword [ebp + 0xc]
lea ecx, [esi + 0x4d4]
push edx
call fcn.00570270
mov eax, dword [0x6fdf68]
push ebx
push eax
lea ecx, [ebp - 0x1c]
call fcn.004027e0
lea ecx, [ebp + 0xc]
mov byte [ebp - 4], 3
call fcn.00622d8a
jmp 0x5cad4c
mov ecx, dword [0x6fd4c4]
push ebx
push ecx
jmp 0x5cad44
mov edx, dword [0x6fd934]
push ebx
jmp 0x5cad43
mov eax, dword [0x6fdf5c]
push ebx
push eax
lea ecx, [ebp - 0x1c]
call fcn.004027e0
mov byte [esi + 0x339], 1
jmp 0x5cad4c
add eax, 0xffffd8da
cmp eax, 0x20
ja case.0x5ca07a.30055
xor ecx, ecx
mov cl, byte [eax + 0x5cc5ac]
jmp dword [ecx*4 + 0x5cc58c]
mov edx, dword [0x6f7b78]
mov dword [ebp + 0xc], edx
mov eax, dword [0x6fd838]
mov ecx, dword [0x6fdf68]
push eax
push ecx
lea edx, [ebp + 0xc]
push str._s_r_n_r_n_s
push edx
mov byte [ebp - 4], 0x2b
call fcn.0061fae1
mov eax, dword [ebp + 0xc]
add esp, 0x10
lea ecx, [ebp - 0x1c]
push ebx
push eax
call fcn.004027e0
lea ecx, [ebp + 0xc]
mov byte [esi + 0x339], 1
mov byte [ebp - 4], 3
call fcn.00622d8a
jmp 0x5cad4c
mov ecx, dword [0x6fdf58]
push ebx
push ecx
jmp 0x5cad44
mov edx, dword [0x6fdf54]
push ebx
jmp 0x5cad43
mov eax, dword [0x6fdf44]
push ebx
push eax
jmp 0x5cad44
mov ecx, dword [0x6fdf40]
push ebx
push ecx
jmp 0x5cad44
mov edx, dword [0x6fdf3c]
push ebx
jmp 0x5cad43
cmp eax, 0x7539
jg 0x5c9ffd
je case.0x5ca07a.30034
cmp eax, 0x2af9
jg 0x5c9f78
je 0x5c9f5d
sub eax, 0x274d
je 0x5c9f53
sub eax, 3
je 0x5c9f46
dec eax
jne case.0x5ca07a.30055
mov eax, dword [0x6fdf48]
push ebx
push eax
jmp 0x5cad44
mov ecx, dword [0x6fdf50]
push ebx
push ecx
jmp 0x5cad44
mov edx, dword [0x6fdf60]
push ebx
push edx
jmp 0x5c9f64
mov eax, dword [0x6fdf4c]
push ebx
push eax
lea ecx, [ebp - 0x1c]
call fcn.004027e0
mov byte [esi + 0x339], 1
jmp 0x5cad4c
cmp eax, 0x2afc
jg 0x5c9fdb
je 0x5c9f8b
cmp eax, 0x2afa
jmp 0x5c9aed
mov ecx, dword [0x6f7b78]
mov dword [ebp + 0xc], ecx
mov edx, dword [0x6fd838]
mov eax, dword [0x6fdd48]
push edx
push eax
lea ecx, [ebp + 0xc]
push str._s_r_n_r_n_s
push ecx
mov byte [ebp - 4], 0x2c
call fcn.0061fae1
mov edx, dword [ebp + 0xc]
add esp, 0x10
lea ecx, [ebp - 0x1c]
push ebx
push edx
call fcn.004027e0
lea ecx, [ebp + 0xc]
mov byte [esi + 0x339], 1
mov byte [ebp - 4], 3
call fcn.00622d8a
jmp 0x5cad4c
cmp eax, 0x7532
jl case.0x5ca07a.30055
cmp eax, 0x7533
jg case.0x5ca07a.30055
mov eax, dword [0x6fdd08]
push ebx
push eax
jmp 0x5cad44
add eax, 0xffff8ac5
cmp eax, 0x12
ja case.0x5ca07a.30055
xor ecx, ecx
mov cl, byte [eax + 0x5cc5f0]
jmp dword [ecx*4 + 0x5cc5d0]
mov edx, dword [0x6fdf38]
push ebx
jmp 0x5cad43
mov eax, dword [0x6fdf64]
push ebx
push eax
jmp 0x5cad44
mov ecx, dword [0x6fdf6c]
push ebx
push ecx
jmp 0x5cad44
mov edx, dword [0x6fded0]
push ebx
jmp 0x5cad43
mov eax, dword [0x6fdecc]
push ebx
push eax
jmp 0x5cad44
mov ecx, dword [0x6fdec8]
push ebx
push ecx
jmp 0x5cad44
add eax, 0xffff8aae
cmp eax, 0x38
ja case.0x5ca07a.30055
xor edx, edx
mov dl, byte [eax + 0x5cc65c]
jmp dword [edx*4 + 0x5cc604]
push ebx
mov ecx, esi
call fcn.005cf540
jmp 0x5cb899
push ebx
mov ecx, esi
call fcn.005cf540
cmp dword [esi + 8], ebx
jne 0x5ca3a9
cmp dword [esi + 4], ebx
jne 0x5ca3a9
mov al, byte [ebp + 8]
test al, al
je 0x5ca3a9
mov eax, dword [esi + 0x4d0]
cmp eax, ebx
je 0x5ca0de
mov eax, dword [eax + 0x10]
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x5ca0de
mov ecx, dword [esi + 0x4d0]
mov edx, dword [ecx + 0x10]
push edx
call fcn.00623b6b
mov ebx, eax
jmp 0x5ca0e0
xor ebx, ebx
mov eax, dword [esi + 0x44]
cmp eax, 1
jne 0x5ca0ef
mov eax, 0x6c9178
jmp 0x5ca121
cmp eax, 4
jne 0x5ca0fb
mov eax, 0x6c9164
jmp 0x5ca121
cmp eax, 5
jne 0x5ca107
mov eax, str.rtmpt:__
jmp 0x5ca121
cmp eax, 2
jne 0x5ca113
mov eax, 0x6c916c
jmp 0x5ca121
test eax, eax
mov eax, 0x6c9154
je 0x5ca121
mov eax, 0x6c915c
push eax
lea ecx, [ebp - 0x2c]
call fcn.00622df8
mov eax, dword [esi + 0x1b4]
mov ecx, dword [ebp - 0x2c]
push ebx
lea edi, [esi + 0x20]
push 0
push 0
push eax
mov eax, dword [edi]
push eax
push ecx
lea ecx, [ebp - 0x140]
mov byte [ebp - 4], 4
call fcn.004ff7d0
lea ecx, [ebp - 0x140]
mov byte [ebp - 4], 5
call fcn.006226c5
cmp eax, 1
jne 0x5ca328
mov eax, dword [esi + 0x10]
test eax, eax
je 0x5ca181
push 0
push 0x1472
push 0x111
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov edx, dword [ebp - 0xe0]
mov eax, dword [ebp - 0xe4]
push edx
push eax
mov ecx, esi
mov dword [esi + 0x10], 0
call fcn.005cf8f0
mov eax, dword [esi + 0x4a0]
test eax, eax
je 0x5ca236
mov ecx, dword [esi + 0x45c]
test ecx, ecx
jne 0x5ca1bd
push eax
mov ecx, edi
call fcn.005e6030
mov ebx, dword [esi + 0x45c]
test ebx, ebx
je 0x5ca236
mov edx, dword [ebp - 0xe4]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
mov edi, dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
not ecx
push ecx
push edx
push 1
push eax
push 0x6d278c
push ebx
call edi
mov al, byte [esi + 0x1ac]
test al, al
je 0x5ca214
mov edx, dword [esi + 0x45c]
lea ecx, [ebp + 0x10]
push 4
push ecx
push 4
push 0
push str.bUNRA
push edx
mov dword [ebp + 0x10], 1
call edi
mov eax, dword [ebp - 0xe0]
mov ecx, dword [esi + 0x45c]
push 0
push eax
push str.EncPassword
push 0x6e02b8
push ecx
call fcn.005d0c70
add esp, 0x14
mov edx, dword [0x6f7b78]
mov dword [ebp + 8], edx
mov eax, dword [esi + 0xa74]
mov ecx, dword [0x6fdf7c]
push eax
push ecx
lea edx, [ebp + 8]
push str._r_n_s_r_ndownlResult___ldsetting_new_login_r_n
push edx
mov byte [ebp - 4], 6
call fcn.0061fae1
mov eax, dword [ebp + 8]
add esp, 0x10
lea ecx, [esi + 0x4d4]
push eax
call fcn.0056fe30
mov al, byte [ebp + 0xc]
test al, al
je 0x5ca29b
mov ecx, dword [esi + 0x14]
test ecx, ecx
je 0x5ca29b
mov eax, dword [esi + 0x4a0]
test eax, eax
je 0x5ca29b
push eax
push 0x1431
push 0x111
push ecx
call dword [sym.imp.USER32.dll_PostMessageA]
lea ecx, [ebp + 8]
mov byte [ebp - 4], 5
call fcn.00622d8a
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0xe
call fcn.00622d8a
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 0xd
call fcn.00622d8a
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0xc
call fcn.00622d8a
mov eax, 0x657cdc
lea ecx, [ebp - 0xe0]
mov dword [ebp - 0xbc], 0x658be8
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xdc], eax
mov byte [ebp - 4], 8
call fcn.00622d8a
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 7
call fcn.00622d8a
lea ecx, [ebp - 0x140]
mov byte [ebp - 4], 4
call fcn.00622306
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x2c]
jmp 0x5cb894
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x16
call fcn.00622d8a
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 0x15
call fcn.00622d8a
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0x14
call fcn.00622d8a
mov eax, 0x657cdc
lea ecx, [ebp - 0xe0]
mov dword [ebp - 0xbc], 0x658be8
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xdc], eax
mov byte [ebp - 4], 0x10
call fcn.00622d8a
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 0xf
call fcn.00622d8a
lea ecx, [ebp - 0x140]
mov byte [ebp - 4], 4
call fcn.00622306
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 3
call fcn.00622d8a
mov ecx, dword [0x6fdf7c]
push 0
push ecx
lea ecx, [ebp - 0x1c]
call fcn.004027e0
xor ebx, ebx
jmp 0x5cad4c
push 0x6fc418
lea ecx, [esi + 0x380]
call fcn.00622f13
cmp dword [esi + 8], ebx
jne 0x5ca63d
cmp dword [esi + 4], ebx
jne 0x5ca63d
mov al, byte [ebp + 8]
test al, al
je 0x5ca63d
push ebx
mov ecx, esi
call fcn.005cf540
mov eax, dword [esi + 0x4d0]
cmp eax, ebx
je 0x5ca421
mov edx, dword [eax + 0x10]
push edx
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x5ca421
mov eax, dword [esi + 0x4d0]
mov ecx, dword [eax + 0x10]
push ecx
call fcn.00623b6b
mov edi, eax
jmp 0x5ca423
xor edi, edi
mov eax, dword [esi + 0x44]
cmp eax, 1
jne 0x5ca432
mov eax, 0x6c9178
jmp 0x5ca464
cmp eax, 4
jne 0x5ca43e
mov eax, 0x6c9164
jmp 0x5ca464
cmp eax, 5
jne 0x5ca44a
mov eax, str.rtmpt:__
jmp 0x5ca464
cmp eax, 2
jne 0x5ca456
mov eax, 0x6c916c
jmp 0x5ca464
cmp eax, ebx
mov eax, 0x6c9154
je 0x5ca464
mov eax, 0x6c915c
push eax
lea ecx, [ebp - 0x2c]
call fcn.00622df8
mov edx, dword [0x6f7b78]
mov dword [ebp - 0x5c], edx
mov al, byte [esi + 0xa3a]
mov byte [ebp - 4], 0x18
test al, al
jne 0x5ca4c2
cmp dword [0x6fd014], 2
jne 0x5ca496
test byte [0x6fd028], 0x10
jne 0x5ca4c2
mov eax, dword [esi + 0x904]
lea ebx, [esi + 0x904]
test eax, eax
je 0x5ca4b1
push eax
lea ecx, [ebp - 0x5c]
call fcn.00622f13
jmp 0x5ca4fb
lea eax, [esi + 0xa44]
lea ecx, [ebp - 0x5c]
push eax
call fcn.00622ec3
jmp 0x5ca4fb
mov eax, dword [esi + 0x904]
lea ebx, [esi + 0x904]
test eax, eax
je 0x5ca4dc
mov ecx, dword [esi + 0x908]
push ecx
push eax
jmp 0x5ca4ea
mov eax, dword [esi + 0xa48]
mov ecx, dword [esi + 0xa44]
push eax
push ecx
lea edx, [ebp - 0x5c]
push str._s:_ld
push edx
call fcn.0061fae1
add esp, 0x10
mov cl, byte [esi + 0xa3a]
mov eax, dword [esi + 0xa24]
mov edx, dword [ebp - 0x5c]
push edi
push ecx
push 1
push eax
mov eax, dword [ebp - 0x2c]
push edx
push eax
lea ecx, [ebp - 0x140]
call fcn.004ff7d0
lea ecx, [ebp - 0x140]
mov byte [ebp - 4], 0x19
call fcn.006226c5
cmp eax, 1
jne 0x5ca5b0
mov byte [esi + 0xa3d], al
mov eax, dword [esi + 0x10]
test eax, eax
je 0x5ca553
push 0
push 0x1472
push 0x111
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [ebx]
mov dword [esi + 0x10], 0
test eax, eax
je 0x5ca6e2
mov eax, dword [ebx + 0x168]
mov esi, dword [ebp - 0xe4]
test eax, eax
je 0x5ca57d
push eax
call fcn.00622af4
add esp, 4
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
push ecx
call fcn.00622acb
mov edx, eax
add esp, 4
test edx, edx
mov dword [ebx + 0x168], edx
jne 0x5ca665
push str.Not_enough_memory__n
mov ecx, ebx
call fcn.005b75d0
mov esi, dword [ebp - 0x58]
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x2a
call fcn.00622d8a
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 0x29
call fcn.00622d8a
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0x28
call fcn.00622d8a
mov eax, 0x657cdc
lea ecx, [ebp - 0xe0]
mov dword [ebp - 0xbc], 0x658be8
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xdc], eax
mov byte [ebp - 4], 0x24
call fcn.00622d8a
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 0x23
call fcn.00622d8a
lea ecx, [ebp - 0x140]
mov byte [ebp - 4], 0x18
call fcn.00622306
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0x17
call fcn.00622d8a
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 3
call fcn.00622d8a
mov al, byte [esi + 0xa3a]
test al, al
mov eax, 0x6fd30c
jne 0x5ca651
mov eax, 0x6fdf78
mov eax, dword [eax]
push 0
push eax
lea ecx, [ebp - 0x1c]
call fcn.004027e0
xor ebx, ebx
jmp 0x5cad4c
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebx + 0x16c]
mov esi, dword [ebp - 0xe0]
test eax, eax
je 0x5ca69d
push eax
call fcn.00622af4
add esp, 4
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
push ecx
call fcn.00622acb
mov edx, eax
add esp, 4
test edx, edx
mov dword [ebx + 0x16c], edx
je 0x5ca5a1
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x5ca71f
mov ecx, dword [ebp - 0xe4]
lea edx, [esi + 0xa4c]
push ecx
push 0x6c910c
push edx
mov byte [esi + 0xa61], 1
call fcn.0061fae1
mov eax, dword [ebp - 0xe0]
add esp, 0xc
add esi, 0xa50
push eax
push 0x6c910c
push esi
call fcn.0061fae1
add esp, 0xc
mov ecx, dword [0x6f7b78]
mov dword [ebp + 8], ecx
mov esi, dword [ebp - 0x58]
mov byte [ebp - 4], 0x1a
mov al, byte [esi + 0xa3a]
test al, al
mov eax, dword [0x6fd30c]
jne 0x5ca743
mov eax, dword [0x6fdf78]
mov edx, dword [esi + 0xa74]
push edx
push eax
lea eax, [ebp + 8]
push str._r_n_s_r_ndownlResult___ldsetting_new_login_r_n
push eax
call fcn.0061fae1
mov ecx, dword [ebp + 8]
add esp, 0x10
push ecx
lea ecx, [esi + 0x4d4]
call fcn.0056fe30
mov al, byte [ebp + 0xc]
test al, al
je 0x5ca795
mov ecx, dword [esi + 0x14]
test ecx, ecx
je 0x5ca795
mov eax, dword [esi + 0x4a0]
test eax, eax
je 0x5ca795
push eax
push 0x1431
push 0x111
push ecx
call dword [sym.imp.USER32.dll_PostMessageA]
lea ecx, [ebp + 8]
mov byte [ebp - 4], 0x19
call fcn.00622d8a
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x22
call fcn.00622d8a
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 0x21
call fcn.00622d8a
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0x20
call fcn.00622d8a
mov eax, 0x657cdc
lea ecx, [ebp - 0xe0]
mov dword [ebp - 0xbc], 0x658be8
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xdc], eax
mov byte [ebp - 4], 0x1c
call fcn.00622d8a
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 0x1b
call fcn.00622d8a
lea ecx, [ebp - 0x140]
mov byte [ebp - 4], 0x18
call fcn.00622306
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0x17
call fcn.00622d8a
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x2c]
jmp 0x5cb894
mov edx, dword [0x6fdd30]
push ebx
jmp 0x5cad43
mov eax, dword [0x6fdf80]
push ebx
push eax
jmp 0x5cad44
mov ecx, dword [0x6fdd64]
push ebx
push ecx
jmp 0x5cad44
mov edx, dword [0x6fdd1c]
push ebx
jmp 0x5cad43
mov eax, dword [0x6fdccc]
push ebx
push eax
jmp 0x5cad44
mov ecx, dword [0x6fdd14]
push ebx
push ecx
jmp 0x5cad44
mov edx, dword [0x6fdc84]
push ebx
jmp 0x5cad43
mov eax, dword [0x6fdd0c]
push ebx
push eax
jmp 0x5cad44
mov edx, dword [esi + 0x4b4]
mov eax, dword [esi + 0x4b0]
lea ecx, [ebp - 0x150]
push ecx
push edx
push eax
mov ecx, esi
call fcn.005d2660
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x30], ebx
mov word [ebp - 0x34], bx
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x2d
push ecx
mov ecx, esi
call fcn.005d7b20
lea edx, [ebp - 0x150]
push ebx
push edx
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x48], ebx
mov word [ebp - 0x4c], bx
call fcn.004027e0
mov eax, dword [0x6f7b78]
mov dword [ebp - 0x2c], eax
mov ecx, dword [esi + 0x4b4]
mov edx, dword [esi + 0x4b0]
push ecx
push edx
lea eax, [ebp - 0x2c]
push str._I64d
push eax
mov byte [ebp - 4], 0x2f
call fcn.0061fae1
mov ecx, dword [ebp - 0x2c]
add esp, 0x10
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x3c], ebx
push ebx
push ecx
lea ecx, [ebp - 0x44]
mov word [ebp - 0x40], bx
call fcn.004027e0
mov edx, dword [0x6fdd44]
push str._I64d
push edx
mov byte [ebp - 4], 0x30
call fcn.00609cc0
add esp, 8
test eax, eax
je 0x5ca949
push 0x6c910c
push str._I64d
jmp 0x5ca96a
mov eax, dword [0x6fdd44]
push 0x6c91b4
push eax
call fcn.00609cc0
add esp, 8
test eax, eax
je 0x5ca974
push 0x6c910c
push 0x6c91b4
mov ecx, 0x6fdd44
call fcn.0061f504
mov eax, dword [esi + 0x54]
cmp eax, ebx
je 0x5ca980
mov dword [ebp + 0xc], eax
jmp 0x5ca986
add esi, 0x58
mov dword [ebp + 0xc], esi
mov eax, dword [ebp - 0x44]
cmp eax, ebx
mov esi, eax
jne 0x5ca992
lea esi, [ebp - 0x40]
mov eax, dword [ebp - 0x50]
test eax, eax
mov edi, eax
jne 0x5ca99e
lea edi, [ebp - 0x4c]
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x5ca9a8
lea eax, [ebp - 0x34]
mov ebx, dword [0x6fdd44]
test ebx, ebx
je 0x5cab60
test eax, eax
je 0x5cab60
test edi, edi
je 0x5cab60
test esi, esi
je 0x5cab60
mov ecx, dword [ebp + 0xc]
test ecx, ecx
je 0x5cab60
push eax
lea ecx, [ebp - 0x88]
call fcn.00401ee0
push edi
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x31
call fcn.00401ee0
push esi
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 0x32
call fcn.00401ee0
mov ecx, dword [ebp + 0xc]
mov byte [ebp - 4], 0x33
push ecx
lea ecx, [ebp - 0x78]
call fcn.00401ee0
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x34
call fcn.00401070
xor eax, eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x20], eax
mov word [ebp - 0x24], ax
push eax
push ebx
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x35
call fcn.004027e0
mov ebx, dword [ebp - 0x20]
lea ecx, [ebp - 0x88]
call fcn.00401f10
lea ecx, [ebp - 0xa0]
mov esi, eax
call fcn.00401f10
lea ecx, [ebp - 0x6c]
mov dword [ebp - 0x5c], eax
call fcn.00401f10
lea ecx, [ebp - 0x78]
mov edi, eax
call fcn.00401f10
push eax
call fcn.00609a4e
mov edx, eax
push edi
mov edi, edx
call fcn.00609a4e
mov edx, dword [ebp - 0x5c]
push edx
add edi, eax
call fcn.00609a4e
mov dword [ebp + 0xc], edi
mov edi, eax
push esi
add edi, ebx
call fcn.00609a4e
mov ecx, dword [ebp + 0xc]
add edi, ecx
lea ebx, [eax + edi + 5]
lea edi, [ebx + ebx]
push edi
call fcn.00622acb
mov edx, eax
add esp, 0x14
test edx, edx
mov dword [ebp - 0x1c], edx
je 0x5cab1e
mov ecx, edi
mov edi, edx
mov edx, ecx
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
lea ecx, [ebp - 0x78]
call fcn.00401f10
lea ecx, [ebp - 0x6c]
mov esi, eax
call fcn.00401f10
lea ecx, [ebp - 0xa0]
mov dword [ebp + 0xc], eax
call fcn.00401f10
lea ecx, [ebp - 0x88]
mov dword [ebp - 0x5c], eax
call fcn.00401f10
lea ecx, [ebp - 0x28]
mov edi, eax
call fcn.00401f10
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x5c]
push esi
push ecx
push edx
push edi
push eax
mov eax, dword [ebp - 0x1c]
push ebx
push eax
call fcn.006099de
mov ecx, dword [ebp - 0x1c]
push ecx
call fcn.00609a4e
add esp, 0x20
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x34
call fcn.00401070
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0x33
call fcn.00401070
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 0x32
call fcn.00401070
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x31
call fcn.00401070
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x30
call fcn.00401070
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x2f
call fcn.00401070
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x2e
call fcn.00622d8a
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x2d
call fcn.00401070
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 3
call fcn.00401070
mov esi, dword [ebp - 0x58]
xor ebx, ebx
jmp 0x5cad4c
mov edx, dword [0x6fde90]
push ebx
jmp 0x5cad43
mov eax, dword [0x6fd520]
push ebx
push eax
jmp 0x5cad44
mov ecx, dword [0x6fd478]
push ebx
push ecx
jmp 0x5cad44
lea eax, [esi + 0x4d8]
lea ecx, [ebp - 0x28]
push eax
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x20], ebx
mov word [ebp - 0x24], bx
call fcn.00401f20
mov eax, dword [ebp - 0x28]
mov byte [ebp - 4], 0x37
cmp eax, ebx
jne 0x5cabe6
lea eax, [ebp - 0x24]
mov edi, dword [0x6fd82c]
cmp edi, ebx
je 0x5cacb6
test eax, eax
je 0x5cacb6
xor ebx, ebx
push eax
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x30], ebx
mov word [ebp - 0x34], bx
call fcn.00401f20
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x38
call fcn.00401070
lea ecx, [ebp - 0x6c]
call fcn.004027c0
push ebx
push edi
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 0x39
call fcn.004027e0
mov edi, dword [ebp - 0x64]
lea ecx, [ebp - 0x38]
call fcn.00401f10
push eax
call fcn.00609a4e
lea ebx, [eax + edi + 2]
lea edi, [ebx + ebx]
push edi
call fcn.00622acb
mov edx, eax
add esp, 8
test edx, edx
mov dword [ebp - 0x1c], edx
je 0x5cac9e
mov ecx, edi
mov edi, edx
mov edx, ecx
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
lea ecx, [ebp - 0x38]
call fcn.00401f10
lea ecx, [ebp - 0x6c]
mov edi, eax
call fcn.00401f10
push edi
push eax
mov eax, dword [ebp - 0x1c]
push ebx
push eax
call fcn.006099de
mov ecx, dword [ebp - 0x1c]
push ecx
call fcn.00609a4e
add esp, 0x14
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 0x38
call fcn.00401070
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x37
call fcn.00401070
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 3
call fcn.00401070
xor ebx, ebx
jmp 0x5cad4c
mov edx, dword [0x6f7b78]
mov dword [ebp + 0xc], edx
mov eax, dword [0x6fd35c]
lea ecx, [ebp + 0xc]
push eax
push 0x6c910c
push ecx
mov byte [ebp - 4], 0x3a
call fcn.0061fae1
mov edx, dword [ebp + 0xc]
add esp, 0xc
push 0x6c9e2c
push edx
call fcn.0060b360
add esp, 8
cmp eax, ebx
je 0x5cad05
mov byte [eax], 0
mov eax, dword [ebp + 0xc]
push ebx
push eax
lea ecx, [ebp - 0x1c]
call fcn.004027e0
lea ecx, [ebp + 0xc]
mov byte [ebp - 4], 3
call fcn.00622d8a
jmp 0x5cad4c
mov ecx, dword [0x6fd1bc]
push ebx
push ecx
jmp 0x5cad44
mov edx, dword [0x6fd1b8]
push ebx
jmp 0x5cad43
mov eax, dword [0x6fd1b4]
push ebx
push eax
jmp 0x5cad44
mov edx, dword [0x6fdf68]
push ebx
push edx
lea ecx, [ebp - 0x1c]
call fcn.004027e0
mov eax, dword [esi + 0x14]
cmp eax, ebx
je 0x5cad6b
mov ecx, dword [esi + 0x4a0]
push ecx
push 0x13c7
push 0x111
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [esi + 0xa74]
add eax, 0xffff8abe
cmp eax, 0x38
ja case.0x5cad87.30020
xor edx, edx
mov dl, byte [eax + 0x5cc6a4]
jmp dword [edx*4 + 0x5cc698]
mov eax, dword [esi + 0x148]
mov ecx, dword [esi + 0x14c]
or eax, ecx
je case.0x5cad87.30020
mov ecx, 0x6c91bc
test ecx, ecx
je 0x5cae38
push ecx
call fcn.00609a4e
add esp, 4
test eax, eax
je 0x5cae38
mov eax, dword [ebp - 0x1c]
xor ebx, ebx
cmp eax, ebx
je 0x5cadd2
push eax
call fcn.00609a4e
add esp, 4
mov edi, eax
jmp 0x5cadd4
xor edi, edi
push 0x6c91bc
call fcn.00609a4e
add eax, edi
lea edx, [eax + eax + 2]
push edx
call fcn.00622acb
mov edi, eax
add esp, 8
cmp edi, ebx
je 0x5cae3a
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
je 0x5cae11
push eax
push edi
call fcn.00609a95
push 0x6c91bc
push edi
call fcn.00609a6b
add esp, 0x10
jmp 0x5cae1f
push 0x6c91bc
push edi
call fcn.00609a95
add esp, 8
lea ecx, [ebp - 0x1c]
call fcn.00401070
push edi
mov dword [ebp - 0x1c], edi
call fcn.00609a4e
add esp, 4
mov dword [ebp - 0x14], eax
jmp 0x5cae3a
xor ebx, ebx
mov eax, dword [0x6fd478]
push ebx
push eax
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x30], ebx
mov word [ebp - 0x34], bx
call fcn.004027e0
mov ebx, dword [ebp - 0x38]
mov byte [ebp - 4], 0x43
test ebx, ebx
jne 0x5cae65
lea ebx, [ebp - 0x34]
test ebx, ebx
je 0x5caede
push ebx
call fcn.00609a4e
add esp, 4
test eax, eax
je 0x5caede
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x5cae86
push eax
call fcn.00609a4e
add esp, 4
mov edi, eax
jmp 0x5cae88
xor edi, edi
push ebx
call fcn.00609a4e
add eax, edi
lea ecx, [eax + eax + 2]
push ecx
call fcn.00622acb
mov edi, eax
add esp, 8
test edi, edi
je 0x5caede
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x5caebd
push eax
push edi
call fcn.00609a95
push ebx
push edi
call fcn.00609a6b
add esp, 0x10
jmp 0x5caec7
push ebx
push edi
call fcn.00609a95
add esp, 8
lea ecx, [ebp - 0x1c]
call fcn.00401070
push edi
mov dword [ebp - 0x1c], edi
call fcn.00609a4e
add esp, 4
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 3
call fcn.00401070
mov cl, byte [esi + 0x185]
test cl, cl
jne 0x5cb06d
mov eax, dword [esi + 0x150]
test eax, eax
jle 0x5caf13
mov edx, dword [esi + 0x154]
sub edx, eax
cmp edx, 0x3c
jl 0x5cb058
mov eax, str._r_n_r_n
test eax, eax
je 0x5cafa5
push eax
call fcn.00609a4e
add esp, 4
test eax, eax
je 0x5cafa5
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x5caf41
push eax
call fcn.00609a4e
add esp, 4
mov edi, eax
jmp 0x5caf43
xor edi, edi
push str._r_n_r_n
call fcn.00609a4e
add eax, edi
lea ecx, [eax + eax + 2]
push ecx
call fcn.00622acb
mov edi, eax
add esp, 8
test edi, edi
je 0x5cafa5
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x5caf80
push eax
push edi
call fcn.00609a95
push str._r_n_r_n
push edi
call fcn.00609a6b
add esp, 0x10
jmp 0x5caf8e
push str._r_n_r_n
push edi
call fcn.00609a95
add esp, 8
lea ecx, [ebp - 0x1c]
call fcn.00401070
push edi
mov dword [ebp - 0x1c], edi
call fcn.00609a4e
add esp, 4
mov dword [ebp - 0x14], eax
mov edx, dword [0x6fd458]
xor edi, edi
push edi
push edx
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x30], edi
mov word [ebp - 0x34], di
call fcn.004027e0
mov ebx, dword [ebp - 0x38]
mov byte [ebp - 4], 0x47
cmp ebx, edi
jne 0x5cafd3
lea ebx, [ebp - 0x34]
cmp ebx, edi
je 0x5cb04c
push ebx
call fcn.00609a4e
add esp, 4
test eax, eax
je 0x5cb04c
mov eax, dword [ebp - 0x1c]
cmp eax, edi
je 0x5caff4
push eax
call fcn.00609a4e
add esp, 4
mov edi, eax
jmp 0x5caff6
xor edi, edi
push ebx
call fcn.00609a4e
add eax, edi
lea eax, [eax + eax + 2]
push eax
call fcn.00622acb
mov edi, eax
add esp, 8
test edi, edi
je 0x5cb04c
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x5cb02b
push eax
push edi
call fcn.00609a95
push ebx
push edi
call fcn.00609a6b
add esp, 0x10
jmp 0x5cb035
push ebx
push edi
call fcn.00609a95
add esp, 8
lea ecx, [ebp - 0x1c]
call fcn.00401070
push edi
mov dword [ebp - 0x1c], edi
call fcn.00609a4e
add esp, 4
mov dword [ebp - 0x14], eax
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x38]
jmp 0x5cb261
test cl, cl
jne 0x5cb06d
mov ecx, dword [esi + 0x4a0]
push 1
push ecx
lea ecx, [esi + 0x20]
call fcn.005e3140
mov eax, dword [esi + 0x4b4]
xor edi, edi
cmp eax, edi
jl 0x5cb098
jg 0x5cb083
cmp dword [esi + 0x4b0], edi
jbe 0x5cb098
mov edx, dword [0x6fd454]
push edi
push edx
lea ecx, [ebp - 0x1c]
call fcn.004027e0
jmp case.0x5cad87.30020
mov al, byte [esi + 0x16c]
xor bl, bl
test al, 0x70
je 0x5cb0a6
mov bl, 1
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x3c], edi
mov word [ebp - 0x40], di
lea eax, [ebp - 0x44]
mov ecx, esi
push eax
mov byte [ebp - 4], 0x44
call fcn.005d7b20
test bl, bl
je 0x5cb22e
mov edx, dword [esi + 0xe8]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x5cb0e8
push edx
mov ecx, 0x6fd1a0
call fcn.0054dbb0
jmp 0x5cb0f6
mov ecx, dword [esi + 0x20]
push ecx
mov ecx, 0x6fd1a0
call fcn.0054dc70
mov eax, dword [esi + 0x11c]
test eax, eax
jne 0x5cb106
lea eax, [esi + 0x120]
push eax
call fcn.00609a4e
add esp, 4
test eax, eax
je 0x5cb125
mov eax, dword [esi + 0x11c]
test eax, eax
jne 0x5cb12f
lea eax, [esi + 0x120]
jmp 0x5cb12f
mov eax, dword [ebp - 0x44]
test eax, eax
jne 0x5cb12f
lea eax, [ebp - 0x40]
mov edi, dword [0x6fd574]
test edi, edi
je 0x5cb1ff
test eax, eax
je 0x5cb1ff
xor ebx, ebx
push eax
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x20], ebx
mov word [ebp - 0x24], bx
call fcn.00401f20
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x45
call fcn.00401070
lea ecx, [ebp - 0x6c]
call fcn.004027c0
push ebx
push edi
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 0x46
call fcn.004027e0
mov edi, dword [ebp - 0x64]
lea ecx, [ebp - 0x28]
call fcn.00401f10
push eax
call fcn.00609a4e
lea ebx, [eax + edi + 2]
lea edi, [ebx + ebx]
push edi
call fcn.00622acb
mov edx, eax
add esp, 8
test edx, edx
mov dword [ebp - 0x1c], edx
je 0x5cb1e7
mov ecx, edi
mov edi, edx
mov edx, ecx
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
lea ecx, [ebp - 0x28]
call fcn.00401f10
lea ecx, [ebp - 0x6c]
mov edi, eax
call fcn.00401f10
push edi
push eax
mov eax, dword [ebp - 0x1c]
push ebx
push eax
call fcn.006099de
mov ecx, dword [ebp - 0x1c]
push ecx
call fcn.00609a4e
add esp, 0x14
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 0x45
call fcn.00401070
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x44
call fcn.00401070
mov eax, dword [esi + 0x16c]
test ah, 1
jne 0x5cb25a
mov eax, dword [esi + 0x150]
test eax, eax
jle 0x5cb25a
mov edx, dword [esi + 0x154]
sub edx, eax
cmp edx, 0x3c
jge 0x5cb25a
mov al, byte [ebp - 0x51]
test al, al
jne 0x5cb25a
mov byte [ebp - 0x5d], 1
jmp 0x5cb25a
mov al, byte [esi + 0x183]
test al, al
je 0x5cb24a
mov al, byte [0x6fcc0c]
test al, al
jne 0x5cb24a
mov eax, dword [0x6fd578]
push edi
push eax
jmp 0x5cb252
mov ecx, dword [0x6fd454]
push edi
push ecx
lea ecx, [ebp - 0x1c]
call fcn.004027e0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x44]
call fcn.00401070
mov eax, dword [esi + 0x4d4]
test eax, eax
je 0x5cb46c
mov edx, str._r_n_r_n
test edx, edx
je 0x5cb306
push edx
call fcn.00609a4e
add esp, 4
test eax, eax
je 0x5cb306
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x5cb2a2
push eax
call fcn.00609a4e
add esp, 4
mov edi, eax
jmp 0x5cb2a4
xor edi, edi
push str._r_n_r_n
call fcn.00609a4e
add eax, edi
lea eax, [eax + eax + 2]
push eax
call fcn.00622acb
mov edi, eax
add esp, 8
test edi, edi
je 0x5cb306
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x5cb2e1
push eax
push edi
call fcn.00609a95
push str._r_n_r_n
push edi
call fcn.00609a6b
add esp, 0x10
jmp 0x5cb2ef
push str._r_n_r_n
push edi
call fcn.00609a95
add esp, 8
lea ecx, [ebp - 0x1c]
call fcn.00401070
push edi
mov dword [ebp - 0x1c], edi
call fcn.00609a4e
add esp, 4
mov dword [ebp - 0x14], eax
mov ecx, dword [0x6fda4c]
xor edi, edi
push edi
push ecx
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x20], edi
mov word [ebp - 0x24], di
call fcn.004027e0
mov ebx, dword [ebp - 0x28]
mov byte [ebp - 4], 0x48
cmp ebx, edi
jne 0x5cb334
lea ebx, [ebp - 0x24]
cmp ebx, edi
je 0x5cb3ad
push ebx
call fcn.00609a4e
add esp, 4
test eax, eax
je 0x5cb3ad
mov eax, dword [ebp - 0x1c]
cmp eax, edi
je 0x5cb355
push eax
call fcn.00609a4e
add esp, 4
mov edi, eax
jmp 0x5cb357
xor edi, edi
push ebx
call fcn.00609a4e
add eax, edi
lea edx, [eax + eax + 2]
push edx
call fcn.00622acb
mov edi, eax
add esp, 8
test edi, edi
je 0x5cb3ad
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x5cb38c
push eax
push edi
call fcn.00609a95
push ebx
push edi
call fcn.00609a6b
add esp, 0x10
jmp 0x5cb396
push ebx
push edi
call fcn.00609a95
add esp, 8
lea ecx, [ebp - 0x1c]
call fcn.00401070
push edi
mov dword [ebp - 0x1c], edi
call fcn.00609a4e
add esp, 4
mov dword [ebp - 0x14], eax
mov eax, dword [esi + 0x4d4]
xor edi, edi
push edi
push eax
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x30], edi
mov word [ebp - 0x34], di
call fcn.004027e0
mov ebx, dword [ebp - 0x38]
mov byte [ebp - 4], 0x49
cmp ebx, edi
jne 0x5cb3db
lea ebx, [ebp - 0x34]
cmp ebx, edi
je 0x5cb454
push ebx
call fcn.00609a4e
add esp, 4
test eax, eax
je 0x5cb454
mov eax, dword [ebp - 0x1c]
cmp eax, edi
je 0x5cb3fc
push eax
call fcn.00609a4e
add esp, 4
mov edi, eax
jmp 0x5cb3fe
xor edi, edi
push ebx
call fcn.00609a4e
add eax, edi
lea eax, [eax + eax + 2]
push eax
call fcn.00622acb
mov edi, eax
add esp, 8
test edi, edi
je 0x5cb454
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x5cb433
push eax
push edi
call fcn.00609a95
push ebx
push edi
call fcn.00609a6b
add esp, 0x10
jmp 0x5cb43d
push ebx
push edi
call fcn.00609a95
add esp, 8
lea ecx, [ebp - 0x1c]
call fcn.00401070
push edi
mov dword [ebp - 0x1c], edi
call fcn.00609a4e
add esp, 4
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x48
call fcn.00401070
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 3
call fcn.00401070
mov al, byte [ebp - 0x51]
test al, al
je 0x5cb796
mov ecx, str._r_n_r_n
test ecx, ecx
je 0x5cb509
push ecx
call fcn.00609a4e
add esp, 4
test eax, eax
je 0x5cb509
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x5cb4a5
push eax
call fcn.00609a4e
add esp, 4
mov edi, eax
jmp 0x5cb4a7
xor edi, edi
push str._r_n_r_n
call fcn.00609a4e
add eax, edi
lea edx, [eax + eax + 2]
push edx
call fcn.00622acb
mov edi, eax
add esp, 8
test edi, edi
je 0x5cb509
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x5cb4e4
push eax
push edi
call fcn.00609a95
push str._r_n_r_n
push edi
call fcn.00609a6b
add esp, 0x10
jmp 0x5cb4f2
push str._r_n_r_n
push edi
call fcn.00609a95
add esp, 8
lea ecx, [ebp - 0x1c]
call fcn.00401070
push edi
mov dword [ebp - 0x1c], edi
call fcn.00609a4e
add esp, 4
mov dword [ebp - 0x14], eax
mov eax, dword [0x6fd1e8]
xor edi, edi
push edi
push eax
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x20], edi
mov word [ebp - 0x24], di
call fcn.004027e0
mov ebx, dword [ebp - 0x28]
mov byte [ebp - 4], 0x4a
cmp ebx, edi
jne 0x5cb536
lea ebx, [ebp - 0x24]
cmp ebx, edi
je 0x5cb5af
push ebx
call fcn.00609a4e
add esp, 4
test eax, eax
je 0x5cb5af
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x5cb557
push eax
call fcn.00609a4e
add esp, 4
mov edi, eax
jmp 0x5cb559
xor edi, edi
push ebx
call fcn.00609a4e
add eax, edi
lea ecx, [eax + eax + 2]
push ecx
call fcn.00622acb
mov edi, eax
add esp, 8
test edi, edi
je 0x5cb5af
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x5cb58e
push eax
push edi
call fcn.00609a95
push ebx
push edi
call fcn.00609a6b
add esp, 0x10
jmp 0x5cb598
push ebx
push edi
call fcn.00609a95
add esp, 8
lea ecx, [ebp - 0x1c]
call fcn.00401070
push edi
mov dword [ebp - 0x1c], edi
call fcn.00609a4e
add esp, 4
mov dword [ebp - 0x14], eax
mov edx, dword [esi + 0x13c]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x5cb78a
push 0x5c
push edx
call fcn.0060ab40
mov edi, eax
xor ebx, ebx
add esp, 8
cmp edi, ebx
je 0x5cb5dd
inc edi
jmp 0x5cb5e3
mov edi, dword [esi + 0x13c]
push 0xa
push str.chromeexe
push edi
call fcn.0060bf70
add esp, 0xc
test eax, eax
je 0x5cb647
push str.idmbrbtn.dll
push edi
call fcn.0060a000
add esp, 8
test eax, eax
jne 0x5cb78a
mov eax, dword [esi + 0x198]
push str.Chrome
push eax
call fcn.00609cc0
add esp, 8
test eax, eax
je 0x5cb78a
mov eax, dword [esi + 0x198]
push str.Firefox
push eax
call fcn.00609cc0
add esp, 8
test eax, eax
jne 0x5cb78a
xor ebx, ebx
mov edx, 0x6ef3d8
test edx, edx
je 0x5cb6d9
push edx
call fcn.00609a4e
add esp, 4
test eax, eax
je 0x5cb6d9
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
je 0x5cb675
push eax
call fcn.00609a4e
add esp, 4
mov edi, eax
jmp 0x5cb677
xor edi, edi
push 0x6ef3d8
call fcn.00609a4e
add eax, edi
lea eax, [eax + eax + 2]
push eax
call fcn.00622acb
mov edi, eax
add esp, 8
cmp edi, ebx
je 0x5cb6d9
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
je 0x5cb6b4
push eax
push edi
call fcn.00609a95
push 0x6ef3d8
push edi
call fcn.00609a6b
add esp, 0x10
jmp 0x5cb6c2
push 0x6ef3d8
push edi
call fcn.00609a95
add esp, 8
lea ecx, [ebp - 0x1c]
call fcn.00401070
push edi
mov dword [ebp - 0x1c], edi
call fcn.00609a4e
add esp, 4
mov dword [ebp - 0x14], eax
mov ecx, dword [0x6fd1e4]
push ebx
push ecx
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x30], ebx
mov word [ebp - 0x34], bx
call fcn.004027e0
mov ebx, dword [ebp - 0x38]
mov byte [ebp - 4], 0x4b
test ebx, ebx
jne 0x5cb705
lea ebx, [ebp - 0x34]
test ebx, ebx
je 0x5cb77e
push ebx
call fcn.00609a4e
add esp, 4
test eax, eax
je 0x5cb77e
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x5cb726
push eax
call fcn.00609a4e
add esp, 4
mov edi, eax
jmp 0x5cb728
xor edi, edi
push ebx
call fcn.00609a4e
add eax, edi
lea edx, [eax + eax + 2]
push edx
call fcn.00622acb
mov edi, eax
add esp, 8
test edi, edi
je 0x5cb77e
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x5cb75d
push eax
push edi
call fcn.00609a95
push ebx
push edi
call fcn.00609a6b
add esp, 0x10
jmp 0x5cb767
push ebx
push edi
call fcn.00609a95
add esp, 8
lea ecx, [ebp - 0x1c]
call fcn.00401070
push edi
mov dword [ebp - 0x1c], edi
call fcn.00609a4e
add esp, 4
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x4a
call fcn.00401070
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 3
call fcn.00401070
mov eax, dword [ebp - 0x1c]
xor edi, edi
cmp eax, edi
jne 0x5cb7a2
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x7c]
push eax
call fcn.00402850
add esp, 8
mov edx, dword [esi + 0x4a0]
mov eax, dword [ebp - 0x7c]
push edi
push edx
mov edx, dword [esi + 0xa74]
push eax
lea ecx, [esi + 0x20]
push edx
mov byte [ebp - 4], 0x4c
call fcn.005df1f0
mov eax, dword [ebp - 0x7c]
lea ebx, [esi + 0x4d4]
push eax
mov ecx, ebx
call fcn.0056fe30
mov ecx, dword [esi + 0xa74]
lea edx, [ebp - 0x20c]
push ecx
push str._r_ndownlResult___ld_r_n
push edx
call fcn.0060a593
add esp, 0xc
lea eax, [ebp - 0x20c]
mov ecx, ebx
push eax
call fcn.0056fe30
mov eax, dword [esi + 0xa74]
add eax, 0xffff8abe
cmp eax, 0x38
ja case.0x5cb824.30020
xor ecx, ecx
mov cl, byte [eax + 0x5cc6ec]
jmp dword [ecx*4 + 0x5cc6e0]
mov edx, dword [esi + 0x148]
mov eax, dword [esi + 0x14c]
or edx, eax
je case.0x5cb824.30020
cmp dword [esi + 8], edi
jne case.0x5cb824.30020
cmp dword [esi + 4], edi
jne case.0x5cb824.30020
mov al, byte [ebp + 8]
test al, al
je case.0x5cb824.30020
cmp dword [esi + 0x14], edi
je case.0x5cb824.30020
cmp dword [esi + 0x4a0], edi
je case.0x5cb824.30020
mov al, byte [esi + 0x185]
test al, al
jne case.0x5cb824.30020
push edi
mov ecx, esi
call fcn.005cf540
mov eax, dword [esi + 0x4a0]
mov ecx, dword [esi + 0x14]
push eax
push 0x1463
push 0x111
push ecx
call dword [sym.imp.USER32.dll_PostMessageA]
mov byte [esi + 0x339], 0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x7c]
call fcn.00622d8a
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0
call fcn.00401070
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov dword [ebp - 0x94], edi
mov dword [ebp - 0x8c], edi
mov word [ebp - 0x90], di
lea edx, [ebp - 0x94]
mov ecx, esi
push edx
mov byte [ebp - 4], 0x4d
call fcn.005d7b20
cmp dword [esi + 8], edi
jne 0x5cba0c
cmp dword [esi + 4], edi
jne 0x5cba0c
mov al, byte [ebp + 8]
test al, al
je 0x5cba0c
cmp dword [esi + 0x4a0], edi
je 0x5cba0c
cmp dword [esi + 0x4cc], edi
jne 0x5cba0c
cmp dword [esi + 0xa74], 0x7553
jne 0x5cba71
mov eax, dword [ebp - 0x1c]
cmp eax, edi
jne 0x5cb92c
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebp + 0xc]
call fcn.00622e4a
xor edi, edi
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x3c], edi
mov word [ebp - 0x40], di
mov esi, dword [0x6fca90]
mov ebx, dword [ebp + 0xc]
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x4f
call fcn.00401070
cmp ebx, edi
je 0x5cb9a2
mov edi, ebx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x5cb9a2
mov edi, dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
push eax
push eax
push 0xffffffffffffffff
push ebx
push eax
push esi
call edi
test eax, eax
mov dword [ebp - 0x3c], eax
je 0x5cb9a2
lea eax, [eax + eax + 2]
push eax
call fcn.00622acb
add esp, 4
mov dword [ebp - 0x44], eax
test eax, eax
je 0x5cb9a5
mov ecx, dword [ebp - 0x3c]
push ecx
push eax
push 0xffffffffffffffff
push ebx
push 0
push esi
call edi
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x94]
test ecx, ecx
jne 0x5cb9b5
lea ecx, [ebp - 0x90]
test eax, eax
jne 0x5cb9bc
lea eax, [ebp - 0x40]
push 0x10024
push ecx
push eax
push 0
call fcn.004574c0
add esp, 0x10
cmp eax, 6
jne 0x5cb9f4
mov ecx, dword [ebp - 0x58]
mov eax, dword [ecx + 0x14]
test eax, eax
je 0x5cb9f4
mov edx, dword [ecx + 0x4a0]
push edx
push 0x13bb
push 0x111
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x4e
call fcn.00401070
lea ecx, [ebp + 0xc]
mov byte [ebp - 4], 0x4d
call fcn.00622d8a
mov edi, dword [ebp - 0x58]
mov eax, dword [edi + 4]
xor ebx, ebx
cmp eax, ebx
je 0x5cc535
cmp eax, 3
jne 0x5cba31
cmp dword [edi + 0xa74], 0x756e
je 0x5cc47c
mov cl, byte [ebp + 8]
test cl, cl
je 0x5cc47c
cmp dword [edi + 0xa74], 0xffffffff
jne 0x5cc314
mov ecx, dword [0x6fdd20]
push 0x50010
push 0x6c9094
push ecx
push ebx
call fcn.00457010
add esp, 0x10
mov ecx, edi
push 0
call fcn.005cf540
jmp 0x5cc53c
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x3c], edi
mov word [ebp - 0x40], di
mov ebx, dword [ebp + 0x10]
mov byte [ebp - 4], 0x50
cmp ebx, edi
je 0x5cbade
mov esi, dword [0x6fca90]
lea ecx, [ebp - 0x44]
call fcn.00401070
mov edi, ebx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x5cbaf7
mov edi, dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
push eax
push eax
push 0xffffffffffffffff
push ebx
push eax
push esi
call edi
test eax, eax
mov dword [ebp - 0x3c], eax
je 0x5cbaf7
lea eax, [eax + eax + 2]
push eax
call fcn.00622acb
add esp, 4
mov dword [ebp - 0x44], eax
test eax, eax
je 0x5cbaf7
mov ecx, dword [ebp - 0x3c]
push ecx
push eax
push 0xffffffffffffffff
push ebx
push 0
push esi
call edi
mov dword [ebp - 0x3c], eax
jmp 0x5cbaf7
mov eax, dword [ebp - 0x94]
cmp eax, edi
jne 0x5cbaee
lea eax, [ebp - 0x90]
push eax
lea ecx, [ebp - 0x44]
call fcn.00401f20
mov eax, dword [ebp - 0x58]
cmp dword [eax + 0xa74], 0x80090326
jne 0x5cbd66
mov ecx, dword [0x6fcacc]
xor edi, edi
cmp ecx, edi
jne 0x5cbd68
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x20], edi
mov word [ebp - 0x24], di
mov edx, dword [0x6fd254]
push edi
push edx
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 0x51
mov dword [ebp - 0x6c], edi
mov dword [ebp - 0x64], edi
mov word [ebp - 0x68], di
call fcn.004027e0
mov eax, dword [ebp - 0x6c]
mov byte [ebp - 4], 0x52
cmp eax, edi
mov ebx, eax
jne 0x5cbb52
lea ebx, [ebp - 0x68]
mov eax, dword [ebp - 0x1c]
cmp eax, edi
mov esi, eax
jne 0x5cbb5e
lea esi, [ebp - 0x18]
mov eax, str._s_r_n_r_n_r_n_s
test eax, eax
je 0x5cbc73
cmp esi, edi
je 0x5cbc73
cmp ebx, edi
je 0x5cbc73
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x30], edi
mov word [ebp - 0x34], di
push edi
push eax
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x53
call fcn.004027e0
push esi
lea ecx, [ebp - 0x78]
call fcn.00401ee0
push ebx
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x54
call fcn.00401ee0
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x55
call fcn.00401070
mov esi, dword [ebp - 0x78]
cmp esi, edi
jne 0x5cbbc2
lea esi, [ebp - 0x74]
mov edi, dword [ebp - 0x30]
lea ecx, [ebp - 0x88]
call fcn.00401f10
push esi
mov ebx, eax
call fcn.00609a4e
push ebx
mov esi, eax
call fcn.00609a4e
add edi, esi
lea ebx, [eax + edi + 3]
lea edi, [ebx + ebx]
push edi
call fcn.00622acb
mov edx, eax
add esp, 0xc
test edx, edx
mov dword [ebp - 0x28], edx
je 0x5cbc4a
mov ecx, edi
mov edi, edx
mov edx, ecx
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
lea ecx, [ebp - 0x88]
call fcn.00401f10
lea ecx, [ebp - 0x78]
mov esi, eax
call fcn.00401f10
lea ecx, [ebp - 0x38]
mov edi, eax
call fcn.00401f10
push esi
push edi
push eax
mov eax, dword [ebp - 0x28]
push ebx
push eax
call fcn.006099de
mov ecx, dword [ebp - 0x28]
push ecx
call fcn.00609a4e
add esp, 0x18
mov dword [ebp - 0x20], eax
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x54
call fcn.00401070
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0x53
call fcn.00401070
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x52
call fcn.00401070
xor edi, edi
mov eax, dword [ebp - 0x28]
cmp eax, edi
jne 0x5cbc7d
lea eax, [ebp - 0x24]
push eax
lea ecx, [ebp + 0xc]
call fcn.00622e4a
xor edi, edi
mov dword [ebp - 0x50], edi
mov dword [ebp - 0x48], edi
mov word [ebp - 0x4c], di
mov esi, dword [0x6fca90]
mov ebx, dword [ebp + 0xc]
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x57
call fcn.00401070
cmp ebx, edi
je 0x5cbcf5
mov edi, ebx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x5cbcf5
push eax
push eax
push 0xffffffffffffffff
push ebx
push eax
push esi
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test eax, eax
mov dword [ebp - 0x48], eax
je 0x5cbcf5
lea edx, [eax + eax + 2]
push edx
call fcn.00622acb
add esp, 4
mov dword [ebp - 0x50], eax
test eax, eax
je 0x5cbcf8
mov ecx, dword [ebp - 0x48]
push ecx
push eax
push 0xffffffffffffffff
push ebx
push 0
push esi
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x44]
test ecx, ecx
jne 0x5cbd02
lea ecx, [ebp - 0x40]
test eax, eax
jne 0x5cbd09
lea eax, [ebp - 0x4c]
push 0x50034
push ecx
push eax
push 0
call fcn.004574c0
add esp, 0x10
cmp eax, 6
jne 0x5cbd2e
push str.http:__www.internetdownloadmanager.com_support_xp_https_problems.html
push 0
call fcn.004ae7c0
add esp, 8
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x56
call fcn.00401070
lea ecx, [ebp + 0xc]
mov byte [ebp - 4], 0x52
call fcn.00622d8a
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 0x51
call fcn.00401070
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x50
call fcn.00401070
mov edi, dword [ebp - 0x58]
jmp 0x5cc303
xor edi, edi
mov cl, byte [eax + 0x339]
test cl, cl
je 0x5cbfc0
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x20], edi
mov word [ebp - 0x24], di
mov edx, dword [0x6fd2f8]
push edi
push edx
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x58
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x30], edi
mov word [ebp - 0x34], di
call fcn.004027e0
mov eax, dword [ebp - 0x38]
mov byte [ebp - 4], 0x59
cmp eax, edi
mov ebx, eax
jne 0x5cbdae
lea ebx, [ebp - 0x34]
mov eax, dword [ebp - 0x1c]
cmp eax, edi
mov esi, eax
jne 0x5cbdba
lea esi, [ebp - 0x18]
mov eax, str._s_r_n_r_n_r_n_s
test eax, eax
je 0x5cbecd
cmp esi, edi
je 0x5cbecd
cmp ebx, edi
je 0x5cbecd
mov dword [ebp - 0x6c], edi
mov dword [ebp - 0x64], edi
mov word [ebp - 0x68], di
push edi
push eax
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 0x5a
call fcn.004027e0
push esi
lea ecx, [ebp - 0x78]
call fcn.00401ee0
push ebx
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x5b
call fcn.00401ee0
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x5c
call fcn.00401070
mov ebx, dword [ebp - 0x78]
cmp ebx, edi
jne 0x5cbe1e
lea ebx, [ebp - 0x74]
mov edi, dword [ebp - 0x64]
lea ecx, [ebp - 0x88]
call fcn.00401f10
push eax
call fcn.00609a4e
push ebx
mov esi, eax
call fcn.00609a4e
add edi, esi
lea ebx, [eax + edi + 3]
lea edi, [ebx + ebx]
push edi
call fcn.00622acb
mov edx, eax
add esp, 0xc
test edx, edx
mov dword [ebp - 0x28], edx
je 0x5cbea4
mov ecx, edi
mov edi, edx
mov edx, ecx
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
lea ecx, [ebp - 0x88]
call fcn.00401f10
lea ecx, [ebp - 0x78]
mov esi, eax
call fcn.00401f10
lea ecx, [ebp - 0x6c]
mov edi, eax
call fcn.00401f10
push esi
push edi
push eax
mov eax, dword [ebp - 0x28]
push ebx
push eax
call fcn.006099de
mov ecx, dword [ebp - 0x28]
push ecx
call fcn.00609a4e
add esp, 0x18
mov dword [ebp - 0x20], eax
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x5b
call fcn.00401070
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0x5a
call fcn.00401070
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 0x59
call fcn.00401070
xor edi, edi
mov eax, dword [ebp - 0x28]
cmp eax, edi
jne 0x5cbed7
lea eax, [ebp - 0x24]
push eax
lea ecx, [ebp + 0xc]
call fcn.00622e4a
xor edi, edi
mov dword [ebp - 0x50], edi
mov dword [ebp - 0x48], edi
mov word [ebp - 0x4c], di
mov esi, dword [0x6fca90]
mov ebx, dword [ebp + 0xc]
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x5e
call fcn.00401070
cmp ebx, edi
je 0x5cbf4f
mov edi, ebx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x5cbf4f
push eax
push eax
push 0xffffffffffffffff
push ebx
push eax
push esi
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test eax, eax
mov dword [ebp - 0x48], eax
je 0x5cbf4f
lea edx, [eax + eax + 2]
push edx
call fcn.00622acb
add esp, 4
mov dword [ebp - 0x50], eax
test eax, eax
je 0x5cbf52
mov ecx, dword [ebp - 0x48]
push ecx
push eax
push 0xffffffffffffffff
push ebx
push 0
push esi
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x44]
test ecx, ecx
jne 0x5cbf5c
lea ecx, [ebp - 0x40]
test eax, eax
jne 0x5cbf63
lea eax, [ebp - 0x4c]
push 0x50034
push ecx
push eax
push 0
call fcn.004574c0
add esp, 0x10
cmp eax, 6
jne 0x5cbf88
push str.http:__www.internetdownloadmanager.com_register_new_faq_How_to_configure_Firewalls_for_IDM.html
push 0
call fcn.004ae7c0
add esp, 8
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x5d
call fcn.00401070
lea ecx, [ebp + 0xc]
mov byte [ebp - 4], 0x59
call fcn.00622d8a
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x58
call fcn.00401070
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x50
call fcn.00401070
mov edi, dword [ebp - 0x58]
jmp 0x5cc303
mov eax, dword [ebp - 0x1c]
cmp eax, edi
jne 0x5cbfca
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebp + 0xc]
call fcn.00622e4a
xor edi, edi
mov dword [ebp - 0x50], edi
mov dword [ebp - 0x48], edi
mov word [ebp - 0x4c], di
mov esi, dword [0x6fca90]
mov ebx, dword [ebp + 0xc]
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x60
call fcn.00401070
cmp ebx, edi
je 0x5cc044
mov edi, ebx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x5cc044
push eax
push eax
push 0xffffffffffffffff
push ebx
push eax
push esi
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test eax, eax
mov dword [ebp - 0x48], eax
je 0x5cc044
lea edx, [eax + eax + 2]
push edx
call fcn.00622acb
mov edx, eax
add esp, 4
test edx, edx
mov dword [ebp - 0x50], edx
je 0x5cc047
mov eax, dword [ebp - 0x48]
push eax
push edx
push 0xffffffffffffffff
push ebx
push 0
push esi
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov dword [ebp - 0x48], eax
mov edx, dword [ebp - 0x50]
mov al, byte [ebp - 0x5d]
test al, al
je 0x5cc271
mov ecx, dword [ebp - 0x58]
test dword [ecx + 0x16c], 0x100000
jne 0x5cc271
mov ebx, ecx
or ecx, 0xffffffff
xor eax, eax
mov esi, dword [ebx + 0x13c]
mov edi, esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x5cc271
push 0x5c
push esi
call fcn.0060ab40
mov edi, eax
xor esi, esi
add esp, 8
cmp edi, esi
je 0x5cc095
inc edi
jmp 0x5cc09b
mov edi, dword [ebx + 0x13c]
push 0xb
push str.firefox.exe
push edi
call fcn.0060d550
add esp, 0xc
test eax, eax
je 0x5cc0db
push 0xa
push str.chrome.exe
push edi
call fcn.0060bf70
add esp, 0xc
test eax, eax
je 0x5cc0db
push 0x13
push str.MicrosoftEdgeCP.exe
push edi
call fcn.0060bf70
add esp, 0xc
test eax, eax
jne 0x5cc26e
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x20], esi
mov word [ebp - 0x24], si
mov esi, dword [0x6fca90]
mov ebx, dword [0x6fd1f0]
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x61
call fcn.00401070
test ebx, ebx
je 0x5cc149
mov edi, ebx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x5cc149
mov edi, dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
push eax
push eax
push 0xffffffffffffffff
push ebx
push eax
push esi
call edi
test eax, eax
mov dword [ebp - 0x20], eax
je 0x5cc149
lea edx, [eax + eax + 2]
push edx
call fcn.00622acb
add esp, 4
mov dword [ebp - 0x28], eax
test eax, eax
je 0x5cc149
mov ecx, dword [ebp - 0x20]
push ecx
push eax
push 0xffffffffffffffff
push ebx
push 0
push esi
call edi
mov dword [ebp - 0x20], eax
mov edx, str._r_n_r_n
test edx, edx
je 0x5cc1db
push edx
call fcn.00609a4e
add esp, 4
test eax, eax
je 0x5cc1db
mov eax, dword [ebp - 0x50]
test eax, eax
je 0x5cc177
push eax
call fcn.00609a4e
add esp, 4
mov esi, eax
jmp 0x5cc179
xor esi, esi
push str._r_n_r_n
call fcn.00609a4e
add eax, esi
lea eax, [eax + eax + 2]
push eax
call fcn.00622acb
mov edi, eax
add esp, 8
test edi, edi
je 0x5cc1db
mov eax, dword [ebp - 0x50]
test eax, eax
je 0x5cc1b6
push eax
push edi
call fcn.00609a95
push str._r_n_r_n
push edi
call fcn.00609a6b
add esp, 0x10
jmp 0x5cc1c4
push str._r_n_r_n
push edi
call fcn.00609a95
add esp, 8
lea ecx, [ebp - 0x50]
call fcn.00401070
push edi
mov dword [ebp - 0x50], edi
call fcn.00609a4e
add esp, 4
mov dword [ebp - 0x48], eax
mov esi, dword [ebp - 0x28]
test esi, esi
jne 0x5cc1e9
lea esi, [ebp - 0x24]
test esi, esi
je 0x5cc262
push esi
call fcn.00609a4e
add esp, 4
test eax, eax
je 0x5cc262
mov eax, dword [ebp - 0x50]
test eax, eax
je 0x5cc20a
push eax
call fcn.00609a4e
add esp, 4
mov edi, eax
jmp 0x5cc20c
xor edi, edi
push esi
call fcn.00609a4e
add eax, edi
lea ecx, [eax + eax + 2]
push ecx
call fcn.00622acb
mov edi, eax
add esp, 8
test edi, edi
je 0x5cc262
mov eax, dword [ebp - 0x50]
test eax, eax
je 0x5cc241
push eax
push edi
call fcn.00609a95
push esi
push edi
call fcn.00609a6b
add esp, 0x10
jmp 0x5cc24b
push esi
push edi
call fcn.00609a95
add esp, 8
lea ecx, [ebp - 0x50]
call fcn.00401070
push edi
mov dword [ebp - 0x50], edi
call fcn.00609a4e
add esp, 4
mov dword [ebp - 0x48], eax
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x60
call fcn.00401070
mov edx, dword [ebp - 0x50]
mov edi, dword [ebp - 0x58]
mov eax, dword [edi + 0xa74]
cmp eax, 0xffffffff
je 0x5cc28b
cmp eax, 0x753b
mov eax, 0x30
jne 0x5cc290
mov eax, 0x10
mov esi, dword [ebp - 0x44]
test esi, esi
jne 0x5cc29a
lea esi, [ebp - 0x40]
test edx, edx
mov ecx, edx
jne 0x5cc2a3
lea ecx, [ebp - 0x4c]
or eax, 0x50000
push eax
push esi
push ecx
push 0
call fcn.004574c0
mov al, byte [ebp - 0x5d]
add esp, 0x10
test al, al
je 0x5cc2d7
mov edx, dword [edi + 0x4a0]
mov eax, dword [edi + 0x14]
push edx
push 0x14cd
push 0x111
push eax
call dword [sym.imp.USER32.dll_PostMessageA]
cmp dword [edi + 0xa74], 0x757a
jne 0x5cc2eb
lea ecx, [edi + 0x20]
call fcn.005df730
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x5f
call fcn.00401070
lea ecx, [ebp + 0xc]
mov byte [ebp - 4], 0x50
call fcn.00622d8a
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x4d
call fcn.00401070
jmp 0x5cba0f
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x20], ebx
mov word [ebp - 0x24], bx
call fcn.00401070
mov edx, 0x6c9094
test edx, edx
je 0x5cc37a
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x5cc37a
mov esi, dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
push ebx
push ebx
push 0xffffffffffffffff
push edx
push ebx
push ebx
call esi
cmp eax, ebx
mov dword [ebp - 0x20], eax
je 0x5cc37a
lea eax, [eax + eax + 2]
push eax
call fcn.00622acb
add esp, 4
cmp eax, ebx
mov dword [ebp - 0x28], eax
je 0x5cc37a
mov ecx, dword [ebp - 0x20]
push ecx
push eax
push 0xffffffffffffffff
push 0x6c9094
push ebx
push ebx
call esi
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x1c]
mov byte [ebp - 4], 0x62
cmp eax, ebx
jne 0x5cc388
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebp + 8]
call fcn.00622e4a
xor edi, edi
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x3c], edi
mov word [ebp - 0x40], di
mov esi, dword [0x6fca90]
mov ebx, dword [ebp + 8]
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x64
call fcn.00401070
cmp ebx, edi
je 0x5cc402
mov edi, ebx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x5cc402
push eax
push eax
push 0xffffffffffffffff
push ebx
push eax
push esi
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test eax, eax
mov dword [ebp - 0x3c], eax
je 0x5cc402
lea edx, [eax + eax + 2]
push edx
call fcn.00622acb
mov ecx, eax
add esp, 4
test ecx, ecx
mov dword [ebp - 0x44], ecx
je 0x5cc405
mov eax, dword [ebp - 0x3c]
push eax
push ecx
push 0xffffffffffffffff
push ebx
push 0
push esi
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0x44]
mov edx, dword [ebp - 0x58]
mov eax, dword [edx + 0xa74]
cmp eax, 0xffffffff
je 0x5cc41f
cmp eax, 0x753b
mov eax, 0x30
jne 0x5cc424
mov eax, 0x10
mov edx, dword [ebp - 0x28]
test edx, edx
jne 0x5cc42e
lea edx, [ebp - 0x24]
test ecx, ecx
jne 0x5cc435
lea ecx, [ebp - 0x40]
or eax, 0x50000
push eax
push edx
push ecx
push 0
call fcn.004574c0
add esp, 0x10
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x63
call fcn.00401070
lea ecx, [ebp + 8]
mov byte [ebp - 4], 0x62
call fcn.00622d8a
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x4d
call fcn.00401070
mov edi, dword [ebp - 0x58]
push 0
mov ecx, edi
call fcn.005cf540
jmp 0x5cc53c
cmp eax, 4
jne 0x5cc52a
mov al, byte [edi + 0x339]
test al, al
je 0x5cc52a
lea eax, [ebp + 0x10]
lea ecx, [ebp + 0xc]
push eax
push ecx
mov byte [edi + 0x339], 0
mov edx, dword [0x6fcafc]
push ebx
push ebx
push str.bHDIShwd
push edx
mov dword [ebp + 0x10], 4
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
je 0x5cc52a
mov ecx, dword [0x6fcafc]
lea eax, [ebp + 0xc]
push 4
push eax
push 4
push ebx
push str.bHDIShwd
push ecx
mov dword [ebp + 0xc], 1
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call fcn.00623b6b
push eax
lea ecx, [ebp - 0x1cc]
call fcn.005340c0
lea ecx, [ebp - 0x1cc]
mov byte [ebp - 4], 0x65
call fcn.006226c5
mov eax, 0x657cdc
lea ecx, [ebp - 0x1cc]
mov byte [ebp - 4], 0x4d
mov dword [ebp - 0x160], eax
mov dword [ebp - 0x170], eax
call fcn.00622306
push 0
mov ecx, edi
call fcn.005cf540
jmp 0x5cc53c
mov byte [edi + 0x339], 0
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x4c
call fcn.00401070
jmp 0x5cb88d
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x18], esi
cmp esi, eax
jge 0x5ec999
mov eax, dword [ebx + 0xa8]
mov edi, esi
shl edi, 4
mov ecx, dword [eax + 0x44]
add edi, esi
shl edi, 2
push 0
push 0
mov eax, dword [ecx + edi + 0x38]
push 0
push 0
push eax
lea ecx, [ebx + 0x5c]
push esi
push 1
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x34], ecx
call fcn.00620866
cmp eax, 0xffffffff
mov dword [ebp - 0x24], eax
jle 0x5ec993
mov edx, dword [ebx + 0xa8]
push esi
push 0
push 0
mov ecx, dword [edx + 0x44]
push 0
push 0
push 4
mov dword [ecx + edi + 0x40], esi
mov ecx, dword [ebp - 0x34]
push 0
push eax
call fcn.006208e8
mov edx, dword [ebp - 0x20]
xor esi, esi
push esi
push 0x400
mov eax, dword [edx + 0xa8]
mov edx, edi
push esi
mov ecx, dword [eax + 0x44]
mov edi, dword [ecx + edx + 0x14]
push edi
call fcn.0060bb90
mov dword [ebp - 0x34], eax
mov ecx, edi
cdq
mov dword [ebp - 0x2c], eax
sub ecx, eax
mov eax, esi
push esi
sbb eax, edx
push 0x400
push eax
push ecx
mov dword [ebp - 0x28], edx
call fcn.0060bae0
mov ebx, eax
and ebx, 0x800003ff
jns 0x5ec776
dec ebx
or ebx, 0xfffffc00
inc ebx
mov eax, ebx
mov ecx, edi
shl eax, 0xa
cdq
sub ecx, eax
mov eax, esi
sbb eax, edx
mov edx, dword [ebp - 0x2c]
sub ecx, edx
mov edx, dword [ebp - 0x28]
sbb eax, edx
push 0
push 0x100000
push eax
push ecx
call fcn.0060bae0
and eax, 0x800003ff
jns 0x5ec7aa
dec eax
or eax, 0xfffffc00
inc eax
push 0
push 0x40000000
push esi
push edi
mov dword [ebp - 0x38], eax
call fcn.0060bae0
lea ecx, [ebp - 0x14]
push 3
push ecx
mov esi, eax
push 0xe
push 0x400
mov dword [ebp - 0xa0], esi
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoA]
test eax, eax
jne 0x5ec803
mov edi, 0x6cd6b0
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [ebp - 0x14]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, dword [ebp - 0xa0]
test esi, esi
jne 0x5ec8d4
mov eax, dword [ebp - 0x38]
cmp eax, 0x3e7
jg 0x5ec8d4
test eax, eax
jne 0x5ec88c
cmp ebx, 0x3e7
jg 0x5ec88c
test ebx, ebx
je 0x5ec869
mov eax, dword [ebp - 0x34]
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
shl eax, 3
cdq
and edx, 0x3ff
add eax, edx
mov edx, dword [0x6fd858]
mov ecx, eax
mov eax, 0x66666667
sar ecx, 0xa
push edx
imul ecx
sar edx, 2
mov eax, edx
lea ecx, [ebp - 0x14]
shr eax, 0x1f
add edx, eax
push edx
push ecx
push ebx
jmp 0x5ec90f
mov eax, dword [0x6fd854]
mov ecx, dword [ebp - 0x34]
push eax
push ecx
lea edx, [ebp - 0xb4]
push str._d___s
push edx
call fcn.0060a593
add esp, 0x10
jmp 0x5ec923
lea ebx, [ebx + ebx*4]
lea eax, [ebx + ebx*4]
lea eax, [eax + eax*4]
shl eax, 3
cdq
and edx, 0x3ff
add eax, edx
mov ecx, eax
mov eax, dword [0x6fd85c]
push eax
mov eax, 0x66666667
sar ecx, 0xa
imul ecx
sar edx, 2
mov ecx, edx
mov eax, dword [ebp - 0x38]
shr ecx, 0x1f
add edx, ecx
lea ecx, [ebp - 0xb4]
push edx
lea edx, [ebp - 0x14]
push edx
push eax
push str._d_s_02d___s
push ecx
jmp 0x5ec91b
mov eax, dword [ebp - 0x38]
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
shl eax, 3
cdq
and edx, 0x3ff
add eax, edx
mov edx, dword [0x6fd860]
mov ecx, eax
mov eax, 0x66666667
sar ecx, 0xa
push edx
imul ecx
sar edx, 2
mov eax, edx
lea ecx, [ebp - 0x14]
shr eax, 0x1f
add edx, eax
push edx
push ecx
push esi
lea edx, [ebp - 0xb4]
push str._d_s_02d___s
push edx
call fcn.0060a593
add esp, 0x18
mov edi, dword [ebp - 0x20]
mov ebx, dword [ebp - 0x24]
lea eax, [ebp - 0xb4]
push eax
lea esi, [edi + 0x5c]
push 2
push ebx
mov ecx, esi
call fcn.00620961
mov edx, dword [edi + 0xa8]
lea ecx, [ebp - 0xb4]
push ecx
mov ecx, dword [ebp - 0x3c]
mov eax, dword [edx + 0x44]
push 0
mov edx, dword [eax + ecx + 0x18]
lea ecx, [ebp - 0x9c]
push edx
call fcn.00469db0
lea eax, [ebp - 0xb4]
mov ecx, esi
push eax
push 1
push ebx
call fcn.00620961
mov ecx, dword [edi + 0xa8]
mov eax, dword [ebp - 0x3c]
mov edx, dword [ecx + 0x44]
mov ecx, esi
mov eax, dword [edx + eax + 0x3c]
push eax
push 3
push ebx
call fcn.00620961
mov esi, dword [ebp - 0x18]
mov ebx, edi
inc esi
jmp 0x5ec6b6
mov eax, dword [0x6cdafc]
xor edi, edi
cmp eax, edi
je 0x5ecaa1
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x28], edi
mov word [ebp - 0x2c], di
mov ecx, dword [0x6fca90]
mov esi, dword [0x6fda1c]
mov dword [ebp - 0x18], ecx
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 6
call fcn.00401070
cmp esi, edi
je 0x5eca1f
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x5eca1f
mov edx, dword [ebp - 0x18]
mov edi, dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
push eax
push eax
push 0xffffffffffffffff
push esi
push eax
push edx
call edi
test eax, eax
mov dword [ebp - 0x28], eax
je 0x5eca1f
lea eax, [eax + eax + 2]
push eax
call fcn.00622acb
add esp, 4
mov dword [ebp - 0x30], eax
test eax, eax
je 0x5eca1f
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x18]
push ecx
push eax
push 0xffffffffffffffff
push esi
push 0
push edx
call edi
mov dword [ebp - 0x28], eax
lea ecx, [ebp - 0x30]
call fcn.00401f10
lea edi, [ebx + 0xac]
mov dword [ebp - 0x24], eax
mov ecx, edi
call fcn.00401f10
mov esi, eax
mov eax, dword [ebp - 0x24]
push eax
call fcn.00609a4e
mov edx, eax
push esi
mov dword [ebp - 0x24], edx
call fcn.00609a4e
mov ecx, dword [ebp - 0x24]
add ecx, eax
lea edx, [ecx + ecx + 0x40]
push edx
call fcn.00622acb
mov esi, eax
add esp, 0xc
test esi, esi
je 0x5eca93
mov ecx, edi
call fcn.00401f10
lea ecx, [ebp - 0x30]
mov edi, eax
call fcn.00401f10
mov ecx, dword [ebp - 0x1c]
push ecx
push edi
push eax
push esi
call fcn.0060aac7
mov edx, dword [ebx + 0x9c]
add esp, 0x10
push esi
push edx
call dword [sym.imp.USER32.dll_SetWindowTextW]
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 5
call fcn.00401070
jmp 0x5ecb0b
mov eax, dword [0x6f7b78]
mov dword [ebp - 0x20], eax
lea ecx, [ebx + 0xac]
mov byte [ebp - 4], 7
call fcn.00401f10
lea ecx, [ebp - 0x18]
push eax
push ecx
call fcn.00402850
add esp, 8
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov ecx, dword [0x6fda1c]
push edx
push eax
lea edx, [ebp - 0x20]
push ecx
push edx
mov byte [ebp - 4], 8
call fcn.0061fae1
mov eax, dword [ebp - 0x20]
add esp, 0x10
lea ecx, [ebx + 0x98]
push eax
call fcn.005ecbb0
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 7
call fcn.00622d8a
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 5
call fcn.00622d8a
push 0
push 0
push 0
push 0xfffffffffffffffe
push ebx
push 0x5ebed0
call fcn.00626cae
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x9c], 0x659b68
mov byte [ebp - 4], 3
call fcn.00401070
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 2
call fcn.00401070
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 1
call fcn.00401070
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0
call fcn.00401070
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov eax, 1
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret