Function at 0x506bf0
Capabilities:
Get file attributes
Set file attributes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x6eafbb
mov eax, dword fs:[0]
push eax
sub esp, 0x120
mov eax, dword [0x82f084]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov ebx, ecx
mov dword [ebp - 0x10c], ebx
mov esi, dword [ebp + 8]
xor ecx, ecx
mov edi, dword [ebp + 0x10]
mov dword [ebp - 0x12c], ebx
call fcn.005d4a60
test al, al
je 0x5085bb
mov ecx, esi
call fcn.005d50a0
test al, al
je 0x5085bb
mov ecx, dword [ebp + 0xc]
call fcn.005d53d0
test al, al
je 0x5085bb
xor eax, eax
lea ecx, [ebp - 0x90]
mov edx, esi
mov dword [ebp - 0x128], eax
mov dword [ebp - 4], eax
call fcn.005063d0
mov byte [ebp - 4], 1
cmp dword [ebp - 0x80], 0
push 0x856784
jne 0x506f77
mov edi, 4
call fcn.00681284
add esp, 4
test eax, eax
jne 0x5085de
push eax
push 0x762e6f
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], al
call fcn.00430160
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x78]
push 0
push 0x762e6f
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
call fcn.00430160
mov byte [ebp - 4], 3
mov edx, dword [ebx + 4]
mov ecx, edx
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x506d01
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x44]
call fcn.00430160
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 4
push eax
lea edx, [ebp - 0x78]
lea ecx, [ebp - 0x44]
call fcn.005fa030
add esp, 4
mov byte [ebp - 4], 3
mov edx, dword [ebp - 0x30]
test eax, eax
setne bl
cmp edx, 0x10
jb 0x506d67
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x506d5d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5085e4
push edx
push ecx
call fcn.0067d913
add esp, 8
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x64]
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
cmp edx, 0x10
jb 0x506db1
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x506da7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5085e4
push edx
push ecx
call fcn.0067d913
add esp, 8
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x506de9
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x506ddf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5085e4
push edx
push ecx
call fcn.0067d913
add esp, 8
test bl, bl
je 0x506f5d
push 0
push 0x762e6f
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00430160
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x78]
push 0
push 0x762e6f
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
call fcn.00430160
mov edx, dword [ebp - 0x10c]
mov byte [ebp - 4], 6
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov edx, dword [edx + 4]
mov ecx, edx
mov byte [ebp - 0x44], 0
lea esi, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x506e60
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x44]
call fcn.00430160
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 7
push eax
lea edx, [ebp - 0x78]
lea ecx, [ebp - 0x44]
call fcn.005fa030
add esp, 4
mov ecx, eax
mov eax, dword [ecx]
push str.SaveToVDIStorage
push str.Unable_to_retrieve_AppData_Roaming_Path_in__s
push 0x762e6f
push ecx
call dword [eax + 0x24]
mov byte [ebp - 4], 6
add esp, 0x10
mov edx, dword [ebp - 0x30]
cmp edx, 0x10
jb 0x506edb
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x506ed1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5085e9
push edx
push ecx
call fcn.0067d913
add esp, 8
mov byte [ebp - 4], 5
mov edx, dword [ebp - 0x64]
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
cmp edx, 0x10
jb 0x506f25
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x506f1b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5085e9
push edx
push ecx
call fcn.0067d913
add esp, 8
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x506f5d
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x506f53
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5085e9
push edx
push ecx
call fcn.0067d913
add esp, 8
push 0x856784
call fcn.006812a9
add esp, 4
test eax, eax
jne 0x5085ee
jmp 0x5083fa
call fcn.00681284
add esp, 4
test eax, eax
jne 0x5085f4
push eax
push 0x762e6f
lea ecx, [ebp - 0x108]
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0xf4], 0xf
mov byte [ebp - 0x108], al
call fcn.00430160
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x2c]
push 0
push 0x762e6f
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00430160
mov byte [ebp - 4], 9
mov edx, dword [ebx + 4]
mov ecx, edx
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov byte [ebp - 0xf0], 0
lea esi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x507000
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0xf0]
call fcn.00430160
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0xa
push eax
lea edx, [ebp - 0x2c]
lea ecx, [ebp - 0xf0]
call fcn.005fa030
add esp, 4
mov byte [ebp - 4], 9
mov edx, dword [ebp - 0xdc]
test eax, eax
setne bl
cmp edx, 0x10
jb 0x507075
mov ecx, dword [ebp - 0xf0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x50706b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5085fa
push edx
push ecx
call fcn.0067d913
add esp, 8
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0x18]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov byte [ebp - 0xf0], 0
cmp edx, 0x10
jb 0x5070c8
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5070be
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5085fa
push edx
push ecx
call fcn.0067d913
add esp, 8
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0xf4]
cmp edx, 0x10
jb 0x507106
mov ecx, dword [ebp - 0x108]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5070fc
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5085fa
push edx
push ecx
call fcn.0067d913
add esp, 8
test bl, bl
je 0x5072ba
push 0
push 0x762e6f
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00430160
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x108]
push 0
push 0x762e6f
mov dword [ebp - 0xf8], 0
mov dword [ebp - 0xf4], 0xf
mov byte [ebp - 0x108], 0
call fcn.00430160
mov ebx, dword [ebp - 0x10c]
mov byte [ebp - 4], 0xc
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov edx, dword [ebx + 4]
mov ecx, edx
mov byte [ebp - 0xf0], 0
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x507190
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0xf0]
call fcn.00430160
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0xd
push eax
lea edx, [ebp - 0x108]
lea ecx, [ebp - 0xf0]
call fcn.005fa030
add esp, 4
lea ecx, [ebp - 0x90]
cmp dword [ebp - 0x7c], 8
mov edx, eax
cmovae ecx, dword [ebp - 0x90]
push ecx
mov eax, dword [edx]
push str.SaveToVDIStorage
push str._s_:_Location_to_write_data_is__s
push edx
call dword [eax + 4]
mov byte [ebp - 4], 0xc
add esp, 0x10
mov edx, dword [ebp - 0xdc]
cmp edx, 0x10
jb 0x507227
mov ecx, dword [ebp - 0xf0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x50721d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5085ff
push edx
push ecx
call fcn.0067d913
add esp, 8
mov byte [ebp - 4], 0xb
mov edx, dword [ebp - 0xf4]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov byte [ebp - 0xf0], 0
cmp edx, 0x10
jb 0x507280
mov ecx, dword [ebp - 0x108]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x507276
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5085ff
push edx
push ecx
call fcn.0067d913
add esp, 8
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x5072c0
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5072ae
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5085ff
push edx
push ecx
call fcn.0067d913
add esp, 8
jmp 0x5072c0
mov ebx, dword [ebp - 0x10c]
push 0x856784
call fcn.006812a9
add esp, 4
test eax, eax
jne 0x508604
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], 7
mov word [ebp - 0x78], ax
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], al
mov byte [ebp - 4], 0xf
lea edx, [ebp - 0x78]
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x48], 2
call fcn.00557960
test eax, eax
je 0x507665
push 0x856784
mov edi, 4
call fcn.00681284
add esp, 4
test eax, eax
jne 0x50860a
push eax
push 0x762e6f
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], al
call fcn.00430160
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x108]
push 0
push 0x762e6f
mov dword [ebp - 0xf8], 0
mov dword [ebp - 0xf4], 0xf
mov byte [ebp - 0x108], 0
call fcn.00430160
mov byte [ebp - 4], 0x11
mov edx, dword [ebx + 4]
mov ecx, edx
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov byte [ebp - 0xf0], 0
lea esi, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5073a0
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0xf0]
call fcn.00430160
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x12
push eax
lea edx, [ebp - 0x108]
lea ecx, [ebp - 0xf0]
call fcn.005fa030
add esp, 4
mov byte [ebp - 4], 0x11
mov edx, dword [ebp - 0xdc]
test eax, eax
setne bl
cmp edx, 0x10
jb 0x507415
mov ecx, dword [ebp - 0xf0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x50740b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x508610
push edx
push ecx
call fcn.0067d913
add esp, 8
mov byte [ebp - 4], 0x10
mov edx, dword [ebp - 0xf4]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov byte [ebp - 0xf0], 0
cmp edx, 0x10
jb 0x50746e
mov ecx, dword [ebp - 0x108]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x507464
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x508610
push edx
push ecx
call fcn.0067d913
add esp, 8
mov byte [ebp - 4], 0xf
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x5074a6
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x50749c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x508610
push edx
push ecx
call fcn.0067d913
add esp, 8
test bl, bl
je 0x50764b
push 0
push 0x762e6f
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00430160
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x108]
push 0
push 0x762e6f
mov dword [ebp - 0xf8], 0
mov dword [ebp - 0xf4], 0xf
mov byte [ebp - 0x108], 0
call fcn.00430160
mov edx, dword [ebp - 0x10c]
mov byte [ebp - 4], 0x14
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov edx, dword [edx + 4]
mov ecx, edx
mov byte [ebp - 0xf0], 0
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x507530
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0xf0]
call fcn.00430160
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x15
push eax
lea edx, [ebp - 0x108]
lea ecx, [ebp - 0xf0]
call fcn.005fa030
add esp, 4
mov ecx, eax
mov eax, dword [ecx]
push str.SaveToVDIStorage
push str.Failed_in_fetching_encryption_key_in__s
push 0x762e6f
push ecx
call dword [eax + 0x24]
mov byte [ebp - 4], 0x14
add esp, 0x10
mov edx, dword [ebp - 0xdc]
cmp edx, 0x10
jb 0x5075ba
mov ecx, dword [ebp - 0xf0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5075b0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x508615
push edx
push ecx
call fcn.0067d913
add esp, 8
mov byte [ebp - 4], 0x13
mov edx, dword [ebp - 0xf4]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov byte [ebp - 0xf0], 0
cmp edx, 0x10
jb 0x507613
mov ecx, dword [ebp - 0x108]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x507609
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x508615
push edx
push ecx
call fcn.0067d913
add esp, 8
mov byte [ebp - 4], 0xf
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x50764b
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x507641
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x508615
push edx
push ecx
call fcn.0067d913
add esp, 8
push 0x856784
call fcn.006812a9
add esp, 4
test eax, eax
jne 0x50861a
jmp 0x5083ac
cmp dword [ebp - 0x64], 8
lea ecx, [ebp - 0x78]
lea edx, [ebp - 0x44]
cmovae ecx, dword [ebp - 0x78]
call fcn.0050cea0
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0xac], 0xf
mov byte [ebp - 0xc0], 0
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
mov byte [ebp - 4], 0x17
cmp dword [edi + 0x14], 8
jb 0x5076ba
mov edi, dword [edi]
lea edx, [ebp - 0xa8]
mov ecx, edi
call fcn.0050cea0
lea eax, [ebp - 0xc0]
push eax
lea edx, [ebp - 0xa8]
lea ecx, [ebp - 0x2c]
call fcn.00506620
add esp, 4
mov dword [ebp - 0xc8], 0
mov dword [ebp - 0xc4], 0xf
mov byte [ebp - 0xd8], 0
mov byte [ebp - 4], 0x19
cmp dword [ebp - 0x1c], 0
je 0x507f60
cmp dword [ebp - 0x34], 0
je 0x507f60
lea eax, [ebp - 0xd8]
push eax
lea edx, [ebp - 0x44]
lea ecx, [ebp - 0x2c]
call fcn.00521820
add esp, 4
test eax, eax
jne 0x507f60
cmp dword [ebp - 0xc4], 0x10
lea eax, [ebp - 0xd8]
push dword [ebp - 0xc8]
mov edi, dword [ebp - 0xd8]
cmovae eax, edi
push eax
lea eax, [ebp - 0x60]
push eax
call fcn.00556800
push 0x856784
mov byte [ebp - 4], 0x21
call fcn.00681284
add esp, 4
test eax, eax
jne 0x508620
push eax
push 0x762e6f
lea ecx, [ebp - 0x124]
mov dword [ebp - 0x114], eax
mov dword [ebp - 0x110], 0xf
mov byte [ebp - 0x124], al
call fcn.00430160
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x108]
push 0
push 0x762e6f
mov dword [ebp - 0xf8], 0
mov dword [ebp - 0xf4], 0xf
mov byte [ebp - 0x108], 0
call fcn.00430160
mov byte [ebp - 4], 0x23
mov edx, dword [ebx + 4]
mov ecx, edx
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov byte [ebp - 0xf0], 0
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5077f0
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0xf0]
call fcn.00430160
lea eax, [ebp - 0x124]
mov byte [ebp - 4], 0x24
push eax
lea edx, [ebp - 0x108]
lea ecx, [ebp - 0xf0]
call fcn.005fa030
add esp, 4
mov byte [ebp - 4], 0x23
mov edx, dword [ebp - 0xdc]
test eax, eax
setne bl
cmp edx, 0x10
jb 0x507868
mov ecx, dword [ebp - 0xf0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x50785e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x508626
push edx
push ecx
call fcn.0067d913
add esp, 8
mov byte [ebp - 4], 0x22
mov edx, dword [ebp - 0xf4]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov byte [ebp - 0xf0], 0
cmp edx, 0x10
jb 0x5078c1
mov ecx, dword [ebp - 0x108]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5078b7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x508626
push edx
push ecx
call fcn.0067d913
add esp, 8
mov byte [ebp - 4], 0x21
mov edx, dword [ebp - 0x110]
cmp edx, 0x10
jb 0x5078ff
mov ecx, dword [ebp - 0x124]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5078f5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x508626
push edx
push ecx
call fcn.0067d913
add esp, 8
test bl, bl
je 0x507acb
push 0
push 0x762e6f
lea ecx, [ebp - 0x108]
mov dword [ebp - 0xf8], 0
mov dword [ebp - 0xf4], 0xf
mov byte [ebp - 0x108], 0
call fcn.00430160
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x124]
push 0
push 0x762e6f
mov dword [ebp - 0x114], 0
mov dword [ebp - 0x110], 0xf
mov byte [ebp - 0x124], 0
call fcn.00430160
mov ebx, dword [ebp - 0x10c]
mov byte [ebp - 4], 0x26
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov edx, dword [ebx + 4]
mov ecx, edx
mov byte [ebp - 0xf0], 0
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x507992
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0xf0]
call fcn.00430160
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0x27
push eax
lea edx, [ebp - 0x124]
lea ecx, [ebp - 0xf0]
call fcn.005fa030
add esp, 4
lea edx, [ebp - 0x60]
cmp dword [ebp - 0x4c], 0x10
lea ecx, [ebp - 0x44]
mov esi, eax
cmovae edx, dword [ebp - 0x60]
cmp dword [ebp - 0x30], 0x10
push edx
cmovae ecx, dword [ebp - 0x44]
mov eax, dword [esi]
push ecx
push str.SaveToVDIStorage
push str._s_:_Encryption_key_used_is__s_to_encrypt__s
push esi
call dword [eax + 4]
mov byte [ebp - 4], 0x26
add esp, 0x14
mov edx, dword [ebp - 0xdc]
cmp edx, 0x10
jb 0x507a32
mov ecx, dword [ebp - 0xf0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x507a28
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x50862b
push edx
push ecx
call fcn.0067d913
add esp, 8
mov byte [ebp - 4], 0x25
mov edx, dword [ebp - 0x110]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov byte [ebp - 0xf0], 0
cmp edx, 0x10
jb 0x507a8b
mov ecx, dword [ebp - 0x124]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x507a81
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x50862b
push edx
push ecx
call fcn.0067d913
add esp, 8
mov byte [ebp - 4], 0x21
mov edx, dword [ebp - 0xf4]
cmp edx, 0x10
jb 0x507ad1
mov ecx, dword [ebp - 0x108]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x507abf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x50862b
push edx
push ecx
call fcn.0067d913
add esp, 8
jmp 0x507ad1
mov ebx, dword [ebp - 0x10c]
push 0x856784
call fcn.006812a9
add esp, 4
test eax, eax
jne 0x508630
call fcn.005f9e00
lea eax, [ebp - 0x90]
push eax
call fcn.005fd520
mov esi, dword [eax]
mov dword [ebp - 0x48], esi
mov byte [ebp - 4], 0x28
test esi, esi
je 0x507b0d
push 0xffffffffffffffff
push esi
call dword [sym.imp.KERNEL32.DLL_WaitForSingleObject]
cmp dword [ebp - 0x7c], 8
lea eax, [ebp - 0x90]
cmovae eax, dword [ebp - 0x90]
push eax
call dword [sym.imp.KERNEL32.DLL_GetFileAttributesW]
mov ecx, eax
test cl, 2
je 0x507b48
cmp dword [ebp - 0x7c], 8
lea eax, [ebp - 0x90]
cmovae eax, dword [ebp - 0x90]
and ecx, 0xfffffffd
push ecx
push eax
call dword [sym.imp.KERNEL32.DLL_SetFileAttributesW]
lea edx, [ebp - 0x60]
lea ecx, [ebp - 0x90]
call fcn.0051a960
test al, al
jne 0x507ee1
push 0x856784
mov dword [ebp - 0x128], 4
call fcn.00681284
add esp, 4
test eax, eax
jne 0x508636
push eax
push 0x762e6f
lea ecx, [ebp - 0x108]
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0xf4], 0xf
mov byte [ebp - 0x108], al
call fcn.00430160
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0x124]
push 0
push 0x762e6f
mov dword [ebp - 0x114], 0
mov dword [ebp - 0x110], 0xf
mov byte [ebp - 0x124], 0
call fcn.00430160
mov byte [ebp - 4], 0x2a
mov edx, dword [ebx + 4]
mov ecx, edx
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov byte [ebp - 0xf0], 0
lea edi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x507c00
sub ecx, edi
push ecx
push edx
lea ecx, [ebp - 0xf0]
call fcn.00430160
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0x2b
push eax
lea edx, [ebp - 0x124]
lea ecx, [ebp - 0xf0]
call fcn.005fa030
add esp, 4
mov byte [ebp - 4], 0x2a
mov edx, dword [ebp - 0xdc]
test eax, eax
setne bl
cmp edx, 0x10
jb 0x507c78
mov ecx, dword [ebp - 0xf0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x507c6e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x50863c
push edx
push ecx
call fcn.0067d913
add esp, 8
mov byte [ebp - 4], 0x29
mov edx, dword [ebp - 0x110]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov byte [ebp - 0xf0], 0
cmp edx, 0x10
jb 0x507cd1
mov ecx, dword [ebp - 0x124]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x507cc7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x50863c
push edx
push ecx
call fcn.0067d913
add esp, 8
mov byte [ebp - 4], 0x28
mov edx, dword [ebp - 0xf4]
cmp edx, 0x10
jb 0x507d0f
mov ecx, dword [ebp - 0x108]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x507d05
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x50863c
push edx
push ecx
call fcn.0067d913
add esp, 8
test bl, bl
je 0x507ec6
push 0
push 0x762e6f
lea ecx, [ebp - 0x108]
mov dword [ebp - 0xf8], 0
mov dword [ebp - 0xf4], 0xf
mov byte [ebp - 0x108], 0
call fcn.00430160
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x124]
push 0
push 0x762e6f
mov dword [ebp - 0x114], 0
mov dword [ebp - 0x110], 0xf
mov byte [ebp - 0x124], 0
call fcn.00430160
mov edx, dword [ebp - 0x10c]
mov byte [ebp - 4], 0x2d
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov edx, dword [edx + 4]
mov ecx, edx
mov byte [ebp - 0xf0], 0
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x507da2
sub ecx, edi
push ecx
push edx
lea ecx, [ebp - 0xf0]
call fcn.00430160
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0x2e
push eax
lea edx, [ebp - 0x124]
lea ecx, [ebp - 0xf0]
call fcn.005fa030
add esp, 4
mov ecx, eax
mov eax, dword [ecx]
push str.SaveToVDIStorage
push str.Failed_in_writing_content_to_file_in__s
push 0x762e6f
push ecx
call dword [eax + 0x24]
mov byte [ebp - 4], 0x2d
add esp, 0x10
mov edx, dword [ebp - 0xdc]
cmp edx, 0x10
jb 0x507e2f
mov ecx, dword [ebp - 0xf0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x507e25
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x508641
push edx
push ecx
call fcn.0067d913
add esp, 8
mov byte [ebp - 4], 0x2c
mov edx, dword [ebp - 0x110]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov byte [ebp - 0xf0], 0
cmp edx, 0x10
jb 0x507e88
mov ecx, dword [ebp - 0x124]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x507e7e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x508641
push edx
push ecx
call fcn.0067d913
add esp, 8
mov byte [ebp - 4], 0x28
mov edx, dword [ebp - 0xf4]
cmp edx, 0x10
jb 0x507ec6
mov ecx, dword [ebp - 0x108]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x507ebc
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x508641
push edx
push ecx
call fcn.0067d913
add esp, 8
push 0x856784
call fcn.006812a9
add esp, 4
test eax, eax
jne 0x508646
mov edi, dword [ebp - 0xd8]
cmp dword [ebp - 0x7c], 8
lea eax, [ebp - 0x90]
cmovae eax, dword [ebp - 0x90]
push eax
call dword [sym.imp.KERNEL32.DLL_GetFileAttributesW]
mov ecx, eax
test cl, 2
jne 0x507f1c
cmp dword [ebp - 0x7c], 8
lea eax, [ebp - 0x90]
cmovae eax, dword [ebp - 0x90]
or ecx, 2
push ecx
push eax
call dword [sym.imp.KERNEL32.DLL_SetFileAttributesW]
push esi
call dword [sym.imp.KERNEL32.DLL_ReleaseMutex]
mov edx, dword [ebp - 0x4c]
cmp edx, 0x10
jb 0x5082b6
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x507f51
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x50864c
push edx
push ecx
call fcn.0067d913
add esp, 8
jmp 0x5082b6
push 0x856784
mov dword [ebp - 0x128], 4
call fcn.00681284
add esp, 4
test eax, eax
jne 0x508651
push eax
push 0x762e6f
lea ecx, [ebp - 0x124]
mov dword [ebp - 0x114], eax
mov dword [ebp - 0x110], 0xf
mov byte [ebp - 0x124], al
call fcn.00430160
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x60]
push 0
push 0x762e6f
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
call fcn.00430160
mov byte [ebp - 4], 0x1c
mov edx, dword [ebx + 4]
mov ecx, edx
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov byte [ebp - 0xf0], 0
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x507ff2
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0xf0]
call fcn.00430160
lea eax, [ebp - 0x124]
mov byte [ebp - 4], 0x1d
push eax
lea edx, [ebp - 0x60]
lea ecx, [ebp - 0xf0]
call fcn.005fa030
add esp, 4
mov byte [ebp - 4], 0x1c
mov edx, dword [ebp - 0xdc]
test eax, eax
setne bl
cmp edx, 0x10
jb 0x508067
mov ecx, dword [ebp - 0xf0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x50805d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x508657
push edx
push ecx
call fcn.0067d913
add esp, 8
mov byte [ebp - 4], 0x1b
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov byte [ebp - 0xf0], 0
cmp edx, 0x10
jb 0x5080ba
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5080b0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x508657
push edx
push ecx
call fcn.0067d913
add esp, 8
mov byte [ebp - 4], 0x19
mov edx, dword [ebp - 0x110]
cmp edx, 0x10
jb 0x5080f8
mov ecx, dword [ebp - 0x124]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5080ee
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x508657
push edx
push ecx
call fcn.0067d913
add esp, 8
test bl, bl
je 0x50829b
push 0
push 0x762e6f
lea ecx, [ebp - 0x124]
mov dword [ebp - 0x114], 0
mov dword [ebp - 0x110], 0xf
mov byte [ebp - 0x124], 0
call fcn.00430160
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x60]
push 0
push 0x762e6f
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
call fcn.00430160
mov edx, dword [ebp - 0x10c]
mov byte [ebp - 4], 0x1f
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov edx, dword [edx + 4]
mov ecx, edx
mov byte [ebp - 0xf0], 0
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x508180
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0xf0]
call fcn.00430160
lea eax, [ebp - 0x124]
mov byte [ebp - 4], 0x20
push eax
lea edx, [ebp - 0x60]
lea ecx, [ebp - 0xf0]
call fcn.005fa030
add esp, 4
mov ecx, eax
mov eax, dword [ecx]
push str.SaveToVDIStorage
push str.Error_in_encrypting_data__s
push 0x762e6f
push ecx
call dword [eax + 0x24]
mov byte [ebp - 4], 0x1f
add esp, 0x10
mov edx, dword [ebp - 0xdc]
cmp edx, 0x10
jb 0x50820a
mov ecx, dword [ebp - 0xf0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x508200
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x50865c
push edx
push ecx
call fcn.0067d913
add esp, 8
mov byte [ebp - 4], 0x1e
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov byte [ebp - 0xf0], 0
cmp edx, 0x10
jb 0x50825d
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x508253
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x50865c
push edx
push ecx
call fcn.0067d913
add esp, 8
mov byte [ebp - 4], 0x19
mov edx, dword [ebp - 0x110]
cmp edx, 0x10
jb 0x50829b
mov ecx, dword [ebp - 0x124]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x508291
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x50865c
push edx
push ecx
call fcn.0067d913
add esp, 8
push 0x856784
call fcn.006812a9
add esp, 4
test eax, eax
jne 0x508661
mov edi, dword [ebp - 0xd8]
mov eax, dword [ebp - 0xc4]
cmp eax, 0x10
jb 0x5082ec
lea ecx, [eax + 1]
mov eax, edi
cmp ecx, 0x1000
jb 0x5082e2
mov edi, dword [edi - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x508667
push ecx
push edi
call fcn.0067d913
add esp, 8
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x508320
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x508316
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x508667
push edx
push ecx
call fcn.0067d913
add esp, 8
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
cmp edx, 0x10
jb 0x50836c
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x508362
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x508667
push edx
push ecx
call fcn.0067d913
add esp, 8
mov edx, dword [ebp - 0xac]
cmp edx, 0x10
jb 0x5083a6
mov ecx, dword [ebp - 0xc0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x50839c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x508667
push edx
push ecx
call fcn.0067d913
add esp, 8
mov edi, dword [ebp - 0x128]
mov edx, dword [ebp - 0x30]
cmp edx, 0x10
jb 0x5083e0
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5083d6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x50866c
push edx
push ecx
call fcn.0067d913
add esp, 8
lea ecx, [ebp - 0x78]
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
call fcn.0042fd70
lea ecx, [ebp - 0x90]
call fcn.0042fd70
mov eax, edi
jmp 0x5085c0
mov eax, 5
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0067d681
mov esp, ebp
pop ebp
ret 0x14
push eax
call fcn.00681576
call fcn.00692c95
call fcn.00692c95
push eax
call fcn.00681576
push eax
call fcn.00681576
call fcn.00692c95
call fcn.00692c95
push eax
call fcn.00681576
push eax
call fcn.00681576
call fcn.00692c95
call fcn.00692c95
push eax
call fcn.00681576
push eax
call fcn.00681576
call fcn.00692c95
call fcn.00692c95
push eax
call fcn.00681576
push eax
call fcn.00681576
call fcn.00692c95
call fcn.00692c95
push eax
call fcn.00681576
call fcn.00692c95
push eax
call fcn.00681576
call fcn.00692c95
call fcn.00692c95
push eax
call fcn.00681576
call fcn.00692c95
call fcn.00692c95
int3