Function at 0x10001290
Capabilities:
Set registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xbc
mov eax, dword [0x1013c270]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 0xffffffffffffffff
mov esi, ecx
mov dword [ebp - 0x48], 0xf
push 0
push esi
lea ecx, [ebp - 0x5c]
mov dword [ebp - 0x4c], 0
mov byte [ebp - 0x5c], 0
call fcn.10002820
lea ecx, [ebp - 0x8c]
call fcn.10003070
push 0xffffffffffffffff
push 0
push esi
lea ecx, [ebp - 0xb8]
mov dword [ebp - 0xa4], 0xf
mov dword [ebp - 0xa8], 0
mov byte [ebp - 0xb8], 0
call fcn.10002820
lea eax, [ebp - 0xb8]
push eax
lea eax, [ebp + 0x20]
push eax
lea ecx, [ebp - 0x8c]
call fcn.10003660
test al, al
lea ecx, [ebp - 0xb8]
sete bl
call fcn.100026f0
test bl, bl
je 0x10001902
cmp dword [ebp + 0x34], 0x10
lea eax, [ebp + 0x20]
push dword [ebp + 0x30]
cmovae eax, dword [ebp + 0x20]
lea ecx, [ebp - 0x91]
push eax
call fcn.1000d800
cmp dword [ebp - 0x48], 0x10
lea eax, [ebp - 0x5c]
push dword [ebp - 0x4c]
cmovae eax, dword [ebp - 0x5c]
lea ecx, [ebp - 0x91]
push eax
call fcn.1000d800
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 0x74]
push str.SoftwarexiaoyuReportoffline_
push eax
call fcn.10001eb0
add esp, 0xc
mov dword [ebp - 0xa4], 0xf
cmp dword [ebp - 0x60], 0x10
lea edx, [ebp - 0x74]
xorps xmm0, xmm0
mov dword [ebp - 0xa8], 0
cmovae edx, dword [ebp - 0x74]
movups xmmword [ebp - 0x44], xmm0
mov byte [ebp - 0xb8], 0
movups xmmword [ebp - 0x34], xmm0
movq qword [ebp - 0x24], xmm0
cmp byte [edx], 0
jne 0x100013b3
xor ecx, ecx
jmp 0x100013c1
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100013b8
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0xb8]
call fcn.10002cf0
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0xb8]
mov dword [ebp - 0x44], reloc.WS2_32.dll_accept
push eax
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x2c], 0xf
mov dword [ebp - 0x30], 0
mov byte [ebp - 0x40], 0
call fcn.10002820
lea ecx, [ebp - 0xb8]
mov dword [ebp - 0x28], 0
mov byte [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
call fcn.100026f0
xorps xmm0, xmm0
mov dword [ebp - 8], 0
xor edx, edx
movq qword [ebp - 0x10], xmm0
xor eax, eax
movq qword [ebp - 0x1c], xmm0
xor edi, edi
mov dword [ebp - 0x10], 0
xor ecx, ecx
mov dword [ebp - 0xc], edi
xor ebx, ebx
mov dword [ebp - 8], ecx
xor esi, esi
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x98], edx
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x9c], eax
cmp dword [ebp - 0x4c], eax
jbe 0x1000156e
cmp dword [ebp - 0x48], 0x10
lea eax, [ebp - 0x5c]
mov edx, dword [ebp - 0x10]
cmovae eax, dword [ebp - 0x5c]
add eax, dword [ebp - 0x9c]
mov dword [ebp - 0x90], eax
cmp eax, edi
jae 0x100014f1
cmp edx, eax
ja 0x100014f1
sub eax, edx
mov dword [ebp - 0x90], eax
cmp edi, ecx
jne 0x100014e8
mov eax, ecx
sub eax, edi
cmp eax, 1
jae 0x100014e2
mov eax, edx
sub eax, edi
dec eax
cmp eax, 1
jb 0x10001936
sub ecx, edx
sub edi, edx
mov eax, ecx
mov dword [ebp - 0xa0], ecx
shr eax, 1
inc edi
mov ecx, eax
xor edx, edx
add eax, dword [ebp - 0xa0]
not ecx
cmp ecx, dword [ebp - 0xa0]
lea ecx, [ebp - 0x10]
cmovae edx, eax
cmp edx, edi
cmovae edi, edx
push edi
call fcn.10001d40
mov ecx, dword [ebp - 8]
mov edi, dword [ebp - 0xc]
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x90]
test edi, edi
je 0x10001552
mov al, byte [edx + eax]
jmp 0x10001550
cmp edi, ecx
jne 0x1000154a
mov eax, ecx
sub eax, edi
cmp eax, 1
jae 0x10001544
mov eax, edx
sub eax, edi
dec eax
cmp eax, 1
jb 0x10001936
sub ecx, edx
sub edi, edx
mov eax, ecx
mov dword [ebp - 0xa0], ecx
shr eax, 1
inc edi
mov ecx, eax
xor edx, edx
add eax, dword [ebp - 0xa0]
not ecx
cmp ecx, dword [ebp - 0xa0]
lea ecx, [ebp - 0x10]
cmovae edx, eax
cmp edx, edi
cmovae edi, edx
push edi
call fcn.10001d40
mov ecx, dword [ebp - 8]
mov edi, dword [ebp - 0xc]
mov eax, dword [ebp - 0x90]
test edi, edi
je 0x10001552
mov al, byte [eax]
mov byte [edi], al
mov eax, dword [ebp - 0x9c]
inc edi
inc eax
mov dword [ebp - 0xc], edi
mov dword [ebp - 0x9c], eax
cmp dword [ebp - 0x4c], eax
ja 0x10001462
xor edx, edx
xor ecx, ecx
mov dword [ebp - 0x9c], ecx
cmp dword [ebp + 0x30], ecx
jbe 0x1000168f
cmp dword [ebp + 0x34], 0x10
lea eax, [ebp + 0x20]
cmovae eax, dword [ebp + 0x20]
add eax, ecx
mov dword [ebp - 0x90], eax
cmp eax, esi
jae 0x1000160f
cmp ebx, eax
ja 0x1000160f
sub eax, ebx
mov dword [ebp - 0x90], eax
cmp esi, edx
jne 0x10001606
mov eax, edx
sub eax, esi
cmp eax, 1
jae 0x10001600
mov eax, ebx
sub eax, esi
dec eax
cmp eax, 1
jb 0x10001936
sub edx, ebx
sub esi, ebx
mov eax, edx
mov dword [ebp - 0x98], edx
shr eax, 1
inc esi
mov ecx, eax
add eax, edx
not ecx
xor edx, edx
cmp ecx, dword [ebp - 0x98]
lea ecx, [ebp - 0x1c]
cmovae edx, eax
cmp edx, esi
cmovae esi, edx
push esi
call fcn.10001d40
mov edx, dword [ebp - 0x14]
mov esi, dword [ebp - 0x18]
mov ebx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x9c]
mov dword [ebp - 0x98], edx
mov eax, dword [ebp - 0x90]
test esi, esi
je 0x1000167b
mov al, byte [ebx + eax]
jmp 0x10001679
cmp esi, edx
jne 0x10001673
mov eax, edx
sub eax, esi
cmp eax, 1
jae 0x1000166d
mov eax, ebx
sub eax, esi
dec eax
cmp eax, 1
jb 0x10001936
sub edx, ebx
sub esi, ebx
mov eax, edx
mov dword [ebp - 0x98], edx
shr eax, 1
inc esi
mov ecx, eax
add eax, edx
not ecx
xor edx, edx
cmp ecx, dword [ebp - 0x98]
lea ecx, [ebp - 0x1c]
cmovae edx, eax
cmp edx, esi
cmovae esi, edx
push esi
call fcn.10001d40
mov edx, dword [ebp - 0x14]
mov esi, dword [ebp - 0x18]
mov ebx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x9c]
mov dword [ebp - 0x98], edx
mov eax, dword [ebp - 0x90]
test esi, esi
je 0x1000167b
mov al, byte [eax]
mov byte [esi], al
inc ecx
inc esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x9c], ecx
cmp dword [ebp + 0x30], ecx
ja 0x1000157f
push 4
push str.code
lea ecx, [ebp - 0xb8]
mov dword [ebp - 0xa4], 0xf
mov dword [ebp - 0xa8], 0
mov byte [ebp - 0xb8], 0
call fcn.10002cf0
cmp dword [ebp - 0x28], 0
jne 0x10001718
cmp byte [ebp - 0x24], 0
lea ecx, [ebp - 0x40]
lea eax, [ebp - 0x28]
je 0x100016ee
cmp dword [ebp - 0x2c], 0x10
push eax
cmovae ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x20]
or eax, 0x20019
push eax
push 0
push ecx
push dword [ebp - 0x44]
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
jmp 0x10001714
cmp dword [ebp - 0x2c], 0x10
push 0
cmovae ecx, dword [ebp - 0x40]
push eax
mov eax, dword [ebp - 0x20]
push 0
or eax, 0x2001f
push eax
push 0
push 0
push 0
push ecx
push dword [ebp - 0x44]
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExA]
test eax, eax
jne 0x10001745
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0xb8]
sub edi, ecx
cmp dword [ebp - 0xa4], 0x10
push edi
cmovae eax, dword [ebp - 0xb8]
mov edi, dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push ecx
push 3
push 0
push eax
push dword [ebp - 0x28]
call edi
jmp 0x1000174b
mov edi, dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov eax, dword [ebp - 0xa4]
cmp eax, 0x10
jb 0x10001797
mov ecx, dword [ebp - 0xb8]
inc eax
cmp eax, 0x1000
jb 0x1000178e
test cl, 0x1f
jne 0x10001940
mov eax, dword [ecx - 4]
cmp eax, ecx
jae 0x10001945
sub ecx, eax
cmp ecx, 4
jb 0x1000194a
cmp ecx, 0x23
ja 0x1000194f
mov ecx, eax
push ecx
call fcn.100547d8
add esp, 4
push 4
push 0x100aa2ac
lea ecx, [ebp - 0xb8]
mov dword [ebp - 0xa4], 0xf
mov dword [ebp - 0xa8], 0
mov byte [ebp - 0xb8], 0
call fcn.10002cf0
cmp dword [ebp - 0x28], 0
jne 0x10001820
cmp byte [ebp - 0x24], 0
lea ecx, [ebp - 0x40]
lea eax, [ebp - 0x28]
je 0x100017f6
cmp dword [ebp - 0x2c], 0x10
push eax
cmovae ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x20]
or eax, 0x20019
push eax
push 0
push ecx
push dword [ebp - 0x44]
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
jmp 0x1000181c
cmp dword [ebp - 0x2c], 0x10
push 0
cmovae ecx, dword [ebp - 0x40]
push eax
mov eax, dword [ebp - 0x20]
push 0
or eax, 0x2001f
push eax
push 0
push 0
push 0
push ecx
push dword [ebp - 0x44]
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExA]
test eax, eax
jne 0x10001842
sub esi, ebx
lea eax, [ebp - 0xb8]
cmp dword [ebp - 0xa4], 0x10
push esi
cmovae eax, dword [ebp - 0xb8]
push ebx
push 3
push 0
push eax
push dword [ebp - 0x28]
call edi
mov eax, dword [ebp - 0xa4]
cmp eax, 0x10
jb 0x1000188e
mov ecx, dword [ebp - 0xb8]
inc eax
cmp eax, 0x1000
jb 0x10001885
test cl, 0x1f
jne 0x10001954
mov eax, dword [ecx - 4]
cmp eax, ecx
jae 0x10001959
sub ecx, eax
cmp ecx, 4
jb 0x1000195e
cmp ecx, 0x23
ja 0x10001963
mov ecx, eax
push ecx
call fcn.100547d8
add esp, 4
test ebx, ebx
je 0x100018d5
mov eax, dword [ebp - 0x98]
sub eax, ebx
cmp eax, 0x1000
jb 0x100018cc
test byte [ebp - 0x1c], 0x1f
jne 0x10001968
mov eax, dword [ebx - 4]
cmp eax, ebx
jae 0x1000196d
sub ebx, eax
cmp ebx, 4
jb 0x10001972
cmp ebx, 0x23
ja 0x10001977
mov ebx, eax
push ebx
call fcn.100547d8
add esp, 4
lea ecx, [ebp - 0x10]
call fcn.10001c70
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x100018f2
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x28], 0
lea ecx, [ebp - 0x40]
call fcn.100026f0
lea ecx, [ebp - 0x74]
call fcn.100026f0
lea ecx, [ebp - 0x8c]
call fcn.100026f0
lea ecx, [ebp - 0x5c]
call fcn.100026f0
lea ecx, [ebp + 8]
call fcn.100026f0
lea ecx, [ebp + 0x20]
call fcn.100026f0
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10054c42
mov esp, ebp
pop ebp
ret
push str.vector_T__too_long
call fcn.100166b8
call fcn.1006f4f6
call fcn.1006f4f6
call fcn.1006f4f6
call fcn.1006f4f6
call fcn.1006f4f6
call fcn.1006f4f6
call fcn.1006f4f6
call fcn.1006f4f6
call fcn.1006f4f6
call fcn.1006f4f6
call fcn.1006f4f6
call fcn.1006f4f6
int3