Function at 0x411718c0
Capabilities:
Print debug messages

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xf8
mov qword [rsp + 0x58], 0xfffffffffffffffe
mov rax, qword [0x41359af8]
xor rax, rsp
mov qword [rsp + 0xe8], rax
mov rbp, r8
mov rdi, rdx
mov qword [rsp + 0x50], rdx
xor r14d, r14d
mov dword [rsp + 0x48], r14d
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], r14
cmp qword [r9 + 0x20], 8
jb 0x4117191e
mov rdx, qword [r9 + 8]
jmp 0x41171922
lea rdx, [r9 + 8]
add rcx, 0x1840
lea r8, [rsp + 0x28]
call fcn.411f8980
mov qword [rsp + 0xe0], 7
mov qword [rsp + 0xd8], r14
mov word [rsp + 0xc8], 0
mov qword [rsp + 0x88], 7
mov qword [rsp + 0x80], r14
mov word [rsp + 0x70], 0
mov qword [rsp + 0xa0], r14
mov qword [rsp + 0xa8], r14
mov qword [rsp + 0xb0], r14
mov dword [rsp + 0x90], r14d
xor r8d, r8d
lea r12, [0x412a02a8]
mov rdx, r12
lea rcx, [rsp + 0x68]
call fcn.41024690
mov dword [rsp + 0x60], r14d
mov dword [rsp + 0x94], r14d
mov rcx, qword [rsp + 0x30]
mov rbx, rcx
mov rax, qword [rsp + 0x38]
cmp rcx, rax
jbe 0x411719d1
call fcn.41211d60
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x30]
mov rsi, rax
cmp rcx, rax
jbe 0x411719e3
call fcn.41211d60
mov rax, qword [rsp + 0x38]
cmp rbx, rsi
je 0x41171a72
cmp rbx, rax
jb 0x411719f6
call fcn.41211d60
mov rdx, rbp
mov rcx, rbx
call fcn.4116c110
test al, al
jne 0x41171a24
mov rax, qword [rsp + 0x38]
cmp rbx, rax
jb 0x41171a19
call fcn.41211d60
mov rax, qword [rsp + 0x38]
add rbx, 0x58
mov rcx, qword [rsp + 0x30]
jmp 0x411719d1
cmp rbx, qword [rsp + 0x38]
jb 0x41171a30
call fcn.41211d60
mov eax, dword [rbx]
mov dword [rsp + 0x60], eax
lea rdx, [rbx + 8]
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rcx, [rsp + 0x68]
call fcn.41022de0
mov r11d, dword [rbx + 0x30]
mov dword [rsp + 0x90], r11d
mov eax, dword [rbx + 0x34]
mov dword [rsp + 0x94], eax
lea rdx, [rbx + 0x38]
lea rcx, [rsp + 0x98]
call fcn.4114c630
mov qword [rdi + 0x20], 7
mov qword [rdi + 0x18], r14
mov word [rdi + 8], 0
mov rdx, qword [rdi + 0x20]
cmp rdx, 8
jb 0x41171a94
mov rax, qword [rdi + 8]
jmp 0x41171a98
lea rax, [rdi + 8]
cmp r12, rax
jb 0x41171ae3
cmp rdx, 8
jb 0x41171aa9
mov rcx, qword [rdi + 8]
jmp 0x41171aad
lea rcx, [rdi + 8]
mov rax, qword [rdi + 0x18]
lea rcx, [rcx + rax*2]
cmp rcx, r12
jbe 0x41171ae3
cmp rdx, 8
jb 0x41171ac6
mov rax, qword [rdi + 8]
jmp 0x41171aca
lea rax, [rdi + 8]
mov r8, r12
sub r8, rax
sar r8, 1
xor r9d, r9d
mov rdx, rdi
mov rcx, rdi
call fcn.41022de0
jmp 0x41171afc
mov qword [rdi + 0x18], r14
cmp rdx, 8
jb 0x41171af3
mov rax, qword [rdi + 8]
jmp 0x41171af7
lea rax, [rdi + 8]
mov word [rax], 0
mov dword [rsp + 0x48], 1
mov r13, qword [rsp + 0xa0]
cmp r13, qword [rsp + 0xa8]
jbe 0x41171b1b
call fcn.41211d60
lea r15, [0x4129b628]
movabs r12, 0x7ffffffffffffffe
nop
mov rsi, qword [rsp + 0xa8]
cmp qword [rsp + 0xa0], rsi
jbe 0x41171b47
call fcn.41211d60
cmp r13, rsi
je 0x41171ea7
mov rcx, qword [rdi + 0x18]
mov rdx, qword [rdi + 0x20]
mov eax, r14d
test rcx, rcx
setne al
test eax, eax
je 0x41171d9f
cmp rdx, 8
jb 0x41171b75
mov rax, qword [rdi + 8]
jmp 0x41171b79
lea rax, [rdi + 8]
cmp r15, rax
jb 0x41171cd0
cmp rdx, 8
jb 0x41171b8e
mov rax, qword [rdi + 8]
jmp 0x41171b92
lea rax, [rdi + 8]
lea rax, [rax + rcx*2]
cmp rax, r15
jbe 0x41171cd0
cmp rdx, 8
jb 0x41171bab
mov rax, qword [rdi + 8]
jmp 0x41171baf
lea rax, [rdi + 8]
mov r12, r15
sub r12, rax
sar r12, 1
cmp rcx, r12
jae 0x41171bc2
call fcn.4120fc90
mov rcx, qword [rdi + 0x18]
mov rax, rcx
sub rax, r12
mov ebp, 1
cmp rax, rbp
cmovb rbp, rax
or rax, 0xffffffffffffffff
sub rax, rcx
cmp rax, rbp
jbe 0x41171bed
lea rax, [rcx + rbp]
cmp rax, rcx
jae 0x41171bf2
call fcn.4120fbc0
test rbp, rbp
je 0x41171d95
mov rsi, qword [rdi + 0x18]
add rsi, rbp
movabs rax, 0x7ffffffffffffffe
cmp rsi, rax
jbe 0x41171c16
call fcn.4120fbc0
mov rax, qword [rdi + 0x20]
cmp rax, rsi
jae 0x41171c30
mov r8, qword [rdi + 0x18]
mov rdx, rsi
mov rcx, rdi
call fcn.41022ab0
jmp 0x41171c5d
test rsi, rsi
jne 0x41171c5d
mov qword [rdi + 0x18], r14
cmp rax, 8
jb 0x41171c45
mov rax, qword [rdi + 8]
jmp 0x41171c49
lea rax, [rdi + 8]
mov word [rax], 0
movabs r12, 0x7ffffffffffffffe
jmp 0x41171d9f
test rsi, rsi
je 0x41171d89
mov rdx, qword [rdi + 0x20]
cmp rdx, 8
jb 0x41171c76
mov r8, qword [rdi + 8]
jmp 0x41171c7a
lea r8, [rdi + 8]
cmp rdx, 8
jb 0x41171c86
mov rcx, qword [rdi + 8]
jmp 0x41171c8a
lea rcx, [rdi + 8]
mov rax, qword [rdi + 0x18]
lea r9, [rbp + rbp]
lea r8, [r8 + r12*2]
sub rdx, rax
add rdx, rdx
lea rcx, [rcx + rax*2]
call fcn.412118b0
mov qword [rdi + 0x18], rsi
cmp qword [rdi + 0x20], 8
jb 0x41171cb7
mov rax, qword [rdi + 8]
jmp 0x41171cbb
lea rax, [rdi + 8]
mov word [rax + rsi*2], 0
movabs r12, 0x7ffffffffffffffe
jmp 0x41171d9f
or rax, 0xffffffffffffffff
sub rax, rcx
cmp rax, 1
jbe 0x41171ce6
lea rax, [rcx + 1]
cmp rax, rcx
jae 0x41171ceb
call fcn.4120fbc0
mov rsi, qword [rdi + 0x18]
add rsi, 1
cmp rsi, r12
jbe 0x41171cfd
call fcn.4120fbc0
mov rax, qword [rdi + 0x20]
cmp rax, rsi
jae 0x41171d17
mov r8, qword [rdi + 0x18]
mov rdx, rsi
mov rcx, rdi
call fcn.41022ab0
jmp 0x41171d37
test rsi, rsi
jne 0x41171d37
mov qword [rdi + 0x18], r14
cmp rax, 8
jb 0x41171d2c
mov rax, qword [rdi + 8]
jmp 0x41171d30
lea rax, [rdi + 8]
mov word [rax], 0
jmp 0x41171d9f
test rsi, rsi
je 0x41171d9f
mov rdx, qword [rdi + 0x20]
cmp rdx, 8
jb 0x41171d4c
mov rcx, qword [rdi + 8]
jmp 0x41171d50
lea rcx, [rdi + 8]
mov rax, qword [rdi + 0x18]
sub rdx, rax
add rdx, rdx
lea rcx, [rcx + rax*2]
mov r9d, 2
mov r8, r15
call fcn.412118b0
mov qword [rdi + 0x18], rsi
cmp qword [rdi + 0x20], 8
jb 0x41171d7d
mov rax, qword [rdi + 8]
jmp 0x41171d81
lea rax, [rdi + 8]
mov word [rax + rsi*2], 0
jmp 0x41171d9f
movabs r12, 0x7ffffffffffffffe
jmp 0x41171d9f
movabs r12, 0x7ffffffffffffffe
cmp r13, qword [rsp + 0xa8]
jb 0x41171dae
call fcn.41211d60
mov rax, qword [r13 + 0x20]
or rbp, 0xffffffffffffffff
cmp rax, rbp
cmovb rbp, rax
mov rcx, qword [rdi + 0x18]
or rax, 0xffffffffffffffff
sub rax, rcx
cmp rax, rbp
jbe 0x41171dd6
lea rax, [rcx + rbp]
cmp rax, rcx
jae 0x41171ddb
call fcn.4120fbc0
test rbp, rbp
je 0x41171e8c
mov rsi, qword [rdi + 0x18]
add rsi, rbp
cmp rsi, r12
jbe 0x41171df5
call fcn.4120fbc0
mov rax, qword [rdi + 0x20]
cmp rax, rsi
jae 0x41171e0f
mov r8, qword [rdi + 0x18]
mov rdx, rsi
mov rcx, rdi
call fcn.41022ab0
jmp 0x41171e2f
test rsi, rsi
jne 0x41171e2f
mov qword [rdi + 0x18], r14
cmp rax, 8
jb 0x41171e24
mov rax, qword [rdi + 8]
jmp 0x41171e28
lea rax, [rdi + 8]
mov word [rax], 0
jmp 0x41171e8c
test rsi, rsi
je 0x41171e8c
cmp qword [r13 + 0x28], 8
jb 0x41171e41
mov r8, qword [r13 + 0x10]
jmp 0x41171e45
lea r8, [r13 + 0x10]
mov rdx, qword [rdi + 0x20]
cmp rdx, 8
jb 0x41171e55
mov rcx, qword [rdi + 8]
jmp 0x41171e59
lea rcx, [rdi + 8]
mov rax, qword [rdi + 0x18]
lea r9, [rbp + rbp]
sub rdx, rax
add rdx, rdx
lea rcx, [rcx + rax*2]
call fcn.412118b0
mov qword [rdi + 0x18], rsi
cmp qword [rdi + 0x20], 8
jb 0x41171e82
mov rax, qword [rdi + 8]
jmp 0x41171e86
lea rax, [rdi + 8]
mov word [rax + rsi*2], 0
cmp r13, qword [rsp + 0xa8]
jb 0x41171e9b
call fcn.41211d60
add r13, 0x98
jmp 0x41171b30
lea rcx, [0x412a02a8]
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov rcx, qword [rsp + 0xa0]
test rcx, rcx
je 0x41171f61
mov rsi, qword [rsp + 0xa8]
cmp rcx, rsi
je 0x41171f5c
lea rbx, [rcx + 0x80]
nop
cmp qword [rbx], 8
jb 0x41171eef
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 0x41171f10
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 0x41171f32
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 0x41171ee0
mov rcx, qword [rsp + 0xa0]
call fcn.41210d60
mov qword [rsp + 0xa0], r14
mov qword [rsp + 0xa8], r14
mov qword [rsp + 0xb0], r14
cmp qword [rsp + 0x88], 8
jb 0x41171f8e
mov rcx, qword [rsp + 0x70]
call fcn.41210d60
mov qword [rsp + 0x88], 7
mov qword [rsp + 0x80], r14
mov word [rsp + 0x70], 0
cmp qword [rsp + 0xe0], 8
jb 0x41171fc1
mov rcx, qword [rsp + 0xc8]
call fcn.41210d60
mov qword [rsp + 0xe0], 7
mov qword [rsp + 0xd8], r14
mov word [rsp + 0xc8], 0
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x4117200d
movzx r9d, byte [rsp + 0x20]
lea r8, [rsp + 0x28]
mov rdx, qword [rsp + 0x38]
call fcn.4114dcd0
mov rcx, qword [rsp + 0x30]
call fcn.41210d60
mov rax, rdi
jmp 0x41172010
mov rax, rdi
mov rcx, qword [rsp + 0xe8]
xor rcx, rsp
call fcn.41211b80
add rsp, 0xf8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret