Function at 0x10024b80
Capabilities:
Check if file exists
Delete file
Get common file path
Read file on windows
Set file attributes
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 0x100d9b45
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0xa58
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 - 0xa48], edx
mov esi, ecx
mov dword [ebp - 0x9e0], esi
mov eax, dword [ebx + 0x10]
mov dword [ebp - 0x9f8], eax
xor eax, eax
push 0x104
push eax
mov dword [ebp - 0x9e4], eax
mov dword [ebp - 0x9dc], eax
lea eax, [ebp - 0x330]
push eax
call fcn.100b7060
add esp, 0xc
mov ecx, str.BaiduBrowser.exe
call fcn.10009fd0
test eax, eax
je 0x10024c13
mov eax, 0xfffffffe
jmp 0x100266f4
push esi
mov esi, dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
call esi
test eax, eax
jne 0x10024c27
xor eax, eax
jmp 0x100266f4
push 0x104
lea eax, [ebp - 0x330]
push 0
push eax
call fcn.100b7060
add esp, 0xc
lea eax, [ebp - 0x750]
push 0x104
push 0
push eax
call fcn.100b7060
add esp, 0xc
lea eax, [ebp - 0x750]
push 0
push 0x1a
push eax
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathA]
xor ecx, ecx
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x750]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x331], al
test al, al
jne 0x10024c70
push str.BaiduBaiduBrowseruser_datadefaultchrome_profilepref
lea eax, [ebp - 0x330]
push 0x104
push eax
call fcn.100c3c76
add esp, 0xc
lea eax, [ebp - 0x330]
push eax
call esi
test eax, eax
je 0x100266ef
push 0x104
lea eax, [ebp - 0x960]
push 0
push eax
call fcn.100b7060
add esp, 0xc
lea eax, [ebp - 0x330]
push eax
lea eax, [ebp - 0x960]
push 0x104
push eax
call fcn.100c3c1c
add esp, 0xc
lea eax, [ebp - 0x960]
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecA]
lea ecx, [ebp - 0x960]
call fcn.1001a900
test eax, eax
jne 0x10024c20
lea eax, [ebp - 0x330]
push eax
push str._DEBUGINFO__SETCRX__Chrome_path___s_n
call fcn.100043d0
add esp, 8
lea eax, [ebp - 0x330]
push 0x80
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
lea ecx, [ebp - 0x330]
call fcn.1001a220
mov esi, eax
mov dword [ebp - 0x9f4], esi
cmp esi, 0x64
jbe 0x100266eb
lea eax, [ebp - 0x330]
push 0x100ee020
push eax
call fcn.100bed8c
mov edi, eax
add esp, 8
test edi, edi
je 0x100266eb
inc esi
push esi
call fcn.100bd8fa
add esp, 4
mov dword [ebp - 0x9d4], eax
push esi
mov esi, eax
push 0
push esi
call fcn.100b7060
add esp, 0xc
push edi
push dword [ebp - 0x9f4]
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 0x10024da0
sub ecx, edx
cmp ecx, 1
jb 0x10024df6
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10024db3
sub ecx, edx
cmp ecx, 1
jb 0x10024df6
mov edi, 1
sub edi, esi
push 1
push 0x100edcbc
push esi
call fcn.100bdd68
mov ecx, dword [ebp - 0x9d4]
add esp, 0xc
lea edx, [ecx + 1]
test eax, eax
je 0x10024e10
inc esi
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10024de6
sub ecx, edx
lea eax, [edi + esi]
cmp eax, ecx
jbe 0x10024dc8
push dword [ebp - 0x9d4]
xor esi, esi
call fcn.100bd905
add esp, 4
jmp 0x100266f2
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10024e10
sub ecx, edx
cmp ecx, 1
jb 0x10024df6
mov esi, dword [ebp - 0x9d4]
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10024e30
sub ecx, edx
cmp ecx, 1
jb 0x10024df6
nop
push 1
push 0x100edcc0
push esi
call fcn.100bdd68
add esp, 0xc
test eax, eax
je 0x10024e85
mov ecx, dword [ebp - 0x9d4]
inc esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10024e60
sub ecx, edx
lea eax, [edi + esi]
cmp eax, ecx
jbe 0x10024e40
push dword [ebp - 0x9d4]
xor esi, esi
call fcn.100bd905
add esp, 4
jmp 0x100266f2
push 0x74
call fcn.100b47e3
add esp, 4
mov dword [ebp - 0xa4c], eax
lea ecx, [ebp - 0x9d0]
mov dword [ebp - 4], 0
push ecx
mov ecx, eax
mov dword [ebp - 0x9d0], 0x100
call fcn.1000b7d0
and dword [ebp - 0xa08], 0xfffffe00
mov edi, eax
mov dword [ebp - 0x9f4], edi
mov dword [ebp - 0xa04], 0
mov dword [ebp - 0xa00], 0
mov dword [ebp - 0x9fc], 0
mov dword [ebp - 4], 2
mov dword [ebp - method.Json::FastWriter.virtual_0], vtable.Json::FastWriter.0
mov dword [ebp - 0x99c], 0
mov dword [ebp - 0x998], 0xf
mov byte [ebp - 0x9ac], 0
mov word [ebp - 0x994], 0
mov byte [ebp - 0x992], 0
mov esi, dword [ebp - 0x9d4]
push 0x100edcbc
push esi
mov byte [ebp - 4], 3
call fcn.100b6560
add esp, 8
test eax, eax
je 0x10024f8c
push 0x100edcbc
push esi
call fcn.100b6560
add esp, 8
lea ecx, [ebp - 0x978]
push eax
call fcn.10001670
mov eax, 1
mov byte [ebp - 4], 4
push eax
mov dword [ebp - 0x9e4], eax
mov ecx, edi
mov dword [ebp - 0x9dc], eax
lea eax, [ebp - 0xa10]
push eax
lea eax, [ebp - 0x978]
push eax
call fcn.1000b8f0
mov byte [ebp - 0x9c9], 1
test al, al
jne 0x10024f93
mov byte [ebp - 0x9c9], 0
mov dword [ebp - 4], 3
mov eax, dword [ebp - 0x9e4]
test al, 1
je 0x10024fe7
mov edx, dword [ebp - 0x964]
and eax, 0xfffffffe
mov dword [ebp - 0x9e4], eax
cmp edx, 0x10
jb 0x10024fe7
mov ecx, dword [ebp - 0x978]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10024fdd
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10026714
push edx
push ecx
call fcn.100b4813
add esp, 8
cmp byte [ebp - 0x9c9], 0
je 0x100266ad
mov ecx, dword [ebp - 0xa48]
call fcn.100db5e0
mov esi, eax
mov ecx, esi
mov dword [ebp - 0xa4c], esi
call fcn.100db720
mov ecx, esi
mov dword [ebp - 0xa44], eax
call fcn.100db810
mov edx, dword [ebp - 0x9f8]
mov ecx, esi
mov dword [ebp - 0xa24], eax
call fcn.1001acc0
mov edx, dword [ebp - 0xa48]
mov ecx, esi
mov dword [ebp - 0xa20], eax
call fcn.1001af30
push 0x104
mov dword [ebp - 0x9f8], eax
lea eax, [ebp - 0x438]
push 0
push eax
call fcn.100b7060
add esp, 0xc
lea eax, [ebp - 0x120]
push 0x104
push 0
push eax
call fcn.100b7060
add esp, 0xc
lea eax, [ebp - 0x228]
push 0x104
push 0
push eax
call fcn.100b7060
xor ecx, ecx
xor edi, edi
add esp, 0xc
mov dword [ebp - 0x9d0], ecx
mov dword [ebp - 0xa1c], ecx
mov dword [ebp - 0x9f0], edi
mov dword [ebp - 0xa18], edi
mov dword [ebp - 0xa14], ecx
push 0x100ee07a
push str.extensions
lea ecx, [ebp - 0xa10]
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 0x100255d9
push 0x100ee07a
push str.extensions
lea ecx, [ebp - 0xa10]
call fcn.10015d00
push 0x100ee084
push str.settings
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0xa34]
push ecx
mov ecx, eax
call fcn.10016240
mov esi, eax
mov dword [ebp - 0x9d8], edi
lea eax, [ebp - 0xa1c]
cmp eax, esi
je 0x10025170
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 - 0x9d0], ecx
mov dword [ebp - 0xa1c], ecx
mov dword [ebp - 0x9f0], edi
mov dword [ebp - 0xa18], edi
mov dword [ebp - 0xa14], eax
mov dword [ebp - 0x9d8], esi
jmp 0x10025172
xor esi, esi
lea ecx, [ebp - 0xa34]
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 - 0x9e8], eax
je 0x100255d3
xor edi, edi
mov dword [ebp - 0x9dc], edi
nop dword [eax]
nop dword [eax + eax]
push 0x104
lea eax, [ebp - 0x120]
push 0
push eax
call fcn.100b7060
add esp, 0xc
mov eax, esi
cmp dword [esi + 0x14], 0x10
jb 0x100251d0
mov eax, dword [esi]
push eax
lea eax, [ebp - 0x120]
push 0x104
push eax
call fcn.100c3c1c
add esp, 0xc
lea ecx, [ebp - 0xa10]
push 0x100ee07a
push str.extensions
call fcn.10015d00
push 0x100ee084
push str.settings
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0x120]
mov edx, eax
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10025216
sub ecx, esi
lea eax, [ebp - 0x120]
add eax, ecx
mov ecx, edx
push eax
lea eax, [ebp - 0x120]
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 0x100255b1
mov ecx, dword [ebp - 0xa20]
call fcn.1001a080
mov edi, eax
lea eax, [ebp - 0x438]
push 0x104
push 0
push eax
mov dword [ebp - 0xa28], edi
call fcn.100b7060
add esp, 0xc
lea ecx, [ebp - 0xa10]
push 0x100ee07a
push str.extensions
call fcn.10015d00
push 0x100ee084
push str.settings
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0x120]
mov edx, eax
lea esi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100252c0
sub ecx, esi
lea eax, [ebp - 0x120]
add eax, ecx
mov ecx, edx
push eax
lea eax, [ebp - 0x120]
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 - 0x978]
push ecx
mov ecx, eax
call fcn.10015330
mov esi, eax
cmp dword [esi + 0x14], 0x10
jb 0x1002531a
mov esi, dword [esi]
lea ecx, [esi + 1]
nop dword [eax]
mov al, byte [esi]
inc esi
test al, al
jne 0x10025320
mov edx, dword [ebp - 0x964]
sub esi, ecx
cmp edx, 0x10
jb 0x10025363
mov ecx, dword [ebp - 0x978]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10025359
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10026714
push edx
push ecx
call fcn.100b4813
add esp, 8
push 0x100ee07a
cmp esi, 0x104
lea ecx, [ebp - 0xa10]
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 - 0x120]
mov edx, eax
lea eax, [ecx + 1]
mov dword [ebp - 0x9ec], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100253a8
sub ecx, dword [ebp - 0x9ec]
lea eax, [ebp - 0x120]
add eax, ecx
mov ecx, edx
push eax
lea eax, [ebp - 0x120]
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 - 0x978]
push ecx
mov ecx, eax
call fcn.10015330
cmp dword [eax + 0x14], 0x10
jb 0x10025404
mov eax, dword [eax]
push esi
push eax
lea eax, [ebp - 0x438]
push eax
call fcn.100b6ae0
mov edx, dword [ebp - 0x964]
add esp, 0xc
cmp edx, 0x10
jb 0x1002544f
mov ecx, dword [ebp - 0x978]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10025445
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10026714
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 0x10025454
sub edx, ecx
lea ecx, [ebp - 0x438]
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10025466
sub ecx, esi
cmp edx, ecx
jb 0x100255a2
mov edx, edi
xor esi, esi
lea eax, [edx + 1]
mov dword [ebp - 0x9ec], eax
mov al, byte [edx]
inc edx
test al, al
jne 0x10025484
sub edx, dword [ebp - 0x9ec]
cmp ecx, edx
ja 0x100255a2
nop dword [eax]
push ecx
lea eax, [ebp - 0x438]
push eax
lea eax, [esi + edi]
push eax
call fcn.100bdd68
add esp, 0xc
test eax, eax
je 0x100254eb
lea ecx, [ebp - 0x438]
inc esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100254c2
sub ecx, edx
mov edx, edi
lea edi, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x100254d0
sub edx, edi
lea eax, [esi + ecx]
mov edi, dword [ebp - 0xa28]
cmp eax, edx
jbe 0x100254a0
jmp 0x1002559c
push 0x104
lea eax, [ebp - 0x228]
push 0
push eax
call fcn.100b7060
add esp, 0xc
lea eax, [ebp - 0x330]
push eax
lea eax, [ebp - 0x228]
push 0x104
push eax
call fcn.100c3c1c
add esp, 0xc
lea eax, [ebp - 0x228]
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecA]
lea ecx, [ebp - 0x228]
dec ecx
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x10025530
mov eax, dword [str.Extensions_]
lea edx, [ebp - 0x120]
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 0x10025561
lea edi, [ebp - 0x228]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x10025571
mov ecx, edx
lea eax, [ebp - 0x228]
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]
test eax, eax
jne 0x10025ce8
mov edi, dword [ebp - 0xa28]
push edi
call fcn.100bd905
mov edi, dword [ebp - 0x9dc]
add esp, 4
mov esi, dword [ebp - 0x9d8]
inc edi
add esi, 0x18
mov dword [ebp - 0x9dc], edi
mov dword [ebp - 0x9d8], esi
cmp edi, dword [ebp - 0x9e8]
jb 0x100251b0
mov edi, dword [ebp - 0x9f0]
xor eax, eax
push eax
push str._DEBUGINFO__SETCRX__Chrome_bExit___d_n
call fcn.100043d0
add esp, 8
lea ecx, [ebp - 0xa10]
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 0x10025d02
push 0x100ee07a
push str.extensions
lea ecx, [ebp - 0xa10]
call fcn.10015d00
push 0x100ee084
push str.settings
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0xa34]
push ecx
mov ecx, eax
call fcn.10016240
mov esi, eax
lea eax, [ebp - 0xa1c]
cmp eax, esi
je 0x10025694
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 - 0x9d0], ecx
mov dword [ebp - 0xa1c], ecx
mov dword [ebp - 0xa18], edi
mov dword [ebp - 0xa14], eax
mov dword [esi + 8], 0
lea ecx, [ebp - 0xa34]
call fcn.1000a810
mov esi, dword [ebp - 0x9d0]
mov eax, 0x2aaaaaab
sub edi, esi
imul edi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ebp - 0x9ec], eax
je 0x10025d02
mov dword [ebp - 0x9d8], 0
nop
push 0x104
lea eax, [ebp - 0x120]
push 0
push eax
call fcn.100b7060
add esp, 0xc
mov eax, esi
cmp dword [esi + 0x14], 0x10
jb 0x100256f0
mov eax, dword [esi]
push eax
lea eax, [ebp - 0x120]
push 0x104
push eax
call fcn.100c3c1c
add esp, 0xc
lea ecx, [ebp - 0xa10]
push 0x100ee07a
push str.extensions
call fcn.10015d00
push 0x100ee084
push str.settings
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0x120]
mov edx, eax
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10025736
sub ecx, esi
lea eax, [ebp - 0x120]
add eax, ecx
mov ecx, edx
push eax
lea eax, [ebp - 0x120]
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 0x10025cc1
mov ecx, dword [ebp - 0xa20]
call fcn.1001a080
mov edi, eax
lea eax, [ebp - 0x438]
push 0x104
push 0
push eax
mov dword [ebp - 0x9dc], edi
call fcn.100b7060
add esp, 0xc
lea ecx, [ebp - 0xa10]
push 0x100ee07a
push str.extensions
call fcn.10015d00
push 0x100ee084
push str.settings
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0x120]
mov edx, eax
lea esi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100257e0
sub ecx, esi
lea eax, [ebp - 0x120]
add eax, ecx
mov ecx, edx
push eax
lea eax, [ebp - 0x120]
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 - 0x978]
push ecx
mov ecx, eax
call fcn.10015330
mov esi, eax
cmp dword [esi + 0x14], 0x10
jb 0x1002583a
mov esi, dword [esi]
lea ecx, [esi + 1]
nop dword [eax]
mov al, byte [esi]
inc esi
test al, al
jne 0x10025840
mov edx, dword [ebp - 0x964]
sub esi, ecx
cmp edx, 0x10
jb 0x10025883
mov ecx, dword [ebp - 0x978]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10025879
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10026714
push edx
push ecx
call fcn.100b4813
add esp, 8
push 0x100ee07a
cmp esi, 0x104
lea ecx, [ebp - 0xa10]
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 - 0x120]
mov edx, eax
lea eax, [ecx + 1]
mov dword [ebp - 0x9e8], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100258c8
sub ecx, dword [ebp - 0x9e8]
lea eax, [ebp - 0x120]
add eax, ecx
mov ecx, edx
push eax
lea eax, [ebp - 0x120]
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 - 0x978]
push ecx
mov ecx, eax
call fcn.10015330
cmp dword [eax + 0x14], 0x10
jb 0x10025924
mov eax, dword [eax]
push esi
push eax
lea eax, [ebp - 0x438]
push eax
call fcn.100b6ae0
mov edx, dword [ebp - 0x964]
add esp, 0xc
cmp edx, 0x10
jb 0x1002596f
mov ecx, dword [ebp - 0x978]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10025965
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10026714
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 0x10025974
sub edx, ecx
lea ecx, [ebp - 0x438]
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10025986
sub ecx, esi
cmp edx, ecx
jb 0x100259fb
mov edx, edi
xor esi, esi
lea eax, [edx + 1]
mov dword [ebp - 0x9e8], eax
mov al, byte [edx]
inc edx
test al, al
jne 0x100259a0
sub edx, dword [ebp - 0x9e8]
cmp ecx, edx
ja 0x100259fb
push ecx
lea eax, [ebp - 0x438]
push eax
lea eax, [esi + edi]
push eax
call fcn.100bdd68
add esp, 0xc
test eax, eax
je 0x10025cf8
lea ecx, [ebp - 0x438]
inc esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100259d7
sub ecx, edx
mov edx, edi
lea edi, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x100259e5
sub edx, edi
lea eax, [esi + ecx]
mov edi, dword [ebp - 0x9dc]
cmp eax, edx
jbe 0x100259b1
xor eax, eax
test eax, eax
je 0x10025cb3
push 0x100ee07a
push str.extensions
lea ecx, [ebp - 0xa10]
call fcn.10015d00
push 0x100ee084
push str.settings
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0x120]
push ecx
lea ecx, [ebp - 0x990]
push ecx
mov ecx, eax
call fcn.10016110
lea ecx, [ebp - 0x990]
call fcn.10015080
push 0x100ee162
push str.protection
lea ecx, [ebp - 0xa10]
call fcn.10015d00
cmp byte [eax + 8], 0
je 0x10025c0c
push 0x100ee162
push str.protection
lea ecx, [ebp - 0xa10]
call fcn.10015d00
push 0x100ee168
push str.macs
mov ecx, eax
call fcn.10015d00
cmp byte [eax + 8], 0
je 0x10025c0c
push 0x100ee162
push str.protection
lea ecx, [ebp - 0xa10]
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 0x10025c0c
push 0x100ee162
push str.protection
lea ecx, [ebp - 0xa10]
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 0x10025c0c
push 0x100ee162
push str.protection
lea ecx, [ebp - 0xa10]
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 - 0x120]
mov edx, eax
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10025b80
sub ecx, esi
lea eax, [ebp - 0x120]
add eax, ecx
mov ecx, edx
push eax
lea eax, [ebp - 0x120]
push eax
call fcn.10015f00
test eax, eax
je 0x10025c0c
push 0x100ee162
push str.protection
lea ecx, [ebp - 0xa10]
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 - 0x120]
push ecx
lea ecx, [ebp - 0x990]
push ecx
mov ecx, eax
call fcn.10016110
lea ecx, [ebp - 0x990]
call fcn.10015080
push 0x104
lea eax, [ebp - 0x228]
push 0
push eax
call fcn.100b7060
add esp, 0xc
lea eax, [ebp - 0x330]
push eax
lea eax, [ebp - 0x228]
push 0x104
push eax
call fcn.100c3c1c
add esp, 0xc
lea eax, [ebp - 0x228]
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecA]
lea ecx, [ebp - 0x228]
dec ecx
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x10025c51
mov eax, dword [str.Extensions_]
lea edx, [ebp - 0x120]
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 0x10025c82
lea edi, [ebp - 0x228]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x10025c92
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 - 0x228]
call fcn.1001a680
push dword [ebp - 0x9dc]
call fcn.100bd905
add esp, 4
mov esi, dword [ebp - 0x9d8]
add dword [ebp - 0x9d0], 0x18
inc esi
mov dword [ebp - 0x9d8], esi
cmp esi, dword [ebp - 0x9ec]
jae 0x10025d02
mov esi, dword [ebp - 0x9d0]
jmp 0x100256d0
mov edi, dword [ebp - 0x9f0]
mov eax, 1
jmp 0x100255db
mov eax, 1
jmp 0x100259fd
push 0x100ee16c
lea eax, [ebp - 0x750]
push eax
push dword [ebp - 0x9e0]
call fcn.100ab670
push 0x104
lea eax, [ebp - 0x540]
push 0
push eax
call fcn.100b7060
add esp, 0xc
lea eax, [ebp - 0x858]
push 0x104
push 0
push eax
call fcn.100b7060
add esp, 0xc
xor ecx, ecx
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x750]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x541], al
test al, al
jne 0x10025d50
xor ecx, ecx
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x750]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x859], al
test al, al
jne 0x10025d70
lea ecx, [ebp - 0x540]
dec ecx
nop dword [eax]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x10025d90
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 - 0x858]
dec ecx
nop word [eax + eax]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x10025dc0
mov eax, dword [str.crx.7z]
mov dword [ecx], eax
mov eax, dword [0x100ee180]
mov dword [ecx + 4], eax
lea eax, [ebp - 0x540]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
test eax, eax
je 0x10026647
lea ecx, [ebp - 0x540]
call fcn.1001a220
mov edi, eax
cmp edi, 0xa
jbe 0x10026647
lea eax, [ebp - 0x540]
push 0x100ee020
push eax
call fcn.100bed8c
add esp, 8
mov dword [ebp - 0x9e0], eax
test eax, eax
je 0x10026647
lea esi, [edi + 0x3e8]
push esi
call fcn.100bd8fa
add esp, 4
mov dword [ebp - 0x9d8], eax
push esi
push 0
push eax
call fcn.100b7060
mov esi, dword [ebp - 0x9e0]
add esp, 0xc
push esi
push edi
mov edi, dword [ebp - 0x9d8]
push 1
push edi
call fcn.100bfba1
push esi
call fcn.100bf0a9
and dword [ebp - 0xa38], 0xfffffe00
add esp, 0x14
mov dword [ebp - 0xa34], 0
mov dword [ebp - 0xa30], 0
mov dword [ebp - 0xa2c], 0
push 0x100edcbc
push edi
mov byte [ebp - 4], 7
call fcn.100b6560
add esp, 8
test eax, eax
je 0x10025efd
push 0x100edcbc
push edi
call fcn.100b6560
add esp, 8
lea ecx, [ebp - 0x978]
push eax
call fcn.10001670
mov ecx, dword [ebp - 0x9f4]
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0x9e4]
or eax, 2
mov dword [ebp - 0x9e4], eax
mov dword [ebp - 0x9dc], eax
lea eax, [ebp - 0xa40]
push 1
push eax
lea eax, [ebp - 0x978]
push eax
call fcn.1000b8f0
mov byte [ebp - 0x9c9], 1
test al, al
jne 0x10025f04
mov byte [ebp - 0x9c9], 0
mov dword [ebp - 4], 7
mov eax, dword [ebp - 0x9e4]
test al, 2
je 0x10025f4f
mov edx, dword [ebp - 0x964]
cmp edx, 0x10
jb 0x10025f4f
mov ecx, dword [ebp - 0x978]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10025f45
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10026719
push edx
push ecx
call fcn.100b4813
add esp, 8
cmp byte [ebp - 0x9c9], 0
je 0x10026307
push 0x104
lea eax, [ebp - 0x648]
push 0
push eax
call fcn.100b7060
add esp, 0xc
lea ecx, [ebp - 0xa40]
push 0x100ee1a0
push str.path
call fcn.10015d00
lea ecx, [ebp - 0x978]
push ecx
mov ecx, eax
call fcn.10015330
mov ecx, eax
cmp dword [ecx + 0x14], 0x10
jb 0x10025f9f
mov ecx, dword [ecx]
lea edx, [ebp - 0x648]
sub edx, ecx
mov al, byte [ecx]
lea ecx, [ecx + 1]
mov byte [ecx + edx - 1], al
test al, al
jne 0x10025fa7
mov edx, dword [ebp - 0x964]
cmp edx, 0x10
jb 0x10025fee
mov ecx, dword [ebp - 0x978]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10025fe4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002671e
push edx
push ecx
call fcn.100b4813
add esp, 8
mov esi, dword [ebp - 0xa24]
mov ecx, dword [ebp - 0x9f8]
movups xmm0, xmmword [esi]
movups xmmword [ebp - 0x648], xmm0
movups xmm0, xmmword [esi + 0x10]
movups xmmword [ebp - 0x638], xmm0
call fcn.1001a080
push 1
lea ecx, [ebp - 0x978]
mov dword [ebp - 0x9e0], eax
call fcn.10014ec0
push 0x100ee1ba
push str.browser_action_visible
lea ecx, [ebp - 0xa40]
mov byte [ebp - 4], 0xb
call fcn.10015d00
lea ecx, [ebp - 0x978]
mov byte [ebp - 4], 7
push ecx
mov ecx, eax
call fcn.100151a0
lea ecx, [ebp - 0x978]
call fcn.10015080
push dword [ebp - 0xa44]
lea ecx, [ebp - 0x978]
call fcn.10014df0
push 0x100ee090
push str.manifest
lea ecx, [ebp - 0xa40]
mov byte [ebp - 4], 0xd
call fcn.10015d00
push 0x100ee1bf
push 0x100ee1bc
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0x978]
mov byte [ebp - 4], 7
push ecx
mov ecx, eax
call fcn.100151a0
lea ecx, [ebp - 0x978]
call fcn.10015080
lea edx, [ebp - 0x648]
mov byte [ebp - 0x970], 4
or dword [ebp - 0x970], 0x100
lea ecx, [edx + 1]
mov dword [ebp - 0x96c], 0
mov dword [ebp - 0x968], 0
mov dword [ebp - 0x964], 0
nop dword [eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x100260f0
sub edx, ecx
lea ecx, [ebp - 0x648]
call fcn.100145d0
mov dword [ebp - 0x978], eax
push 0x100ee1a0
push str.path
lea ecx, [ebp - 0xa40]
mov byte [ebp - 4], 0x10
call fcn.10015d00
lea ecx, [ebp - 0x978]
mov byte [ebp - 4], 7
push ecx
mov ecx, eax
call fcn.100151a0
lea ecx, [ebp - 0x978]
call fcn.10015080
lea eax, [ebp - 0xa40]
push eax
lea ecx, [ebp - 0xa68]
call fcn.10014ef0
push 0x100ee07a
push str.extensions
lea ecx, [ebp - 0xa10]
mov byte [ebp - 4], 0x11
call fcn.10015d00
push 0x100ee084
push str.settings
mov ecx, eax
call fcn.10015d00
push esi
mov ecx, eax
call fcn.10015fd0
lea ecx, [ebp - 0xa68]
push ecx
mov ecx, eax
call fcn.100151a0
lea ecx, [ebp - 0xa68]
call fcn.10015080
mov byte [ebp - 0x970], 0
and dword [ebp - 0x970], 0xfffffeff
mov dword [ebp - 0x96c], 0
mov dword [ebp - 0x968], 0
mov dword [ebp - 0x964], 0
push 0x100ee07a
push str.extensions
lea ecx, [ebp - 0xa10]
mov byte [ebp - 4], 0x13
call fcn.10015d00
push 0x100ee10b
push str.toolbar
mov ecx, eax
call fcn.10015d00
lea ecx, [ebp - 0x978]
mov byte [ebp - 4], 7
push ecx
mov ecx, eax
call fcn.100151a0
lea ecx, [ebp - 0x978]
call fcn.10015080
push esi
lea ecx, [ebp - 0xa68]
call fcn.10014df0
push 0x100ee07a
push str.extensions
lea ecx, [ebp - 0xa10]
mov byte [ebp - 4], 0x14
call fcn.10015d00
push 0x100ee10b
push str.toolbar
mov ecx, eax
call fcn.10015d00
mov esi, eax
lea ecx, [ebp - 0x990]
lea eax, [ebp - 0xa68]
push eax
call fcn.10014ef0
mov ecx, esi
mov byte [ebp - 4], 0x15
call fcn.10015800
push eax
mov ecx, esi
call fcn.10015980
lea ecx, [ebp - 0x990]
push ecx
mov ecx, eax
call fcn.100151a0
lea ecx, [ebp - 0x990]
call fcn.10015080
lea ecx, [ebp - 0xa68]
call fcn.10015080
push 0
lea ecx, [ebp - 0x990]
call fcn.10014ec0
push 0x100ee07a
push str.extensions
lea ecx, [ebp - 0xa10]
mov byte [ebp - 4], 0x16
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 - 0x990]
mov byte [ebp - 4], 7
push ecx
mov ecx, eax
call fcn.100151a0
lea ecx, [ebp - 0x990]
call fcn.10015080
push dword [ebp - 0x9e0]
call fcn.100bd905
add esp, 4
lea eax, [ebp - 0x540]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
cmp dword [ebp - 0x998], 0x10
lea eax, [ebp - 0x9ac]
mov dword [ebp - 0x99c], 0
lea ecx, [ebp - 0x9b0]
cmovae eax, dword [ebp - 0x9ac]
mov byte [eax], 0
lea eax, [ebp - 0xa10]
push eax
call fcn.100183f0
cmp byte [ebp - 0x992], 0
jne 0x10026360
push 0x100ed634
lea ecx, [ebp - 0x9ac]
call fcn.100015b0
lea eax, [ebp - 0x9ac]
push eax
lea ecx, [ebp - 0x9c8]
call fcn.1000e910
lea eax, [ebp - 0x330]
mov byte [ebp - 4], 0x17
push 0x100ee038
push eax
call fcn.100bed8c
mov esi, eax
add esp, 8
test esi, esi
je 0x100263ed
mov edx, dword [ebp - 0x9b4]
lea ecx, [ebp - 0x9c8]
cmp edx, 0x10
cmovae ecx, dword [ebp - 0x9c8]
lea eax, [ecx + 1]
mov dword [ebp - 0x9e0], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100263b0
sub ecx, dword [ebp - 0x9e0]
lea eax, [ebp - 0x9c8]
push esi
cmp edx, 0x10
push 1
cmovae eax, dword [ebp - 0x9c8]
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.100043d0
add esp, 4
push 0x104
lea eax, [ebp - 0x228]
push 0
push eax
call fcn.100b7060
add esp, 0xc
lea eax, [ebp - 0x330]
push eax
lea eax, [ebp - 0x228]
push 0x104
push eax
call fcn.100c3c1c
add esp, 0xc
lea eax, [ebp - 0x228]
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecA]
lea ecx, [ebp - 0x228]
dec ecx
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x10026432
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 - 0xa40]
push str.path
call fcn.10015d00
cmp byte [eax + 8], 0
je 0x100265bc
push 0x100ee1a0
push str.path
lea ecx, [ebp - 0xa40]
call fcn.10015d00
lea ecx, [ebp - 0x990]
push ecx
mov ecx, eax
call fcn.10015330
mov edx, eax
cmp dword [edx + 0x14], 0x10
jb 0x100264a7
mov edx, dword [edx]
mov esi, edx
nop dword [eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x100264b0
lea edi, [ebp - 0x228]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x100264c0
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
mov edx, dword [ebp - 0x97c]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
cmp edx, 0x10
jb 0x10026510
mov ecx, dword [ebp - 0x990]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10026506
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10026723
push edx
push ecx
call fcn.100b4813
add esp, 8
lea ecx, [ebp - 0x228]
call fcn.1001a270
push 0x100ee16c
lea eax, [ebp - 0x228]
push eax
lea eax, [ebp - 0x858]
push eax
call fcn.100ab670
lea eax, [ebp - 0x228]
push eax
push str._DEBUGINFO__SETCRX__un7zfile__pluginpath___s_n
call fcn.100043d0
lea eax, [ebp - 0x228]
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 0x10026558
mov eax, dword [str.m.js]
mov ecx, 0x100fbba8
push dword [ebp - 0xa48]
mov dword [edx], eax
mov ax, word [0x100ee294]
mov word [edx + 4], ax
mov eax, 0x100fbb90
cmp dword [0x100fbbbc], 0x10
mov edx, 0x10
cmovae ecx, dword [0x100fbba8]
cmp dword [0x100fbba4], 0x10
push ecx
cmovae eax, dword [0x100fbb90]
mov ecx, esi
push eax
push dword [ebp - 0xa24]
call fcn.10019ec0
mov edi, dword [ebp - 0x9d8]
add esp, 0x10
lea eax, [ebp - 0x858]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push str._DEBUGINFO__SETCRX__write_file_ok_n
call fcn.100043d0
add esp, 4
push edi
call fcn.100bd905
mov byte [ebp - 4], 7
add esp, 4
mov edx, dword [ebp - 0x9b4]
cmp edx, 0x10
jb 0x1002661d
mov ecx, dword [ebp - 0x9c8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10026613
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10026728
push edx
push ecx
call fcn.100b4813
add esp, 8
lea ecx, [ebp - 0xa40]
mov dword [ebp - 0x9b8], 0
mov dword [ebp - 0x9b4], 0xf
mov byte [ebp - 0x9c8], 0
mov byte [ebp - 4], 5
call fcn.10015080
mov esi, dword [ebp - 0xa24]
mov ecx, esi
call fcn.100247e0
push dword [ebp - 0x9f8]
call fcn.100bd905
add esp, 4
push dword [ebp - 0xa20]
call fcn.100bd905
add esp, 4
push esi
call fcn.100bd905
add esp, 4
push dword [ebp - 0xa44]
call fcn.100bd905
add esp, 4
push dword [ebp - 0xa4c]
call fcn.100bd905
add esp, 4
lea ecx, [ebp - 0xa1c]
mov esi, 1
call fcn.1000a810
mov edi, dword [ebp - 0x9f4]
jmp 0x100266af
xor esi, esi
test edi, edi
je 0x100266c5
mov ecx, edi
call fcn.1000a490
push 0x74
push edi
call fcn.100b4813
add esp, 8
lea ecx, [ebp - 0x9b0]
call fcn.10017a80
lea ecx, [ebp - 0xa10]
call fcn.10015080
push dword [ebp - 0x9d4]
call fcn.100bd905
add esp, 4
jmp 0x100266f2
xor esi, esi
jmp 0x100266f2
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 0x14
call fcn.100ba02c
call fcn.100ba02c
call fcn.100ba02c
call fcn.100ba02c
call fcn.100ba02c
int3