Function at 0x10011b70
Capabilities:
Accept command line arguments

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100705c3
mov eax, dword fs:[0]
push eax
push ecx
push ebx
sub esp, 0x118
mov eax, dword [0x1008ab54]
xor eax, ebp
mov dword [ebp - 0x1c], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov eax, dword [ebx + 8]
push 0
mov esi, ecx
mov edi, edx
mov dword [ebp - 0x78], eax
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call fcn.10047b1d
test eax, eax
jne 0x10011bee
push 0x100792ec
call fcn.10069a4d
add esp, 4
jmp 0x1001259d
mov ecx, 0x100933e4
call fcn.10002060
mov ecx, 0x100933e8
mov dword [0x10090964], 0
call fcn.10002060
mov ecx, 0x100933e8
call fcn.10002060
mov ecx, 0x100933f0
call fcn.10002060
call fcn.10040589
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x10011c3a
push 0x80004005
call fcn.10001100
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x74], eax
push edi
push esi
mov dword [ebp - 4], 0
call fcn.10014f70
add esp, 8
lea esi, [ebp - 0x58]
call fcn.10015860
push eax
mov ecx, 0x100933e8
mov byte [ebp - 4], 1
call fcn.1000d4b0
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x58]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10011c94
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [0x100933e8]
cmp dword [ecx - 0xc], 0
jne 0x10012577
mov byte [ebp - 4], 2
call fcn.10014ce0
lea edx, [ebp - 0x44]
push str._WHERE__SerialNumber_IS_NOT_NULL_
push edx
mov ecx, str.Win32_PhysicalMemory
call fcn.10016eb0
add esp, 8
push eax
mov ecx, 0x100933f8
mov byte [ebp - 4], 3
call fcn.1000d4b0
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x44]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10011cf5
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [ebp - 0x44]
push str._WHERE__SerialNumber_IS_NOT_NULL__AND__MediaType_LIKE_Fixed_hard_disk__
push ecx
mov ecx, str.Win32_DiskDrive
call fcn.10016eb0
add esp, 8
push eax
mov ecx, 0x100933fc
mov byte [ebp - 4], 4
call fcn.1000d4b0
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x44]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10011d3d
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [0x100933fc]
push ecx
lea ecx, [ebp - 0x48]
call fcn.10012a90
mov byte [ebp - 4], 5
mov eax, dword [ebp - 0x48]
cmp dword [eax - 4], 1
mov esi, dword [eax - 0xc]
jle 0x10011d6a
mov edx, esi
push edx
lea ecx, [ebp - 0x48]
call fcn.10001a90
mov eax, dword [ebp - 0x48]
push esi
push eax
call fcn.10017290
mov eax, dword [ebp - 0x48]
add esp, 8
push eax
lea ecx, [ebp - 0x44]
call fcn.10012ee0
push eax
mov ecx, 0x100933fc
mov byte [ebp - 4], 6
call fcn.1000d4b0
mov byte [ebp - 4], 5
mov eax, dword [ebp - 0x44]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10011db2
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x100933fc
call fcn.10012b30
mov edi, eax
call fcn.10012bc0
push eax
mov ecx, 0x100933fc
call fcn.1000d4b0
call fcn.10013d00
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x48]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10011df6
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov dword [ebp - 4], 0
jmp 0x10011e12
mov ecx, 0x10093408
call fcn.10002060
mov ecx, 0x1009340c
call fcn.10002060
mov ecx, 0x10093410
call fcn.10002060
push 0x10093404
mov ecx, 0x10093410
call fcn.1000d4b0
push 0x100933f8
mov ecx, 0x10093408
call fcn.1000d4b0
mov ecx, dword [0x100933fc]
cmp dword [ecx - 0xc], 0
mov eax, 0x10093400
je 0x10011e64
mov eax, 0x100933fc
push eax
mov ecx, 0x1009340c
call fcn.1000d4b0
push 0x10093408
call fcn.10012b30
mov edi, eax
call fcn.10012bc0
push 0x10077b2c
push 0x10079454
push 0x10093408
call fcn.10012630
push 0x1009340c
call fcn.10012b30
mov edi, eax
call fcn.10012bc0
push 0x10077b2c
push 0x10079454
push 0x1009340c
call fcn.10012630
push 0x10093410
call fcn.10012b30
mov edi, eax
call fcn.10012bc0
push 0x10077b2c
push 0x10079454
push 0x10093410
call fcn.10012630
call fcn.10040589
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x10011ef8
push 0x80004005
call fcn.10001100
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x4c], eax
mov byte [ebp - 4], 8
cmp dword [eax - 0xc], 0
jne 0x10011fd7
mov ecx, dword [0x10093404]
cmp dword [ecx - 0xc], 0
je 0x10011f36
push ecx
lea ecx, [ebp - 0x4c]
push 0x10079458
push ecx
call fcn.10012ec0
mov eax, dword [ebp - 0x4c]
add esp, 0xc
cmp dword [eax - 0xc], 0
jne 0x10011fd7
call fcn.10016660
test eax, eax
jne 0x10012018
lea edx, [ebp - 0x40]
push edx
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], eax
call dword [sym.imp.RPCRT4.dll_UuidCreate]
movzx eax, word [ebp - 0x3a]
movzx ecx, word [ebp - 0x3c]
mov edx, dword [ebp - 0x40]
push eax
push ecx
push edx
lea eax, [ebp - 0x4c]
push 0x10079460
push eax
call fcn.10012ec0
lea ecx, [ebp - 0x44]
add esp, 0x14
push ecx
lea ecx, [ebp - 0x4c]
call fcn.100162d0
add esp, 4
push eax
mov ecx, 0x100933e8
mov byte [ebp - 4], 9
call fcn.1000d4b0
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0x44]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10011fc3
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x100776c8
push str.Software
call fcn.10015f50
add esp, 8
jmp 0x10012018
lea ecx, [ebp - 0x44]
push ecx
lea ecx, [ebp - 0x4c]
call fcn.100162d0
add esp, 4
push eax
mov ecx, 0x100933e8
mov byte [ebp - 4], 0xa
call fcn.1000d4b0
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0x44]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10012018
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
call fcn.100159e0
push str.DC90_J_fw2FIro_eui5UE83tr
lea ecx, [ebp - 0x58]
call fcn.10013140
mov byte [ebp - 4], 0xb
call fcn.10040589
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x10012048
push 0x80004005
call fcn.10001100
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x70], eax
mov byte [ebp - 4], 0xc
mov ecx, dword [0x100933f0]
mov edx, dword [ebp - 0x58]
mov eax, dword [0x100933ec]
push ecx
mov ecx, dword [0x10093410]
push edx
mov edx, dword [0x10093408]
push eax
mov eax, dword [0x100933e8]
push ecx
mov ecx, dword [0x1009340c]
push edx
push eax
push ecx
lea edx, [ebp - 0x70]
push str._s_s_s_s_s_s_s
push edx
call fcn.10012ec0
xor eax, eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], eax
mov byte [ebp - 0x20], al
mov eax, dword [ebp - 0x70]
add esp, 0x24
push eax
lea ecx, [ebp - 0x5c]
call fcn.10012a90
lea ecx, [ebp - 0x128]
push ecx
mov byte [ebp - 4], 0xd
call fcn.1000b000
mov dword [ebp - method.CryptoPP::Weak1::MD5.virtual_0], vtable.CryptoPP::Weak1::MD5.0
mov byte [ebp - 4], 0xe
mov eax, dword [ebp - 0x5c]
cmp dword [eax - 4], 1
mov esi, dword [eax - 0xc]
jle 0x100120ed
mov edx, esi
push edx
lea ecx, [ebp - 0x5c]
call fcn.10001a90
mov eax, dword [ebp - 0x5c]
push esi
push eax
lea ecx, [ebp - 0x128]
call fcn.1002d3e0
mov eax, dword [ebp - 0x128]
lea esi, [eax + 0x38]
mov eax, dword [eax + 0x1c]
lea ecx, [ebp - 0x128]
call eax
mov edx, dword [esi]
push eax
lea ecx, [ebp - 0x30]
push ecx
lea ecx, [ebp - 0x128]
call edx
call fcn.10040589
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x10012137
push 0x80004005
call fcn.10001100
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x44], eax
mov byte [ebp - 4], 0xf
xor edi, edi
lea esp, [esp]
movzx ecx, byte [ebp + edi - 0x30]
push ecx
lea edx, [ebp - 0x74]
push 0x100794d0
push edx
call fcn.10012ec0
mov ecx, dword [ebp - 0x74]
mov eax, dword [ecx - 0xc]
add esp, 0xc
push eax
push ecx
lea ecx, [ebp - 0x44]
call fcn.10001ec0
add edi, 1
cmp edi, 0x10
jl 0x10012150
push str.http:__log.ttsunion.com_install_log.do
lea ecx, [ebp - 0x6c]
call fcn.10013140
push str.Info_URL
lea eax, [ebp - 0x6c]
mov byte [ebp - 4], 0x10
mov ecx, dword [0x100933f4]
push 1
push eax
call fcn.10015c80
add esp, 0xc
call fcn.10040589
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x100121c3
push 0x80004005
call fcn.10001100
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x48], eax
mov byte [ebp - 4], 0x11
call fcn.10040589
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x100121f0
push 0x80004005
call fcn.10001100
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x64], eax
mov byte [ebp - 4], 0x12
call fcn.10040589
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x1001221d
push 0x80004005
call fcn.10001100
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x68], eax
mov byte [ebp - 4], 0x13
mov eax, dword [ebp - 0x44]
add eax, 0xfffffff0
push eax
mov dword [ebp - 0x60], eax
call fcn.10001d80
lea edi, [eax + 0x10]
add esp, 4
mov dword [ebp - 0x54], edi
mov byte [ebp - 4], 0x14
mov ecx, dword [0x100933f0]
mov edx, dword [0x10093410]
mov eax, dword [0x1009340c]
push edi
push ecx
mov ecx, dword [0x10093408]
push edx
mov edx, dword [0x100933ec]
push eax
mov eax, dword [0x100933e8]
push ecx
push edx
push eax
lea ecx, [ebp - 0x68]
push str.g_sid_sm_sh_sn_sv_ssig_s
push ecx
call fcn.10012ec0
add edi, 0xfffffff0
add esp, 0x24
mov byte [ebp - 4], 0x13
lea edx, [edi + 0xc]
or eax, 0xffffffff
lock xadd dword [edx], eax
dec eax
test eax, eax
jg 0x100122a6
mov ecx, dword [edi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push edi
call eax
mov eax, dword [ebp - 0x6c]
lea ecx, [ebp - 0x68]
push ecx
push ecx
add eax, 0xfffffff0
mov dword [ebp - 0x54], esp
mov dword [ebp - 0x50], esp
push eax
lea edi, [ebp - 0x64]
lea esi, [ebp - 0x48]
call fcn.10001d80
mov edx, dword [ebp - 0x50]
add eax, 0x10
mov dword [edx], eax
add esp, 4
mov edx, edi
mov ecx, esi
call fcn.10015160
mov eax, dword [ebp - 0x64]
add esp, 8
push eax
lea ecx, [ebp - 0x50]
call fcn.10012a90
mov edi, eax
mov byte [ebp - 4], 0x15
mov eax, dword [edi]
sub eax, 0x10
cmp dword [eax + 0xc], 1
jle 0x10012302
mov ecx, dword [eax + 4]
push ecx
mov ecx, edi
call fcn.10001a90
mov edi, dword [edi]
push str.._netinfo.txt
call fcn.10016170
mov byte [ebp - 4], 0x13
mov eax, dword [ebp - 0x50]
add eax, 0xfffffff0
add esp, 4
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10012334
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [ebp - 0x54]
push ecx
lea ecx, [ebp - 0x48]
call fcn.100129b0
add esp, 4
push 0x10079594
push eax
lea edx, [ebp - 0x50]
push edx
mov byte [ebp - 4], 0x16
call fcn.100128d0
add esp, 0xc
push eax
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x17
call fcn.1000d4b0
mov byte [ebp - 4], 0x16
mov eax, dword [ebp - 0x50]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10012389
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x13
mov eax, dword [ebp - 0x54]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x100123ac
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov esi, dword [ebp - 0x48]
push esi
lea ecx, [ebp - 0x54]
call fcn.10012a90
mov edi, eax
mov byte [ebp - 4], 0x18
mov eax, dword [edi]
sub eax, 0x10
cmp dword [eax + 0xc], 1
jle 0x100123d4
mov ecx, dword [eax + 4]
push ecx
mov ecx, edi
call fcn.10001a90
mov edi, dword [edi]
push str.._netinfo.txt
call fcn.10016170
mov byte [ebp - 4], 0x13
mov eax, dword [ebp - 0x54]
add eax, 0xfffffff0
add esp, 4
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10012406
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x12
mov eax, dword [ebp - 0x68]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10012429
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x11
mov eax, dword [ebp - 0x64]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x1001244c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea eax, [esi - 0x10]
mov byte [ebp - 4], 0x10
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x1001246c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xf
mov eax, dword [ebp - 0x6c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x1001248f
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xe
mov eax, dword [ebp - 0x60]
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x100124af
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edi, dword [ebp - 0x7c]
lea ecx, [ebp - 0xc8]
cmp edi, ecx
jne 0x100124ca
mov ecx, dword [ebp - 0x80]
xor eax, eax
mov byte [ebp - 0x87], 0
rep stosd dword es:[edi], eax
mov edi, dword [ebp - 0xcc]
lea edx, [ebp - 0x118]
cmp edi, edx
jne 0x100124eb
mov ecx, dword [ebp - 0xd0]
xor eax, eax
mov byte [ebp - 0xd7], 0
rep stosd dword es:[edi], eax
mov byte [ebp - 4], 0xc
mov eax, dword [ebp - 0x5c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x1001250e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xb
mov eax, dword [ebp - 0x70]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10012531
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0x58]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10012554
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x4c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10012577
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x74]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x1001259d
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [0x100933e8]
push ecx
lea ecx, [ebp - 0x60]
call fcn.10012a90
mov esi, eax
mov dword [ebp - 4], 0x19
mov eax, dword [esi]
sub eax, 0x10
cmp dword [eax + 0xc], 1
jle 0x100125cb
mov edx, dword [eax + 4]
push edx
mov ecx, esi
call fcn.10001a90
mov esi, dword [esi]
mov eax, dword [ebp - 0x78]
push esi
push 0x104
push eax
call fcn.1004985b
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x60]
add eax, 0xfffffff0
add esp, 0xc
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10012605
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x1c]
xor ecx, ebp
call fcn.10048e2f
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret