Function at 0x5594d0
Capabilities:
Enumerate files on windows
Get graphical window text

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 0x5fa5c0
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x300
mov eax, dword [0x70f200]
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 - 0x304], ecx
mov edi, dword [ebx + 8]
xor ecx, ecx
mov dword [ebp - 0x308], edi
call fcn.005d3930
test eax, eax
je 0x559534
push eax
call fcn.0041e1c3
add esp, 4
push 2
push 0
call dword [sym.imp.ole32.dll_CoInitializeEx]
mov esi, dword [edi + 4]
mov ecx, 3
call fcn.0059e240
mov dword [ebp - 0x18], eax
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x24]
xorps xmm0, xmm0
mov dword [ebp - 0x1c], 0
movq qword [ebp - 0x24], xmm0
call fcn.005dc5e0
push dword [edi + 8]
mov ecx, esi
call fcn.005c5730
mov edi, eax
xorps xmm0, xmm0
push 0x250
lea eax, [ebp - 0x2c0]
mov dword [ebp - 0x28], edi
push 0
movups xmmword [ebp - 0x70], xmm0
push eax
mov dword [ebp - 0x70], 0xffffffff
call fcn.00420090
add esp, 0xc
mov esi, dword [ebp - 0x308]
mov byte [ebp - 4], 2
cmp byte [esi + 0x11], 1
mov dword [esi + 0x18], 0
mov dword [esi + 0x1c], 0
je 0x5595db
push 0xf000
push 0
push 0x102c
push edi
call dword [sym.imp.USER32.dll_SendMessageW]
shr eax, 0xd
test al, 1
je 0x559711
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x2fc], 0
cmp dword [eax], 0
jbe 0x55967c
xor edi, edi
jmp 0x5595f8
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax + 4]
mov esi, dword [eax + 0xc]
add ecx, edi
add esi, edi
call fcn.005dc190
push eax
lea eax, [ebp - 0x24]
mov ecx, esi
push eax
call fcn.005dc190
mov edx, 0x62e63c
mov ecx, eax
call fcn.0059c9b0
test al, al
je 0x55965b
lea ecx, [ebp - 0x24]
call fcn.005dc190
mov ecx, eax
call fcn.005e71d0
mov esi, dword [ebp - 0x308]
test al, al
jne 0x559661
push esi
lea ecx, [ebp - 0x24]
call fcn.005dc190
mov ecx, dword [ebp - 0x304]
push eax
call fcn.005548e0
test al, al
je 0x55a4d3
jmp 0x559661
mov esi, dword [ebp - 0x308]
mov eax, dword [ebp - 0x2fc]
add edi, 0xc
mov ecx, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x2fc], eax
cmp eax, dword [ecx]
jb 0x5595f5
push 0
mov edi, dword [ebp - 0x304]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.Temp
push ecx
mov ecx, edi
call fcn.0057c5d0
push eax
lea ecx, [ebp - 0x24]
call fcn.005dc200
push esi
lea ecx, [ebp - 0x24]
call fcn.005dc190
push eax
mov ecx, edi
call fcn.005548e0
test al, al
je 0x55a4d3
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.Temp
push ecx
mov ecx, edi
call fcn.0057c490
push eax
lea ecx, [ebp - 0x24]
call fcn.005dc200
push esi
lea ecx, [ebp - 0x24]
call fcn.005dc190
push eax
mov ecx, edi
call fcn.005548e0
test al, al
je 0x55a4d3
push ecx
push esi
push 0
call fcn.005547b0
cmp byte [esi + 0x11], 1
mov edi, dword [sym.imp.KERNEL32.dll_FindNextFileW]
mov dword [esi + 0xc], 1
je 0x559744
push 0xf000
push 1
push 0x102c
push dword [ebp - 0x28]
call dword [sym.imp.USER32.dll_SendMessageW]
shr eax, 0xd
test al, 1
je 0x55a2fd
push 1
xorps xmm0, xmm0
mov dword [ebp - 0x3c], 0
push ecx
mov ecx, dword [ebp - 0x304]
movq qword [ebp - 0x44], xmm0
call fcn.0057c1f0
push eax
lea ecx, [ebp - 0x44]
call fcn.005dc570
sub esp, 8
mov byte [ebp - 4], 3
xorps xmm0, xmm0
mov dword [ebp - 0x54], 0
movq qword [ebp - 0x5c], xmm0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.GoogleChromeUser_Data_
push ecx
mov ecx, dword [ebp - 0x304]
call fcn.0057c260
push eax
lea ecx, [ebp - 0x5c]
call fcn.005dc520
sub esp, 8
mov byte [ebp - 4], 4
xorps xmm0, xmm0
mov dword [ebp - 0x48], 0
movq qword [ebp - 0x50], xmm0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.MicrosoftEdgeUser_Data_
push ecx
mov ecx, dword [ebp - 0x304]
call fcn.0057c260
push eax
lea ecx, [ebp - 0x50]
call fcn.005dc520
sub esp, 8
mov byte [ebp - 4], 5
xorps xmm0, xmm0
mov dword [ebp - 0x30], 0
movq qword [ebp - 0x38], xmm0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.MozillaFirefoxProfiles_
push ecx
mov ecx, dword [ebp - 0x304]
call fcn.0057c260
push eax
lea ecx, [ebp - 0x38]
call fcn.005dc520
push ecx
mov ecx, dword [ebp - 0x304]
mov byte [ebp - 4], 6
call fcn.0057c330
mov eax, dword [ebp - 0x304]
mov ecx, dword [eax + 0x8c]
call fcn.005dc3a0
push eax
lea ecx, [ebp - 0x44]
call fcn.005dad50
mov eax, dword [ebp - 0x304]
mov ecx, dword [eax + 0x8c]
call fcn.005dc3a0
push eax
lea ecx, [ebp - 0x5c]
call fcn.005dad50
mov eax, dword [ebp - 0x304]
mov ecx, dword [eax + 0x8c]
call fcn.005dc3a0
push eax
lea ecx, [ebp - 0x38]
call fcn.005dad50
mov eax, dword [ebp - 0x304]
mov ecx, dword [eax + 0x8c]
call fcn.005dc3a0
push eax
lea ecx, [ebp - 0x50]
call fcn.005dad50
mov eax, dword [ebp - 0x18]
xor ecx, ecx
mov dword [ebp - 0x30c], ecx
cmp dword [eax], ecx
jbe 0x55a2d0
cmp byte [esi + 0x11], 2
jne 0x5598cb
mov ecx, 0x64abcc
call fcn.005cc330
mov ecx, dword [ebp - 0x30c]
push 0
push 0
push 0
push 0
push 0
push 0
lea eax, [ecx + ecx*2]
mov ecx, dword [ebp - 0x18]
push 0
push 0
shl eax, 2
mov esi, dword [ecx + 4]
lea ecx, [ebp - 0x44]
push 0
push 0
mov dword [ebp - 0x2fc], eax
add esi, eax
call fcn.005dc190
push eax
mov ecx, esi
call fcn.005dc190
push eax
lea ecx, [ebp - 0x24]
call fcn.005dc200
mov esi, dword [ebp - 0x308]
lea ecx, [ebp - 0x24]
push esi
call fcn.005dc190
mov ecx, dword [ebp - 0x304]
push eax
call fcn.005548e0
test al, al
je 0x55a4b3
cmp byte [esi + 0x11], 2
jne 0x55993f
mov ecx, 0x64a06c
call fcn.005cc330
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x5c]
push 0
push 0
push 0
mov esi, dword [eax + 4]
add esi, dword [ebp - 0x2fc]
push 0
push 0
push 0
push 0
push 0
push 0
push str.ShaderCache
call fcn.005dc190
push eax
mov ecx, esi
call fcn.005dc190
push eax
lea ecx, [ebp - 0x24]
call fcn.005dc200
push dword [ebp - 0x308]
lea ecx, [ebp - 0x24]
call fcn.005dc190
mov ecx, dword [ebp - 0x304]
push eax
call fcn.005548e0
test al, al
je 0x55a4b3
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x5c]
push 0
push 0
push 0
mov esi, dword [eax + 4]
add esi, dword [ebp - 0x2fc]
push 0
push 0
push 0
push 0
push 0
push 0
push 0x624384
call fcn.005dc190
push eax
mov ecx, esi
call fcn.005dc190
push eax
lea ecx, [ebp - 0x24]
call fcn.005dc200
lea ecx, [ebp - 0x24]
call fcn.005dc190
mov ecx, dword [ebp - 0x70]
mov esi, eax
cmp ecx, 0xffffffff
je 0x5599f2
push ecx
call dword [sym.imp.KERNEL32.dll_FindClose]
lea eax, [ebp - 0x2c0]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov edx, eax
mov dword [ebp - 0x70], edx
cmp edx, 0xffffffff
je 0x559c2d
mov ecx, 5
mov dword [ebp - 0x6c], ecx
cmp word [ebp - 0x294], 0x2e
jne 0x559a44
mov ax, word [ebp - 0x292]
test ax, ax
je 0x559bec
cmp ax, 0x2e
jne 0x559a44
cmp word [ebp - 0x290], 0
je 0x559bec
test ecx, ecx
je 0x559a6f
mov eax, dword [ebp - 0x2c0]
test cl, 1
je 0x559a5e
test eax, 0x400
jne 0x559bec
test cl, 2
je 0x559bdb
test al, 0x10
jne 0x559bec
mov eax, dword [ebp - 0x30c]
lea edi, [eax + eax*2]
shl edi, 2
nop dword [eax + eax]
mov ecx, dword [ebp - 0x304]
push 0
push 1
call fcn.005494d0
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x5c]
push 0
push 0
push 0
mov esi, dword [eax + 4]
lea eax, [ebp - 0x294]
push 0
push 0
push 0
push 0
push 0
push str.Cache
push eax
add esi, edi
call fcn.005dc190
push eax
mov ecx, esi
call fcn.005dc190
push eax
lea ecx, [ebp - 0x24]
call fcn.005dc200
push dword [ebp - 0x308]
lea ecx, [ebp - 0x24]
call fcn.005dc190
mov ecx, dword [ebp - 0x304]
push eax
call fcn.005548e0
test al, al
je 0x55a4b3
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x5c]
push 0
push 0
push 0
mov esi, dword [eax + 4]
lea eax, [ebp - 0x294]
push 0
push 0
push 0
push 0
push 0
push str.Code_Cache
push eax
add esi, edi
call fcn.005dc190
push eax
mov ecx, esi
call fcn.005dc190
push eax
lea ecx, [ebp - 0x24]
call fcn.005dc200
push dword [ebp - 0x308]
lea ecx, [ebp - 0x24]
call fcn.005dc190
mov ecx, dword [ebp - 0x304]
push eax
call fcn.005548e0
test al, al
je 0x55a4b3
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x5c]
push 0
push 0
push 0
mov esi, dword [eax + 4]
lea eax, [ebp - 0x294]
push 0
push 0
push 0
push 0
push 0
push str.File_System
push eax
add esi, edi
call fcn.005dc190
push eax
mov ecx, esi
call fcn.005dc190
push eax
lea ecx, [ebp - 0x24]
call fcn.005dc200
push dword [ebp - 0x308]
lea ecx, [ebp - 0x24]
call fcn.005dc190
mov ecx, dword [ebp - 0x304]
push eax
call fcn.005548e0
test al, al
je 0x55a4b3
mov eax, dword [ebp - 0x70]
cmp eax, 0xffffffff
je 0x559c27
lea ecx, [ebp - 0x2c0]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
je 0x559c17
lea ecx, [ebp - 0x2c0]
call fcn.004011a0
test al, al
jne 0x559a80
jmp 0x559c27
test cl, 4
je 0x559a6f
test al, 0x10
jne 0x559a6f
lea eax, [ebp - 0x2c0]
push eax
push edx
call edi
test eax, eax
je 0x559c05
mov ecx, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x70]
jmp 0x559a16
push dword [ebp - 0x70]
call dword [sym.imp.KERNEL32.dll_FindClose]
mov dword [ebp - 0x70], 0xffffffff
jmp 0x559c2d
push dword [ebp - 0x70]
call dword [sym.imp.KERNEL32.dll_FindClose]
mov dword [ebp - 0x70], 0xffffffff
mov edi, dword [sym.imp.KERNEL32.dll_FindNextFileW]
mov eax, dword [ebp - 0x308]
cmp byte [eax + 0x11], 2
jne 0x559c43
mov ecx, 0x64ac00
call fcn.005cc330
mov eax, dword [ebp - 0x30c]
push 0
push 0
push 0
push 0
lea ecx, [eax + eax*2]
mov eax, dword [ebp - 0x18]
push 0
push 0
push 0
mov eax, dword [eax + 4]
push 0
push 0
push str.ShaderCache
lea esi, [eax + ecx*4]
lea ecx, [ebp - 0x50]
call fcn.005dc190
push eax
mov ecx, esi
call fcn.005dc190
push eax
lea ecx, [ebp - 0x24]
call fcn.005dc200
push dword [ebp - 0x308]
lea ecx, [ebp - 0x24]
call fcn.005dc190
mov ecx, dword [ebp - 0x304]
push eax
call fcn.005548e0
test al, al
je 0x55a4b3
mov eax, dword [ebp - 0x30c]
push 0
push 0
push 0
push 0
lea ecx, [eax + eax*2]
mov eax, dword [ebp - 0x18]
push 0
push 0
push 0
mov eax, dword [eax + 4]
push 0
push 0
push 0x624384
lea esi, [eax + ecx*4]
lea ecx, [ebp - 0x50]
call fcn.005dc190
push eax
mov ecx, esi
call fcn.005dc190
push eax
lea ecx, [ebp - 0x24]
call fcn.005dc200
lea ecx, [ebp - 0x24]
call fcn.005dc190
mov ecx, dword [ebp - 0x70]
mov esi, eax
cmp ecx, 0xffffffff
je 0x559d02
push ecx
call dword [sym.imp.KERNEL32.dll_FindClose]
lea eax, [ebp - 0x2c0]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov edx, eax
mov dword [ebp - 0x70], edx
cmp edx, 0xffffffff
je 0x559fa9
mov ecx, 5
mov dword [ebp - 0x6c], ecx
cmp word [ebp - 0x294], 0x2e
jne 0x559d54
mov ax, word [ebp - 0x292]
test ax, ax
je 0x559f56
cmp ax, 0x2e
jne 0x559d54
cmp word [ebp - 0x290], 0
je 0x559f56
test ecx, ecx
je 0x559d7f
mov eax, dword [ebp - 0x2c0]
test cl, 1
je 0x559d6e
test eax, 0x400
jne 0x559f56
test cl, 2
je 0x559f45
test al, 0x10
jne 0x559f56
mov eax, dword [ebp - 0x30c]
lea eax, [eax + eax*2]
shl eax, 2
mov dword [ebp - 0x2fc], eax
mov ecx, dword [ebp - 0x304]
push 0
push 1
call fcn.005494d0
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x50]
push 0
push 0
push 0
mov esi, dword [eax + 4]
lea eax, [ebp - 0x294]
add esi, dword [ebp - 0x2fc]
push 0
push 0
push 0
push 0
push 0
push str.Cache
push eax
call fcn.005dc190
push eax
mov ecx, esi
call fcn.005dc190
push eax
lea ecx, [ebp - 0x24]
call fcn.005dc200
push dword [ebp - 0x308]
lea ecx, [ebp - 0x24]
call fcn.005dc190
mov ecx, dword [ebp - 0x304]
push eax
call fcn.005548e0
test al, al
je 0x55a4b3
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x50]
push 0
push 0
push 0
mov esi, dword [eax + 4]
lea eax, [ebp - 0x294]
add esi, dword [ebp - 0x2fc]
push 0
push 0
push 0
push 0
push 0
push str.Code_Cache
push eax
call fcn.005dc190
push eax
mov ecx, esi
call fcn.005dc190
push eax
lea ecx, [ebp - 0x24]
call fcn.005dc200
push dword [ebp - 0x308]
lea ecx, [ebp - 0x24]
call fcn.005dc190
mov ecx, dword [ebp - 0x304]
push eax
call fcn.005548e0
test al, al
je 0x55a4b3
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x50]
push 0
push 0
push 0
mov esi, dword [eax + 4]
lea eax, [ebp - 0x294]
add esi, dword [ebp - 0x2fc]
push 0
push 0
push 0
push 0
push 0
push str.File_System
push eax
call fcn.005dc190
push eax
mov ecx, esi
call fcn.005dc190
push eax
lea ecx, [ebp - 0x24]
call fcn.005dc200
push dword [ebp - 0x308]
lea ecx, [ebp - 0x24]
call fcn.005dc190
mov ecx, dword [ebp - 0x304]
push eax
call fcn.005548e0
test al, al
je 0x55a4b3
mov eax, dword [ebp - 0x70]
cmp eax, 0xffffffff
je 0x559fa9
lea ecx, [ebp - 0x2c0]
push ecx
push eax
call edi
test eax, eax
je 0x559f99
mov edx, dword [ebp - 0x70]
cmp edx, 0xffffffff
je 0x559fa9
cmp word [ebp - 0x294], 0x2e
jne 0x559f19
mov ax, word [ebp - 0x292]
test ax, ax
je 0x559f83
cmp ax, 0x2e
jne 0x559f19
cmp word [ebp - 0x290], 0
je 0x559f83
mov eax, dword [ebp - 0x6c]
test eax, eax
je 0x559d91
mov ecx, dword [ebp - 0x2c0]
test al, 1
je 0x559f36
test ecx, 0x400
jne 0x559f83
test al, 2
je 0x559f6f
test cl, 0x10
je 0x559d91
jmp 0x559f83
test cl, 4
je 0x559d7f
test al, 0x10
jne 0x559d7f
lea eax, [ebp - 0x2c0]
push eax
push edx
call edi
test eax, eax
je 0x559f99
mov ecx, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x70]
jmp 0x559d26
test al, 4
je 0x559d91
test ecx, 0x10
jne 0x559d91
lea eax, [ebp - 0x2c0]
push eax
push edx
call edi
test eax, eax
je 0x559f99
mov edx, dword [ebp - 0x70]
jmp 0x559ef3
push dword [ebp - 0x70]
call dword [sym.imp.KERNEL32.dll_FindClose]
mov dword [ebp - 0x70], 0xffffffff
mov eax, dword [ebp - 0x308]
cmp byte [eax + 0x11], 2
jne 0x559fbf
mov ecx, str.firefox.exe
call fcn.005cc330
mov eax, dword [ebp - 0x30c]
push 0
push 0
push 0
push 0
lea ecx, [eax + eax*2]
mov eax, dword [ebp - 0x18]
push 0
push 0
push 0
mov eax, dword [eax + 4]
push 0
push 0
push 0x624384
lea esi, [eax + ecx*4]
lea ecx, [ebp - 0x38]
call fcn.005dc190
push eax
mov ecx, esi
call fcn.005dc190
push eax
lea ecx, [ebp - 0x24]
call fcn.005dc200
lea ecx, [ebp - 0x24]
call fcn.005dc190
mov ecx, dword [ebp - 0x70]
mov esi, eax
cmp ecx, 0xffffffff
je 0x55a01a
push ecx
call dword [sym.imp.KERNEL32.dll_FindClose]
lea eax, [ebp - 0x2c0]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov edx, eax
mov dword [ebp - 0x70], edx
cmp edx, 0xffffffff
je 0x55a2b2
mov ecx, 5
mov dword [ebp - 0x6c], ecx
nop
cmp word [ebp - 0x294], 0x2e
jne 0x55a06e
mov ax, word [ebp - 0x292]
test ax, ax
je 0x55a289
cmp ax, 0x2e
jne 0x55a06e
cmp word [ebp - 0x290], 0
je 0x55a289
test ecx, ecx
je 0x55a099
mov eax, dword [ebp - 0x2c0]
test cl, 1
je 0x55a088
test eax, 0x400
jne 0x55a289
test cl, 2
je 0x55a278
test al, 0x10
jne 0x55a289
mov eax, dword [ebp - 0x30c]
lea eax, [eax + eax*2]
shl eax, 2
mov dword [ebp - 0x2fc], eax
nop dword [eax + eax]
mov ecx, dword [ebp - 0x304]
push 0
push 1
call fcn.005494d0
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x38]
push 0
push 0
push 0
mov esi, dword [eax + 4]
lea eax, [ebp - 0x294]
add esi, dword [ebp - 0x2fc]
push 0
push 0
push 0
push 0
push 0
push str.Cache
push eax
call fcn.005dc190
push eax
mov ecx, esi
call fcn.005dc190
push eax
lea ecx, [ebp - 0x24]
call fcn.005dc200
push dword [ebp - 0x308]
lea ecx, [ebp - 0x24]
call fcn.005dc190
mov ecx, dword [ebp - 0x304]
push eax
call fcn.005548e0
test al, al
je 0x55a4b3
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x38]
push 0
push 0
push 0
mov esi, dword [eax + 4]
lea eax, [ebp - 0x294]
add esi, dword [ebp - 0x2fc]
push 0
push 0
push 0
push 0
push 0
push str.cache2
push eax
call fcn.005dc190
push eax
mov ecx, esi
call fcn.005dc190
push eax
lea ecx, [ebp - 0x24]
call fcn.005dc200
push dword [ebp - 0x308]
lea ecx, [ebp - 0x24]
call fcn.005dc190
mov ecx, dword [ebp - 0x304]
push eax
call fcn.005548e0
test al, al
je 0x55a4b3
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x38]
push 0
push 0
push 0
mov esi, dword [eax + 4]
lea eax, [ebp - 0x294]
add esi, dword [ebp - 0x2fc]
push 0
push 0
push 0
push 0
push 0
push str.OfflineCache
push eax
call fcn.005dc190
push eax
mov ecx, esi
call fcn.005dc190
push eax
lea ecx, [ebp - 0x24]
call fcn.005dc200
mov esi, dword [ebp - 0x308]
lea ecx, [ebp - 0x24]
push esi
call fcn.005dc190
mov ecx, dword [ebp - 0x304]
push eax
call fcn.005548e0
test al, al
je 0x55a4b3
mov eax, dword [ebp - 0x70]
cmp eax, 0xffffffff
je 0x55a2b8
ret
add byte [eax], al
invalid
lea ecx, [ebp - 0x2c0]
push ecx
push eax
call edi
test eax, eax
je 0x55a49e
mov edx, dword [ebp - 0x70]
cmp edx, 0xffffffff
je 0x55a2b8
cmp word [ebp - 0x294], 0x2e
jne 0x55a241
mov ax, word [ebp - 0x292]
test ax, ax
je 0x55a488
cmp ax, 0x2e
jne 0x55a241
cmp word [ebp - 0x290], 0
je 0x55a488
mov eax, dword [ebp - 0x6c]
test eax, eax
je 0x55a0b0
mov ecx, dword [ebp - 0x2c0]
test al, 1
je 0x55a262
test ecx, 0x400
jne 0x55a488
test al, 2
je 0x55a474
test cl, 0x10
je 0x55a0b0
jmp 0x55a488
test cl, 4
je 0x55a099
test al, 0x10
jne 0x55a099
lea eax, [ebp - 0x2c0]
push eax
push edx
call edi
test eax, eax
je 0x55a2a2
mov ecx, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x70]
jmp 0x55a040
push dword [ebp - 0x70]
call dword [sym.imp.KERNEL32.dll_FindClose]
mov dword [ebp - 0x70], 0xffffffff
mov esi, dword [ebp - 0x308]
mov ecx, dword [ebp - 0x30c]
mov eax, dword [ebp - 0x18]
inc ecx
mov dword [ebp - 0x30c], ecx
cmp ecx, dword [eax]
jb 0x5598b5
push ecx
push esi
push 1
call fcn.005547b0
lea ecx, [ebp - 0x38]
call fcn.005dc430
lea ecx, [ebp - 0x50]
call fcn.005dc430
lea ecx, [ebp - 0x5c]
call fcn.005dc430
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 2
call fcn.005dc430
cmp byte [esi + 0x11], 1
mov dword [esi + 0xc], 2
je 0x55a32b
mov edi, dword [ebp - 0x28]
push 0xf000
push 2
push 0x102c
push edi
call dword [sym.imp.USER32.dll_SendMessageW]
shr eax, 0xd
test al, 1
je 0x55a60a
push 0
mov edi, dword [ebp - 0x304]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.MicrosoftWindowsWERReportArchive
push ecx
mov ecx, edi
call fcn.0057c490
push eax
lea ecx, [ebp - 0x24]
call fcn.005dc200
push esi
lea ecx, [ebp - 0x24]
call fcn.005dc190
push eax
mov ecx, edi
call fcn.005548e0
test al, al
je 0x55a4d3
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.MicrosoftWindowsWERReportQueue
push ecx
mov ecx, edi
call fcn.0057c490
push eax
lea ecx, [ebp - 0x24]
call fcn.005dc200
push esi
lea ecx, [ebp - 0x24]
call fcn.005dc190
push eax
mov ecx, edi
call fcn.005548e0
test al, al
je 0x55a4d3
sub esp, 8
mov dword [ebp - 0x30], 0
xorps xmm0, xmm0
movq qword [ebp - 0x38], xmm0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.MicrosoftWindowsWERReportArchive
push ecx
mov ecx, edi
call fcn.0057c260
push eax
lea ecx, [ebp - 0x38]
call fcn.005dc520
sub esp, 8
mov byte [ebp - 4], 7
xorps xmm0, xmm0
mov dword [ebp - 0x3c], 0
movq qword [ebp - 0x44], xmm0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.MicrosoftWindowsWERReportQueue
push ecx
mov ecx, edi
call fcn.0057c260
push eax
lea ecx, [ebp - 0x44]
call fcn.005dc520
mov byte [ebp - 4], 8
mov ecx, dword [edi + 0x8c]
call fcn.005dc3a0
push eax
lea ecx, [ebp - 0x38]
call fcn.005dad50
mov ecx, dword [edi + 0x8c]
call fcn.005dc3a0
push eax
lea ecx, [ebp - 0x44]
call fcn.005dad50
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x2fc], 0
cmp dword [eax], 0
jbe 0x55a5ea
xor edi, edi
jmp 0x55a523
test al, 4
je 0x55a0b0
test ecx, 0x10
jne 0x55a0b0
lea eax, [ebp - 0x2c0]
push eax
push edx
call edi
test eax, eax
je 0x55a49e
mov edx, dword [ebp - 0x70]
jmp 0x55a213
push dword [ebp - 0x70]
call dword [sym.imp.KERNEL32.dll_FindClose]
mov dword [ebp - 0x70], 0xffffffff
jmp 0x55a2b8
lea ecx, [ebp - 0x38]
call fcn.005dc430
lea ecx, [ebp - 0x50]
call fcn.005dc430
lea ecx, [ebp - 0x5c]
call fcn.005dc430
lea ecx, [ebp - 0x44]
call fcn.005dc430
or esi, 0xffffffff
mov eax, dword [ebp - 0x70]
cmp eax, 0xffffffff
je 0x55a4e5
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
lea ecx, [ebp - 0x24]
call fcn.005dc430
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x55a4fc
push ecx
mov ecx, eax
call fcn.00402a20
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.0041e1b5
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4
mov eax, dword [ebp - 0x18]
mov esi, dword [eax + 4]
lea ecx, [ebp - 0x38]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
add esi, edi
call fcn.005dc190
push eax
mov ecx, esi
call fcn.005dc190
push eax
lea ecx, [ebp - 0x24]
call fcn.005dc200
push dword [ebp - 0x308]
lea ecx, [ebp - 0x24]
call fcn.005dc190
mov ecx, dword [ebp - 0x304]
push eax
call fcn.005548e0
test al, al
je 0x55a685
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x44]
push 0
push 0
push 0
mov esi, dword [eax + 4]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
add esi, edi
call fcn.005dc190
push eax
mov ecx, esi
call fcn.005dc190
push eax
lea ecx, [ebp - 0x24]
call fcn.005dc200
mov esi, dword [ebp - 0x308]
lea ecx, [ebp - 0x24]
push esi
call fcn.005dc190
mov ecx, dword [ebp - 0x304]
push eax
call fcn.005548e0
test al, al
je 0x55a685
mov eax, dword [ebp - 0x2fc]
add edi, 0xc
mov ecx, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x2fc], eax
cmp eax, dword [ecx]
jb 0x55a520
push ecx
push esi
push 2
call fcn.005547b0
lea ecx, [ebp - 0x44]
call fcn.005dc430
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 2
call fcn.005dc430
mov edi, dword [ebp - 0x28]
cmp byte [esi + 0x11], 1
mov dword [esi + 0xc], 3
je 0x55a631
push 0xf000
push 3
push 0x102c
push edi
call dword [sym.imp.USER32.dll_SendMessageW]
shr eax, 0xd
test al, 1
je 0x55a695
push 0
mov edi, dword [ebp - 0x304]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.SoftwareDistributionDownload
push ecx
mov ecx, edi
call fcn.0057c5d0
push eax
lea ecx, [ebp - 0x24]
call fcn.005dc200
push esi
lea ecx, [ebp - 0x24]
call fcn.005dc190
push eax
mov ecx, edi
call fcn.005548e0
test al, al
je 0x55a4d3
push ecx
push esi
push 3
call fcn.005547b0
jmp 0x55a69b
lea ecx, [ebp - 0x44]
call fcn.005dc430
lea ecx, [ebp - 0x38]
jmp 0x55a4ce
mov edi, dword [ebp - 0x304]
cmp byte [esi + 0x11], 1
mov dword [esi + 0xc], 4
je 0x55a6c8
push 0xf000
push 4
push 0x102c
push dword [ebp - 0x28]
call dword [sym.imp.USER32.dll_SendMessageW]
shr eax, 0xd
test al, 1
je 0x55a977
cmp byte [esi + 0x11], 2
jne 0x55a7c6
push 0x38
lea eax, [ebp - 0x2f8]
push 0
push eax
call fcn.00420090
add esp, 8
lea ecx, [ebp - 0x2f8]
push str.root_default
call fcn.005889d0
xorps xmm0, xmm0
xor esi, esi
movlpd qword [ebp - 0x300], xmm0
push str.SrClient.dll
mov dword [ebp - 0x2fc], esi
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov edi, eax
mov dword [ebp - 0x300], edi
test edi, edi
je 0x55a733
push str.SRRemoveRestorePoint
push edi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
mov dword [ebp - 0x2fc], esi
mov byte [ebp - 4], 0xa
test edi, edi
je 0x55a7b1
test esi, esi
je 0x55a7a6
push ecx
push str.SystemRestore
lea ecx, [ebp - 0x2f8]
call fcn.005886c0
test eax, eax
je 0x55a7a6
lea ecx, [ebp - 0x2f8]
call fcn.00588680
test eax, eax
je 0x55a7a6
nop word [eax + eax]
mov eax, dword [ebp - 0x308]
cmp byte [eax + 0x10], 0
jne 0x55a917
push str.SequenceNumber
lea ecx, [ebp - 0x2f8]
call fcn.00588310
test eax, eax
je 0x55a797
push eax
call esi
lea ecx, [ebp - 0x2f8]
call fcn.00588680
test eax, eax
jne 0x55a770
test edi, edi
je 0x55a7b1
push edi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
lea ecx, [ebp - 0x2f8]
mov byte [ebp - 4], 2
call fcn.00588a50
mov edi, dword [ebp - 0x304]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.System_Volume_Information
sub esp, 8
mov ecx, edi
call fcn.0057c4e0
add esp, 4
lea ecx, [ebp - 0x24]
push eax
call fcn.005dc200
lea ecx, [ebp - 0x24]
call fcn.005dc190
mov ecx, dword [ebp - 0x70]
mov esi, eax
cmp ecx, 0xffffffff
je 0x55a80e
push ecx
call dword [sym.imp.KERNEL32.dll_FindClose]
lea eax, [ebp - 0x2c0]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov edx, eax
mov dword [ebp - 0x70], edx
cmp edx, 0xffffffff
je 0x55a968
mov esi, dword [sym.imp.KERNEL32.dll_FindNextFileW]
mov ecx, 3
mov dword [ebp - 0x6c], ecx
nop dword [eax + eax]
cmp word [ebp - 0x294], 0x2e
jne 0x55a86e
mov ax, word [ebp - 0x292]
test ax, ax
je 0x55a93f
cmp ax, 0x2e
jne 0x55a86e
cmp word [ebp - 0x290], 0
je 0x55a93f
test ecx, ecx
je 0x55a8a0
mov eax, dword [ebp - 0x2c0]
test cl, 1
je 0x55a888
test eax, 0x400
jne 0x55a93f
test cl, 2
je 0x55a92e
test al, 0x10
jne 0x55a93f
nop dword [eax]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x294]
mov ecx, edi
push eax
push str.System_Volume_Information_
sub esp, 8
call fcn.0057c4e0
add esp, 4
lea ecx, [ebp - 0x24]
push eax
call fcn.005dc200
push dword [ebp - 0x308]
lea ecx, [ebp - 0x24]
call fcn.005dc190
push eax
call fcn.00554890
test al, al
je 0x55a4d3
mov eax, dword [ebp - 0x70]
cmp eax, 0xffffffff
je 0x55a968
lea ecx, [ebp - 0x2c0]
push ecx
push eax
call esi
test eax, eax
je 0x55a958
lea ecx, [ebp - 0x2c0]
call fcn.004011a0
test al, al
jne 0x55a8a0
jmp 0x55a968
push edi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
lea ecx, [ebp - 0x2f8]
call fcn.00588a50
jmp 0x55a4d3
test cl, 4
je 0x55a8a0
test al, 0x10
jne 0x55a8a0
lea eax, [ebp - 0x2c0]
push eax
push edx
call esi
test eax, eax
je 0x55a958
mov ecx, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x70]
jmp 0x55a840
push dword [ebp - 0x70]
call dword [sym.imp.KERNEL32.dll_FindClose]
mov dword [ebp - 0x70], 0xffffffff
mov esi, dword [ebp - 0x308]
push ecx
push esi
push 4
call fcn.005547b0
cmp byte [esi + 0x11], 1
mov dword [esi + 0xc], 5
je 0x55a9a0
push 0xf000
push 5
push 0x102c
push dword [ebp - 0x28]
call dword [sym.imp.USER32.dll_SendMessageW]
shr eax, 0xd
test al, 1
je 0x55a9f1
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.ESD
sub esp, 8
mov ecx, edi
call fcn.0057c4e0
add esp, 4
lea ecx, [ebp - 0x24]
push eax
call fcn.005dc200
push esi
lea ecx, [ebp - 0x24]
call fcn.005dc190
push eax
mov ecx, edi
call fcn.005548e0
test al, al
je 0x55a4d3
push ecx
push esi
push 5
call fcn.005547b0
cmp byte [esi + 0x11], 1
mov dword [esi + 0xc], 6
je 0x55aa1e
push 0xf000
push 6
push 0x102c
push dword [ebp - 0x28]
call dword [sym.imp.USER32.dll_SendMessageW]
shr eax, 0xd
test al, 1
je 0x55abae
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.Windows.old
sub esp, 8
mov ecx, edi
call fcn.0057c4e0
add esp, 4
lea ecx, [ebp - 0x24]
push eax
call fcn.005dc200
lea ecx, [ebp - 0x24]
call fcn.005dc190
mov ecx, dword [ebp - 0x70]
mov esi, eax
cmp ecx, 0xffffffff
je 0x55aa66
push ecx
call dword [sym.imp.KERNEL32.dll_FindClose]
lea eax, [ebp - 0x2c0]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov edx, eax
mov dword [ebp - 0x70], edx
cmp edx, 0xffffffff
je 0x55ab9f
mov esi, dword [sym.imp.KERNEL32.dll_FindNextFileW]
mov ecx, 5
mov dword [ebp - 0x6c], ecx
cmp word [ebp - 0x294], 0x2e
jne 0x55aabe
mov ax, word [ebp - 0x292]
test ax, ax
je 0x55ab76
cmp ax, 0x2e
jne 0x55aabe
cmp word [ebp - 0x290], 0
je 0x55ab76
test ecx, ecx
je 0x55aaf0
mov eax, dword [ebp - 0x2c0]
test cl, 1
je 0x55aad8
test eax, 0x400
jne 0x55ab76
test cl, 2
je 0x55ab69
test al, 0x10
jne 0x55ab76
nop dword [eax]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x294]
mov ecx, edi
push eax
push 0x624284
sub esp, 8
call fcn.0057c4e0
add esp, 4
lea ecx, [ebp - 0x24]
push eax
call fcn.005dc200
push dword [ebp - 0x308]
lea ecx, [ebp - 0x24]
call fcn.005dc190
push eax
mov ecx, edi
call fcn.005548e0
test al, al
je 0x55a4d3
mov eax, dword [ebp - 0x70]
cmp eax, 0xffffffff
je 0x55ab9f
lea ecx, [ebp - 0x2c0]
push ecx
push eax
call esi
test eax, eax
je 0x55ab8f
lea ecx, [ebp - 0x2c0]
call fcn.004011a0
test al, al
jne 0x55aaf0
jmp 0x55ab9f
test cl, 4
je 0x55aaf0
test al, 0x10
jne 0x55aaf0
lea eax, [ebp - 0x2c0]
push eax
push edx
call esi
test eax, eax
je 0x55ab8f
mov ecx, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x70]
jmp 0x55aa90
push dword [ebp - 0x70]
call dword [sym.imp.KERNEL32.dll_FindClose]
mov dword [ebp - 0x70], 0xffffffff
mov esi, dword [ebp - 0x308]
push ecx
push esi
push 6
call fcn.005547b0
cmp byte [esi + 0x11], 1
mov dword [esi + 0xc], 7
je 0x55abdb
push 0xf000
push 7
push 0x102c
push dword [ebp - 0x28]
call dword [sym.imp.USER32.dll_SendMessageW]
shr eax, 0xd
test al, 1
je 0x55ac99
cmp byte [esi + 0x11], 2
jne 0x55ac4a
push 0
push 0
push 1
lea eax, [ebp - 0x29]
mov byte [ebp - 0x29], 0
push eax
push 0xa
call dword [sym.imp.POWRPROF.dll_CallNtPowerInformation]
lea ecx, [ebp - 0x2fc]
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x2fc], 0
call fcn.005d6aa0
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0xb
push eax
push 4
push str.HibernateEnabled
push str.HKLMSYSTEMCurrentControlSetControlPower
lea ecx, [ebp - 0x2fc]
call fcn.005d5be0
push 7
call fcn.005536d0
lea ecx, [ebp - 0x2fc]
mov byte [ebp - 4], 2
call fcn.005d69e0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.hiberfil.sys
sub esp, 8
mov ecx, edi
call fcn.0057c4e0
add esp, 4
lea ecx, [ebp - 0x24]
push eax
call fcn.005dc200
push esi
lea ecx, [ebp - 0x24]
call fcn.005dc190
push eax
call fcn.00554890
test al, al
je 0x55a4d3
push ecx
push esi
push 7
call fcn.005547b0
mov dword [esi + 0xc], 8
mov esi, 1
jmp 0x55a4d6