Function at 0x557b60
Capabilities:
Set registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x615355
mov eax, dword fs:[0]
push eax
sub esp, 0x138
mov eax, dword [0x6b000c]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x134], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x130], eax
mov eax, dword [ebp + 0x20]
mov dword [ebp - 0x11c], eax
mov eax, dword [ebp + 0x24]
mov dword [ebp - 0x120], eax
mov eax, dword [ebp + 0x28]
mov dword [ebp - 0x110], eax
mov dword [ebp - 4], 1
call fcn.0040bf10
mov ecx, eax
test ecx, ecx
je 0x5586ce
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x114], eax
mov byte [ebp - 4], 3
call fcn.0040bf10
mov ecx, eax
test ecx, ecx
je 0x5586d8
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x118], eax
mov byte [ebp - 4], 5
call fcn.0040bf10
mov ecx, eax
test ecx, ecx
je 0x5586e2
mov eax, dword [ecx]
call dword [eax + 0xc]
lea esi, [eax + 0x10]
mov dword [ebp - 0xf0], esi
mov byte [ebp - 4], 7
or ebx, 0xffffffff
cmp dword [ebp + 0x2c], 0
je 0x557cae
mov eax, dword [ebp + 0x10]
lea edi, [esi - 0x10]
lea edx, [eax - 0x10]
cmp edx, edi
je 0x557d41
cmp dword [edi + 0xc], 0
lea esi, [edi + 0xc]
jl 0x557c94
mov ecx, dword [edx]
cmp ecx, dword [edi]
jne 0x557c94
mov ecx, edx
call fcn.0040c950
mov dword [ebp - 0xe8], eax
mov ecx, ebx
lock xadd dword [esi], ecx
dec ecx
test ecx, ecx
jg 0x557c86
mov ecx, dword [edi]
push edi
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0xe8]
lea esi, [eax + 0x10]
mov dword [ebp - 0xf0], esi
jmp 0x557d41
push dword [eax - 0xc]
lea ecx, [ebp - 0xf0]
push eax
call fcn.0040c9d0
mov esi, dword [ebp - 0xf0]
jmp 0x557d41
push dword [ebp + 0x10]
lea eax, [ebp - 0xf4]
push eax
call fcn.0055a1b0
mov byte [ebp - 4], 8
lea edi, [esi - 0x10]
mov edx, dword [eax]
lea ecx, [edx - 0x10]
cmp ecx, edi
je 0x557d20
cmp dword [edi + 0xc], 0
lea esi, [edi + 0xc]
jl 0x557d0b
mov eax, dword [ecx]
cmp eax, dword [edi]
jne 0x557d0b
call fcn.0040c950
mov dword [ebp - 0xe8], eax
mov ecx, ebx
lock xadd dword [esi], ecx
dec ecx
test ecx, ecx
jg 0x557d00
mov ecx, dword [edi]
push edi
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0xe8]
lea esi, [eax + 0x10]
mov dword [ebp - 0xf0], esi
jmp 0x557d20
push dword [edx - 0xc]
lea ecx, [ebp - 0xf0]
push edx
call fcn.0040c9d0
mov esi, dword [ebp - 0xf0]
mov byte [ebp - 4], 7
mov eax, ebx
mov edx, dword [ebp - 0xf4]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x557d41
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp + 0xc]
lea eax, [ebp - 0x114]
push dword [0x6b9694]
push esi
push str.pass_suid_susername_s
push eax
call fcn.0040d300
add esp, 0x10
mov edi, esp
mov dword [ebp - 0xfc], esp
mov dword [ebp - 0xe8], edi
mov eax, dword [ebp - 0x114]
add eax, 0xfffffff0
mov ecx, eax
mov dword [ebp - 0x138], eax
call fcn.0040c950
add eax, 0x10
mov dword [edi], eax
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x128]
push eax
mov byte [ebp - 4], 7
call fcn.0055a2a0
mov byte [ebp - 4], 0xc
lea eax, [ebp - 0xe8]
push dword [ebp + 0xc]
push eax
call fcn.0055a5d0
mov byte [ebp - 4], 0xd
push dword [ebp - 0x128]
push dword [0x6b9694]
push esi
push dword [eax]
lea eax, [ebp - 0x118]
push dword [0x6ba020]
push eax
call fcn.0040d300
add esp, 0x18
mov byte [ebp - 4], 0xc
mov eax, ebx
mov edx, dword [ebp - 0xe8]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x557df8
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0
lea ecx, [ebp - 0x140]
call dword [sym.imp.ycomuiu.dll_public:_void___thiscall_DuiLib::CWaitCursor::constructor_struct_HWND____]
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x124]
mov edi, dword [ebp - 0x118]
mov edx, edi
push 0
call fcn.00467e90
add esp, 4
mov byte [ebp - 4], 0x10
mov eax, dword [ebp - 0x124]
mov ecx, dword [eax - 0xc]
test ecx, ecx
jle 0x5585ab
js 0x5586ec
cmp word [eax], 0x7b
jne 0x5585ab
push eax
lea ecx, [ebp - 0xf4]
call fcn.004907e0
mov byte [ebp - 4], 0x11
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x4c], 0
lea eax, [ecx + 1]
mov dword [ebp - 0x48], 0xf
mov byte [ebp - 0x5c], 0
mov dword [ebp - 0xe8], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x557e84
sub ecx, dword [ebp - 0xe8]
push ecx
push edx
lea ecx, [ebp - 0x5c]
call fcn.00412890
mov byte [ebp - 4], 0x13
mov eax, ebx
mov edx, dword [ebp - 0xf4]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x557ebc
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0xe4]
call fcn.004248e0
mov byte [ebp - 4], 0x15
mov eax, dword [ebp - 0x104]
and eax, 0xffffff00
mov dword [ebp - 0x104], eax
and eax, 0xfffffeff
mov dword [ebp - 0x104], eax
mov dword [ebp - 0x100], 0
mov byte [ebp - 4], 0x19
lea eax, [ebp - 0x5c]
cmp dword [ebp - 0x48], 0x10
lea ecx, [ebp - 0xbc]
push dword [ebp - 0x4c]
cmovae eax, dword [ebp - 0x5c]
push eax
call fcn.00412890
cmp dword [ebp - 0xa8], 0x10
lea ecx, [ebp - 0xbc]
mov eax, dword [ebp - 0xac]
lea edx, [ebp - 0x10c]
cmovae ecx, dword [ebp - 0xbc]
push ecx
add eax, ecx
push edx
push eax
push ecx
lea ecx, [ebp - 0xe4]
call fcn.00424b30
test al, al
je 0x558541
push ecx
push str.isvip
lea ecx, [ebp - 0x10c]
call fcn.0042b230
mov ecx, eax
call fcn.0042add0
push ecx
push str.result
lea ecx, [ebp - 0x10c]
mov dword [ebp - 0xf4], eax
call fcn.0042b230
mov ecx, eax
call fcn.0042add0
push ecx
lea ecx, [ebp - 0x10c]
cmp eax, 1
jne 0x5584c7
push str.uidCount
call fcn.0042b230
mov ecx, eax
call fcn.0042add0
push ecx
push str.passIsCorrect
lea ecx, [ebp - 0x10c]
mov dword [ebp - 0xe8], eax
call fcn.0042b230
mov ecx, eax
call fcn.0042ae70
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0
mov byte [ebp - 0xe9], al
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
mov byte [ebp - 4], 0x1a
push ecx
push str.startTime
lea ecx, [ebp - 0x10c]
call fcn.0042b230
cmp byte [eax + 8], 4
jne 0x558071
push ecx
push str.startTime
lea ecx, [ebp - 0x10c]
call fcn.0042b230
lea ecx, [ebp - 0x2c]
push ecx
mov ecx, eax
call fcn.0042ac70
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x44]
push eax
call fcn.00421150
mov byte [ebp - 4], 0x1a
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x55805f
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x558055
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5586f6
push edx
push ecx
call fcn.005603ff
add esp, 8
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
mov byte [ebp - 4], 0x1c
push ecx
push str.endTime
lea ecx, [ebp - 0x10c]
call fcn.0042b230
cmp byte [eax + 8], 4
jne 0x55811f
push ecx
push str.endTime
lea ecx, [ebp - 0x10c]
call fcn.0042b230
lea ecx, [ebp - 0x2c]
push ecx
mov ecx, eax
call fcn.0042ac70
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x74]
push eax
call fcn.00421150
mov byte [ebp - 4], 0x1c
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x55810d
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x558103
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5586fb
push edx
push ecx
call fcn.005603ff
add esp, 8
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
cmp dword [ebp + 0x30], 0
je 0x5582b3
push ecx
push str.mobile
lea ecx, [ebp - 0x10c]
call fcn.0042b230
cmp byte [eax + 8], 4
jne 0x5581ee
push ecx
push str.mobile
lea ecx, [ebp - 0x10c]
call fcn.0042b230
lea ecx, [ebp - 0x2c]
push ecx
mov ecx, eax
call fcn.0042ac70
mov byte [ebp - 4], 0x1e
cmp dword [eax + 0x14], 0x10
jb 0x55816c
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0xfc]
call fcn.0040c2f0
mov byte [ebp - 4], 0x1f
mov ecx, dword [eax]
call fcn.004dc2a0
mov byte [ebp - 4], 0x1e
mov eax, ebx
mov edx, dword [ebp - 0xfc]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x5581a4
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x1c
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x5581dc
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5581d2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x558700
push edx
push ecx
call fcn.005603ff
add esp, 8
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
push ecx
push str.email
lea ecx, [ebp - 0x10c]
call fcn.0042b230
cmp byte [eax + 8], 4
jne 0x5582b3
push ecx
push str.email
lea ecx, [ebp - 0x10c]
call fcn.0042b230
lea ecx, [ebp - 0x2c]
push ecx
mov ecx, eax
call fcn.0042ac70
mov byte [ebp - 4], 0x21
cmp dword [eax + 0x14], 0x10
jb 0x558231
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0xfc]
call fcn.0040c2f0
mov byte [ebp - 4], 0x22
mov ecx, dword [eax]
call fcn.004dc300
mov byte [ebp - 4], 0x21
mov eax, ebx
mov edx, dword [ebp - 0xfc]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x558269
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x1c
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x5582a1
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x558297
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x558705
push edx
push ecx
call fcn.005603ff
add esp, 8
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
mov ecx, dword [ebp - 0x12c]
test ecx, ecx
je 0x5582c5
mov eax, dword [ebp - 0xe8]
mov dword [ecx], eax
mov ecx, dword [ebp - 0x130]
test ecx, ecx
je 0x5582d8
movzx eax, byte [ebp - 0xe9]
mov dword [ecx], eax
cmp dword [ebp - 0x11c], 0
je 0x5582fd
cmp dword [ebp - 0x30], 0x10
lea eax, [ebp - 0x44]
cmovae eax, dword [ebp - 0x44]
push eax
call fcn.005a7648
mov ecx, dword [ebp - 0x11c]
add esp, 4
mov dword [ecx], eax
cmp dword [ebp - 0x120], 0
je 0x558322
cmp dword [ebp - 0x60], 0x10
lea eax, [ebp - 0x74]
cmovae eax, dword [ebp - 0x74]
push eax
call fcn.005a7648
mov ecx, dword [ebp - 0x120]
add esp, 4
mov dword [ecx], eax
mov ecx, dword [ebp - 0x110]
mov eax, dword [ebp - 0xf4]
test ecx, ecx
je 0x558334
mov dword [ecx], eax
cmp byte [ebp - 0xe9], 0
je 0x5583aa
cmp eax, 1
jne 0x5583a1
cmp dword [ebp - 0xe8], 3
jbe 0x558354
push 0xb
push str.UIdOverflow
jmp 0x5583b1
push 4
lea eax, [ebp - 0x110]
mov byte [0x6b6c1b], 1
push eax
push 4
push str.CheckNet
push 0x650fc8
push SysReAllocString
mov dword [ebp - 0x110], 0x50
call dword [sym.imp.SHLWAPI.dll_SHSetValueW]
mov eax, dword [ebp - 0x134]
test eax, eax
je 0x5583bc
push 0
push 0
push 0x403
push eax
call dword [sym.imp.USER32.dll_PostMessageW]
jmp 0x5583bc
push 0xa
push str.UserNotVIP
jmp 0x5583b1
push 0xb
push str.PassIsError
mov ecx, dword [ebp - 0xf8]
call fcn.0040c9d0
mov byte [ebp - 4], 0x1a
mov edx, dword [ebp - 0x60]
cmp edx, 0x10
jb 0x5583f4
mov ecx, dword [ebp - 0x74]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5583ea
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x55870a
push edx
push ecx
call fcn.005603ff
add esp, 8
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
mov byte [ebp - 4], 0x19
mov edx, dword [ebp - 0x30]
cmp edx, 0x10
jb 0x55843e
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x558434
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x55870f
push edx
push ecx
call fcn.005603ff
add esp, 8
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x10c]
call fcn.0042a990
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0xe4]
call fcn.004270a0
mov byte [ebp - 4], 0x10
mov edx, dword [ebp - 0x48]
cmp edx, 0x10
jb 0x5584a6
mov ecx, dword [ebp - 0x5c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x55849c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x558714
push edx
push ecx
call fcn.005603ff
add esp, 8
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0xf
mov byte [ebp - 0x5c], 0
mov dword [ebp - 0xe8], 1
jmp 0x5585c7
push str.errInfo
call fcn.0042b230
lea ecx, [ebp - 0x44]
push ecx
mov ecx, eax
call fcn.0042ac70
mov byte [ebp - 4], 0x2b
lea eax, [ebp - 0x44]
cmp dword [ebp - 0x30], 0x10
mov ecx, dword [ebp - 0xf8]
cmovae eax, dword [ebp - 0x44]
push eax
call fcn.0040c670
mov byte [ebp - 4], 0x19
mov edx, dword [ebp - 0x30]
cmp edx, 0x10
jb 0x55852f
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x558525
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x558719
push edx
push ecx
call fcn.005603ff
add esp, 8
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x10c]
call fcn.0042a990
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0xe4]
call fcn.004270a0
mov byte [ebp - 4], 0x10
mov edx, dword [ebp - 0x48]
cmp edx, 0x10
jb 0x558597
mov ecx, dword [ebp - 0x5c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x55858d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x55871e
push edx
push ecx
call fcn.005603ff
add esp, 8
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0xf
mov byte [ebp - 0x5c], 0
jmp 0x5585bd
mov ecx, dword [ebp - 0xf8]
push 0xe
push str.ErrNetworkLost
call fcn.0040c9d0
mov dword [ebp - 0xe8], 0
mov byte [ebp - 4], 0xf
mov eax, ebx
mov edx, dword [ebp - 0x124]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x5585e8
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x140]
call dword [sym.imp.ycomuiu.dll_public:_void___thiscall_DuiLib::CWaitCursor::destructor_void_]
mov byte [ebp - 4], 7
mov eax, ebx
mov edx, dword [ebp - 0x128]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x558619
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 5
add esi, 0xfffffff0
mov eax, ebx
lock xadd dword [esi + 0xc], eax
dec eax
test eax, eax
jg 0x558634
mov ecx, dword [esi]
push esi
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 3
add edi, 0xfffffff0
mov eax, ebx
lock xadd dword [edi + 0xc], eax
dec eax
test eax, eax
jg 0x55864f
mov ecx, dword [edi]
push edi
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 1
mov eax, ebx
mov edx, dword [ebp - 0x138]
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x55866d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0
mov eax, ebx
mov edx, dword [ebp + 0xc]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x55868b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp + 0x10]
add eax, 0xfffffff0
lock xadd dword [eax + 0xc], ebx
dec ebx
test ebx, ebx
jg 0x5586aa
mov ecx, dword [eax]
push eax
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0xe8]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0055f9be
mov esp, ebp
pop ebp
ret 0x2c
push 0x80004005
call fcn.0040b250
push 0x80004005
call fcn.0040b250
push 0x80004005
call fcn.0040b250
push 0x80070057
call fcn.0040b250
call fcn.005a5046
call fcn.005a5046
call fcn.005a5046
call fcn.005a5046
call fcn.005a5046
call fcn.005a5046
call fcn.005a5046
call fcn.005a5046
call fcn.005a5046
int3