Function at 0x450540
Capabilities:
Delete registry key
Set registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x561544
mov eax, dword fs:[0]
push eax
sub esp, 0x8e8
mov eax, dword [0x5bb278]
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 - 0x850], ebx
call fcn.00413510
mov ecx, eax
test ecx, ecx
je 0x45154f
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x858], eax
push dword [0x5bb21c]
lea ecx, [ebp - 0x849]
mov dword [ebp - 4], 0
call fcn.0044c040
push eax
lea eax, [ebp - 0x858]
push eax
call fcn.00411e40
mov esi, dword [ebp - 0x858]
add esp, 0xc
push esi
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.SHLWAPI.dll_SHDeleteKeyW]
call fcn.00477b70
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x45075c
push 0x5d
push str.d:jenkins.jenkinsworkspaceweiduangamemicrogamemicrogamebox_srcmicrogameboxpush_jkw.cc
lea ecx, [ebp - 0x828]
mov dword [ebp - 0x818], eax
mov dword [ebp - 0x814], 0xf
mov byte [ebp - 0x828], al
call fcn.0041a210
push 3
push 0x56fc58
lea ecx, [ebp - 0x840]
mov byte [ebp - 4], 1
mov dword [ebp - 0x830], 0
mov dword [ebp - 0x82c], 0xf
mov byte [ebp - 0x840], 0
call fcn.0041a210
mov byte [ebp - 4], 2
call fcn.00477b70
mov ebx, eax
lea ecx, [ebp - 0x8f4]
push 0x144
lea eax, [ebp - 0x828]
push eax
lea eax, [ebp - 0x840]
push eax
call fcn.00405490
mov edi, eax
push str.write_uninstall_reg
push edi
mov byte [ebp - 4], 3
call fcn.00403b20
test esi, esi
mov ecx, 0x56f948
cmovne ecx, esi
push ecx
push edi
call fcn.00403b20
mov eax, dword [ebx]
add esp, 0x10
mov ecx, ebx
push edi
call dword [eax + 0x1c]
lea ecx, [ebp - 0x8f4]
call fcn.004085e0
mov edx, dword [ebp - 0x82c]
mov byte [ebp - 4], 1
cmp edx, 0x10
jb 0x4506e2
mov ecx, dword [ebp - 0x840]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4506d8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x451559
push edx
push ecx
call fcn.004698bf
add esp, 8
mov edx, dword [ebp - 0x814]
mov dword [ebp - 0x830], 0
mov dword [ebp - 0x82c], 0xf
mov byte [ebp - 0x840], 0
mov byte [ebp - 4], 0
cmp edx, 0x10
jb 0x45073b
mov ecx, dword [ebp - 0x828]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x450731
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45155e
push edx
push ecx
call fcn.004698bf
add esp, 8
mov ebx, dword [ebp - 0x850]
mov dword [ebp - 0x818], 0
mov dword [ebp - 0x814], 0xf
mov byte [ebp - 0x828], 0
push 0x800
lea eax, [ebp - 0x810]
push 0
push eax
call fcn.00513860
add esp, 0xc
mov eax, ebx
cmp dword [ebx + 0x14], 8
jb 0x45077c
mov eax, dword [ebx]
push dword [0x5bb218]
push eax
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 0x4507a0
sub ecx, edx
sar ecx, 1
lea eax, [ecx + ecx]
push eax
lea eax, [ebp - 0x810]
push eax
push 1
lea ecx, [ebp - 0x849]
call fcn.0044c360
mov ebx, dword [sym.imp.SHLWAPI.dll_SHSetValueW]
push eax
push esi
push reloc.OLEAUT32.dll_SysReAllocString
call ebx
call fcn.00477b70
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x450960
push 0x5d
push str.d:jenkins.jenkinsworkspaceweiduangamemicrogamemicrogamebox_srcmicrogameboxpush_jkw.cc
lea ecx, [ebp - 0x840]
mov dword [ebp - 0x830], eax
mov dword [ebp - 0x82c], 0xf
mov byte [ebp - 0x840], al
call fcn.0041a210
push 3
push 0x56fc58
lea ecx, [ebp - 0x828]
mov byte [ebp - 4], 4
mov dword [ebp - 0x818], 0
mov dword [ebp - 0x814], 0xf
mov byte [ebp - 0x828], 0
call fcn.0041a210
mov byte [ebp - 4], 5
call fcn.00477b70
mov ebx, eax
lea ecx, [ebp - 0x8f4]
push 0x14e
lea eax, [ebp - 0x840]
push eax
lea eax, [ebp - 0x828]
push eax
call fcn.00405490
mov edi, eax
push str.write_DisplayIcon
push edi
mov byte [ebp - 4], 6
call fcn.00403b20
lea eax, [ebp - 0x810]
push eax
push edi
call fcn.00403b20
mov eax, dword [ebx]
add esp, 0x10
mov ecx, ebx
push edi
call dword [eax + 0x1c]
lea ecx, [ebp - 0x8f4]
call fcn.004085e0
mov edx, dword [ebp - 0x814]
mov byte [ebp - 4], 4
cmp edx, 0x10
jb 0x4508e6
mov ecx, dword [ebp - 0x828]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4508dc
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x451563
push edx
push ecx
call fcn.004698bf
add esp, 8
mov edx, dword [ebp - 0x82c]
mov dword [ebp - 0x818], 0
mov dword [ebp - 0x814], 0xf
mov byte [ebp - 0x828], 0
mov byte [ebp - 4], 0
cmp edx, 0x10
jb 0x45093f
mov ecx, dword [ebp - 0x840]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x450935
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x451568
push edx
push ecx
call fcn.004698bf
add esp, 8
mov ebx, dword [sym.imp.SHLWAPI.dll_SHSetValueW]
mov dword [ebp - 0x830], 0
mov dword [ebp - 0x82c], 0xf
mov byte [ebp - 0x840], 0
push dword [0x5bb214]
lea ecx, [ebp - 0x844]
call fcn.00405050
mov eax, dword [ebp - 0x844]
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.00477b70
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x450b0a
push 0x5d
push str.d:jenkins.jenkinsworkspaceweiduangamemicrogamemicrogamebox_srcmicrogameboxpush_jkw.cc
lea ecx, [ebp - 0x840]
mov dword [ebp - 0x830], eax
mov dword [ebp - 0x82c], 0xf
mov byte [ebp - 0x840], al
call fcn.0041a210
push 3
push 0x56fc58
lea ecx, [ebp - 0x828]
mov byte [ebp - 4], 8
mov dword [ebp - 0x818], 0
mov dword [ebp - 0x814], 0xf
mov byte [ebp - 0x828], 0
call fcn.0041a210
mov byte [ebp - 4], 9
call fcn.00477b70
mov ebx, eax
lea ecx, [ebp - 0x8f4]
push 0x154
lea eax, [ebp - 0x840]
push eax
lea eax, [ebp - 0x828]
push eax
call fcn.00405490
mov edi, eax
push str.write_DisplayName
push edi
mov byte [ebp - 4], 0xa
call fcn.00403b20
mov ecx, dword [ebp - 0x844]
mov edx, 0x56f948
test ecx, ecx
cmovne edx, ecx
push edx
push edi
call fcn.00403b20
mov eax, dword [ebx]
add esp, 0x10
mov ecx, ebx
push edi
call dword [eax + 0x1c]
lea ecx, [ebp - 0x8f4]
call fcn.004085e0
mov edx, dword [ebp - 0x814]
mov byte [ebp - 4], 8
cmp edx, 0x10
jb 0x450aab
mov ecx, dword [ebp - 0x828]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x450aa1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45156d
push edx
push ecx
call fcn.004698bf
add esp, 8
mov edx, dword [ebp - 0x82c]
mov dword [ebp - 0x818], 0
mov dword [ebp - 0x814], 0xf
mov byte [ebp - 0x828], 0
mov byte [ebp - 4], 7
cmp edx, 0x10
jb 0x450b04
mov ecx, dword [ebp - 0x840]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x450afa
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x451572
push edx
push ecx
call fcn.004698bf
add esp, 8
mov ebx, dword [sym.imp.SHLWAPI.dll_SHSetValueW]
mov eax, dword [ebp - 0x850]
mov ecx, eax
cmp dword [eax + 0x14], 8
jb 0x450b1a
mov ecx, dword [eax]
push ecx
lea ecx, [ebp - 0x854]
call fcn.00405050
push 0x570af4
lea ecx, [ebp - 0x854]
mov byte [ebp - 4], 0xb
call fcn.0044c8e0
push dword [0x5bb218]
lea ecx, [ebp - 0x854]
call fcn.0044c8e0
call fcn.00413510
mov ecx, eax
test ecx, ecx
je 0x451577
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x85c], eax
lea eax, [ebp - 0x85c]
mov byte [ebp - 4], 0xc
push eax
lea eax, [ebp - 0x854]
push eax
call fcn.0044d220
mov edi, dword [ebp - 0x85c]
add esp, 8
mov ecx, edi
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x450b90
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.00477b70
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x450d43
push 0x5d
push str.d:jenkins.jenkinsworkspaceweiduangamemicrogamemicrogamebox_srcmicrogameboxpush_jkw.cc
lea ecx, [ebp - 0x840]
mov dword [ebp - 0x830], eax
mov dword [ebp - 0x82c], 0xf
mov byte [ebp - 0x840], al
call fcn.0041a210
push 3
push 0x56fc58
lea ecx, [ebp - 0x828]
mov byte [ebp - 4], 0xd
mov dword [ebp - 0x818], 0
mov dword [ebp - 0x814], 0xf
mov byte [ebp - 0x828], 0
call fcn.0041a210
mov byte [ebp - 4], 0xe
call fcn.00477b70
mov dword [ebp - 0x848], eax
lea ecx, [ebp - 0x8f4]
push 0x15e
lea eax, [ebp - 0x840]
push eax
lea eax, [ebp - 0x828]
push eax
call fcn.00405490
mov ebx, eax
push str.write_DisplayVersion
push ebx
mov byte [ebp - 4], 0xf
call fcn.00403b20
test edi, edi
mov ecx, 0x56f948
cmovne ecx, edi
push ecx
push ebx
call fcn.00403b20
mov ecx, dword [ebp - 0x848]
add esp, 0x10
mov eax, dword [ecx]
push ebx
call dword [eax + 0x1c]
lea ecx, [ebp - 0x8f4]
call fcn.004085e0
mov edx, dword [ebp - 0x814]
mov byte [ebp - 4], 0xd
cmp edx, 0x10
jb 0x450ccf
mov ecx, dword [ebp - 0x828]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x450cc5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x451581
push edx
push ecx
call fcn.004698bf
add esp, 8
mov edx, dword [ebp - 0x82c]
mov dword [ebp - 0x818], 0
mov dword [ebp - 0x814], 0xf
mov byte [ebp - 0x828], 0
mov byte [ebp - 4], 0xc
cmp edx, 0x10
jb 0x450d28
mov ecx, dword [ebp - 0x840]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x450d1e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x451586
push edx
push ecx
call fcn.004698bf
add esp, 8
mov dword [ebp - 0x830], 0
mov dword [ebp - 0x82c], 0xf
mov byte [ebp - 0x840], 0
mov edx, dword [str.sS_R]
test edx, edx
jne 0x450d51
xor ecx, ecx
jmp 0x450d65
mov ecx, edx
lea ebx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x450d56
sub ecx, ebx
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x844]
call fcn.004185c0
mov eax, dword [ebp - 0x844]
mov ebx, dword [sym.imp.SHLWAPI.dll_SHSetValueW]
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.00477b70
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x450f15
push 0x5d
push str.d:jenkins.jenkinsworkspaceweiduangamemicrogamemicrogamebox_srcmicrogameboxpush_jkw.cc
lea ecx, [ebp - 0x840]
mov dword [ebp - 0x830], eax
mov dword [ebp - 0x82c], 0xf
mov byte [ebp - 0x840], al
call fcn.0041a210
push 3
push 0x56fc58
lea ecx, [ebp - 0x828]
mov byte [ebp - 4], 0x10
mov dword [ebp - 0x818], 0
mov dword [ebp - 0x814], 0xf
mov byte [ebp - 0x828], 0
call fcn.0041a210
mov byte [ebp - 4], 0x11
call fcn.00477b70
mov dword [ebp - 0x848], eax
lea ecx, [ebp - 0x8f4]
push 0x164
lea eax, [ebp - 0x840]
push eax
lea eax, [ebp - 0x828]
push eax
call fcn.00405490
mov ebx, eax
push str.write_Publisher
push ebx
mov byte [ebp - 4], 0x12
call fcn.00403b20
mov ecx, dword [ebp - 0x844]
mov edx, 0x56f948
test ecx, ecx
cmovne edx, ecx
push edx
push ebx
call fcn.00403b20
mov ecx, dword [ebp - 0x848]
add esp, 0x10
mov eax, dword [ecx]
push ebx
call dword [eax + 0x1c]
lea ecx, [ebp - 0x8f4]
call fcn.004085e0
mov edx, dword [ebp - 0x814]
mov byte [ebp - 4], 0x10
cmp edx, 0x10
jb 0x450eb6
mov ecx, dword [ebp - 0x828]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x450eac
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45158b
push edx
push ecx
call fcn.004698bf
add esp, 8
mov edx, dword [ebp - 0x82c]
mov dword [ebp - 0x818], 0
mov dword [ebp - 0x814], 0xf
mov byte [ebp - 0x828], 0
mov byte [ebp - 4], 0xc
cmp edx, 0x10
jb 0x450f0f
mov ecx, dword [ebp - 0x840]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x450f05
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x451590
push edx
push ecx
call fcn.004698bf
add esp, 8
mov ebx, dword [sym.imp.SHLWAPI.dll_SHSetValueW]
mov eax, dword [ebp - 0x850]
mov ecx, eax
cmp dword [eax + 0x14], 8
jb 0x450f25
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]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x450f41
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.00477b70
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x4510f6
push 0x5d
push str.d:jenkins.jenkinsworkspaceweiduangamemicrogamemicrogamebox_srcmicrogameboxpush_jkw.cc
lea ecx, [ebp - 0x840]
mov dword [ebp - 0x830], eax
mov dword [ebp - 0x82c], 0xf
mov byte [ebp - 0x840], al
call fcn.0041a210
push 3
push 0x56fc58
lea ecx, [ebp - 0x828]
mov byte [ebp - 4], 0x13
mov dword [ebp - 0x818], 0
mov dword [ebp - 0x814], 0xf
mov byte [ebp - 0x828], 0
call fcn.0041a210
mov byte [ebp - 4], 0x14
call fcn.00477b70
mov dword [ebp - 0x848], eax
lea ecx, [ebp - 0x8f4]
push 0x16a
lea eax, [ebp - 0x840]
push eax
lea eax, [ebp - 0x828]
push eax
call fcn.00405490
mov ebx, eax
push str.write_UninstallString
push ebx
mov byte [ebp - 4], 0x15
call fcn.00403b20
lea eax, [ebp - 0x810]
push eax
push ebx
call fcn.00403b20
mov ecx, dword [ebp - 0x848]
add esp, 0x10
mov eax, dword [ecx]
push ebx
call dword [eax + 0x1c]
lea ecx, [ebp - 0x8f4]
call fcn.004085e0
mov edx, dword [ebp - 0x814]
mov byte [ebp - 4], 0x13
cmp edx, 0x10
jb 0x451082
mov ecx, dword [ebp - 0x828]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x451078
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x451595
push edx
push ecx
call fcn.004698bf
add esp, 8
mov edx, dword [ebp - 0x82c]
mov dword [ebp - 0x818], 0
mov dword [ebp - 0x814], 0xf
mov byte [ebp - 0x828], 0
mov byte [ebp - 4], 0xc
cmp edx, 0x10
jb 0x4510db
mov ecx, dword [ebp - 0x840]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4510d1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45159a
push edx
push ecx
call fcn.004698bf
add esp, 8
mov dword [ebp - 0x830], 0
mov dword [ebp - 0x82c], 0xf
mov byte [ebp - 0x840], 0
mov edx, dword [str.www.taojike.com.cn]
test edx, edx
jne 0x451104
xor ecx, ecx
jmp 0x45111f
mov ecx, edx
lea ebx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x451110
sub ecx, ebx
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x844]
call fcn.004185c0
mov eax, dword [ebp - 0x844]
mov ebx, dword [sym.imp.SHLWAPI.dll_SHSetValueW]
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.00477b70
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x4512cf
push 0x5d
push str.d:jenkins.jenkinsworkspaceweiduangamemicrogamemicrogamebox_srcmicrogameboxpush_jkw.cc
lea ecx, [ebp - 0x840]
mov dword [ebp - 0x830], eax
mov dword [ebp - 0x82c], 0xf
mov byte [ebp - 0x840], al
call fcn.0041a210
push 3
push 0x56fc58
lea ecx, [ebp - 0x828]
mov byte [ebp - 4], 0x16
mov dword [ebp - 0x818], 0
mov dword [ebp - 0x814], 0xf
mov byte [ebp - 0x828], 0
call fcn.0041a210
mov byte [ebp - 4], 0x17
call fcn.00477b70
mov dword [ebp - 0x848], eax
lea ecx, [ebp - 0x8f4]
push 0x170
lea eax, [ebp - 0x840]
push eax
lea eax, [ebp - 0x828]
push eax
call fcn.00405490
mov ebx, eax
push str.write_URLInfoAbout
push ebx
mov byte [ebp - 4], 0x18
call fcn.00403b20
mov ecx, dword [ebp - 0x844]
mov eax, 0x56f948
test ecx, ecx
cmovne eax, ecx
push eax
push ebx
call fcn.00403b20
mov ecx, dword [ebp - 0x848]
add esp, 0x10
mov eax, dword [ecx]
push ebx
call dword [eax + 0x1c]
lea ecx, [ebp - 0x8f4]
call fcn.004085e0
mov edx, dword [ebp - 0x814]
mov byte [ebp - 4], 0x16
cmp edx, 0x10
jb 0x451270
mov ecx, dword [ebp - 0x828]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x451266
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45159f
push edx
push ecx
call fcn.004698bf
add esp, 8
mov edx, dword [ebp - 0x82c]
mov dword [ebp - 0x818], 0
mov dword [ebp - 0x814], 0xf
mov byte [ebp - 0x828], 0
mov byte [ebp - 4], 0xc
cmp edx, 0x10
jb 0x4512c9
mov ecx, dword [ebp - 0x840]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4512bf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4515a4
push edx
push ecx
call fcn.004698bf
add esp, 8
mov ebx, dword [sym.imp.SHLWAPI.dll_SHSetValueW]
mov eax, dword [ebp - 0x850]
cmp dword [eax + 0x14], 8
jb 0x4512dd
mov eax, dword [eax]
push 0x56f6d4
push eax
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 0x451300
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.00477b70
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x4514b5
push 0x5d
push str.d:jenkins.jenkinsworkspaceweiduangamemicrogamemicrogamebox_srcmicrogameboxpush_jkw.cc
lea ecx, [ebp - 0x840]
mov dword [ebp - 0x830], eax
mov dword [ebp - 0x82c], 0xf
mov byte [ebp - 0x840], al
call fcn.0041a210
push 3
push 0x56fc58
lea ecx, [ebp - 0x828]
mov byte [ebp - 4], 0x19
mov dword [ebp - 0x818], 0
mov dword [ebp - 0x814], 0xf
mov byte [ebp - 0x828], 0
call fcn.0041a210
mov byte [ebp - 4], 0x1a
call fcn.00477b70
mov dword [ebp - 0x848], eax
lea ecx, [ebp - 0x8f4]
push 0x176
lea eax, [ebp - 0x840]
push eax
lea eax, [ebp - 0x828]
push eax
call fcn.00405490
mov ebx, eax
push str.write_InstallLocation
push ebx
mov byte [ebp - 4], 0x1b
call fcn.00403b20
lea eax, [ebp - 0x810]
push eax
push ebx
call fcn.00403b20
mov ecx, dword [ebp - 0x848]
add esp, 0x10
mov eax, dword [ecx]
push ebx
call dword [eax + 0x1c]
lea ecx, [ebp - 0x8f4]
call fcn.004085e0
mov edx, dword [ebp - 0x814]
mov byte [ebp - 4], 0x19
cmp edx, 0x10
jb 0x451441
mov ecx, dword [ebp - 0x828]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x451437
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4515a9
push edx
push ecx
call fcn.004698bf
add esp, 8
mov edx, dword [ebp - 0x82c]
mov dword [ebp - 0x818], 0
mov dword [ebp - 0x814], 0xf
mov byte [ebp - 0x828], 0
mov byte [ebp - 4], 0xc
cmp edx, 0x10
jb 0x45149a
mov ecx, dword [ebp - 0x840]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x451490
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4515ae
push edx
push ecx
call fcn.004698bf
add esp, 8
mov dword [ebp - 0x830], 0
mov dword [ebp - 0x82c], 0xf
mov byte [ebp - 0x840], 0
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 0x4514d3
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x854]
mov eax, edi
mov byte [ebp - 4], 7
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4514f4
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x844]
mov eax, edi
mov byte [ebp - 4], 0
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x451515
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 0x451531
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.0046975d
mov esp, ebp
pop ebp
ret
push 0x80004005
call fcn.0040bcc0
call fcn.00517dfc
call fcn.00517dfc
call fcn.00517dfc
call fcn.00517dfc
call fcn.00517dfc
call fcn.00517dfc
push 0x80004005
call fcn.0040bcc0
call fcn.00517dfc
call fcn.00517dfc
call fcn.00517dfc
call fcn.00517dfc
call fcn.00517dfc
call fcn.00517dfc
call fcn.00517dfc
call fcn.00517dfc
call fcn.00517dfc
call fcn.00517dfc
int3