Function at 0x12e074e0
Capabilities:
Check for time delay via gettickcount
Check if file exists
Delete file
Get file attributes
Set file attributes

Disassembly:
push 0xffffffffffffffff
push 0x1305bc88
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x90
mov eax, dword [esp + 0xa8]
push ebx
push ebp
push esi
mov esi, dword [esp + 0xac]
xor ebx, ebx
push edi
mov ecx, esi
mov dword [eax], ebx
call fcn.12e02880
mov ebp, eax
mov ecx, esi
mov dword [esp + 0x10], ebp
call fcn.12e029e0
mov edi, eax
mov eax, dword [0x13198f68]
cmp eax, ebx
mov dword [esp + 0x2c], edi
je 0x12e07575
cmp edi, ebx
mov dword [esp + 0x34], edi
jne 0x12e07544
mov dword [esp + 0x34], 0x130c8c0c
cmp ebp, ebx
mov ebx, ebp
jne 0x12e0754f
mov ebx, 0x130c8c0c
mov ecx, esi
call fcn.12e022d0
mov ecx, dword [esp + 0x34]
push eax
push ecx
push ebx
push edi
push ebp
push str.DoEncrypt__________08x__08x____s____s____08x_
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x20
xor ebx, ebx
cmp ebp, ebx
je 0x12e0822f
cmp edi, ebx
je 0x12e0822f
lea ecx, [esp + 0x58]
call fcn.12e5c130
push edi
push ebx
mov dword [esp + 0xb0], ebx
push ebp
mov dword [esp + 0x48], ebx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x44], 1
mov dword [esp + 0x24], ebx
call fcn.12da3d00
mov edi, eax
mov eax, dword [0x13198f68]
add esp, 0xc
cmp eax, ebx
je 0x12e075d4
push edi
push str.DoEncrypt_1___d_
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x10
cmp edi, ebx
jbe 0x12e07622
xor edx, edx
cmp edi, 1
sete dl
mov edi, edx
mov ecx, esi
mov dword [esp + 0x3c], 1
mov dword [esp + 0x1c], edi
call fcn.12e022d0
cmp eax, 2
jne 0x12e075fe
mov dword [esp + 0x38], ebx
cmp dword [0x13198f68], ebx
je 0x12e07622
mov eax, dword [esp + 0x38]
push eax
push edi
push 1
push str.DoEncrypt_2___d__d__d_
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x18
push ebx
mov ecx, esi
mov dword [esp + 0x54], ebx
mov dword [esp + 0x18], 6
mov dword [esp + 0x34], ebx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x24], ebx
call fcn.12e029e0
push eax
mov ecx, 0x131c4678
call fcn.12f14bc0
mov edi, eax
mov ecx, 0x131c4678
mov dword [esp + 0x40], edi
call fcn.12f14ba0
test eax, eax
jne 0x12e0768a
cmp edi, ebx
jne 0x12e0768a
cmp dword [0x13198f68], ebx
je 0x12e077b4
push str.DoEncrypt_6
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0xc
jmp 0x12e077b4
cmp dword [0x13198f68], ebx
je 0x12e076a6
push str.DoEncrypt_3
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0xc
mov ecx, esi
call fcn.12e029b0
mov ecx, esi
mov di, ax
call fcn.12e02850
cmp ax, di
je 0x12e07968
push ebx
push ebx
lea ecx, [esp + 0x38]
push ebx
lea edx, [esp + 0x58]
push ecx
push edx
mov ecx, esi
mov dword [esp + 0x60], ebx
mov dword [esp + 0x5c], ebx
call fcn.12e02880
push eax
mov ecx, 0x131c4678
call fcn.12f14950
mov edi, eax
push ebx
push ebx
lea eax, [esp + 0x30]
push ebx
lea ecx, [esp + 0x54]
push eax
push ecx
mov ecx, esi
mov dword [esp + 0x68], edi
call fcn.12e029e0
push eax
mov ecx, 0x131c4678
call fcn.12f14950
cmp edi, ebx
mov dword [esp + 0x60], eax
je 0x12e07722
test byte [esp + 0x4c], 4
je 0x12e07722
mov ebp, 1
jmp 0x12e07724
xor ebp, ebp
cmp eax, ebx
mov dword [esp + 0x34], ebp
je 0x12e0773a
test byte [esp + 0x48], 8
je 0x12e0773a
mov edi, 1
jmp 0x12e0773c
xor edi, edi
mov dword [esp + 0x44], edi
call fcn.12e754e0
mov ebx, eax
call fcn.12e754f0
test ebp, ebp
mov dword [esp + 0x24], eax
jne 0x12e07760
test edi, edi
jne 0x12e07760
mov ecx, dword [esp + 0x40]
test ecx, ecx
je 0x12e07768
mov dword [esp + 0x50], 1
mov ecx, dword [0x13198f68]
test ecx, ecx
je 0x12e077a8
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x50]
push edx
mov edx, dword [esp + 0x64]
push ecx
mov ecx, dword [esp + 0x5c]
push eax
mov eax, dword [esp + 0x54]
push ebx
push edi
push edx
mov edx, dword [esp + 0x64]
push eax
push ebp
push ecx
push edx
push str.DoEncrypt_4___08x__08x__08x____08x__08x__08x____08x__08x____08x___bEncryptVol_:__d_
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x34
mov eax, dword [esp + 0x50]
test eax, eax
jne 0x12e079bf
mov eax, dword [0x13198f68]
test eax, eax
je 0x12e077d1
push str.DoEncrypt_7
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0xc
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x12e0799e
mov eax, dword [esp + 0xc0]
mov ecx, dword [esp + 0xbc]
push eax
push ecx
push 0
mov ecx, esi
call fcn.12e02420
push 0
push eax
lea ecx, [esp + 0x74]
call fcn.12e64ea0
mov eax, dword [0x131a8f5c]
mov byte [esp + 0xa8], 1
test eax, eax
je 0x12e07855
push 0
mov ecx, esi
call fcn.12e02420
cmp eax, 0x1400000
jbe 0x12e07855
mov eax, dword [0x13198f68]
test eax, eax
je 0x12e0784a
push 0
mov ecx, esi
call fcn.12e02420
push eax
push str.DoEncrypt_sleep__size_:__d_
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x10
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0
push 0
lea ecx, [esp + 0x6c]
call fcn.12e64f50
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call edi
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x38]
mov ebx, eax
lea eax, [esp + 0x18]
push edx
push eax
push ecx
mov ecx, esi
call fcn.12e029e0
push eax
mov ecx, esi
call fcn.12e02880
push eax
call fcn.12da3cb0
mov ebp, eax
add esp, 0x14
test ebp, ebp
jne 0x12e078a8
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, dword [esp + 0xb4]
mov dword [edx], eax
call edi
push 0
push 0
mov ecx, esi
mov edi, eax
call fcn.12e02420
push eax
lea ecx, [esp + 0x6c]
call fcn.12e64f50
mov eax, dword [0x13198f68]
test eax, eax
je 0x12e078ff
push 0
mov ecx, esi
call fcn.12e02880
push eax
call fcn.12f801f0
mov ecx, dword [esp + 0x20]
add esp, 8
sub edi, ebx
push eax
mov eax, dword [esp + 0x20]
push edi
push eax
push ebp
push ecx
push str.DoEncrypt_8___d____d__d___tick_:__d___fizesize_:__d_
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x20
mov eax, dword [esp + 0x18]
test eax, eax
je 0x12e0798d
test ebp, ebp
jne 0x12e0791c
mov edx, dword [esp + 0xb8]
mov dword [edx], 1
mov eax, dword [0x13198f68]
test eax, eax
je 0x12e07952
test ebp, ebp
mov eax, 0x130e2604
jne 0x12e07933
mov eax, 0x130e25f8
mov ecx, dword [esp + 0x10]
push eax
mov eax, dword [esp + 0x30]
push eax
push ecx
push str.DoEncrypt____ret2___08x__08x____s_
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x18
lea ecx, [esp + 0x64]
mov byte [esp + 0xa8], 0
call fcn.12e64ed0
jmp 0x12e0814f
cmp dword [0x13198f68], ebx
je 0x12e077b4
push str.DoEncrypt_5
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0xc
jmp 0x12e077b4
lea ecx, [esp + 0x64]
mov byte [esp + 0xa8], 0
call fcn.12e64ed0
mov eax, dword [0x13198f68]
test eax, eax
je 0x12e08219
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x10]
push edx
push eax
push str.DoEncrypt____ret7___08x__08x_
jmp 0x12e0820a
mov eax, dword [0x13198f68]
test eax, eax
je 0x12e079e8
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x3c]
push edi
push ebp
push ecx
push edx
push str.DoEncrypt_9___d__d____d__d_
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x1c
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x12e07b71
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x12e07b71
mov eax, dword [esp + 0xc0]
mov ecx, dword [esp + 0xbc]
push eax
push ecx
push 0
mov ecx, esi
call fcn.12e02420
push 0
push eax
lea ecx, [esp + 0x74]
call fcn.12e64ea0
mov eax, dword [0x131a8f5c]
mov byte [esp + 0xa8], 2
test eax, eax
je 0x12e07a78
push 0
mov ecx, esi
call fcn.12e02420
cmp eax, 0x1400000
jbe 0x12e07a78
mov eax, dword [0x13198f68]
test eax, eax
je 0x12e07a6d
push 0
mov ecx, esi
call fcn.12e02420
push eax
push str.DoEncrypt_sleep__size_:__d_
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x10
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call edi
push 0
push 0
lea ecx, [esp + 0x6c]
mov dword [esp + 0x5c], eax
call fcn.12e64f50
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x38]
lea eax, [esp + 0x18]
push edx
push eax
push ecx
mov ecx, esi
call fcn.12e029e0
push eax
mov ecx, esi
call fcn.12e02880
push eax
call fcn.12da3cb0
mov ebp, eax
add esp, 0x14
test ebp, ebp
jne 0x12e07acd
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, dword [esp + 0xb4]
mov dword [edx], eax
call edi
push 0
push 0
mov ecx, esi
mov edi, eax
call fcn.12e02420
push eax
lea ecx, [esp + 0x6c]
call fcn.12e64f50
mov eax, dword [0x13198f68]
test eax, eax
je 0x12e07b28
push 0
mov ecx, esi
call fcn.12e02880
push eax
call fcn.12f801f0
mov ecx, dword [esp + 0x5c]
add esp, 8
sub edi, ecx
mov ecx, dword [esp + 0x18]
push eax
mov eax, dword [esp + 0x20]
push edi
push eax
push ebp
push ecx
push str.DoEncrypt_10___d____d__d___tick_:__d___size_:__d_
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x20
mov eax, dword [esp + 0x18]
test eax, eax
je 0x12e07b60
test ebp, ebp
je 0x12e07c76
mov ecx, esi
call fcn.12e029e0
mov dword [esp + 0x10], eax
mov eax, dword [0x13198f68]
test eax, eax
je 0x12e07b60
push str.DoEncrypt_11_______
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0xc
lea ecx, [esp + 0x64]
mov byte [esp + 0xa8], 0
call fcn.12e64ed0
mov eax, dword [esp + 0x34]
xor ebp, ebp
xor edi, edi
cmp eax, ebp
mov dword [esp + 0x40], ebp
jne 0x12e07b87
cmp dword [esp + 0x44], ebp
je 0x12e07bb4
mov ecx, dword [esp + 0x10]
push ecx
call fcn.12e072b0
mov edi, eax
add esp, 4
test edi, edi
jne 0x12e07bb4
mov edx, dword [esp + 0x10]
push edx
call fcn.12da42f0
add esp, 4
mov dword [esp + 0x40], eax
test eax, eax
jbe 0x12e07bb4
mov ebp, 1
mov eax, dword [0x13198f68]
test eax, eax
je 0x12e07bdf
mov eax, dword [esp + 0x40]
mov ecx, dword [0x131a8f50]
push eax
push ecx
push ebp
push edi
push str.DoEncrypt__bDntEncryptFIle_:__d___bTsafedocFile_:__d___g_dwUdiskEncryptMode_:__d___dwEncryptFileType_:__d_
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x1c
mov eax, dword [esp + 0x34]
test eax, eax
mov eax, dword [esp + 0x44]
je 0x12e07d12
test eax, eax
mov eax, dword [0x13198f68]
jne 0x12e07dc5
test eax, eax
je 0x12e07c14
push str.DoEncrypt_12
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0xc
mov eax, dword [0x131a8f50]
test eax, eax
jne 0x12e07cb3
test edi, edi
je 0x12e07ec9
mov edx, dword [esp + 0xc0]
mov eax, dword [esp + 0xbc]
mov ecx, dword [esp + 0x24]
push edx
mov edx, dword [esp + 0x34]
push eax
push ecx
push ebx
push edx
mov ecx, esi
call fcn.12e029e0
push eax
mov eax, dword [esp + 0x28]
push eax
call fcn.12e089c0
mov ecx, dword [0x13198f68]
add esp, 0x1c
test ecx, ecx
mov dword [esp + 0x14], eax
je 0x12e07e3c
push eax
push str.DoEncrypt_13___08x_
jmp 0x12e07e2d
mov eax, dword [0x13198f68]
test eax, eax
je 0x12e07c9d
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x10]
push edx
push eax
push str.DoEncrypt____ret3___08x__08x_
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x14
lea ecx, [esp + 0x64]
mov byte [esp + 0xa8], 0
call fcn.12e64ed0
jmp 0x12e0814f
mov ecx, dword [esp + 0xc0]
mov edx, dword [esp + 0xbc]
mov eax, dword [esp + 0x24]
push ecx
mov ecx, dword [esp + 0x34]
push edx
mov edx, dword [esp + 0x18]
push eax
push ebx
push ecx
push edx
lea eax, [esp + 0x38]
push esi
push eax
push ebp
push edi
call fcn.12e09e10
mov dword [esp + 0x3c], eax
mov eax, dword [0x13198f68]
add esp, 0x28
test eax, eax
je 0x12e07ec9
mov ecx, dword [esp + 0x14]
push ecx
push str.DoEncrypt_14___08x_
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x10
jmp 0x12e07ec9
test eax, eax
je 0x12e07ec9
mov eax, dword [0x13198f68]
test eax, eax
je 0x12e07d37
push str.DoEncrypt_15
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0xc
mov eax, dword [0x131a8f50]
test eax, eax
jne 0x12e07d95
test edi, edi
jne 0x12e07ec9
mov edx, dword [esp + 0xc0]
mov eax, dword [esp + 0xbc]
mov ecx, dword [esp + 0x24]
push edx
mov edx, dword [esp + 0x2c]
push eax
push ecx
push ebx
push edx
mov ecx, esi
call fcn.12e029e0
push eax
mov eax, dword [esp + 0x28]
push eax
call fcn.12e08270
mov ecx, dword [0x13198f68]
add esp, 0x1c
test ecx, ecx
mov dword [esp + 0x14], eax
je 0x12e07e3c
push eax
push str.DoEncrypt_16___08x_
jmp 0x12e07e2d
mov ecx, dword [esp + 0xc0]
mov edx, dword [esp + 0xbc]
mov eax, dword [esp + 0x24]
push ecx
mov ecx, dword [esp + 0x2c]
push edx
mov edx, dword [esp + 0x38]
push eax
mov eax, dword [esp + 0x1c]
push ebx
push ecx
push edx
push eax
lea ecx, [esp + 0x3c]
push esi
push ecx
jmp 0x12e07ebb
test eax, eax
je 0x12e07ddd
push str.DoEncrypt_17
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0xc
cmp dword [0x131a8f50], 1
jne 0x12e07e90
mov edi, dword [esp + 0x10]
push edi
call fcn.12e072b0
add esp, 4
test eax, eax
jne 0x12e07e49
mov edx, dword [esp + 0x24]
push eax
push eax
mov eax, dword [esp + 0x30]
push edx
push ebx
push eax
mov ecx, esi
call fcn.12e029e0
push eax
push edi
call fcn.12e08270
mov ecx, dword [0x13198f68]
add esp, 0x1c
test ecx, ecx
mov dword [esp + 0x14], eax
je 0x12e07e3c
push eax
push str.DoEncrypt_18___08x_
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x10
mov dword [esp + 0x20], 1
jmp 0x12e07ec9
mov ecx, dword [esp + 0xc0]
mov edx, dword [esp + 0xbc]
mov eax, dword [esp + 0x24]
push ecx
mov ecx, dword [esp + 0x2c]
push edx
mov edx, dword [esp + 0x38]
push eax
push ebx
push ecx
push edx
mov ecx, esi
call fcn.12e029e0
push eax
push edi
call fcn.12e08fb0
mov ecx, dword [0x13198f68]
add esp, 0x20
test ecx, ecx
mov dword [esp + 0x14], eax
je 0x12e07e3c
push eax
push str.DoEncrypt_19___08x_
jmp 0x12e07e2d
mov eax, dword [esp + 0xc0]
mov ecx, dword [esp + 0xbc]
mov edx, dword [esp + 0x24]
push eax
mov eax, dword [esp + 0x2c]
push ecx
mov ecx, dword [esp + 0x38]
push edx
mov edx, dword [esp + 0x1c]
push ebx
push eax
push ecx
push edx
lea eax, [esp + 0x3c]
push esi
push eax
push ebp
push edi
call fcn.12e09be0
add esp, 0x2c
mov dword [esp + 0x14], eax
mov eax, dword [0x130cf418]
test eax, eax
je 0x12e07f57
push 0
mov ecx, esi
call fcn.12e029e0
push eax
mov ecx, 0x131c4678
call fcn.12f14bc0
test eax, eax
je 0x12e07f57
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x12e07f57
mov eax, dword [0x13198f68]
test eax, eax
je 0x12e07f13
push str.DoEncrypt_TReadWriteFile
push str.DoEncrypt
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0xc
mov ebx, dword [esp + 0x10]
test ebx, ebx
je 0x12e07f5b
mov ecx, esi
call fcn.12e029e0
test eax, eax
je 0x12e07f5b
mov ecx, esi
call fcn.12e029e0
push eax
push ebx
call fcn.12f5cf5e
add esp, 8
test eax, eax
je 0x12e07f5b
mov ecx, esi
call fcn.12e029e0
push eax
mov ecx, esi
call fcn.12e02880
push eax
call fcn.12e09830
add esp, 8
mov edi, eax
jmp 0x12e07f5f
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
test edi, edi
jne 0x12e0816d
mov ecx, esi
call fcn.12e02880
mov ebx, eax
mov ecx, esi
mov dword [esp + 0x10], ebx
call fcn.12e022d0
cmp eax, 3
jne 0x12e07f9f
push ebx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x12e07f96
and al, 0xfe
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
push ebx
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov edi, eax
mov eax, dword [0x13198f68]
test eax, eax
je 0x12e07fe4
push edi
push str.DoEncrypt_20___d_
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
mov eax, dword [0x13198f68]
add esp, 0x10
test eax, eax
je 0x12e07fe4
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x3c]
push ecx
push edx
push str.DoEncrypt_22___d__d_
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x14
mov ecx, esi
xor ebx, ebx
xor edi, edi
call fcn.12e029e0
push eax
mov ecx, esi
call fcn.12e029e0
push eax
mov ecx, esi
call fcn.12e02880
push eax
call fcn.12da3d00
mov ebp, eax
mov eax, dword [0x13198f68]
add esp, 0xc
test eax, eax
je 0x12e08028
push ebp
push str.DoEncrypt_23___d_
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x10
test ebp, ebp
jbe 0x12e08109
mov ebx, 1
xor eax, eax
cmp ebp, ebx
mov ecx, esi
sete al
mov edi, eax
call fcn.12e022d0
cmp eax, 2
jne 0x12e0804e
xor ebp, ebp
jmp 0x12e08052
mov ebp, dword [esp + 0x38]
mov eax, dword [0x13198f68]
test eax, eax
je 0x12e08073
push ebp
push edi
push 1
push str.DoEncrypt_24___d__d__d_
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x18
test edi, edi
jne 0x12e08109
lea ecx, [esp + 0x18]
push edi
push ecx
push ebp
mov ecx, esi
call fcn.12e029e0
push eax
mov ecx, esi
call fcn.12e029e0
push eax
call fcn.12da3cb0
mov esi, eax
add esp, 0x14
test esi, esi
jne 0x12e080af
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, dword [esp + 0xb4]
mov dword [edx], eax
mov eax, dword [0x13198f68]
test eax, eax
je 0x12e080d3
mov eax, dword [esp + 0x18]
push edi
push esi
push eax
push str.DoEncrypt_25___d____d__d_
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x18
mov eax, dword [esp + 0x18]
test eax, eax
je 0x12e08128
mov eax, dword [0x13198f68]
test eax, eax
je 0x12e0814f
test esi, esi
mov eax, 0x130e2604
jne 0x12e080f2
mov eax, 0x130e25f8
push eax
push str.DoEncrypt_26___s_
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x10
jmp 0x12e08128
mov eax, dword [0x13198f68]
test eax, eax
je 0x12e0814f
push edi
push ebx
push str.DoEncrypt__27___d__d_
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x14
mov eax, dword [0x13198f68]
test eax, eax
je 0x12e0814f
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x10]
push ecx
push edx
push str.DoEncrypt____ret6___08x__08x_
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x14
lea ecx, [esp + 0x58]
mov dword [esp + 0xa8], 0xffffffff
call fcn.12e5c180
mov eax, 1
jmp 0x12e0824f
mov eax, dword [0x13198f68]
test eax, eax
je 0x12e0818a
push str.DoEncrypt_21
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0xc
mov eax, dword [esp + 0x44]
test eax, eax
je 0x12e081f6
xor esi, esi
cmp edi, 1
je 0x12e0819e
cmp edi, 5
jne 0x12e081b0
mov eax, dword [esp + 0xb4]
mov esi, 1
mov dword [eax], 0x1770
mov eax, dword [0x13198f68]
test eax, eax
je 0x12e081de
mov ecx, dword [esp + 0xb4]
mov eax, dword [esp + 0x2c]
mov edx, dword [ecx]
push edx
push edi
push eax
push ebx
push str.DoEncrypt____ret4___08x__08x____08x____d_
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x1c
lea ecx, [esp + 0x58]
mov dword [esp + 0xa8], 0xffffffff
call fcn.12e5c180
mov eax, esi
jmp 0x12e0824f
mov eax, dword [0x13198f68]
test eax, eax
je 0x12e08219
mov ecx, dword [esp + 0x2c]
push ecx
push ebx
push str.DoEncrypt____ret5___08x__08x_
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x14
lea ecx, [esp + 0x58]
mov dword [esp + 0xa8], 0xffffffff
call fcn.12e5c180
jmp 0x12e0824d
cmp dword [0x13198f68], ebx
je 0x12e0824d
push edi
push ebp
push str.DoEncrypt____ret1___08x__08x_
push str.UDisk
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x14
xor eax, eax
mov ecx, dword [esp + 0xa0]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x9c
ret