Function at 0x14007d980
Capabilities:
Move file
Write file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x270]
sub rsp, 0x370
xor r15d, r15d
mov dword [rsp + 0x30], r15d
lea r14, vtable.CVolCommonBaseWithMemManager.0
mov qword [rbp + 0x40], r14
lea r12, vtable.CVolObject.0
mov qword [rbp + 0x40], r12
mov qword [rbp + 0x48], r15
mov qword [rbp + 0x50], r15
lea r13, vtable.CVolMem.0
mov qword [rbp + 0x40], r13
mov qword [rbp + 0x58], r15
mov qword [rbp + 0x68], r15
mov qword [rbp + 0x60], r15
mov qword [rbp + 0x70], 0x40
mov qword [rbp + 0xd0], r14
mov qword [rbp + 0xd0], r12
mov qword [rbp + 0xd8], r15
mov qword [rbp + 0xe0], r15
mov qword [rbp + 0xd0], r13
mov qword [rbp + 0xe8], r15
mov qword [rbp + 0xf8], r15
mov qword [rbp + 0xf0], r15
mov qword [rbp + 0x100], 0x40
lea r8, vtable.CVolCommonBaseWithMemManager.0
lea rdx, vtable.CVolCommonBaseWithMemManager.0
lea rcx, [rsp + 0x38]
call fcn.1400ccbf0
nop
mov rcx, qword [rax + 0x18]
test rcx, rcx
jne 0x14007da5a
cmp qword [rax + 0x48], rcx
lea rcx, [0x1401eac10]
je 0x14007da5a
mov rcx, qword [rax + 0x38]
call fcn.1400c2120
mov rdi, rax
lea rax, [rsp + 0x58]
mov qword [rbp + 0x2b0], rax
mov qword [rsp + 0x58], r13
mov rdx, qword [rsp + 0x70]
test rdx, rdx
je 0x14007da8a
lea rcx, [rsp + 0x58]
mov rax, qword [rsp + 0x58]
call qword [rax + 0x18]
mov qword [rsp + 0x70], r15
mov qword [rbp - 0x80], r15
mov qword [rsp + 0x78], r15
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x38], r12
mov ebx, 1
test edi, edi
jne 0x14007db9a
lea r9d, [rbx + 9]
lea r8, [rbp + 0x40]
mov edx, 0x1f6
lea rcx, [0x140259d90]
mov rax, qword [0x140259d90]
call qword [rax + 0x30]
lea r8, vtable.CVolCommonBaseWithMemManager.0
lea rdx, vtable.CVolCommonBaseWithMemManager.0
lea rcx, [rsp + 0x38]
call fcn.1400ccbf0
nop
mov rcx, qword [rax + 0x18]
mov rdi, qword [rbp + 0x68]
mov rsi, qword [rbp + 0x58]
test rcx, rcx
je 0x14007dafc
mov rax, rdi
jmp 0x14007db1b
cmp qword [rax + 0x48], 0
jne 0x14007db0f
lea rcx, [0x1401eac10]
mov rax, rdi
jmp 0x14007db1b
mov rcx, qword [rax + 0x38]
mov rax, rdi
test rcx, rcx
je 0x14007db5a
cmp word [rcx], 0
je 0x14007db5a
test rax, rax
js 0x14007db5a
lea rdx, [0x1402015d4]
call fcn.1401bd7cc
mov r14, rax
test rax, rax
je 0x14007db53
mov r9, rax
mov r8, rdi
mov rdx, rbx
mov rcx, rsi
call fcn.1401bbb30
mov rcx, r14
call fcn.1401bb2cc
lea r14, vtable.CVolCommonBaseWithMemManager.0
lea rax, [rsp + 0x58]
mov qword [rbp + 0x2b0], rax
mov qword [rsp + 0x58], r13
mov rdx, qword [rsp + 0x70]
test rdx, rdx
je 0x14007db82
lea rcx, [rsp + 0x58]
mov rax, qword [rsp + 0x58]
call qword [rax + 0x18]
mov qword [rsp + 0x70], r15
mov qword [rbp - 0x80], r15
mov qword [rsp + 0x78], r15
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x38], r12
mov qword [rbp - 0x70], r14
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x68], r15
mov qword [rbp - 0x60], r15
lea rax, vtable.CWString.0
mov qword [rbp - 0x70], rax
lea rax, [rbp - 0x50]
mov qword [rbp + 0x2b0], rax
mov qword [rbp - 0x50], r14
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x48], r15
mov qword [rbp - 0x40], r15
mov qword [rbp - 0x50], r13
mov qword [rbp - 0x38], r15
mov qword [rbp - 0x28], r15
mov qword [rbp - 0x30], r15
mov qword [rbp - 0x20], 0x40
mov qword [rbp - 0x58], r15
mov qword [rbp - 0x20], 0xfe
lea rsi, vtable.CWConstString.0
mov qword [rbp - 0x70], rsi
lea rax, [0x1401fc0dc]
mov qword [rbp - 0x58], rax
xor r9d, r9d
lea r8, [rbp - 0x70]
lea rdx, vtable.CVolCommonBaseWithMemManager.0
lea rcx, [rbp + 0x160]
call fcn.140017460
nop
mov r8, rax
lea rdx, vtable.CVolCommonBaseWithMemManager.0
lea rcx, [rbp + 0x108]
call fcn.1400ccbf0
nop
lea r8, str..vmd
mov rdx, rax
lea rcx, [rsp + 0x38]
call fcn.1400ccda0
nop
mov rcx, qword [rax + 0x18]
test rcx, rcx
jne 0x14007dc6b
cmp qword [rax + 0x48], rcx
lea rcx, [0x1401eac10]
je 0x14007dc6b
mov rcx, qword [rax + 0x38]
call fcn.1400c2120
mov rdi, rax
lea rax, [rsp + 0x58]
mov qword [rbp + 0x2b0], rax
mov qword [rsp + 0x58], r13
mov rdx, qword [rsp + 0x70]
test rdx, rdx
je 0x14007dc9b
lea rcx, [rsp + 0x58]
mov rax, qword [rsp + 0x58]
call qword [rax + 0x18]
mov qword [rsp + 0x70], r15
mov qword [rbp - 0x80], r15
mov qword [rsp + 0x78], r15
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x38], r12
lea rax, [rbp + 0x128]
mov qword [rbp + 0x2b0], rax
mov qword [rbp + 0x128], r13
mov rdx, qword [rbp + 0x140]
test rdx, rdx
je 0x14007dce5
lea rcx, [rbp + 0x128]
mov rax, qword [rbp + 0x128]
call qword [rax + 0x18]
mov qword [rbp + 0x140], r15
mov qword [rbp + 0x150], r15
mov qword [rbp + 0x148], r15
mov qword [rbp + 0x128], r12
mov qword [rbp + 0x108], r12
lea rax, [rbp + 0x180]
mov qword [rbp + 0x2b0], rax
mov qword [rbp + 0x180], r13
mov rdx, qword [rbp + 0x198]
test rdx, rdx
je 0x14007dd3a
lea rcx, [rbp + 0x180]
mov rax, qword [rbp + 0x180]
call qword [rax + 0x18]
mov qword [rbp + 0x198], r15
mov qword [rbp + 0x1a8], r15
mov qword [rbp + 0x1a0], r15
mov qword [rbp + 0x180], r12
mov qword [rbp + 0x160], r12
lea rax, [rbp - 0x50]
mov qword [rbp + 0x2b0], rax
mov qword [rbp - 0x50], r13
mov rdx, qword [rbp - 0x38]
test rdx, rdx
je 0x14007dd80
lea rcx, [rbp - 0x50]
mov rax, qword [rbp - 0x50]
call qword [rax + 0x18]
mov qword [rbp - 0x38], r15
mov qword [rbp - 0x28], r15
mov qword [rbp - 0x30], r15
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x70], r12
test edi, edi
je 0x14007e19c
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x48], r15
lea rax, vtable.CWString.0
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x58]
mov qword [rbp + 0x2b0], rax
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x68], r15
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x70], r15
mov qword [rbp - 0x80], r15
mov qword [rsp + 0x78], r15
mov qword [rbp - 0x78], 0x40
mov qword [rsp + 0x50], r15
mov qword [rbp - 0x78], 0xfe
mov qword [rsp + 0x38], rsi
lea rax, [0x1401fc0dc]
mov qword [rsp + 0x50], rax
xor r9d, r9d
lea r8, [rsp + 0x38]
lea rdx, vtable.CVolCommonBaseWithMemManager.0
lea rcx, [rbp - 0x18]
call fcn.140017460
nop
mov r8, rax
lea rdx, vtable.CVolCommonBaseWithMemManager.0
lea rcx, [rbp + 0x78]
call fcn.1400ccbf0
nop
lea r8, [0x1401fc0e0]
mov rdx, rax
lea rcx, [rbp + 0x210]
call fcn.1400ccda0
mov rdi, rax
mov qword [rbp - 0x70], r14
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x68], r15
mov qword [rbp - 0x60], r15
lea rax, vtable.CWString.0
mov qword [rbp - 0x70], rax
lea rax, [rbp - 0x50]
mov qword [rbp + 0x2b8], rax
mov qword [rbp - 0x50], r14
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x48], r15
mov qword [rbp - 0x40], r15
mov qword [rbp - 0x50], r13
mov qword [rbp - 0x38], r15
mov qword [rbp - 0x28], r15
mov qword [rbp - 0x30], r15
mov qword [rbp - 0x20], 0x40
mov qword [rbp - 0x58], r15
mov qword [rbp - 0x20], 0xfe
mov qword [rbp - 0x70], rsi
lea rax, [0x1401fc0dc]
mov qword [rbp - 0x58], rax
xor r9d, r9d
lea r8, [rbp - 0x70]
lea rdx, vtable.CVolCommonBaseWithMemManager.0
lea rcx, [rbp + 0x1b8]
call fcn.140017460
nop
mov r8, rax
lea rdx, vtable.CVolCommonBaseWithMemManager.0
lea rcx, [rbp + 0x108]
call fcn.1400ccbf0
nop
lea r8, str..vmd
mov rdx, rax
lea rcx, [rbp + 0x160]
call fcn.1400ccda0
nop
mov rdx, qword [rdi + 0x18]
test rdx, rdx
jne 0x14007df27
cmp qword [rdi + 0x48], rdx
lea rdx, [0x1401eac10]
je 0x14007df27
mov rdx, qword [rdi + 0x38]
mov rcx, qword [rax + 0x18]
test rcx, rcx
jne 0x14007df41
cmp qword [rax + 0x48], rcx
lea rcx, [0x1401eac10]
je 0x14007df41
mov rcx, qword [rax + 0x38]
call qword [sym.imp.KERNEL32.dll_MoveFileW]
nop
lea rax, [rbp + 0x180]
mov qword [rbp + 0x2b0], rax
mov qword [rbp + 0x180], r13
mov rdx, qword [rbp + 0x198]
test rdx, rdx
je 0x14007df7a
lea rcx, [rbp + 0x180]
mov rax, qword [rbp + 0x180]
call qword [rax + 0x18]
mov qword [rbp + 0x198], r15
mov qword [rbp + 0x1a8], r15
mov qword [rbp + 0x1a0], r15
mov qword [rbp + 0x180], r12
mov qword [rbp + 0x160], r12
lea rax, [rbp + 0x128]
mov qword [rbp + 0x2b0], rax
mov qword [rbp + 0x128], r13
mov rdx, qword [rbp + 0x140]
test rdx, rdx
je 0x14007dfcf
lea rcx, [rbp + 0x128]
mov rax, qword [rbp + 0x128]
call qword [rax + 0x18]
mov qword [rbp + 0x140], r15
mov qword [rbp + 0x150], r15
mov qword [rbp + 0x148], r15
mov qword [rbp + 0x128], r12
mov qword [rbp + 0x108], r12
lea rax, [rbp + 0x1d8]
mov qword [rbp + 0x2b0], rax
mov qword [rbp + 0x1d8], r13
mov rdx, qword [rbp + 0x1f0]
test rdx, rdx
je 0x14007e024
lea rcx, [rbp + 0x1d8]
mov rax, qword [rbp + 0x1d8]
call qword [rax + 0x18]
mov qword [rbp + 0x1f0], r15
mov qword [rbp + 0x200], r15
mov qword [rbp + 0x1f8], r15
mov qword [rbp + 0x1d8], r12
mov qword [rbp + 0x1b8], r12
lea rax, [rbp - 0x50]
mov qword [rbp + 0x2b0], rax
mov qword [rbp - 0x50], r13
mov rdx, qword [rbp - 0x38]
test rdx, rdx
je 0x14007e06a
lea rcx, [rbp - 0x50]
mov rax, qword [rbp - 0x50]
call qword [rax + 0x18]
mov qword [rbp - 0x38], r15
mov qword [rbp - 0x28], r15
mov qword [rbp - 0x30], r15
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x70], r12
lea rax, [rbp + 0x230]
mov qword [rbp + 0x2b0], rax
mov qword [rbp + 0x230], r13
mov rdx, qword [rbp + 0x248]
test rdx, rdx
je 0x14007e0b0
lea rcx, [rbp + 0x230]
mov rax, qword [rbp + 0x230]
call qword [rax + 0x18]
mov qword [rbp + 0x248], r15
mov qword [rbp + 0x258], r15
mov qword [rbp + 0x250], r15
mov qword [rbp + 0x230], r12
mov qword [rbp + 0x210], r12
lea rax, [rbp + 0x98]
mov qword [rbp + 0x2b0], rax
mov qword [rbp + 0x98], r13
mov rdx, qword [rbp + 0xb0]
test rdx, rdx
je 0x14007e105
lea rcx, [rbp + 0x98]
mov rax, qword [rbp + 0x98]
call qword [rax + 0x18]
mov qword [rbp + 0xb0], r15
mov qword [rbp + 0xc0], r15
mov qword [rbp + 0xb8], r15
mov qword [rbp + 0x98], r12
mov qword [rbp + 0x78], r12
lea rax, [rbp + 8]
mov qword [rbp + 0x2b0], rax
mov qword [rbp + 8], r13
mov rdx, qword [rbp + 0x20]
test rdx, rdx
je 0x14007e148
lea rcx, [rbp + 8]
mov rax, qword [rbp + 8]
call qword [rax + 0x18]
mov qword [rbp + 0x20], r15
mov qword [rbp + 0x30], r15
mov qword [rbp + 0x28], r15
mov qword [rbp + 8], r12
mov qword [rbp - 0x18], r12
lea rax, [rsp + 0x58]
mov qword [rbp + 0x2b0], rax
mov qword [rsp + 0x58], r13
mov rdx, qword [rsp + 0x70]
test rdx, rdx
je 0x14007e184
lea rcx, [rsp + 0x58]
mov rax, qword [rsp + 0x58]
call qword [rax + 0x18]
mov qword [rsp + 0x70], r15
mov qword [rbp - 0x80], r15
mov qword [rsp + 0x78], r15
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x38], r12
lea r8, str.S1GameS1DataDataCenter_FinaI_TW.dat
lea rdx, vtable.CVolCommonBaseWithMemManager.0
lea rcx, [rbp - 0x18]
call fcn.1400ccda0
nop
mov rcx, qword [rax + 0x18]
test rcx, rcx
jne 0x14007e1ce
cmp qword [rax + 0x48], rcx
lea rcx, [0x1401eac10]
je 0x14007e1ce
mov rcx, qword [rax + 0x38]
call fcn.1400c2120
mov rdi, rax
lea rax, [rbp + 8]
mov qword [rbp + 0x2b0], rax
mov qword [rbp + 8], r13
mov rdx, qword [rbp + 0x20]
test rdx, rdx
je 0x14007e1f9
lea rcx, [rbp + 8]
mov rax, qword [rbp + 8]
call qword [rax + 0x18]
mov qword [rbp + 0x20], r15
mov qword [rbp + 0x30], r15
mov qword [rbp + 0x28], r15
mov qword [rbp + 8], r12
mov qword [rbp - 0x18], r12
test edi, edi
je 0x14007e30b
lea r8, str.S1GameS1DataDataCenter_Final_TW.dat
lea rdx, vtable.CVolCommonBaseWithMemManager.0
lea rcx, [rbp + 0x78]
call fcn.1400ccda0
mov rdi, rax
lea r8, str.S1GameS1DataDataCenter_FinaI_TW.dat
lea rdx, vtable.CVolCommonBaseWithMemManager.0
lea rcx, [rbp - 0x18]
call fcn.1400ccda0
nop
mov rdx, qword [rdi + 0x18]
test rdx, rdx
jne 0x14007e261
cmp qword [rdi + 0x48], rdx
lea rdx, [0x1401eac10]
je 0x14007e261
mov rdx, qword [rdi + 0x38]
mov rcx, qword [rax + 0x18]
test rcx, rcx
jne 0x14007e27b
cmp qword [rax + 0x48], rcx
lea rcx, [0x1401eac10]
je 0x14007e27b
mov rcx, qword [rax + 0x38]
call qword [sym.imp.KERNEL32.dll_MoveFileW]
nop
lea rax, [rbp + 8]
mov qword [rbp + 0x2b0], rax
mov qword [rbp + 8], r13
mov rdx, qword [rbp + 0x20]
test rdx, rdx
je 0x14007e2a5
lea rcx, [rbp + 8]
mov rax, qword [rbp + 8]
call qword [rax + 0x18]
mov qword [rbp + 0x20], r15
mov qword [rbp + 0x30], r15
mov qword [rbp + 0x28], r15
mov qword [rbp + 8], r12
mov qword [rbp - 0x18], r12
lea rax, [rbp + 0x98]
mov qword [rbp + 0x2b0], rax
mov qword [rbp + 0x98], r13
mov rdx, qword [rbp + 0xb0]
test rdx, rdx
je 0x14007e2eb
lea rcx, [rbp + 0x98]
mov rax, qword [rbp + 0x98]
call qword [rax + 0x18]
mov qword [rbp + 0xb0], r15
mov qword [rbp + 0xc0], r15
mov qword [rbp + 0xb8], r15
mov qword [rbp + 0x98], r12
mov qword [rbp + 0x78], r12
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x48], r15
lea rsi, vtable.CWString.0
mov qword [rsp + 0x38], rsi
lea rax, [rsp + 0x58]
mov qword [rbp + 0x2b0], rax
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x68], r15
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x70], r15
mov qword [rbp - 0x80], r15
mov qword [rsp + 0x78], r15
mov qword [rbp - 0x78], 0x40
mov qword [rsp + 0x50], r15
mov qword [rbp - 0x78], 0xfe
mov dword [rsp + 0x30], ebx
lea rdx, [rsp + 0x38]
xor ecx, ecx
call fcn.1400c1e00
lea r8, str.initdatadata.bin
lea rdx, [rsp + 0x38]
lea rcx, [rbp - 0x18]
call fcn.1400ccda0
nop
mov rcx, qword [rax + 0x18]
test rcx, rcx
jne 0x14007e3b3
cmp qword [rax + 0x48], rcx
lea rcx, [0x1401eac10]
je 0x14007e3b3
mov rcx, qword [rax + 0x38]
call fcn.1400c2120
mov rdi, rax
lea rax, [rbp + 8]
mov qword [rbp + 0x2b0], rax
mov qword [rbp + 8], r13
mov rdx, qword [rbp + 0x20]
test rdx, rdx
je 0x14007e3de
lea rcx, [rbp + 8]
mov rax, qword [rbp + 8]
call qword [rax + 0x18]
mov qword [rbp + 0x20], r15
mov qword [rbp + 0x30], r15
mov qword [rbp + 0x28], r15
mov qword [rbp + 8], r12
mov qword [rbp - 0x18], r12
and ebx, 0xfffffffe
mov dword [rsp + 0x30], ebx
lea rax, [rsp + 0x58]
mov qword [rbp + 0x2b0], rax
mov qword [rsp + 0x58], r13
mov rdx, qword [rsp + 0x70]
test rdx, rdx
je 0x14007e421
lea rcx, [rsp + 0x58]
mov rax, qword [rsp + 0x58]
call qword [rax + 0x18]
mov qword [rsp + 0x70], r15
mov qword [rbp - 0x80], r15
mov qword [rsp + 0x78], r15
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x38], r12
test edi, edi
je 0x14007e690
mov qword [rbp - 0x70], r14
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x68], r15
mov qword [rbp - 0x60], r15
mov qword [rbp - 0x70], rsi
lea rax, [rbp - 0x50]
mov qword [rbp + 0x2b0], rax
mov qword [rbp - 0x50], r14
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x48], r15
mov qword [rbp - 0x40], r15
mov qword [rbp - 0x50], r13
mov qword [rbp - 0x38], r15
mov qword [rbp - 0x28], r15
mov qword [rbp - 0x30], r15
mov qword [rbp - 0x20], 0x40
mov qword [rbp - 0x58], r15
mov qword [rbp - 0x20], 0xfe
or ebx, 4
mov dword [rsp + 0x30], ebx
lea rdx, [rbp - 0x70]
xor ecx, ecx
call fcn.1400c1e00
lea r8, str.initdatadata.db
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x78]
call fcn.1400ccda0
mov rdi, rax
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x48], r15
mov qword [rsp + 0x38], rsi
lea rax, [rsp + 0x58]
mov qword [rbp + 0x2b8], rax
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x68], r15
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x70], r15
mov qword [rbp - 0x80], r15
mov qword [rsp + 0x78], r15
mov qword [rbp - 0x78], 0x40
mov qword [rsp + 0x50], r15
mov qword [rbp - 0x78], 0xfe
or ebx, 0x10
mov dword [rsp + 0x30], ebx
lea rdx, [rsp + 0x38]
xor ecx, ecx
call fcn.1400c1e00
lea r8, str.initdatadata.bin
lea rdx, [rsp + 0x38]
lea rcx, [rbp - 0x18]
call fcn.1400ccda0
nop
mov rdx, qword [rdi + 0x18]
test rdx, rdx
jne 0x14007e561
cmp qword [rdi + 0x48], rdx
lea rdx, [0x1401eac10]
je 0x14007e561
mov rdx, qword [rdi + 0x38]
mov rcx, qword [rax + 0x18]
test rcx, rcx
jne 0x14007e57b
cmp qword [rax + 0x48], rcx
lea rcx, [0x1401eac10]
je 0x14007e57b
mov rcx, qword [rax + 0x38]
call qword [sym.imp.KERNEL32.dll_MoveFileW]
nop
lea rax, [rbp + 8]
mov qword [rbp + 0x2b0], rax
mov qword [rbp + 8], r13
mov rdx, qword [rbp + 0x20]
test rdx, rdx
je 0x14007e5a5
lea rcx, [rbp + 8]
mov rax, qword [rbp + 8]
call qword [rax + 0x18]
mov qword [rbp + 0x20], r15
mov qword [rbp + 0x30], r15
mov qword [rbp + 0x28], r15
mov qword [rbp + 8], r12
mov qword [rbp - 0x18], r12
and ebx, 0xffffffef
mov dword [rsp + 0x30], ebx
lea rax, [rsp + 0x58]
mov qword [rbp + 0x2b0], rax
mov qword [rsp + 0x58], r13
mov rdx, qword [rsp + 0x70]
test rdx, rdx
je 0x14007e5e8
lea rcx, [rsp + 0x58]
mov rax, qword [rsp + 0x58]
call qword [rax + 0x18]
mov qword [rsp + 0x70], r15
mov qword [rbp - 0x80], r15
mov qword [rsp + 0x78], r15
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x38], r12
lea rax, [rbp + 0x98]
mov qword [rbp + 0x2b0], rax
mov qword [rbp + 0x98], r13
mov rdx, qword [rbp + 0xb0]
test rdx, rdx
je 0x14007e632
lea rcx, [rbp + 0x98]
mov rax, qword [rbp + 0x98]
call qword [rax + 0x18]
mov qword [rbp + 0xb0], r15
mov qword [rbp + 0xc0], r15
mov qword [rbp + 0xb8], r15
mov qword [rbp + 0x98], r12
mov qword [rbp + 0x78], r12
and ebx, 0xfffffffb
mov dword [rsp + 0x30], ebx
lea rax, [rbp - 0x50]
mov qword [rbp + 0x2b0], rax
mov qword [rbp - 0x50], r13
mov rdx, qword [rbp - 0x38]
test rdx, rdx
je 0x14007e67c
lea rcx, [rbp - 0x50]
mov rax, qword [rbp - 0x50]
call qword [rax + 0x18]
mov qword [rbp - 0x38], r15
mov qword [rbp - 0x28], r15
mov qword [rbp - 0x30], r15
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x70], r12
mov qword [rbp + 0xd0], r13
mov rdx, qword [rbp + 0xe8]
test rdx, rdx
je 0x14007e6b4
lea rcx, [rbp + 0xd0]
mov rax, qword [rbp + 0xd0]
call qword [rax + 0x18]
mov qword [rbp + 0xe8], r15
mov qword [rbp + 0xf8], r15
mov qword [rbp + 0xf0], r15
mov qword [rbp + 0xd0], r12
mov qword [rbp + 0x40], r13
mov rdx, qword [rbp + 0x58]
test rdx, rdx
je 0x14007e6e8
lea rcx, [rbp + 0x40]
mov rax, qword [rbp + 0x40]
call qword [rax + 0x18]
mov qword [rbp + 0x58], r15
mov qword [rbp + 0x68], r15
mov qword [rbp + 0x60], r15
mov qword [rbp + 0x40], r12
mov rbx, qword [rsp + 0x3c0]
add rsp, 0x370
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret