Function at 0x411f8220
Capabilities:
Print debug messages

Disassembly:
mov rax, rsp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x70
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x20], rsi
mov r15, r8
mov rbp, rdx
mov r13, rcx
mov rcx, rdx
call fcn.4114fdf0
mov rax, qword [r15 + 0x40]
xor edi, edi
test rax, rax
jne 0x411f8266
mov r14d, edi
jmp 0x411f828b
mov rcx, qword [r15 + 0x48]
sub rcx, rax
movabs rax, 0x6bca1af286bca1b
imul rcx
mov r14, rdx
sar r14, 2
mov rax, r14
shr rax, 0x3f
add r14, rax
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x60], rdi
mov rcx, rbp
call fcn.4114fdf0
mov rbx, rdi
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x40], rdi
mov r12d, edi
test r14d, r14d
jle 0x411f84e2
mov rcx, rbp
call fcn.41149140
cmp rax, 3
ja 0x411f846e
mov rdx, rbp
lea rcx, [rsp + 0x28]
call fcn.41150260
mov r11, qword [rsp + 0x30]
mov rsi, r11
mov rax, qword [rsp + 0x38]
cmp r11, rax
jbe 0x411f8300
call fcn.41211d60
mov rax, qword [rsp + 0x38]
mov r11, qword [rsp + 0x30]
mov rbx, rax
cmp r11, rax
jbe 0x411f8312
call fcn.41211d60
mov rax, qword [rsp + 0x38]
cmp rsi, rbx
je 0x411f83cd
cmp rsi, rax
jb 0x411f8325
call fcn.41211d60
mov r9d, r12d
mov r8, rsi
lea rdx, [rsp + 0x48]
mov rcx, r13
call fcn.411f54f0
test eax, eax
je 0x411f83ab
mov rcx, qword [rsp + 0x50]
mov rbx, rcx
mov rax, qword [rsp + 0x58]
cmp rcx, rax
jbe 0x411f8360
call fcn.41211d60
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x50]
nop
mov rdi, rax
cmp rcx, rax
jbe 0x411f8372
call fcn.41211d60
mov rax, qword [rsp + 0x58]
cmp rbx, rdi
je 0x411f83ab
cmp rbx, rax
jb 0x411f8381
call fcn.41211d60
mov rdx, rbx
mov rcx, rbp
call fcn.411504a0
mov rax, qword [rsp + 0x58]
cmp rbx, rax
jb 0x411f83a0
call fcn.41211d60
mov rax, qword [rsp + 0x58]
add rbx, 0x58
mov rcx, qword [rsp + 0x50]
jmp 0x411f8360
mov rax, qword [rsp + 0x38]
cmp rsi, rax
jb 0x411f83bf
call fcn.41211d60
mov rax, qword [rsp + 0x38]
add rsi, 0x58
mov r11, qword [rsp + 0x30]
jmp 0x411f8300
mov r9d, r12d
mov r8, r15
lea rdx, [rsp + 0x48]
mov rcx, r13
call fcn.411f54f0
test eax, eax
je 0x411f843f
mov rbx, qword [rsp + 0x50]
cmp rbx, qword [rsp + 0x58]
jbe 0x411f8400
call fcn.41211d60
nop
nop
nop
mov rsi, qword [rsp + 0x58]
cmp qword [rsp + 0x50], rsi
jbe 0x411f8411
call fcn.41211d60
cmp rbx, rsi
je 0x411f843f
cmp rbx, qword [rsp + 0x58]
jb 0x411f8422
call fcn.41211d60
mov rdx, rbx
mov rcx, rbp
call fcn.411504a0
cmp rbx, qword [rsp + 0x58]
jb 0x411f8439
call fcn.41211d60
add rbx, 0x58
jmp 0x411f8400
mov rcx, rbp
call fcn.41149140
cmp rax, 0xa
ja 0x411f8467
add r12d, 1
cmp r12d, r14d
jge 0x411f8460
mov rbx, qword [rsp + 0x30]
jmp 0x411f82c0
mov rbx, qword [rsp + 0x30]
jmp 0x411f84e2
mov rbx, qword [rsp + 0x30]
jmp 0x411f84e2
test rbx, rbx
je 0x411f8498
movzx r9d, byte [rsp + 0xb0]
lea r8, [rsp + 0x28]
mov rdx, qword [rsp + 0x38]
mov rcx, rbx
call fcn.4114dcd0
mov rcx, qword [rsp + 0x30]
call fcn.41210d60
xor eax, eax
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], rax
mov rbx, qword [rsp + 0x50]
test rbx, rbx
je 0x411f84d8
movzx r9d, byte [rsp + 0xb0]
lea r8, [rsp + 0x48]
mov rdx, qword [rsp + 0x58]
mov rcx, rbx
call fcn.4114dcd0
mov rcx, qword [rsp + 0x50]
call fcn.41210d60
mov eax, 1
jmp 0x411f875a
mov rax, qword [rbp + 8]
test rax, rax
jne 0x411f84f3
xor r14d, r14d
mov rdx, r14
jmp 0x411f8518
mov rcx, qword [rbp + 0x10]
sub rcx, rax
movabs rax, 0x2e8ba2e8ba2e8ba3
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
xor r14d, r14d
mov r13d, r14d
test rdx, rdx
setne r13b
test rbx, rbx
je 0x411f862d
mov rbp, qword [rsp + 0x38]
cmp rbx, rbp
je 0x411f8625
lea rdi, [rbx + 0x40]
nop
lea rcx, [0x412a02a8]
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov rbx, qword [rdi]
test rbx, rbx
je 0x411f85e2
mov rsi, qword [rdi + 8]
cmp rbx, rsi
je 0x411f85da
sub rbx, 0xffffffffffffff80
cmp qword [rbx], 8
jb 0x411f8575
mov rcx, qword [rbx - 0x18]
call fcn.41210d60
mov qword [rbx], 7
mov qword [rbx - 8], r14
mov word [rbx - 0x18], 0
cmp qword [rbx - 0x30], 8
jb 0x411f8596
mov rcx, qword [rbx - 0x48]
call fcn.41210d60
mov qword [rbx - 0x30], 7
mov qword [rbx - 0x38], r14
mov word [rbx - 0x48], 0
cmp qword [rbx - 0x58], 8
jb 0x411f85b8
mov rcx, qword [rbx - 0x70]
call fcn.41210d60
mov qword [rbx - 0x58], 7
mov qword [rbx - 0x60], r14
mov word [rbx - 0x70], 0
add rbx, 0x98
lea rax, [rbx - 0x80]
cmp rax, rsi
jne 0x411f8566
mov rcx, qword [rdi]
call fcn.41210d60
mov qword [rdi], r14
mov qword [rdi + 8], r14
mov qword [rdi + 0x10], r14
cmp qword [rdi - 0x18], 8
jb 0x411f85fd
mov rcx, qword [rdi - 0x30]
call fcn.41210d60
mov qword [rdi - 0x18], 7
mov qword [rdi - 0x20], r14
mov word [rdi - 0x30], 0
add rdi, 0x58
lea rax, [rdi - 0x40]
cmp rax, rbp
jne 0x411f8540
mov rbx, qword [rsp + 0x30]
mov rcx, rbx
call fcn.41210d60
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], r14
mov rbx, qword [rsp + 0x50]
test rbx, rbx
je 0x411f8757
mov rsi, qword [rsp + 0x58]
cmp rbx, rsi
je 0x411f874d
lea rdi, [rbx + 0x40]
nop
lea rcx, [0x412a02a8]
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov rbp, qword [rdi]
test rbp, rbp
je 0x411f870f
mov r12, qword [rdi + 8]
cmp rbp, r12
je 0x411f8707
lea rbx, [rbp + 0x80]
nop
cmp qword [rbx], 8
jb 0x411f869f
mov rcx, qword [rbx - 0x18]
call fcn.41210d60
mov qword [rbx], 7
mov qword [rbx - 8], r14
mov word [rbx - 0x18], 0
cmp qword [rbx - 0x30], 8
jb 0x411f86c0
mov rcx, qword [rbx - 0x48]
call fcn.41210d60
mov qword [rbx - 0x30], 7
mov qword [rbx - 0x38], r14
mov word [rbx - 0x48], 0
cmp qword [rbx - 0x58], 8
jb 0x411f86e2
mov rcx, qword [rbx - 0x70]
call fcn.41210d60
mov qword [rbx - 0x58], 7
mov qword [rbx - 0x60], r14
mov word [rbx - 0x70], 0
add rbp, 0x98
add rbx, 0x98
cmp rbp, r12
jne 0x411f8690
mov rcx, qword [rdi]
call fcn.41210d60
mov qword [rdi], r14
mov qword [rdi + 8], r14
mov qword [rdi + 0x10], r14
cmp qword [rdi - 0x18], 8
jb 0x411f872a
mov rcx, qword [rdi - 0x30]
call fcn.41210d60
mov qword [rdi - 0x18], 7
mov qword [rdi - 0x20], r14
mov word [rdi - 0x30], 0
add rdi, 0x58
lea rcx, [rdi - 0x40]
cmp rcx, rsi
jne 0x411f8660
mov rcx, qword [rsp + 0x50]
call fcn.41210d60
mov eax, r13d
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret