Function at 0x140003970
Capabilities:
Terminate process

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r12
push rbp
push r14
push r15
lea rbp, [rax - 0x3f8]
sub rsp, 0x4e0
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm7
movaps xmmword [rax - 0x48], xmm8
movaps xmmword [rax - 0x58], xmm10
mov rax, qword [0x14003b010]
xor rax, rsp
mov qword [rbp + 0x390], rax
xor r14d, r14d
mov dword [rbp - 8], r14d
lea rbx, vtable.CVolCommonBaseWithMemManager.0
mov qword [rsp + 0x40], rbx
lea r15, vtable.CVolObject.0
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], r14
lea rax, vtable.rg_n1::rg_n2152.0
mov qword [rsp + 0x40], rax
lea rax, vtable.rg_n1::rg_n1727.0
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x58]
mov qword [rbp + 0xb0], rax
mov qword [rsp + 0x58], rbx
lea rsi, vtable.CMStringArray.0
mov qword [rsp + 0x58], rsi
lea rax, [rsp + 0x60]
mov qword [rbp + 0xb8], rax
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], r14
lea r12, vtable.CVolMem.0
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x78], r14
mov qword [rbp - 0x78], r14
mov qword [rbp - 0x80], r14
mov qword [rbp - 0x70], 0x40
mov qword [rbp - 0x70], 0x100
lea rcx, [rsp + 0x58]
call fcn.14000de50
mov rcx, qword [rbp - 0x78]
mov rax, rcx
shr rax, 3
cmp eax, 1
jl 0x140003c29
mov rax, qword [rsp + 0x78]
test rcx, rcx
cmove rax, r14
mov rdx, qword [rax]
mov qword [rbp - 0x60], rbx
mov qword [rbp - 0x60], r15
mov qword [rbp - 0x58], r14
mov qword [rbp - 0x50], r14
lea rax, vtable.CWString.0
mov qword [rbp - 0x60], rax
lea rcx, [rbp - 0x40]
mov qword [rbp + 0xb8], rcx
mov qword [rbp - 0x40], rbx
mov qword [rbp - 0x40], r15
mov qword [rbp - 0x38], r14
mov qword [rbp - 0x30], r14
mov qword [rbp - 0x40], r12
mov qword [rbp - 0x28], r14
mov qword [rbp - 0x18], r14
mov qword [rbp - 0x20], r14
mov qword [rbp - 0x10], 0x40
mov qword [rbp - 0x48], r14
mov qword [rbp - 0x10], 0xfe
mov qword [rbp - 0x60], rax
lea rbx, [0x1400329d0]
test rdx, rdx
cmove rdx, rbx
lea rcx, [rbp - 0x60]
call fcn.14000fff0
nop
mov rdx, qword [rbp - 0x48]
test rdx, rdx
jne 0x140003b18
cmp qword [rbp - 0x18], rdx
cmovne rbx, qword [rbp - 0x28]
mov rdx, rbx
mov rcx, r14
lea r8, str.zmkm
nop dword [rax]
nop word [rax + rax]
movzx ebx, word [rdx + rcx*2]
inc rcx
movzx eax, word [r8 + rcx*2 - 2]
sub ebx, eax
jne 0x140003b47
cmp rcx, 5
jne 0x140003b30
lea rax, [rbp - 0x40]
mov qword [rbp + 0xb8], rax
mov qword [rbp - 0x40], r12
mov rdx, qword [rbp - 0x28]
test rdx, rdx
je 0x140003b6a
lea rcx, [rbp - 0x40]
mov rax, qword [rbp - 0x40]
call qword [rax + 0x18]
mov qword [rbp - 0x28], r14
mov qword [rbp - 0x18], r14
mov qword [rbp - 0x20], r14
mov qword [rbp - 0x40], r15
mov qword [rbp - 0x60], r15
test ebx, ebx
jne 0x140003c20
lea rax, [rsp + 0x58]
mov qword [rbp + 0xb8], rax
mov qword [rsp + 0x58], rsi
mov rdx, qword [rsp + 0x78]
mov rsi, rdx
mov rdi, qword [rbp - 0x78]
test rdi, rdi
cmove rsi, r14
shr rdi, 3
mov rbx, r14
test rdi, rdi
je 0x140003bd9
mov rdx, qword [rsi + rbx*8]
test rdx, rdx
je 0x140003bcc
lea rcx, [rsp + 0x58]
mov rax, qword [rsp + 0x58]
call qword [rax + 0x18]
inc rbx
cmp rbx, rdi
jl 0x140003bb6
mov rdx, qword [rsp + 0x78]
test rdx, rdx
je 0x140003beb
lea rcx, [rsp + 0x60]
mov rax, qword [rsp + 0x60]
call qword [rax + 0x18]
mov qword [rsp + 0x78], r14
mov qword [rbp - 0x78], r14
mov qword [rbp - 0x80], r14
lea rax, [rsp + 0x60]
mov qword [rbp + 0xb8], rax
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x78], r14
mov qword [rbp - 0x78], r14
mov qword [rbp - 0x80], r14
mov qword [rsp + 0x60], r15
jmp 0x140004245
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_ExitProcess]
mov qword [rbp + 0x58], rbx
mov qword [rbp + 0x58], r15
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x68], r14
lea rax, vtable.CWString.0
mov qword [rbp + 0x58], rax
lea rcx, [rbp + 0x78]
mov qword [rbp + 0xb8], rcx
mov qword [rbp + 0x78], rbx
mov qword [rbp + 0x78], r15
mov qword [rbp + 0x80], r14
mov qword [rbp + 0x88], r14
mov qword [rbp + 0x78], r12
mov qword [rbp + 0x90], r14
mov qword [rbp + 0xa0], r14
mov qword [rbp + 0x98], r14
mov qword [rbp + 0xa8], 0x40
mov qword [rbp + 0x70], r14
mov qword [rbp + 0xa8], 0xfe
lea rdx, vtable.CWConstString.0
mov qword [rbp + 0x58], rdx
lea rcx, [0x140033044]
mov qword [rbp + 0x70], rcx
mov qword [rbp], rbx
mov qword [rbp], r15
mov qword [rbp + 8], r14
mov qword [rbp + 0x10], r14
mov qword [rbp], rax
lea rcx, [rbp + 0x20]
mov qword [rbp + 0xb8], rcx
mov qword [rbp + 0x20], rbx
mov qword [rbp + 0x20], r15
mov qword [rbp + 0x28], r14
mov qword [rbp + 0x30], r14
mov qword [rbp + 0x20], r12
mov qword [rbp + 0x38], r14
mov qword [rbp + 0x48], r14
mov qword [rbp + 0x40], r14
mov qword [rbp + 0x50], 0x40
mov qword [rbp + 0x18], r14
mov qword [rbp + 0x50], 0xfe
mov qword [rbp], rdx
lea rcx, [0x140033048]
mov qword [rbp + 0x18], rcx
mov qword [rbp - 0x60], rbx
mov qword [rbp - 0x60], r15
mov qword [rbp - 0x58], r14
mov qword [rbp - 0x50], r14
mov qword [rbp - 0x60], rax
lea rax, [rbp - 0x40]
mov qword [rbp + 0xb8], rax
mov qword [rbp - 0x40], rbx
mov qword [rbp - 0x40], r15
mov qword [rbp - 0x38], r14
mov qword [rbp - 0x30], r14
mov qword [rbp - 0x40], r12
mov qword [rbp - 0x28], r14
mov qword [rbp - 0x18], r14
mov qword [rbp - 0x20], r14
mov qword [rbp - 0x10], 0x40
mov qword [rbp - 0x48], r14
mov qword [rbp - 0x10], 0xfe
mov dword [rbp - 8], 1
mov word [rbp + 0x180], r14w
mov r8d, 0x104
lea rdx, [rbp + 0x180]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x140003de7
mov edx, 0x5c
lea rcx, [rbp + 0x180]
call fcn.1400128d0
test rax, rax
lea rbx, [rbp + 0x180]
je 0x140003dac
lea rbx, [rax + 2]
mov qword [rbp - 0x48], r14
mov rdx, qword [rbp - 0x28]
test rdx, rdx
je 0x140003dc4
lea rcx, [rbp - 0x40]
mov rax, qword [rbp - 0x40]
call qword [rax + 0x18]
mov qword [rbp - 0x28], r14
mov qword [rbp - 0x18], r14
mov qword [rbp - 0x20], r14
test rbx, rbx
je 0x140003de7
cmp word [rbx], 0
je 0x140003de7
mov rdx, rbx
lea rcx, [rbp - 0x40]
call fcn.14000efd0
lea r9, [rbp + 0x58]
lea r8, [rbp]
lea rdx, [rbp - 0x60]
lea rcx, [rbp + 0xd0]
call fcn.140001060
nop
mov rbx, qword [rax + 0x18]
test rbx, rbx
jne 0x140003e1a
cmp qword [rax + 0x48], rbx
lea rbx, [0x1400329d0]
je 0x140003e1a
mov rbx, qword [rax + 0x38]
mov rcx, rbx
call fcn.140017478
movsxd rbx, eax
lea rax, [rbp + 0xf0]
mov qword [rbp + 0xb8], rax
mov qword [rbp + 0xf0], r12
mov rdx, qword [rbp + 0x108]
test rdx, rdx
je 0x140003e57
lea rcx, [rbp + 0xf0]
mov rax, qword [rbp + 0xf0]
call qword [rax + 0x18]
mov qword [rbp + 0x108], r14
mov qword [rbp + 0x118], r14
mov qword [rbp + 0x110], r14
mov qword [rbp + 0xf0], r15
mov qword [rbp + 0xd0], r15
mov eax, 1
and eax, 0xfffffffe
mov dword [rbp - 8], eax
lea rax, [rbp - 0x40]
mov qword [rbp + 0xb8], rax
mov qword [rbp - 0x40], r12
mov rdx, qword [rbp - 0x28]
test rdx, rdx
je 0x140003ea8
lea rcx, [rbp - 0x40]
mov rax, qword [rbp - 0x40]
call qword [rax + 0x18]
mov qword [rbp - 0x28], r14
mov qword [rbp - 0x18], r14
mov qword [rbp - 0x20], r14
mov qword [rbp - 0x40], r15
mov qword [rbp - 0x60], r15
lea rax, [rbp + 0x20]
mov qword [rbp + 0xb8], rax
mov qword [rbp + 0x20], r12
mov rdx, qword [rbp + 0x38]
test rdx, rdx
je 0x140003edf
lea rcx, [rbp + 0x20]
mov rax, qword [rbp + 0x20]
call qword [rax + 0x18]
mov qword [rbp + 0x38], r14
mov qword [rbp + 0x48], r14
mov qword [rbp + 0x40], r14
mov qword [rbp + 0x20], r15
mov qword [rbp], r15
lea rax, [rbp + 0x78]
mov qword [rbp + 0xb8], rax
mov qword [rbp + 0x78], r12
mov rdx, qword [rbp + 0x90]
test rdx, rdx
je 0x140003f19
lea rcx, [rbp + 0x78]
mov rax, qword [rbp + 0x78]
call qword [rax + 0x18]
mov qword [rbp + 0x90], r14
mov qword [rbp + 0xa0], r14
mov qword [rbp + 0x98], r14
mov qword [rbp + 0x78], r15
mov qword [rbp + 0x58], r15
test rbx, rbx
jne 0x140003fdc
lea rax, [rsp + 0x58]
mov qword [rbp + 0xb8], rax
mov qword [rsp + 0x58], rsi
mov rdx, qword [rsp + 0x78]
mov rsi, rdx
mov rdi, qword [rbp - 0x78]
test rdi, rdi
cmove rsi, r14
shr rdi, 3
mov rbx, r14
test rdi, rdi
je 0x140003f93
nop
mov rdx, qword [rsi + rbx*8]
test rdx, rdx
je 0x140003f86
lea rcx, [rsp + 0x58]
mov rax, qword [rsp + 0x58]
call qword [rax + 0x18]
inc rbx
cmp rbx, rdi
jl 0x140003f70
mov rdx, qword [rsp + 0x78]
test rdx, rdx
je 0x140003fa5
lea rcx, [rsp + 0x60]
mov rax, qword [rsp + 0x60]
call qword [rax + 0x18]
mov qword [rsp + 0x78], r14
mov qword [rbp - 0x78], r14
mov qword [rbp - 0x80], r14
lea rax, [rsp + 0x60]
mov qword [rbp + 0xb8], rax
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x78], r14
mov qword [rbp - 0x78], r14
mov qword [rbp - 0x80], r14
mov qword [rsp + 0x60], r15
xor eax, eax
jmp 0x14000424a
lea rcx, [rbp + 0xb8]
call qword [sym.imp.KERNEL32.dll_GetLocalTime]
movzx eax, word [rbp + 0xc6]
movzx r10d, word [rbp + 0xc4]
movzx r11d, word [rbp + 0xc2]
movzx r9d, word [rbp + 0xc0]
movzx r8d, word [rbp + 0xbe]
movzx edx, word [rbp + 0xba]
movzx ecx, word [rbp + 0xb8]
movsd xmm6, qword [0x140034080]
movsd qword [rsp + 0x38], xmm6
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], r10
mov qword [rsp + 0x20], r11
call fcn.140010aa0
movaps xmm10, xmm0
mov dword [rbp + 0xd0], r14d
lea rcx, [rbp + 0xd0]
call qword [sym.imp.KERNEL32.dll_GetTimeZoneInformation]
imul edi, dword [rbp + 0xd0], 0x3c
xorps xmm8, xmm8
movsd xmm7, qword [0x140034078]
comisd xmm6, xmm10
ja 0x140004091
movsd xmm6, qword [0x140034058]
minsd xmm6, xmm10
ucomisd xmm6, qword [0x140034048]
jp 0x14000408b
je 0x1400040f2
comisd xmm6, xmm7
ja 0x1400040a7
movaps xmm0, xmm6
call fcn.140026bfc
movaps xmm1, xmm6
subsd xmm1, xmm0
movaps xmm6, xmm0
subsd xmm6, xmm1
subsd xmm6, qword [0x140034048]
movsd xmm0, qword [0x140034088]
comisd xmm0, xmm6
ja 0x1400040d8
movsd xmm0, qword [0x140034060]
minsd xmm0, xmm6
comisd xmm8, xmm0
ja 0x1400040d8
movsd xmm7, qword [0x140034028]
addsd xmm0, xmm7
mulsd xmm0, qword [0x140034050]
cvttsd2si rax, xmm0
xorps xmm8, xmm8
cvtsi2sd xmm8, rax
cvttsd2si eax, xmm8
add eax, edi
movsxd rcx, eax
sub rcx, rbx
cmp rcx, 0x78
jle 0x1400041ac
lea rax, [rsp + 0x58]
mov qword [rbp + 0xb8], rax
mov qword [rsp + 0x58], rsi
mov rdx, qword [rsp + 0x78]
mov rsi, rdx
mov rdi, qword [rbp - 0x78]
test rdi, rdi
cmove rsi, r14
shr rdi, 3
mov rbx, r14
test rdi, rdi
je 0x140004163
nop dword [rax]
mov rdx, qword [rsi + rbx*8]
test rdx, rdx
je 0x140004156
lea rcx, [rsp + 0x58]
mov rax, qword [rsp + 0x58]
call qword [rax + 0x18]
inc rbx
cmp rbx, rdi
jl 0x140004140
mov rdx, qword [rsp + 0x78]
test rdx, rdx
je 0x140004175
lea rcx, [rsp + 0x60]
mov rax, qword [rsp + 0x60]
call qword [rax + 0x18]
mov qword [rsp + 0x78], r14
mov qword [rbp - 0x78], r14
mov qword [rbp - 0x80], r14
lea rax, [rsp + 0x60]
mov qword [rbp + 0xb8], rax
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x78], r14
mov qword [rbp - 0x78], r14
mov qword [rbp - 0x80], r14
mov qword [rsp + 0x60], r15
xor eax, eax
jmp 0x14000424a
lea rax, [rsp + 0x58]
mov qword [rbp + 0xb8], rax
mov qword [rsp + 0x58], rsi
mov rdx, qword [rsp + 0x78]
mov rsi, rdx
mov rdi, qword [rbp - 0x78]
test rdi, rdi
cmove rsi, r14
shr rdi, 3
mov rbx, r14
test rdi, rdi
je 0x140004203
nop dword [rax]
mov rdx, qword [rsi + rbx*8]
test rdx, rdx
je 0x1400041f6
lea rcx, [rsp + 0x58]
mov rax, qword [rsp + 0x58]
call qword [rax + 0x18]
inc rbx
cmp rbx, rdi
jl 0x1400041e0
mov rdx, qword [rsp + 0x78]
test rdx, rdx
je 0x140004215
lea rcx, [rsp + 0x60]
mov rax, qword [rsp + 0x60]
call qword [rax + 0x18]
mov qword [rsp + 0x78], r14
mov qword [rbp - 0x78], r14
mov qword [rbp - 0x80], r14
lea rax, [rsp + 0x60]
mov qword [rbp + 0xb8], rax
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x78], r14
mov qword [rbp - 0x78], r14
mov qword [rbp - 0x80], r14
mov qword [rsp + 0x60], r15
mov eax, 1
mov qword [rsp + 0x40], r15
mov rcx, qword [rbp + 0x390]
xor rcx, rsp
call fcn.140010cf0
lea r11, [rsp + 0x4e0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm10, xmmword [r11 - 0x40]
mov rsp, r11
pop r15
pop r14
pop rbp
ret