Function at 0x453e60
Capabilities:
Delete registry key
Encode data using xor
Set registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x563da4
mov eax, dword fs:[0]
push eax
sub esp, 0xee4
mov eax, dword [0x5be26c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, dword [ebp + 8]
mov dword [ebp - 0xa24], ebx
call fcn.00418e90
mov ecx, eax
test ecx, ecx
je 0x454f83
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0xa2c], eax
mov eax, 0x38f3
mov dword [ebp - 4], 0
mov word [ebp - 0x898], ax
mov edx, 0x38cf
mov eax, 0x38e4
mov edi, 0x38ce
mov word [ebp - 0x896], ax
mov esi, 0x38c0
mov eax, 0x38ec
mov ecx, 0x38d6
mov word [ebp - 0x894], ax
mov eax, 0x38f4
mov word [ebp - 0x892], ax
mov eax, 0x38f5
mov word [ebp - 0x890], ax
mov eax, 0x38e1
mov word [ebp - 0x88e], ax
mov eax, 0x38f0
mov word [ebp - 0x88c], ax
mov eax, 0x38ed
mov word [ebp - 0x88a], ax
mov eax, 0x38fb
mov word [ebp - 0x888], ax
mov eax, 0x38ee
mov word [ebp - 0x886], ax
mov eax, 0x38d9
mov word [ebp - 0x884], dx
mov word [ebp - 0x882], di
mov word [ebp - 0x880], ax
mov eax, 0x38d3
mov word [ebp - 0x87e], si
mov word [ebp - 0x87c], ax
mov eax, 0x38c3
mov word [ebp - 0x87a], ax
mov eax, 0x38e6
mov word [ebp - 0x878], cx
mov word [ebp - 0x876], dx
mov word [ebp - 0x874], ax
mov eax, 0x38e7
mov word [ebp - 0x872], ax
mov eax, 0x38db
mov word [ebp - 0x870], ax
mov eax, 0x38de
mov word [ebp - 0x86e], ax
mov eax, 0x38d7
mov word [ebp - 0x86c], cx
mov ecx, 0x38b3
mov word [ebp - 0x86a], ax
mov eax, 0x38ea
mov word [ebp - 0x868], si
mov word [ebp - 0x866], si
mov word [ebp - 0x864], ax
mov eax, 0x38fe
mov word [ebp - 0x862], ax
mov eax, 0x38cd
mov word [ebp - 0x860], di
mov word [ebp - 0x85e], ax
mov eax, 0x38c2
mov word [ebp - 0x85c], ax
mov eax, 0x38d9
mov word [ebp - 0x85a], ax
mov eax, 0x38ae
mov word [ebp - 0x858], ax
mov eax, 0x38bf
mov word [ebp - 0x856], ax
mov eax, 0x389c
mov word [ebp - 0x854], ax
mov eax, 0x38a5
mov word [ebp - 0x852], ax
mov eax, 0x38b0
mov word [ebp - 0x850], ax
mov eax, 0x38ab
mov word [ebp - 0x84e], cx
mov word [ebp - 0x84c], ax
mov eax, 0x38a7
mov word [ebp - 0x84a], ax
mov eax, 0x38a9
mov edx, 0x38a3
mov word [ebp - 0x848], ax
xor edi, edi
mov eax, 0x389f
mov ebx, 0xf
mov word [ebp - 0x846], ax
mov eax, 0x3893
mov word [ebp - 0x844], ax
mov eax, 0x38a2
mov word [ebp - 0x842], dx
mov word [ebp - 0x840], ax
mov eax, 0x38a1
mov word [ebp - 0x83e], ax
mov eax, 0x38b8
mov word [ebp - 0x83c], cx
mov word [ebp - 0x83a], ax
mov eax, 0x38b1
mov word [ebp - 0x838], ax
mov eax, 0x38b7
mov word [ebp - 0x836], ax
mov eax, 0x38b6
mov word [ebp - 0x834], ax
mov eax, 0x388c
mov word [ebp - 0x832], ax
mov eax, 0x38f7
mov word [ebp - 0x830], ax
mov eax, 0x38d2
mov word [ebp - 0x82e], dx
mov word [ebp - 0x82c], ax
mov ax, word [ebp - 0x898]
nop word [eax + eax]
mov ax, word [ebp + edi*2 - 0x898]
mov ecx, edi
and ecx, ebx
movzx esi, ax
cmp ecx, ebx
mov eax, 0xf45638a0
mov edx, 0x3e276caf
cmovae ecx, ebx
shl ecx, 2
call fcn.0046c530
and ax, 0xf
lea ecx, [edi + 0x38a0]
xor ax, cx
xor ax, si
mov word [ebp + edi*2 - 0x898], ax
inc edi
cmp edi, 0x37
jb 0x454140
push dword [0x5be214]
lea eax, [ebp - 0x898]
push eax
lea eax, [ebp - 0xa2c]
push eax
call fcn.00417340
mov esi, dword [ebp - 0xa2c]
add esp, 0xc
push esi
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.SHLWAPI.dll_SHDeleteKeyW]
call fcn.0047a530
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
mov ebx, dword [ebp - 0xa24]
movzx eax, al
sub eax, 1
jne 0x45434b
push 0x5d
push str.d:jenkins.jenkinsworkspaceweiduangamemicrogamemicrogamebox_srcmicrogameboxpush_jkw.cc
lea ecx, [ebp - 0x910]
mov dword [ebp - 0x900], 0
mov dword [ebp - 0x8fc], 0xf
mov byte [ebp - 0x910], 0
call fcn.004210f0
push 3
push 0x572c38
lea ecx, [ebp - 0x8f8]
mov byte [ebp - 4], 1
mov dword [ebp - 0x8e8], 0
mov dword [ebp - 0x8e4], 0xf
mov byte [ebp - 0x8f8], 0
call fcn.004210f0
mov byte [ebp - 4], 2
call fcn.0047a530
mov ebx, eax
lea ecx, [ebp - 0xac8]
push 0x144
lea eax, [ebp - 0x910]
push eax
lea eax, [ebp - 0x8f8]
push eax
call fcn.0040b1c0
mov edi, eax
push str.write_uninstall_reg
push edi
mov byte [ebp - 4], 3
call fcn.00409810
test esi, esi
mov ecx, 0x572928
cmovne ecx, esi
push ecx
push edi
call fcn.00409810
mov eax, dword [ebx]
add esp, 0x10
mov ecx, ebx
push edi
call dword [eax + 0x1c]
lea ecx, [ebp - 0xac8]
call fcn.0040cbc0
mov edx, dword [ebp - 0x8e4]
mov byte [ebp - 4], 1
cmp edx, 0x10
jb 0x4542d1
mov ecx, dword [ebp - 0x8f8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4542c7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x454f8d
push edx
push ecx
call fcn.0046c26f
add esp, 8
mov edx, dword [ebp - 0x8fc]
mov dword [ebp - 0x8e8], 0
mov dword [ebp - 0x8e4], 0xf
mov byte [ebp - 0x8f8], 0
mov byte [ebp - 4], 0
cmp edx, 0x10
jb 0x45432a
mov ecx, dword [ebp - 0x910]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x454320
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x454f92
push edx
push ecx
call fcn.0046c26f
add esp, 8
mov ebx, dword [ebp - 0xa24]
mov dword [ebp - 0x900], 0
mov dword [ebp - 0x8fc], 0xf
mov byte [ebp - 0x910], 0
push 0x800
lea eax, [ebp - 0x810]
push 0
push eax
call fcn.005161d0
add esp, 0xc
mov eax, ebx
cmp dword [ebx + 0x14], 8
jb 0x45436b
mov eax, dword [ebx]
push dword [0x5be210]
push eax
lea eax, [ebp - 0x810]
push eax
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea ebx, [ebp - 0x810]
lea ecx, [ebx + 2]
nop dword [eax + eax]
mov ax, word [ebx]
add ebx, 2
test ax, ax
jne 0x454390
mov eax, 0xd94
sub ebx, ecx
mov word [ebp - 0x828], ax
mov eax, 0xdbf
mov word [ebp - 0x826], ax
mov eax, 0xda2
mov word [ebp - 0x824], ax
mov eax, 0xdad
mov word [ebp - 0x822], ax
mov eax, 0xdb3
mov word [ebp - 0x820], ax
mov eax, 0xdb7
mov word [ebp - 0x81e], ax
mov eax, 0xd93
mov word [ebp - 0x81c], ax
mov eax, 0xda0
mov word [ebp - 0x81a], ax
mov eax, 0xd8c
mov word [ebp - 0x818], ax
mov eax, 0xd8e
mov word [ebp - 0x816], ax
mov eax, 0xd84
mov word [ebp - 0x814], ax
mov eax, 0xdef
sar ebx, 1
xor edi, edi
mov dword [ebp - 0xa1c], ebx
mov ebx, 0xf
mov word [ebp - 0x812], ax
mov ax, word [ebp - 0x828]
mov ax, word [ebp + edi*2 - 0x828]
mov ecx, edi
and ecx, ebx
movzx esi, ax
cmp ecx, ebx
mov eax, 0x8a910dda
mov edx, 0x381dae2d
cmovae ecx, ebx
shl ecx, 2
call fcn.0046c530
and ax, 0xf
lea ecx, [edi + 0xdda]
xor ax, cx
xor ax, si
mov word [ebp + edi*2 - 0x828], ax
inc edi
cmp edi, 0xc
jb 0x454443
mov ebx, dword [ebp - 0xa1c]
mov esi, dword [ebp - 0xa2c]
lea eax, [ebx + ebx]
mov ebx, dword [sym.imp.SHLWAPI.dll_SHSetValueW]
push eax
lea eax, [ebp - 0x810]
push eax
push 1
lea eax, [ebp - 0x828]
push eax
push esi
push reloc.OLEAUT32.dll_SysReAllocString
call ebx
call fcn.0047a530
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x45463f
push 0x5d
push str.d:jenkins.jenkinsworkspaceweiduangamemicrogamemicrogamebox_srcmicrogameboxpush_jkw.cc
lea ecx, [ebp - 0x8c8]
mov dword [ebp - 0x8b8], eax
mov dword [ebp - 0x8b4], 0xf
mov byte [ebp - 0x8c8], al
call fcn.004210f0
push 3
push 0x572c38
lea ecx, [ebp - 0x8b0]
mov byte [ebp - 4], 4
mov dword [ebp - 0x8a0], 0
mov dword [ebp - 0x89c], 0xf
mov byte [ebp - 0x8b0], 0
call fcn.004210f0
mov byte [ebp - 4], 5
call fcn.0047a530
mov ebx, eax
lea ecx, [ebp - 0xb60]
push 0x14e
lea eax, [ebp - 0x8c8]
push eax
lea eax, [ebp - 0x8b0]
push eax
call fcn.0040b1c0
mov edi, eax
push str.write_DisplayIcon
push edi
mov byte [ebp - 4], 6
call fcn.00409810
lea eax, [ebp - 0x810]
push eax
push edi
call fcn.00409810
mov eax, dword [ebx]
add esp, 0x10
mov ecx, ebx
push edi
call dword [eax + 0x1c]
lea ecx, [ebp - 0xb60]
call fcn.0040cbc0
mov edx, dword [ebp - 0x89c]
mov byte [ebp - 4], 4
cmp edx, 0x10
jb 0x4545c5
mov ecx, dword [ebp - 0x8b0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4545bb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x454f97
push edx
push ecx
call fcn.0046c26f
add esp, 8
mov edx, dword [ebp - 0x8b4]
mov dword [ebp - 0x8a0], 0
mov dword [ebp - 0x89c], 0xf
mov byte [ebp - 0x8b0], 0
mov byte [ebp - 4], 0
cmp edx, 0x10
jb 0x45461e
mov ecx, dword [ebp - 0x8c8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x454614
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x454f9c
push edx
push ecx
call fcn.0046c26f
add esp, 8
mov ebx, dword [sym.imp.SHLWAPI.dll_SHSetValueW]
mov dword [ebp - 0x8b8], 0
mov dword [ebp - 0x8b4], 0xf
mov byte [ebp - 0x8c8], 0
push dword [0x5be20c]
lea ecx, [ebp - 0xa20]
call fcn.0040ad40
mov eax, dword [ebp - 0xa20]
mov byte [ebp - 4], 7
mov ecx, dword [eax - 0xc]
add ecx, ecx
push ecx
push eax
push 1
push str.DisplayName
push esi
push reloc.OLEAUT32.dll_SysReAllocString
call ebx
call fcn.0047a530
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x4547e9
push 0x5d
push str.d:jenkins.jenkinsworkspaceweiduangamemicrogamemicrogamebox_srcmicrogameboxpush_jkw.cc
lea ecx, [ebp - 0x928]
mov dword [ebp - 0x918], eax
mov dword [ebp - 0x914], 0xf
mov byte [ebp - 0x928], al
call fcn.004210f0
push 3
push 0x572c38
lea ecx, [ebp - 0x8e0]
mov byte [ebp - 4], 8
mov dword [ebp - 0x8d0], 0
mov dword [ebp - 0x8cc], 0xf
mov byte [ebp - 0x8e0], 0
call fcn.004210f0
mov byte [ebp - 4], 9
call fcn.0047a530
mov ebx, eax
lea ecx, [ebp - 0xbf8]
push 0x154
lea eax, [ebp - 0x928]
push eax
lea eax, [ebp - 0x8e0]
push eax
call fcn.0040b1c0
mov edi, eax
push str.write_DisplayName
push edi
mov byte [ebp - 4], 0xa
call fcn.00409810
mov ecx, dword [ebp - 0xa20]
mov edx, 0x572928
test ecx, ecx
cmovne edx, ecx
push edx
push edi
call fcn.00409810
mov eax, dword [ebx]
add esp, 0x10
mov ecx, ebx
push edi
call dword [eax + 0x1c]
lea ecx, [ebp - 0xbf8]
call fcn.0040cbc0
mov edx, dword [ebp - 0x8cc]
mov byte [ebp - 4], 8
cmp edx, 0x10
jb 0x45478a
mov ecx, dword [ebp - 0x8e0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x454780
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x454fa1
push edx
push ecx
call fcn.0046c26f
add esp, 8
mov edx, dword [ebp - 0x914]
mov dword [ebp - 0x8d0], 0
mov dword [ebp - 0x8cc], 0xf
mov byte [ebp - 0x8e0], 0
mov byte [ebp - 4], 7
cmp edx, 0x10
jb 0x4547e3
mov ecx, dword [ebp - 0x928]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4547d9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x454fa6
push edx
push ecx
call fcn.0046c26f
add esp, 8
mov ebx, dword [sym.imp.SHLWAPI.dll_SHSetValueW]
mov eax, dword [ebp - 0xa24]
mov ecx, eax
cmp dword [eax + 0x14], 8
jb 0x4547f9
mov ecx, dword [eax]
push ecx
lea ecx, [ebp - 0xa28]
call fcn.0040ad40
push 0x573c0c
lea ecx, [ebp - 0xa28]
mov byte [ebp - 4], 0xb
call fcn.0044f090
push dword [0x5be210]
lea ecx, [ebp - 0xa28]
call fcn.0044f090
call fcn.00418e90
mov ecx, eax
test ecx, ecx
je 0x454fab
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0xa30], eax
lea eax, [ebp - 0xa30]
mov byte [ebp - 4], 0xc
push eax
lea eax, [ebp - 0xa28]
push eax
call fcn.0044f9d0
mov edi, dword [ebp - 0xa30]
add esp, 8
mov ecx, edi
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x454870
sub ecx, edx
sar ecx, 1
lea eax, [ecx + ecx]
push eax
push edi
push 1
push str.DisplayVersion
push esi
push reloc.OLEAUT32.dll_SysReAllocString
call ebx
call fcn.0047a530
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x454991
push 0x5d
push str.d:jenkins.jenkinsworkspaceweiduangamemicrogamemicrogamebox_srcmicrogameboxpush_jkw.cc
lea ecx, [ebp - 0x9b8]
mov dword [ebp - 0x9a8], eax
mov dword [ebp - 0x9a4], 0xf
mov byte [ebp - 0x9b8], al
call fcn.004210f0
push 3
push 0x572c38
lea ecx, [ebp - 0x9a0]
mov byte [ebp - 4], 0xd
mov dword [ebp - 0x990], 0
mov dword [ebp - 0x98c], 0xf
mov byte [ebp - 0x9a0], 0
call fcn.004210f0
mov byte [ebp - 4], 0xe
call fcn.0047a530
mov dword [ebp - 0xa1c], eax
lea ecx, [ebp - 0xc90]
push 0x15e
lea eax, [ebp - 0x9b8]
push eax
lea eax, [ebp - 0x9a0]
push eax
call fcn.0040b1c0
mov ebx, eax
push str.write_DisplayVersion
push ebx
mov byte [ebp - 4], 0xf
call fcn.00409810
test edi, edi
mov ecx, 0x572928
cmovne ecx, edi
push ecx
push ebx
call fcn.00409810
mov ecx, dword [ebp - 0xa1c]
add esp, 0x10
mov eax, dword [ecx]
push ebx
call dword [eax + 0x1c]
lea ecx, [ebp - 0xc90]
call fcn.0040cbc0
lea ecx, [ebp - 0x9a0]
call fcn.0040bb80
lea ecx, [ebp - 0x9b8]
mov byte [ebp - 4], 0xc
call fcn.0040bb80
mov ebx, dword [sym.imp.SHLWAPI.dll_SHSetValueW]
mov edx, dword [str.sS_R]
test edx, edx
jne 0x45499f
xor ecx, ecx
jmp 0x4549c3
mov ecx, edx
lea eax, [ecx + 2]
mov dword [ebp - 0xa1c], eax
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4549b0
sub ecx, dword [ebp - 0xa1c]
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0xa20]
call fcn.0041f4a0
mov eax, dword [ebp - 0xa20]
mov ecx, dword [eax - 0xc]
add ecx, ecx
push ecx
push eax
push 1
push str.Publisher
push esi
push reloc.OLEAUT32.dll_SysReAllocString
call ebx
call fcn.0047a530
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x454af0
push 0x5d
push str.d:jenkins.jenkinsworkspaceweiduangamemicrogamemicrogamebox_srcmicrogameboxpush_jkw.cc
lea ecx, [ebp - 0x9e8]
mov dword [ebp - 0x9d8], eax
mov dword [ebp - 0x9d4], 0xf
mov byte [ebp - 0x9e8], al
call fcn.004210f0
push 3
push 0x572c38
lea ecx, [ebp - 0x9d0]
mov byte [ebp - 4], 0x10
mov dword [ebp - 0x9c0], 0
mov dword [ebp - 0x9bc], 0xf
mov byte [ebp - 0x9d0], 0
call fcn.004210f0
mov byte [ebp - 4], 0x11
call fcn.0047a530
mov dword [ebp - 0xa1c], eax
lea ecx, [ebp - 0xd28]
push 0x164
lea eax, [ebp - 0x9e8]
push eax
lea eax, [ebp - 0x9d0]
push eax
call fcn.0040b1c0
mov ebx, eax
push str.write_Publisher
push ebx
mov byte [ebp - 4], 0x12
call fcn.00409810
mov ecx, dword [ebp - 0xa20]
mov edx, 0x572928
test ecx, ecx
cmovne edx, ecx
push edx
push ebx
call fcn.00409810
mov ecx, dword [ebp - 0xa1c]
add esp, 0x10
mov eax, dword [ecx]
push ebx
call dword [eax + 0x1c]
lea ecx, [ebp - 0xd28]
call fcn.0040cbc0
lea ecx, [ebp - 0x9d0]
call fcn.0040bb80
lea ecx, [ebp - 0x9e8]
mov byte [ebp - 4], 0xc
call fcn.0040bb80
mov ebx, dword [sym.imp.SHLWAPI.dll_SHSetValueW]
mov eax, dword [ebp - 0xa24]
mov ecx, eax
cmp dword [eax + 0x14], 8
jb 0x454b00
mov ecx, dword [eax]
push str.uninst.exe
push ecx
lea eax, [ebp - 0x810]
push eax
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea ecx, [ebp - 0x810]
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x454b20
sub ecx, edx
sar ecx, 1
lea eax, [ecx + ecx]
push eax
lea eax, [ebp - 0x810]
push eax
push 1
push str.UninstallString
push esi
push reloc.OLEAUT32.dll_SysReAllocString
call ebx
call fcn.0047a530
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x454c43
push 0x5d
push str.d:jenkins.jenkinsworkspaceweiduangamemicrogamemicrogamebox_srcmicrogameboxpush_jkw.cc
lea ecx, [ebp - 0xa18]
mov dword [ebp - 0xa08], eax
mov dword [ebp - 0xa04], 0xf
mov byte [ebp - 0xa18], al
call fcn.004210f0
push 3
push 0x572c38
lea ecx, [ebp - 0xa00]
mov byte [ebp - 4], 0x13
mov dword [ebp - 0x9f0], 0
mov dword [ebp - 0x9ec], 0xf
mov byte [ebp - 0xa00], 0
call fcn.004210f0
mov byte [ebp - 4], 0x14
call fcn.0047a530
mov dword [ebp - 0xa1c], eax
lea ecx, [ebp - 0xdc0]
push 0x16a
lea eax, [ebp - 0xa18]
push eax
lea eax, [ebp - 0xa00]
push eax
call fcn.0040b1c0
mov ebx, eax
push str.write_UninstallString
push ebx
mov byte [ebp - 4], 0x15
call fcn.00409810
lea eax, [ebp - 0x810]
push eax
push ebx
call fcn.00409810
mov ecx, dword [ebp - 0xa1c]
add esp, 0x10
mov eax, dword [ecx]
push ebx
call dword [eax + 0x1c]
lea ecx, [ebp - 0xdc0]
call fcn.0040cbc0
lea ecx, [ebp - 0xa00]
call fcn.0040bb80
lea ecx, [ebp - 0xa18]
mov byte [ebp - 4], 0xc
call fcn.0040bb80
mov ebx, dword [sym.imp.SHLWAPI.dll_SHSetValueW]
mov edx, dword [str.www.taojike.com.cn]
test edx, edx
jne 0x454c51
xor ecx, ecx
jmp 0x454c73
mov ecx, edx
lea eax, [ecx + 2]
mov dword [ebp - 0xa1c], eax
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x454c60
sub ecx, dword [ebp - 0xa1c]
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0xa20]
call fcn.0041f4a0
mov eax, dword [ebp - 0xa20]
mov ecx, dword [eax - 0xc]
add ecx, ecx
push ecx
push eax
push 1
push str.URLInfoAbout
push esi
push reloc.OLEAUT32.dll_SysReAllocString
call ebx
call fcn.0047a530
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x454da0
push 0x5d
push str.d:jenkins.jenkinsworkspaceweiduangamemicrogamemicrogamebox_srcmicrogameboxpush_jkw.cc
lea ecx, [ebp - 0x958]
mov dword [ebp - 0x948], eax
mov dword [ebp - 0x944], 0xf
mov byte [ebp - 0x958], al
call fcn.004210f0
push 3
push 0x572c38
lea ecx, [ebp - 0x940]
mov byte [ebp - 4], 0x16
mov dword [ebp - 0x930], 0
mov dword [ebp - 0x92c], 0xf
mov byte [ebp - 0x940], 0
call fcn.004210f0
mov byte [ebp - 4], 0x17
call fcn.0047a530
mov dword [ebp - 0xa1c], eax
lea ecx, [ebp - 0xe58]
push 0x170
lea eax, [ebp - 0x958]
push eax
lea eax, [ebp - 0x940]
push eax
call fcn.0040b1c0
mov ebx, eax
push str.write_URLInfoAbout
push ebx
mov byte [ebp - 4], 0x18
call fcn.00409810
mov ecx, dword [ebp - 0xa20]
mov eax, 0x572928
test ecx, ecx
cmovne eax, ecx
push eax
push ebx
call fcn.00409810
mov ecx, dword [ebp - 0xa1c]
add esp, 0x10
mov eax, dword [ecx]
push ebx
call dword [eax + 0x1c]
lea ecx, [ebp - 0xe58]
call fcn.0040cbc0
lea ecx, [ebp - 0x940]
call fcn.0040bb80
lea ecx, [ebp - 0x958]
mov byte [ebp - 4], 0xc
call fcn.0040bb80
mov ebx, dword [sym.imp.SHLWAPI.dll_SHSetValueW]
mov eax, dword [ebp - 0xa24]
cmp dword [eax + 0x14], 8
jb 0x454dae
mov eax, dword [eax]
push 0x5726b4
push eax
lea eax, [ebp - 0x810]
push eax
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea ecx, [ebp - 0x810]
lea edx, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x454dd0
sub ecx, edx
sar ecx, 1
lea eax, [ecx + ecx]
push eax
lea eax, [ebp - 0x810]
push eax
push 1
push str.InstallLocation
push esi
push reloc.OLEAUT32.dll_SysReAllocString
call ebx
call fcn.0047a530
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x454ee9
push 0x5d
push str.d:jenkins.jenkinsworkspaceweiduangamemicrogamemicrogamebox_srcmicrogameboxpush_jkw.cc
lea ecx, [ebp - 0x988]
mov dword [ebp - 0x978], eax
mov dword [ebp - 0x974], 0xf
mov byte [ebp - 0x988], al
call fcn.004210f0
push 3
push 0x572c38
lea ecx, [ebp - 0x970]
mov byte [ebp - 4], 0x19
mov dword [ebp - 0x960], 0
mov dword [ebp - 0x95c], 0xf
mov byte [ebp - 0x970], 0
call fcn.004210f0
mov byte [ebp - 4], 0x1a
call fcn.0047a530
mov dword [ebp - 0xa1c], eax
lea ecx, [ebp - 0xef0]
push 0x176
lea eax, [ebp - 0x988]
push eax
lea eax, [ebp - 0x970]
push eax
call fcn.0040b1c0
mov ebx, eax
push str.write_InstallLocation
push ebx
mov byte [ebp - 4], 0x1b
call fcn.00409810
lea eax, [ebp - 0x810]
push eax
push ebx
call fcn.00409810
mov ecx, dword [ebp - 0xa1c]
add esp, 0x10
mov eax, dword [ecx]
push ebx
call dword [eax + 0x1c]
lea ecx, [ebp - 0xef0]
call fcn.0040cbc0
lea ecx, [ebp - 0x970]
call fcn.0040bb80
lea ecx, [ebp - 0x988]
call fcn.0040bb80
lea edx, [edi - 0x10]
mov byte [ebp - 4], 0xb
or edi, 0xffffffff
mov eax, edi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x454f07
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0xa28]
mov eax, edi
mov byte [ebp - 4], 7
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x454f28
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0xa20]
mov eax, edi
mov byte [ebp - 4], 0
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x454f49
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov dword [ebp - 4], 0xffffffff
add esi, 0xfffffff0
lock xadd dword [esi + 0xc], edi
dec edi
test edi, edi
jg 0x454f65
mov ecx, dword [esi]
push esi
mov eax, dword [ecx]
call dword [eax + 4]
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0046c10d
mov esp, ebp
pop ebp
ret
push 0x80004005
call fcn.00410d90
call fcn.0051a76c
call fcn.0051a76c
call fcn.0051a76c
call fcn.0051a76c
call fcn.0051a76c
call fcn.0051a76c
push 0x80004005
call fcn.00410d90
int3