Function at 0x180040f10
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x138]
sub rsp, 0x210
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
mov rax, qword [0x1800eb3c0]
xor rax, rsp
mov qword [rbp + 0xd0], rax
mov rdi, rcx
mov qword [rsp + 0x40], rcx
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
mov ecx, 0x40
call fcn.1800a5f90
mov rcx, rax
mov qword [rsp + 0x70], rax
mov qword [rbp - 0x80], 0x3e
mov qword [rbp - 0x78], 0x3f
movups xmm0, xmmword [str.Automatically_places_and_breaks_end_crystals_to_kill_opponents]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x1800cbb38]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [0x1800cbb48]
movups xmmword [rax + 0x20], xmm0
movsd xmm0, qword [0x1800cbb58]
movsd qword [rax + 0x30], xmm0
mov eax, dword [0x1800cbb60]
mov dword [rcx + 0x38], eax
movzx eax, word [0x1800cbb64]
mov word [rcx + 0x3c], ax
mov byte [rcx + 0x3e], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], 0xb
mov qword [rsp + 0x60], 0xf
movsd xmm0, qword [str.CrystalAura]
movsd qword [rsp + 0x48], xmm0
movzx eax, word [0x1800cbb20]
mov word [rsp + 0x50], ax
movzx eax, byte [0x1800cbb22]
mov byte [rsp + 0x52], al
mov byte [rsp + 0x53], 0
xor r15d, r15d
mov dword [rsp + 0x20], r15d
xor r9d, r9d
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x48]
mov rcx, rdi
call fcn.18004a870
nop
mov rdx, qword [rsp + 0x60]
cmp rdx, 0xf
jbe 0x18004106e
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180041068
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180041068
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800a6344
nop
mov rdx, qword [rbp - 0x78]
cmp rdx, 0xf
jbe 0x1800410ad
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800410a8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800410a8
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800a6344
lea rax, vtable.CrystalAura.0
mov qword [rdi], rax
lea rbx, [rdi + 0x98]
mov dword [rbx], 0x4099999a
lea rsi, [rdi + 0x9c]
mov dword [rsi], 0x40900000
lea r14, [rdi + 0xa0]
mov dword [r14], 0x41000000
mov dword [rdi + 0xa4], 1
mov dword [rdi + 0xa8], 0x4099999a
mov dword [rdi + 0xac], 0x40000000
mov qword [rdi + 0xb0], 0x41000000
mov dword [rdi + 0xb8], r15d
mov word [rdi + 0xbc], 0x101
mov byte [rdi + 0xbe], 0
mov dword [rdi + 0xc0], 0x41a00000
mov byte [rdi + 0xc4], 1
mov dword [rdi + 0xc8], 9
mov word [rdi + 0xcc], 0x101
mov qword [rdi + 0xd0], 0x40900000
mov dword [rdi + 0xd8], 0x40b00000
mov dword [rdi + 0xdc], 0x40e00000
mov dword [rdi + 0xe0], 0x1e
mov dword [rdi + 0xe4], 0xa7
mov dword [rdi + 0xe8], 0xff
mov dword [rdi + 0xec], 0x4b
mov dword [rdi + 0xf0], 0x1e
mov dword [rdi + 0xf4], 0xa7
mov dword [rdi + 0xf8], 0xff
mov dword [rdi + 0xfc], 0x96
mov word [rdi + 0x100], 1
mov qword [rdi + 0x104], r15
mov qword [rdi + 0x114], r15
mov qword [rdi + 0x11c], r15
mov qword [rdi + 0x124], r15
mov qword [rdi + 0x12c], r15
mov qword [rdi + 0x134], r15
mov qword [rdi + 0x13c], r15
mov qword [rdi + 0x144], r15
mov qword [rdi + 0x14c], r15
mov qword [rdi + 0x154], r15
mov qword [rdi + 0x15c], r15
mov qword [rdi + 0x164], r15
mov qword [rdi + 0x170], r15
mov qword [rdi + 0x178], r15
mov qword [rdi + 0x180], r15
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
mov ecx, 0x20
call fcn.1800a5f90
mov rcx, rax
mov qword [rsp + 0x70], rax
mov qword [rbp - 0x80], 0x1e
mov qword [rbp - 0x78], 0x1f
movups xmm0, xmmword [str.How_far_away_to_place_crystals]
movups xmmword [rax], xmm0
movsd xmm0, qword [0x1800cbb08]
movsd qword [rax + 0x10], xmm0
mov eax, dword [0x1800cbb10]
mov dword [rcx + 0x18], eax
movzx eax, word [0x1800cbb14]
mov word [rcx + 0x1c], ax
mov byte [rcx + 0x1e], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], 0xb
mov qword [rsp + 0x60], 0xf
movsd xmm0, qword [str.Place_Range]
movsd qword [rsp + 0x48], xmm0
movzx eax, word [0x1800cb130]
mov word [rsp + 0x50], ax
movzx eax, byte [0x1800cb132]
mov byte [rsp + 0x52], al
mov byte [rsp + 0x53], 0
movss xmm8, dword [0x1800d4e70]
movss dword [rsp + 0x30], xmm8
movss xmm6, dword [0x1800d4dcc]
movss dword [rsp + 0x28], xmm6
mov qword [rsp + 0x20], rbx
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x48]
mov rcx, rdi
call fcn.1800267a0
nop
mov rdx, qword [rsp + 0x60]
cmp rdx, 0xf
jbe 0x180041338
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180041332
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180041332
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800a6344
nop
mov rdx, qword [rbp - 0x78]
cmp rdx, 0xf
jbe 0x180041374
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004136f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180041e5f
call fcn.1800a6344
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
mov ecx, 0x40
call fcn.1800a5f90
mov rcx, rax
mov qword [rsp + 0x70], rax
mov qword [rbp - 0x80], 0x3e
mov qword [rbp - 0x78], 0x3f
movups xmm0, xmmword [str.The_minimum_damage_a_crystal_must_do_to_the_enemy_when_placing]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x1800cbac8]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [0x1800cbad8]
movups xmmword [rax + 0x20], xmm0
movsd xmm0, qword [0x1800cbae8]
movsd qword [rax + 0x30], xmm0
mov eax, dword [0x1800cbaf0]
mov dword [rcx + 0x38], eax
movzx eax, word [0x1800cbaf4]
mov word [rcx + 0x3c], ax
mov byte [rcx + 0x3e], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov ecx, 0x20
call fcn.1800a5f90
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x58], 0x10
mov qword [rsp + 0x60], 0x1f
movups xmm0, xmmword [str.Min_Place_Damage]
movups xmmword [rax], xmm0
mov byte [rax + 0x10], 0
movss xmm7, dword [0x1800d4e88]
movss dword [rsp + 0x30], xmm7
movss dword [rsp + 0x28], xmm6
mov qword [rsp + 0x20], rsi
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x48]
mov rcx, rdi
call fcn.1800267a0
nop
mov rdx, qword [rsp + 0x60]
cmp rdx, 0xf
jbe 0x180041487
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180041481
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180041481
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800a6344
nop
mov rdx, qword [rbp - 0x78]
cmp rdx, 0xf
jbe 0x1800414c3
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800414be
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180041e5f
call fcn.1800a6344
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
mov ecx, 0x40
call fcn.1800a5f90
mov rcx, rax
mov qword [rsp + 0x70], rax
mov qword [rbp - 0x80], 0x3c
mov qword [rbp - 0x78], 0x3f
movups xmm0, xmmword [str.The_maximum_damage_a_crystal_can_do_to_yourself_when_placing]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x1800cbbd0]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [0x1800cbbe0]
movups xmmword [rax + 0x20], xmm0
movsd xmm0, qword [0x1800cbbf0]
movsd qword [rax + 0x30], xmm0
mov eax, dword [0x1800cbbf8]
mov dword [rcx + 0x38], eax
mov byte [rcx + 0x3c], 0
mov word [rsp + 0x56], r15w
mov qword [rsp + 0x58], 0xe
mov qword [rsp + 0x60], 0xf
movsd xmm0, qword [str.Max_Self_Place]
movsd qword [rsp + 0x48], xmm0
mov eax, dword [0x1800cbbb8]
mov dword [rsp + 0x50], eax
movzx eax, word [0x1800cbbbc]
mov word [rsp + 0x54], ax
mov byte [rsp + 0x56], 0
movss dword [rsp + 0x30], xmm7
movss dword [rsp + 0x28], xmm6
mov qword [rsp + 0x20], r14
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x48]
mov rcx, rdi
call fcn.1800267a0
nop
mov rdx, qword [rsp + 0x60]
cmp rdx, 0xf
jbe 0x1800415cd
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800415c7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800415c7
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800a6344
nop
mov rdx, qword [rbp - 0x78]
cmp rdx, 0xf
jbe 0x180041609
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180041604
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180041e5f
call fcn.1800a6344
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
mov ecx, 0x30
call fcn.1800a5f90
mov rsi, rax
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x20], 0x22
mov r12d, 0x2f
mov r13d, r12d
mov qword [rbp + 0x28], r12
movups xmm0, xmmword [str.The_delay_between_placing_crystals]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x1800cbb98]
movups xmmword [rax + 0x10], xmm1
movzx eax, word [0x1800cbba8]
mov word [rsi + 0x20], ax
mov byte [rsi + 0x22], 0
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x20], 0xb
mov r15d, 0xf
mov qword [rbp - 0x18], r15
movsd xmm0, qword [str.Place_Delay]
movsd qword [rbp - 0x30], xmm0
movzx eax, word [0x1800cb418]
mov word [rbp - 0x28], ax
movzx eax, byte [0x1800cb41a]
mov byte [rbp - 0x26], al
mov byte [rbp - 0x25], 0
lea ecx, [r12 + 0x71]
call fcn.1800a5f90
mov rbx, rax
mov qword [rsp + 0x70], rax
xor edx, edx
lea r8d, [r12 + 0x71]
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
xor eax, eax
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x18], r15
mov byte [rbx], al
lea r14, [rbx + 0x20]
movups xmmword [r14], xmm0
mov qword [r14 + 0x10], rax
mov qword [r14 + 0x18], r15
mov byte [r14], al
mov qword [rbx + 0x48], rax
mov qword [rbx + 0x50], rax
mov qword [rbx + 0x58], rax
mov qword [rbx + 0x60], rax
mov qword [rbx + 0x68], rax
mov byte [rbx + 0x70], al
mov qword [rbx + 0x78], rax
mov qword [rbx + 0x80], rax
mov qword [rbx + 0x88], rax
mov dword [rbx + 0x90], eax
mov qword [rbx + 0x94], rax
mov dword [rbx + 0x9c], eax
mov qword [rsp + 0x70], rbx
lea rax, [rbp - 0x30]
cmp rbx, rax
je 0x18004173e
lea rdx, [rbp - 0x30]
lea r8d, [r12 - 0x24]
mov rcx, rbx
call fcn.180008450
mov r15, qword [rbp - 0x18]
lea rax, [rbp + 0x10]
cmp r14, rax
je 0x180041760
mov r8d, 0x22
mov rdx, rsi
mov rcx, r14
call fcn.180008450
mov r13, qword [rbp + 0x28]
mov rsi, qword [rbp + 0x10]
mov dword [rbx + 0x40], 1
mov dword [rbx + 0x44], 1
lea rax, [rdi + 0xa4]
mov qword [rbx + 0x48], rax
mov ecx, 4
call fcn.1800a5f90
xor ecx, ecx
mov dword [rax], ecx
mov qword [rbx + 0x50], rax
mov ecx, 4
call fcn.1800a5f90
mov dword [rax], 0x14
mov qword [rbx + 0x58], rax
mov rdx, qword [rdi + 0x80]
cmp rdx, qword [rdi + 0x88]
je 0x1800417bc
mov qword [rdx], rbx
add qword [rdi + 0x80], 8
jmp 0x1800417cb
lea r8, [rsp + 0x70]
lea rcx, [rdi + 0x78]
call fcn.18000c000
nop
cmp r15, 0xf
jbe 0x180041807
lea rdx, [r15 + 1]
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180041801
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180041801
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800a6344
nop
cmp r13, 0xf
jbe 0x18004183e
lea rdx, [r13 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x180041836
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180041e5f
mov rcx, rsi
call fcn.1800a6344
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
mov ecx, 0x20
call fcn.1800a5f90
mov rcx, rax
mov qword [rsp + 0x70], rax
mov qword [rbp - 0x80], 0x1e
mov qword [rbp - 0x78], 0x1f
movups xmm0, xmmword [str.How_far_away_to_break_crystals]
movups xmmword [rax], xmm0
movsd xmm0, qword [0x1800cbb78]
movsd qword [rax + 0x10], xmm0
mov eax, dword [0x1800cbb80]
mov dword [rcx + 0x18], eax
movzx eax, word [0x1800cbb84]
mov word [rcx + 0x1c], ax
mov byte [rcx + 0x1e], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], 0xb
mov qword [rsp + 0x60], 0xf
movsd xmm0, qword [str.Break_Range]
movsd qword [rsp + 0x48], xmm0
movzx eax, word [0x1800cb468]
mov word [rsp + 0x50], ax
movzx eax, byte [0x1800cb46a]
mov byte [rsp + 0x52], al
mov byte [rsp + 0x53], 0
movss dword [rsp + 0x30], xmm8
movss dword [rsp + 0x28], xmm6
lea rax, [rdi + 0xa8]
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x48]
mov rcx, rdi
call fcn.1800267a0
nop
mov rdx, qword [rsp + 0x60]
cmp rdx, 0xf
jbe 0x180041948
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180041942
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180041942
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800a6344
nop
mov rdx, qword [rbp - 0x78]
cmp rdx, 0xf
jbe 0x180041984
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004197f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180041e5f
call fcn.1800a6344
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
mov ecx, 0x40
call fcn.1800a5f90
mov rcx, rax
mov qword [rsp + 0x70], rax
mov qword [rbp - 0x80], 0x3f
mov qword [rbp - 0x78], 0x3f
movaps xmm0, xmmword [str.The_minimum_damage_a_crystal_must_do_to_the_enemy_when_breaking]
movups xmmword [rax], xmm0
movaps xmm1, xmmword [0x1800cbc90]
movups xmmword [rax + 0x10], xmm1
movaps xmm0, xmmword [0x1800cbca0]
movups xmmword [rax + 0x20], xmm0
movsd xmm0, qword [0x1800cbcb0]
movsd qword [rax + 0x30], xmm0
mov eax, dword [0x1800cbcb8]
mov dword [rcx + 0x38], eax
movzx eax, word [0x1800cbcbc]
mov word [rcx + 0x3c], ax
movzx eax, byte [0x1800cbcbe]
mov byte [rcx + 0x3e], al
mov byte [rcx + 0x3f], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov ecx, 0x20
call fcn.1800a5f90
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x58], 0x10
mov qword [rsp + 0x60], 0x1f
movups xmm0, xmmword [str.Min_Break_Damage]
movups xmmword [rax], xmm0
mov byte [rax + 0x10], 0
movss dword [rsp + 0x30], xmm7
movss dword [rsp + 0x28], xmm6
lea rax, [rdi + 0xac]
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x48]
mov rcx, rdi
call fcn.1800267a0
nop
mov rdx, qword [rsp + 0x60]
cmp rdx, 0xf
jbe 0x180041aa0
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180041a9a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180041a9a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800a6344
nop
mov rdx, qword [rbp - 0x78]
cmp rdx, 0xf
jbe 0x180041adc
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180041ad7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180041e5f
call fcn.1800a6344
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
mov ecx, 0x40
call fcn.1800a5f90
mov rcx, rax
mov qword [rsp + 0x70], rax
mov qword [rbp - 0x80], 0x3d
mov qword [rbp - 0x78], 0x3f
movups xmm0, xmmword [str.The_maximum_damage_a_crystal_can_do_to_yourself_when_breaking]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x1800cbc48]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [0x1800cbc58]
movups xmmword [rax + 0x20], xmm0
movsd xmm0, qword [0x1800cbc68]
movsd qword [rax + 0x30], xmm0
mov eax, dword [0x1800cbc70]
mov dword [rcx + 0x38], eax
movzx eax, byte [0x1800cbc74]
mov byte [rcx + 0x3c], al
mov byte [rcx + 0x3d], 0
xor eax, eax
mov word [rsp + 0x56], ax
mov qword [rsp + 0x58], 0xe
mov qword [rsp + 0x60], 0xf
movsd xmm0, qword [str.Max_Self_Break]
movsd qword [rsp + 0x48], xmm0
mov eax, dword [0x1800cbc30]
mov dword [rsp + 0x50], eax
movzx eax, word [0x1800cbc34]
mov word [rsp + 0x54], ax
mov byte [rsp + 0x56], 0
movss dword [rsp + 0x30], xmm7
movss dword [rsp + 0x28], xmm6
lea rax, [rdi + 0xb0]
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x48]
mov rcx, rdi
call fcn.1800267a0
nop
mov rdx, qword [rsp + 0x60]
cmp rdx, 0xf
jbe 0x180041bf8
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180041bf2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180041bf2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800a6344
nop
mov rdx, qword [rbp - 0x78]
cmp rdx, 0xf
jbe 0x180041c34
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180041c2f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180041e5f
call fcn.1800a6344
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
mov ecx, 0x30
call fcn.1800a5f90
mov rsi, rax
mov qword [rbp + 0x30], rax
mov qword [rbp + 0x40], 0x23
mov qword [rbp + 0x48], r12
movups xmm0, xmmword [str.The_delay_between_breaking_crystals]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x1800cbc10]
movups xmmword [rax + 0x10], xmm1
movzx eax, word [0x1800cbc20]
mov word [rsi + 0x20], ax
movzx eax, byte [0x1800cbc22]
mov byte [rsi + 0x22], al
mov byte [rsi + 0x23], 0
xorps xmm0, xmm0
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp], 0xb
mov r13d, 0xf
mov qword [rbp + 8], r13
movsd xmm0, qword [str.Break_Delay]
movsd qword [rbp - 0x10], xmm0
movzx eax, word [0x1800cb458]
mov word [rbp - 8], ax
movzx eax, byte [0x1800cb45a]
mov byte [rbp - 6], al
mov byte [rbp - 5], 0
mov ecx, 0xa0
call fcn.1800a5f90
mov rbx, rax
mov qword [rsp + 0x70], rax
xor edx, edx
mov r8d, 0xa0
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
xor eax, eax
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x18], r13
mov byte [rbx], al
lea r15, [rbx + 0x20]
movups xmmword [r15], xmm0
mov qword [r15 + 0x10], rax
mov qword [r15 + 0x18], r13
mov byte [r15], al
mov qword [rbx + 0x48], rax
mov qword [rbx + 0x50], rax
mov qword [rbx + 0x58], rax
mov qword [rbx + 0x60], rax
mov qword [rbx + 0x68], rax
mov byte [rbx + 0x70], al
mov qword [rbx + 0x78], rax
mov qword [rbx + 0x80], rax
mov qword [rbx + 0x88], rax
mov dword [rbx + 0x90], eax
mov qword [rbx + 0x94], rax
mov dword [rbx + 0x9c], eax
mov qword [rsp + 0x70], rbx
lea rax, [rbp - 0x10]
cmp rbx, rax
je 0x180041d6a
lea rdx, [rbp - 0x10]
lea r8d, [r13 - 4]
mov rcx, rbx
call fcn.180008450
mov r13, qword [rbp + 8]
lea rax, [rbp + 0x30]
cmp r15, rax
je 0x180041d8c
mov r8d, 0x23
mov rdx, rsi
mov rcx, r15
call fcn.180008450
mov r12, qword [rbp + 0x48]
mov rsi, qword [rbp + 0x30]
mov dword [rbx + 0x40], 1
mov dword [rbx + 0x44], 1
lea rax, [rdi + 0xb4]
mov qword [rbx + 0x48], rax
mov ecx, 4
call fcn.1800a5f90
xor ecx, ecx
mov dword [rax], ecx
mov qword [rbx + 0x50], rax
mov ecx, 4
call fcn.1800a5f90
mov dword [rax], 0x14
mov qword [rbx + 0x58], rax
mov rdx, qword [rdi + 0x80]
cmp rdx, qword [rdi + 0x88]
je 0x180041de8
mov qword [rdx], rbx
add qword [rdi + 0x80], 8
jmp 0x180041df7
lea r8, [rsp + 0x70]
lea rcx, [rdi + 0x78]
call fcn.18000c000
nop
cmp r13, 0xf
jbe 0x180041e33
lea rdx, [r13 + 1]
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180041e2d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180041e2d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800a6344
nop
cmp r12, 0xf
jbe 0x180041e6e
lea rdx, [r12 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x180041e66
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180041e66
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rsi
call fcn.1800a6344
xorps xmm0, xmm0
movups xmmword [rbp + 0x50], xmm0
mov qword [rbp + 0x60], 6
mov qword [rbp + 0x68], 0xf
mov eax, dword [str.Nukkit]
mov dword [rbp + 0x50], eax
movzx eax, word [0x1800cafac]
mov word [rbp + 0x54], ax
mov byte [rbp + 0x56], 0
movups xmmword [rbp + 0x70], xmm0
mov qword [rbp + 0x80], 4
mov qword [rbp + 0x88], 0xf
mov eax, dword [str.Auto]
mov dword [rbp + 0x70], eax
mov byte [rbp + 0x74], 0
movups xmmword [rbp + 0x90], xmm0
mov qword [rbp + 0xa0], 6
mov qword [rbp + 0xa8], 0xf
mov r8d, 6
lea rdx, str.Geyser
lea rcx, [rbp + 0x90]
call fcn.180008640
mov byte [rbp + 0x96], 0
lea rdx, str.None
lea rcx, [rbp + 0xb0]
call fcn.180007c20
nop
lea rax, [rbp + 0x50]
mov qword [rsp + 0x70], rax
lea rax, [rbp + 0xd0]
mov qword [rsp + 0x78], rax
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x70], xmm0
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x48]
call fcn.18000bad0
nop
lea rdx, str.How_it_should_switch_to_crystals_when_placing
lea rcx, [rbp - 0x50]
call fcn.180007c20
nop
lea rdx, str.Switching
lea rcx, [rbp - 0x70]
call fcn.180007c20
nop
lea rax, [rdi + 0xb8]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x48]
lea r8, [rbp - 0x50]
lea rdx, [rbp - 0x70]
mov rcx, rdi
call fcn.180027090
nop
lea rcx, [rbp - 0x70]
call fcn.180007bc0
nop
lea rcx, [rbp - 0x50]
call fcn.180007bc0
nop
lea rcx, [rsp + 0x48]
call fcn.18000b9a0
nop
lea r9, [fcn.180007bc0]
mov edx, 0x20
lea r8d, [rdx - 0x1c]
lea rcx, [rbp + 0x50]
call fcn.1800a6378
lea rdx, str.Pauses_the_module_when_you_eat
lea rcx, [rbp - 0x70]
call fcn.180007c20
nop
lea rdx, str.Pause_On_Eat
lea rcx, [rbp - 0x50]
call fcn.180007c20
nop
lea r9, [rdi + 0xbc]
lea r8, [rbp - 0x70]
lea rdx, [rbp - 0x50]
mov rcx, rdi
call fcn.180025020
nop
lea rcx, [rbp - 0x50]
call fcn.180007bc0
nop
lea rcx, [rbp - 0x70]
call fcn.180007bc0
lea rdx, str.Rotates_to_crystals_when_breaking
lea rcx, [rbp - 0x70]
call fcn.180007c20
nop
lea rdx, str.Rotate
lea rcx, [rbp - 0x50]
call fcn.180007c20
nop
lea r9, [rdi + 0xbd]
lea r8, [rbp - 0x70]
lea rdx, [rbp - 0x50]
mov rcx, rdi
call fcn.180025020
nop
lea rcx, [rbp - 0x50]
call fcn.180007bc0
nop
lea rcx, [rbp - 0x70]
call fcn.180007bc0
lea rdx, str.Allows_1.13_placements_where_crystals_can_be_placed_inside_1_block_high_spaces
lea rcx, [rbp - 0x70]
call fcn.180007c20
nop
lea rdx, str.1.13
lea rcx, [rbp - 0x50]
call fcn.180007c20
nop
lea r9, [rdi + 0xbe]
lea r8, [rbp - 0x70]
lea rdx, [rbp - 0x50]
mov rcx, rdi
call fcn.180025020
nop
lea rcx, [rbp - 0x50]
call fcn.180007bc0
nop
lea rcx, [rbp - 0x70]
call fcn.180007bc0
lea rdx, str.Predicts_the_ids_of_crystals_registered_on_the_server_to_break_them_ahead_of_time
lea rcx, [rbp - 0x70]
call fcn.180007c20
nop
lea rdx, str.ID_Predict
lea rcx, [rbp - 0x50]
call fcn.180007c20
nop
lea r9, [rdi + 0xc4]
lea r8, [rbp - 0x70]
lea rdx, [rbp - 0x50]
mov rcx, rdi
call fcn.180025020
nop
lea rcx, [rbp - 0x50]
call fcn.180007bc0
nop
lea rcx, [rbp - 0x70]
call fcn.180007bc0
lea rdx, str.How_many_crystals_to_predict_ahead_of_time
lea rcx, [rbp - 0x70]
call fcn.180007c20
nop
lea rdx, str.ID_Predict_Factor
lea rcx, [rbp - 0x50]
call fcn.180007c20
nop
mov dword [rsp + 0x30], 0xf
mov dword [rsp + 0x28], 1
lea rax, [rdi + 0xc8]
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x70]
lea rdx, [rbp - 0x50]
mov rcx, rdi
call fcn.18002e6d0
nop
lea rcx, [rbp - 0x50]
call fcn.180007bc0
nop
lea rcx, [rbp - 0x70]
call fcn.180007bc0
lea rdx, str.Whether_or_not_to_place_supporting_base_blocks_for_crystals
lea rcx, [rbp - 0x70]
call fcn.180007c20
nop
lea rdx, str.Place_Crystal_Base
lea rcx, [rbp - 0x50]
call fcn.180007c20
nop
lea r9, [rdi + 0xcc]
lea r8, [rbp - 0x70]
lea rdx, [rbp - 0x50]
mov rcx, rdi
call fcn.180025020
nop
lea rcx, [rbp - 0x50]
call fcn.180007bc0
nop
lea rcx, [rbp - 0x70]
call fcn.180007bc0
lea rdx, str.Whether_or_not_to_allow_base_place_positions_in_the_middle_of_the_air
lea rcx, [rbp - 0x70]
call fcn.180007c20
nop
lea rdx, str.Air_Place
lea rcx, [rbp - 0x50]
call fcn.180007c20
nop
lea r9, [rdi + 0xcd]
lea r8, [rbp - 0x70]
lea rdx, [rbp - 0x50]
mov rcx, rdi
call fcn.180025020
nop
lea rcx, [rbp - 0x50]
call fcn.180007bc0
nop
lea rcx, [rbp - 0x70]
call fcn.180007bc0
lea rdx, str.If_a_new_base_place_position_is_found_this_is_the_damage_it_must_do_more_than_the_old_position_to_be_valid
lea rcx, [rbp - 0x70]
call fcn.180007c20
nop
lea rdx, str.Switch_Difference
lea rcx, [rbp - 0x50]
call fcn.180007c20
nop
movss dword [rsp + 0x30], xmm7
movss dword [rsp + 0x28], xmm6
lea rax, [rdi + 0xd0]
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x70]
lea rdx, [rbp - 0x50]
mov rcx, rdi
call fcn.1800267a0
nop
lea rcx, [rbp - 0x50]
call fcn.180007bc0
nop
lea rcx, [rbp - 0x70]
call fcn.180007bc0
lea rdx, str.Nukkit
lea rcx, [rbp + 0x50]
call fcn.180007c20
nop
lea rdx, str.Geyser
lea rcx, [rbp + 0x70]
call fcn.180007c20
nop
lea rax, [rbp + 0x50]
mov qword [rsp + 0x70], rax
lea rax, [rbp + 0x90]
mov qword [rsp + 0x78], rax
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x70], xmm0
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x48]
call fcn.18000bad0
nop
lea rdx, str.How_to_switch_to_obsidian_when_placing_blocks
lea rcx, [rbp - 0x70]
call fcn.180007c20
nop
lea rdx, str.Place_Switching
lea rcx, [rbp - 0x50]
call fcn.180007c20
nop
lea rax, [rdi + 0xd4]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x48]
lea r8, [rbp - 0x70]
lea rdx, [rbp - 0x50]
mov rcx, rdi
call fcn.180027090
nop
lea rcx, [rbp - 0x50]
call fcn.180007bc0
nop
lea rcx, [rbp - 0x70]
call fcn.180007bc0
nop
lea rcx, [rsp + 0x48]
call fcn.18000b9a0
nop
lea r9, [fcn.180007bc0]
mov edx, 0x20
lea r8d, [rdx - 0x1e]
lea rcx, [rbp + 0x50]
call fcn.1800a6378
lea rdx, str.The_minimum_damage_a_crystal_base_must_do_to_the_enemy
lea rcx, [rbp - 0x70]
call fcn.180007c20
nop
lea rdx, str.Base_Min_Damage
lea rcx, [rbp - 0x50]
call fcn.180007c20
nop
movss dword [rsp + 0x30], xmm7
movss dword [rsp + 0x28], xmm6
lea rax, [rdi + 0xd8]
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x70]
lea rdx, [rbp - 0x50]
mov rcx, rdi
call fcn.1800267a0
nop
lea rcx, [rbp - 0x50]
call fcn.180007bc0
nop
lea rcx, [rbp - 0x70]
call fcn.180007bc0
lea rdx, str.The_maximum_damage_a_crystal_base_can_do_to_yourself
lea rcx, [rbp - 0x70]
call fcn.180007c20
nop
lea rdx, str.Base_Max_Self
lea rcx, [rbp - 0x50]
call fcn.180007c20
nop
movss dword [rsp + 0x30], xmm7
movss dword [rsp + 0x28], xmm6
lea rax, [rdi + 0xdc]
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x70]
lea rdx, [rbp - 0x50]
mov rcx, rdi
call fcn.1800267a0
nop
lea rcx, [rbp - 0x50]
call fcn.180007bc0
nop
lea rcx, [rbp - 0x70]
call fcn.180007bc0
lea rdx, str.The_color_of_the_visual_for_the_crystalaura
lea rcx, [rbp - 0x70]
call fcn.180007c20
nop
lea rdx, str.Fill_Color
lea rcx, [rbp - 0x50]
call fcn.180007c20
nop
lea r9, [rdi + 0xe0]
lea r8, [rbp - 0x70]
lea rdx, [rbp - 0x50]
mov rcx, rdi
call fcn.18002d6a0
nop
lea rcx, [rbp - 0x50]
call fcn.180007bc0
nop
lea rcx, [rbp - 0x70]
call fcn.180007bc0
lea rdx, str.The_color_of_the_visual_for_the_crystalaura
lea rcx, [rbp - 0x70]
call fcn.180007c20
nop
lea rdx, str.Outline_Color
lea rcx, [rbp - 0x50]
call fcn.180007c20
nop
lea r9, [rdi + 0xf0]
lea r8, [rbp - 0x70]
lea rdx, [rbp - 0x50]
mov rcx, rdi
call fcn.18002d6a0
nop
lea rcx, [rbp - 0x50]
call fcn.180007bc0
nop
lea rcx, [rbp - 0x70]
call fcn.180007bc0
lea rdx, str.Whether_or_not_to_render_the_damage_value_on_the_crystal_block
lea rcx, [rbp - 0x70]
call fcn.180007c20
nop
lea rdx, str.Render_Damage
lea rcx, [rbp - 0x50]
call fcn.180007c20
nop
lea r9, [rdi + 0x100]
lea r8, [rbp - 0x70]
lea rdx, [rbp - 0x50]
mov rcx, rdi
call fcn.180025020
nop
lea rcx, [rbp - 0x50]
call fcn.180007bc0
nop
lea rcx, [rbp - 0x70]
call fcn.180007bc0
nop
mov rax, rdi
mov rcx, qword [rbp + 0xd0]
xor rcx, rsp
call fcn.1800a5e50
lea r11, [rsp + 0x210]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret