Function at 0x180029810
Capabilities:
Delete file
Get file size
Resolve function by parsing pe exports
Write file on windows

Disassembly:
push rbx
push rdi
push r13
push r14
push r15
sub rsp, 0x1e0
mov rax, qword [section..data]
xor rax, rsp
mov qword [rsp + 0x1b8], rax
mov qword [rsp + 0x68], rdx
lea rdx, [0x180000000]
mov r13, rcx
mov eax, dword [rdx + 0x42fec]
mov qword [rsp + 0x70], rcx
lea rdi, [rcx + 0x3c]
lea rcx, [rsp + 0x1b0]
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x80], r9
mov dword [rcx], eax
movzx eax, word [rdx + 0x42ff0]
xor r15d, r15d
mov word [rcx + 4], ax
movzx eax, byte [rdx + 0x42ff2]
lea rdx, str.Saving_session._n
mov byte [rcx + 6], al
mov rcx, r13
call fcn.180016c70
lea r14, [r13 + 0x11943]
mov qword [rsp + 0x30], r15
lea r8d, [r15 + 1]
mov rcx, r14
xor r9d, r9d
mov edx, 0x40000000
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x78], r14
mov dword [rsp + 0x20], 2
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov rbx, rax
mov qword [rsp + 0x58], rax
cmp rax, 0xffffffffffffffff
je 0x18002a6d6
mov qword [rsp + 0x1d8], rbp
lea r9, [rsp + 0x40]
lea r8d, [r15 + 6]
lea rdx, [rsp + 0x1b0]
mov rcx, rax
mov qword [rsp + 0x1d0], rsi
mov qword [rsp + 0x1c8], r12
lea ebp, [r15 + 1]
mov qword [rsp + 0x20], r15
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x180029978
lea rdx, [r13 + 0x248]
lea r9, [rsp + 0x40]
lea r8d, [r15 + 4]
mov rcx, rbx
mov qword [rsp + 0x20], r15
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x180029978
lea rdx, [r13 + 0x2ad]
lea r9, [rsp + 0x40]
lea r8d, [r15 + 2]
mov rcx, rbx
mov qword [rsp + 0x20], r15
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x180029978
lea rdx, [r13 + 0x2af]
lea r9, [rsp + 0x40]
lea r8d, [r15 + 2]
mov rcx, rbx
mov qword [rsp + 0x20], r15
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x18002997b
mov ebp, r15d
mov esi, r15d
cmp r15w, word [r13 + 0x2ad]
jae 0x180029ab6
mov r12, qword [rsp + 0x58]
mov rbx, r15
nop word [rax + rax]
mov rax, qword [r13 + 0x2b5]
mov ecx, dword [rax + rbx + 4]
mov r8, qword [rax + rbx + 0xc]
and ecx, 0xffffff
je 0x180029a2c
cmp ecx, 1
jne 0x180029a73
movzx ecx, byte [rsp + 0xa1]
mov rdx, rax
or cl, 0x80
mov byte [rsp + 0xa1], cl
movzx eax, byte [rax + rbx + 0x24]
xor al, cl
and al, 0x7f
xor cl, al
mov byte [rsp + 0xa1], cl
movzx eax, byte [rdx + rbx + 0x26]
lea rcx, [rsp + 0xa2]
mov byte [rsp + 0xa0], al
mov rax, qword [rdx + rbx + 0x14]
mov qword [rsp + 0x90], rax
mov rax, qword [rdx + rbx + 0x1c]
mov qword [rsp + 0x98], rax
mov eax, esi
imul rax, rax, 0x126
lea rdx, [rax + rdx + 0x27]
call qword [sym.imp.KERNEL32.dll_lstrcpyA]
jmp 0x180029a73
movzx edx, byte [rsp + 0xa1]
and dl, 0x7f
mov byte [rsp + 0xa1], dl
movzx ecx, byte [rax + rbx + 0x24]
xor cl, dl
and cl, 0x7f
xor dl, cl
mov byte [rsp + 0xa1], dl
test r8, r8
je 0x180029a73
lea rax, [rsp + 0x98]
test rax, rax
je 0x180029a73
mov rax, qword [r8 + 0x18]
sub rax, qword [r8 + 0x28]
mov qword [rsp + 0x98], rax
lea r9, [rsp + 0x40]
lea rdx, [rsp + 0x90]
mov r8d, 0x111
mov rcx, r12
mov qword [rsp + 0x20], r15
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
movzx eax, word [r13 + 0x2ad]
cmove ebp, r15d
inc esi
add rbx, 0x126
cmp esi, eax
jb 0x1800299a0
mov rbx, r12
xor esi, esi
lea r9, [rsp + 0x40]
lea rdx, [r13 + 0x284]
lea r8d, [rsi + 8]
mov rcx, rbx
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
cmove ebp, esi
cmp si, word [r13 + 0x2ad]
jae 0x180029fac
mov r12, qword [rsp + 0x48]
mov r14, rsi
mov rax, qword [r13 + 0x2b5]
mov rbx, rsi
mov r13, qword [rax + r14 + 0xc]
mov dword [rsp + 0x54], esi
cmp qword [r13 + 0x88b], 0
je 0x180029b3c
lea rax, [rsp + 0x48]
test rax, rax
je 0x180029b3c
lea rax, [rsp + 0x54]
test rax, rax
je 0x180029b3c
mov rax, qword [r13 + 0x883]
add rax, 7
shr rax, 3
mov dword [rsp + 0x54], eax
mov rbx, qword [r13 + 0x88b]
mov rcx, qword [rsp + 0x58]
lea r9, [rsp + 0x40]
lea rdx, [rsp + 0x54]
mov r8d, 4
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x180029f82
mov r8d, dword [rsp + 0x54]
test r8d, r8d
je 0x180029b93
mov rdx, rbx
mov rbx, qword [rsp + 0x58]
lea r9, [rsp + 0x40]
mov rcx, rbx
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x180029f87
jmp 0x180029b98
mov rbx, qword [rsp + 0x58]
lea rax, [rsp + 0x50]
mov dword [rsp + 0x50], esi
test rax, rax
je 0x180029f74
mov eax, dword [r13 + 0x83]
lea r9, [rsp + 0x40]
lea rdx, [rsp + 0x50]
mov r8d, 4
mov rcx, rbx
mov qword [rsp + 0x20], rsi
mov dword [rsp + 0x50], eax
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x180029f74
cmp dword [rsp + 0x50], 0
jbe 0x180029f3d
nop word [rax + rax]
cmp esi, dword [r13 + 0x83]
jae 0x180029f64
lea rax, [rsp + 0x48]
mov dword [r13 + 0x87], esi
test rax, rax
je 0x180029f64
mov eax, esi
mov rbx, qword [r13 + rax*8 + 0x8b]
mov eax, dword [rbx]
cmp eax, 6
ja case.default.0x180029c38
lea rdx, [0x180000000]
mov ecx, dword [rdx + rax*4 + 0x2a708]
add rcx, rdx
jmp rcx
lea rax, [rsp + 0x48]
test rax, rax
je 0x180029c95
lea rax, [rsp + 0x44]
test rax, rax
je 0x180029c95
lea rax, [rsp + 0x48]
test rax, rax
je 0x180029c95
mov edx, 4
xor ecx, ecx
mov r8d, 0x1000
mov r9d, edx
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r12, rax
test rax, rax
jne 0x180029c7d
xor ebp, ebp
jmp case.default.0x180029c38
mov eax, dword [rbx]
mov ebp, 1
mov dword [r12], eax
mov dword [rsp + 0x44], 4
jmp case.default.0x180029c38
xor ebp, ebp
jmp case.default.0x180029c38
lea rax, [rsp + 0x48]
test rax, rax
je 0x180029d4e
lea rax, [rsp + 0x44]
test rax, rax
je 0x180029d4e
lea rax, [rsp + 0x48]
test rax, rax
je 0x180029d4e
mov edx, dword [rbx + 0x1c]
xor ecx, ecx
mov r8d, 0x1000
lea r9d, [rcx + 4]
add rdx, 0x30
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r12, rax
test rax, rax
jne 0x180029cee
xor ebp, ebp
jmp case.default.0x180029c38
mov rax, qword [rbx]
mov qword [r12], rax
mov rax, qword [rbx + 8]
mov qword [r12 + 8], rax
mov rax, qword [rbx + 0x10]
mov qword [r12 + 0x10], rax
mov rax, qword [rbx + 0x18]
mov qword [r12 + 0x18], rax
mov rax, qword [rbx + 0x20]
mov qword [r12 + 0x20], rax
mov rax, qword [rbx + 0x28]
mov qword [r12 + 0x28], rax
mov eax, dword [rbx + 0x1c]
test eax, eax
je 0x180029d3a
mov rdx, qword [rbx + 0x28]
lea rcx, [r12 + 0x30]
mov r8, rax
call fcn.18002dae0
mov eax, dword [rbx + 0x1c]
mov ebp, 1
add eax, 0x30
mov dword [rsp + 0x44], eax
jmp case.default.0x180029c38
xor ebp, ebp
jmp case.default.0x180029c38
lea rax, [rsp + 0x48]
test rax, rax
je 0x180029dde
lea rax, [rsp + 0x44]
test rax, rax
je 0x180029dde
lea rax, [rsp + 0x48]
test rax, rax
je 0x180029dde
mov edx, 0x2c
xor ecx, ecx
mov r8d, 0x1000
lea r9d, [rdx - 0x28]
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r12, rax
test rax, rax
jne 0x180029d99
xor ebp, ebp
jmp case.default.0x180029c38
mov rax, qword [rbx]
mov ebp, 1
mov qword [r12], rax
mov rax, qword [rbx + 8]
mov qword [r12 + 8], rax
mov rax, qword [rbx + 0x10]
mov qword [r12 + 0x10], rax
mov rax, qword [rbx + 0x18]
mov qword [r12 + 0x18], rax
mov rax, qword [rbx + 0x20]
mov qword [r12 + 0x20], rax
mov eax, dword [rbx + 0x28]
mov dword [r12 + 0x28], eax
mov dword [rsp + 0x44], 0x2c
jmp case.default.0x180029c38
xor ebp, ebp
jmp case.default.0x180029c38
lea rax, [rsp + 0x48]
test rax, rax
je 0x180029e4c
lea rax, [rsp + 0x44]
test rax, rax
je 0x180029e4c
lea rax, [rsp + 0x48]
test rax, rax
je 0x180029e4c
xor ecx, ecx
mov edx, 0xb64
mov r8d, 0x1000
lea r9d, [rcx + 4]
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r12, rax
test rax, rax
jne 0x180029e29
xor ebp, ebp
jmp case.default.0x180029c38
mov rcx, rax
mov rdx, rbx
mov r8d, 0xb64
call fcn.18002dae0
mov dword [rsp + 0x44], 0xb64
mov ebp, 1
jmp case.default.0x180029c38
xor ebp, ebp
jmp case.default.0x180029c38
lea rax, [rsp + 0x48]
test rax, rax
je 0x180029ece
lea rax, [rsp + 0x44]
test rax, rax
je 0x180029ece
lea rax, [rsp + 0x48]
test rax, rax
je 0x180029ece
mov edx, 0x28
xor ecx, ecx
mov r8d, 0x1000
lea r9d, [rdx - 0x24]
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r12, rax
test rax, rax
jne 0x180029e94
xor ebp, ebp
jmp case.default.0x180029c38
mov rax, qword [rbx]
mov ebp, 1
mov qword [r12], rax
mov rax, qword [rbx + 8]
mov qword [r12 + 8], rax
mov rax, qword [rbx + 0x10]
mov qword [r12 + 0x10], rax
mov rax, qword [rbx + 0x18]
mov qword [r12 + 0x18], rax
mov rax, qword [rbx + 0x20]
mov qword [r12 + 0x20], rax
mov dword [rsp + 0x44], 0x28
jmp case.default.0x180029c38
xor ebp, ebp
mov rbx, qword [rsp + 0x58]
lea r9, [rsp + 0x40]
lea rdx, [rsp + 0x44]
mov r8d, 4
mov rcx, rbx
mov qword [rsp + 0x20], 0
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x180029f1e
mov r8d, dword [rsp + 0x44]
lea r9, [rsp + 0x40]
mov rdx, r12
mov rcx, rbx
mov qword [rsp + 0x20], 0
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x180029f20
xor ebp, ebp
xor edx, edx
mov r8d, 0x8000
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_VirtualFree]
inc esi
cmp esi, dword [rsp + 0x50]
jb 0x180029bf0
test ebp, ebp
je 0x180029f95
mov r13, qword [rsp + 0x70]
inc r15d
add r14, 0x126
movzx eax, word [r13 + 0x2ad]
cmp r15d, eax
jae 0x180029fa3
xor esi, esi
jmp 0x180029af1
mov r13, qword [rsp + 0x70]
mov r14, qword [rsp + 0x78]
xor esi, esi
mov ebp, esi
jmp 0x180029fac
mov r13, qword [rsp + 0x70]
mov r14, qword [rsp + 0x78]
mov ebp, esi
jmp 0x180029fac
mov rbx, qword [rsp + 0x58]
mov r13, qword [rsp + 0x70]
mov r14, qword [rsp + 0x78]
mov ebp, esi
jmp 0x180029fac
mov r13, qword [rsp + 0x70]
mov r14, qword [rsp + 0x78]
xor esi, esi
jmp 0x180029fac
lea r14, [r13 + 0x11943]
xor esi, esi
cmp qword [r13 + 0x284], 0
je 0x18002a105
lea rdx, [r13 + 0x70]
lea r9, [rsp + 0x40]
mov r8d, 8
mov rcx, rbx
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x18002a103
lea rdx, [r13 + 0x78]
lea r9, [rsp + 0x40]
mov r8d, 8
mov rcx, rbx
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x18002a103
lea rdx, [r13 + 0x80]
lea r9, [rsp + 0x40]
mov r8d, 8
mov rcx, rbx
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x18002a103
lea rdx, [r13 + 0x1e8]
lea r9, [rsp + 0x40]
mov r8d, 8
mov rcx, rbx
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x18002a103
lea rdx, [r13 + 0x1f8]
lea r9, [rsp + 0x40]
mov r8d, 8
mov rcx, rbx
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x18002a103
lea rdx, [r13 + 0x88]
lea r9, [rsp + 0x40]
mov r8d, 0x160
mov rcx, rbx
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x18002a103
lea rdx, [r13 + 0x60]
lea r9, [rsp + 0x40]
mov r8d, 8
mov rcx, rbx
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x18002a103
lea rdx, [r13 + 0x68]
lea r9, [rsp + 0x40]
mov r8d, 8
mov rcx, rbx
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x18002a103
lea rdx, [r13 + 0x58]
lea r9, [rsp + 0x40]
mov r8d, 8
mov rcx, rbx
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x18002a105
mov ebp, esi
cmp qword [rsp + 0x68], 0
mov ebx, esi
jbe 0x18002a1c8
mov rcx, rsi
nop word [rax + rax]
mov r8, qword [rdi + 8]
movzx edx, word [r8 + rsi + 0x85]
shr edx, 0xc
and edx, 7
je 0x18002a19d
sub edx, 1
je 0x18002a188
sub edx, 1
je 0x18002a173
sub edx, 1
je 0x18002a15e
cmp edx, 1
jne 0x18002a1b0
imul rcx, rcx, 0x93
lea rdx, [r8 + rcx]
mov rcx, rdi
call fcn.180004140
jmp 0x18002a1b0
imul rcx, rcx, 0x93
lea rdx, [r8 + rcx]
mov rcx, rdi
call fcn.180004140
jmp 0x18002a1b0
imul rcx, rcx, 0x93
lea rdx, [r8 + rcx]
mov rcx, rdi
call fcn.180011fc0
jmp 0x18002a1b0
imul rcx, rcx, 0x93
lea rdx, [r8 + rcx]
mov rcx, rdi
call fcn.180004140
jmp 0x18002a1b0
imul rcx, rcx, 0x93
lea rdx, [r8 + rcx]
mov rcx, rdi
call fcn.180004140
inc ebx
add rsi, 0x93
mov ecx, ebx
cmp rcx, qword [rsp + 0x68]
jb 0x18002a120
xor esi, esi
mov r12, qword [rsp + 0x58]
xor edx, edx
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GetFileSize]
lea r9, [rsp + 0x40]
lea rdx, [rsp + 0x80]
mov r8d, 8
mov rcx, r12
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov r11, qword [rsp + 0x80]
test r11, r11
je 0x18002a220
mov rdx, qword [rdi]
lea r8d, [r11 + r11]
lea r9, [rsp + 0x40]
mov rcx, r12
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_WriteFile]
lea r9, [rsp + 0x40]
lea rdx, [rsp + 0x68]
mov r8d, 8
mov rcx, r12
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov r11, qword [rsp + 0x68]
test r11, r11
je 0x18002a269
mov rdx, qword [rdi + 8]
imul r11d, r11d, 0x93
lea r9, [rsp + 0x40]
mov rcx, r12
mov r8d, r11d
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rbx, qword [rsp + 0x60]
mov r11d, esi
movabs r15, 0x8000000000000000
test rbx, rbx
je 0x18002a2da
mov r10, rsi
nop word [rax + rax]
mov rax, qword [r13 + 0x4c]
mov r8, qword [rdi]
lea r9, [r10 + rax]
test r9, r9
je 0x18002a2cb
test r8, r8
je 0x18002a2cb
mov rdx, qword [r9]
cmp rdx, r8
jb 0x18002a2cb
mov rax, qword [r13 + 0x220]
lea rcx, [r8 + rax*8]
cmp rdx, rcx
jae 0x18002a2cb
sub rdx, r8
or rdx, r15
mov qword [r9], rdx
mov rbx, qword [rsp + 0x60]
inc r11d
add r10, 0x18
mov eax, r11d
cmp rax, rbx
jb 0x18002a290
lea r9, [rsp + 0x40]
lea rdx, [rsp + 0x60]
mov r8d, 8
mov rcx, r12
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov r11, qword [rsp + 0x60]
test r11, r11
je 0x18002a326
mov rdx, qword [rdi + 0x10]
lea r8d, [r11 + r11*2]
lea r9, [rsp + 0x40]
shl r8d, 3
mov rcx, r12
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov r11, qword [rsp + 0x60]
mov r8d, esi
movabs r10, 0x7fffffffffffffff
test r11, r11
je 0x18002a37a
mov rdx, rsi
nop dword [rax + rax]
mov rax, qword [r13 + 0x4c]
mov r9, qword [rdi]
lea rcx, [rdx + rax]
test r9, r9
je 0x18002a36b
test rcx, rcx
je 0x18002a36b
mov rax, qword [rcx]
test r15, rax
je 0x18002a36b
and rax, r10
add rax, r9
mov qword [rcx], rax
mov r11, qword [rsp + 0x60]
inc r8d
add rdx, 0x18
mov eax, r8d
cmp rax, r11
jb 0x18002a340
cmp qword [rsp + 0x68], 0
jbe 0x18002a677
xor r8d, r8d
xor ebx, ebx
nop dword [rax + rax]
mov rcx, qword [rdi + 8]
movzx edx, word [rcx + rbx + 0x85]
shr edx, 0xc
and edx, 7
je 0x18002a5d1
sub edx, 1
je 0x18002a531
sub edx, 1
je 0x18002a50f
sub edx, 1
je 0x18002a46f
cmp edx, 1
je 0x18002a3cf
xor ebp, ebp
jmp 0x18002a660
mov r8, qword [rdi]
lea rdx, [rcx + rbx + 0x8b]
test r8, r8
je 0x18002a3f5
test rdx, rdx
je 0x18002a3f5
mov rax, qword [rdx]
test r15, rax
je 0x18002a3f5
and rax, r10
add rax, r8
mov qword [rdx], rax
mov r8, qword [rdi]
lea rdx, [rcx + rbx + 0x40]
test r8, r8
je 0x18002a418
test rdx, rdx
je 0x18002a418
mov rax, qword [rdx]
test r15, rax
je 0x18002a418
and rax, r10
add rax, r8
mov qword [rdx], rax
mov r8, qword [rdi]
lea rdx, [rcx + rbx + 0x30]
test r8, r8
je 0x18002a43b
test rdx, rdx
je 0x18002a43b
mov rax, qword [rdx]
test r15, rax
je 0x18002a43b
and rax, r10
add rax, r8
mov qword [rdx], rax
mov r8, qword [rdi]
lea rdx, [rcx + rbx + 0x38]
test r8, r8
je 0x18002a660
test rdx, rdx
je 0x18002a660
mov rax, qword [rdx]
test r15, rax
je 0x18002a660
and rax, r10
add rax, r8
mov qword [rdx], rax
jmp 0x18002a660
mov r8, qword [rdi]
lea rdx, [rcx + rbx + 0x8b]
test r8, r8
je 0x18002a495
test rdx, rdx
je 0x18002a495
mov rax, qword [rdx]
test r15, rax
je 0x18002a495
and rax, r10
add rax, r8
mov qword [rdx], rax
mov r8, qword [rdi]
lea rdx, [rcx + rbx + 0x40]
test r8, r8
je 0x18002a4b8
test rdx, rdx
je 0x18002a4b8
mov rax, qword [rdx]
test r15, rax
je 0x18002a4b8
and rax, r10
add rax, r8
mov qword [rdx], rax
mov r8, qword [rdi]
lea rdx, [rcx + rbx + 0x30]
test r8, r8
je 0x18002a4db
test rdx, rdx
je 0x18002a4db
mov rax, qword [rdx]
test r15, rax
je 0x18002a4db
and rax, r10
add rax, r8
mov qword [rdx], rax
mov r8, qword [rdi]
lea rdx, [rcx + rbx + 0x38]
test r8, r8
je 0x18002a660
test rdx, rdx
je 0x18002a660
mov rax, qword [rdx]
test r15, rax
je 0x18002a660
and rax, r10
add rax, r8
mov qword [rdx], rax
jmp 0x18002a660
imul r8, r8, 0x93
lea rdx, [rcx + r8]
mov rcx, rdi
call fcn.1800121e0
movabs r10, 0x7fffffffffffffff
jmp 0x18002a660
mov r8, qword [rdi]
lea rdx, [rcx + rbx + 0x8b]
test r8, r8
je 0x18002a557
test rdx, rdx
je 0x18002a557
mov rax, qword [rdx]
test r15, rax
je 0x18002a557
and rax, r10
add rax, r8
mov qword [rdx], rax
mov r8, qword [rdi]
lea rdx, [rcx + rbx + 0x40]
test r8, r8
je 0x18002a57a
test rdx, rdx
je 0x18002a57a
mov rax, qword [rdx]
test r15, rax
je 0x18002a57a
and rax, r10
add rax, r8
mov qword [rdx], rax
mov r8, qword [rdi]
lea rdx, [rcx + rbx + 0x30]
test r8, r8
je 0x18002a59d
test rdx, rdx
je 0x18002a59d
mov rax, qword [rdx]
test r15, rax
je 0x18002a59d
and rax, r10
add rax, r8
mov qword [rdx], rax
mov r8, qword [rdi]
lea rdx, [rcx + rbx + 0x38]
test r8, r8
je 0x18002a660
test rdx, rdx
je 0x18002a660
mov rax, qword [rdx]
test r15, rax
je 0x18002a660
and rax, r10
add rax, r8
mov qword [rdx], rax
jmp 0x18002a660
mov r8, qword [rdi]
lea rdx, [rcx + rbx + 0x8b]
test r8, r8
je 0x18002a5f7
test rdx, rdx
je 0x18002a5f7
mov rax, qword [rdx]
test r15, rax
je 0x18002a5f7
and rax, r10
add rax, r8
mov qword [rdx], rax
mov r8, qword [rdi]
lea rdx, [rcx + rbx + 0x40]
test r8, r8
je 0x18002a61a
test rdx, rdx
je 0x18002a61a
mov rax, qword [rdx]
test r15, rax
je 0x18002a61a
and rax, r10
add rax, r8
mov qword [rdx], rax
mov r8, qword [rdi]
lea rdx, [rcx + rbx + 0x30]
test r8, r8
je 0x18002a63d
test rdx, rdx
je 0x18002a63d
mov rax, qword [rdx]
test r15, rax
je 0x18002a63d
and rax, r10
add rax, r8
mov qword [rdx], rax
mov r8, qword [rdi]
lea rdx, [rcx + rbx + 0x38]
test r8, r8
je 0x18002a660
test rdx, rdx
je 0x18002a660
mov rax, qword [rdx]
test r15, rax
je 0x18002a660
and rax, r10
add rax, r8
mov qword [rdx], rax
inc esi
add rbx, 0x93
mov r8d, esi
cmp r8, qword [rsp + 0x68]
jb 0x18002a390
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r12, qword [rsp + 0x1c8]
mov rsi, qword [rsp + 0x1d0]
test ebp, ebp
jne 0x18002a6bb
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_DeleteFileA]
lea rdx, str.Errors_saving_session__partial_file_deleted._n
mov rcx, r13
call fcn.180016b80
lea rdx, str._tErrors_saving_session__partial_file_deleted._n
mov rcx, r13
call fcn.180016c70
lea rdx, str._tSaving_session_complete_n
mov rcx, r13
call fcn.180016c70
mov eax, ebp
mov rbp, qword [rsp + 0x1d8]
jmp 0x18002a6e8
lea rdx, str._tFailed_to_open_create_save_file._n
mov rcx, r13
call fcn.180016c70
mov eax, r15d
mov rcx, qword [rsp + 0x1b8]
xor rcx, rsp
call fcn.18002d590
add rsp, 0x1e0
pop r15
pop r14
pop r13
pop rdi
pop rbx
ret