Function at 0x140047480
Capabilities:
Check for software breakpoints

Disassembly:
mov rax, rsp
push rbp
push rdi
push r12
push r13
push r14
lea rbp, [rax - 0x5f]
sub rsp, 0xb0
mov qword [rbp + 0x1f], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x20], rsi
movaps xmmword [rax - 0x38], xmm6
mov rdi, rdx
movsd xmm0, qword [0x1400ae3a0]
comisd xmm0, xmmword [rdx + 0x20]
ja 0x140047cdd
xor r14d, r14d
mov qword [rbp - 0x11], r14
lea ecx, [r14 + 0x48]
call fcn.1400867f8
test rax, rax
je 0x140047ca7
mov qword [rbp - 0x19], rax
mov qword [rax], rax
mov rax, qword [rbp - 0x19]
mov qword [rax + 8], rax
mov rax, qword [rbp - 0x19]
mov qword [rax + 0x10], rax
mov rax, qword [rbp - 0x19]
mov byte [rax + 0x40], 1
mov rax, qword [rbp - 0x19]
mov byte [rax + 0x41], 1
lea rcx, [rbp - 0x21]
call fcn.140047020
lea rdx, [rbp - 0x21]
lea rcx, [rbp - 1]
call fcn.1400470e0
lea r8d, [r14 + 1]
lea rdx, [rbp - 1]
mov rcx, rdi
call fcn.140047190
mov rsi, rax
cmp qword [rbp - 0x11], r14
je 0x140047551
test rax, rax
jne 0x140047551
mov r8, qword [rbp - 0x19]
mov r9, r8
mov r8, qword [r8]
lea rdx, [rbp + 0x6f]
lea rcx, [rbp - 0x21]
call fcn.140008800
nop
jmp 0x140047cd4
mov qword [rbp - 0x49], r14
mov ecx, 0x30
call fcn.1400867f8
test rax, rax
je 0x140047c7a
mov qword [rbp - 0x51], rax
mov qword [rax], rax
mov rax, qword [rbp - 0x51]
mov qword [rax + 8], rax
mov rax, qword [rbp - 0x51]
mov qword [rax + 0x10], rax
mov rax, qword [rbp - 0x51]
mov byte [rax + 0x28], 1
mov rax, qword [rbp - 0x51]
mov byte [rax + 0x29], 1
mov rcx, qword [rbp - 0x51]
mov rax, qword [rcx + 8]
mov rbx, rcx
cmp byte [rax + 0x29], 0
jne 0x1400475ac
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x29], 0
je 0x1400475a0
xorpd xmm6, xmm6
cmp rbx, rcx
je 0x1400475bb
cmp byte [rbx + 0x18], 0
jbe 0x1400475e8
mov byte [rbp - 0x39], 0
movsd qword [rbp - 0x31], xmm6
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 0x59]
call fcn.140046460
mov r9, rax
mov r8, rbx
lea rdx, [rbp + 0x6f]
lea rcx, [rbp - 0x59]
call fcn.140017b90
mov rbx, qword [rbp + 0x6f]
movabs rax, 0x3fb999999999999a
mov qword [rbx + 0x20], rax
mov rcx, qword [rbp - 0x51]
mov rax, qword [rcx + 8]
mov rbx, rcx
cmp byte [rax + 0x29], 0
jne 0x14004761f
cmp byte [rax + 0x18], 0xf
jae 0x140047613
mov rax, qword [rax + 0x10]
jmp 0x140047619
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x29], 0
je 0x140047607
cmp rbx, rcx
je 0x14004762a
cmp byte [rbx + 0x18], 0xf
jbe 0x140047657
mov byte [rbp - 0x39], 0xf
movsd qword [rbp - 0x31], xmm6
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 0x59]
call fcn.140046460
mov r9, rax
mov r8, rbx
lea rdx, [rbp + 0x6f]
lea rcx, [rbp - 0x59]
call fcn.140017b90
mov rbx, qword [rbp + 0x6f]
movabs r12, 0x3f847ae147ae147b
mov qword [rbx + 0x20], r12
mov rcx, qword [rbp - 0x51]
mov rax, qword [rcx + 8]
mov rbx, rcx
cmp byte [rax + 0x29], 0
jne 0x14004768e
cmp byte [rax + 0x18], 0x48
jae 0x140047682
mov rax, qword [rax + 0x10]
jmp 0x140047688
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x29], 0
je 0x140047676
cmp rbx, rcx
je 0x140047699
cmp byte [rbx + 0x18], 0x48
jbe 0x1400476c6
mov byte [rbp - 0x39], 0x48
movsd qword [rbp - 0x31], xmm6
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 0x59]
call fcn.140046460
mov r9, rax
mov r8, rbx
lea rdx, [rbp + 0x6f]
lea rcx, [rbp - 0x59]
call fcn.140017b90
mov rbx, qword [rbp + 0x6f]
movabs r13, 0x3f947ae147ae147b
mov qword [rbx + 0x20], r13
mov rcx, qword [rbp - 0x51]
mov rax, qword [rcx + 8]
mov rbx, rcx
cmp byte [rax + 0x29], 0
jne 0x1400476fd
cmp byte [rax + 0x18], 0x8b
jae 0x1400476f1
mov rax, qword [rax + 0x10]
jmp 0x1400476f7
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x29], 0
je 0x1400476e5
cmp rbx, rcx
je 0x140047708
cmp byte [rbx + 0x18], 0x8b
jbe 0x140047735
mov byte [rbp - 0x39], 0x8b
movsd qword [rbp - 0x31], xmm6
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 0x59]
call fcn.140046460
mov r9, rax
mov r8, rbx
lea rdx, [rbp + 0x6f]
lea rcx, [rbp - 0x59]
call fcn.140017b90
mov rbx, qword [rbp + 0x6f]
mov qword [rbx + 0x20], r13
mov rcx, qword [rbp - 0x51]
mov rax, qword [rcx + 8]
mov rbx, rcx
cmp byte [rax + 0x29], 0
jne 0x140047768
nop word [rax + rax]
cmp byte [rax + 0x18], 0xcc
jae 0x14004775c
mov rax, qword [rax + 0x10]
jmp 0x140047762
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x29], 0
je 0x140047750
cmp rbx, rcx
je 0x140047773
cmp byte [rbx + 0x18], 0xcc
jbe 0x1400477a0
mov byte [rbp - 0x39], 0xcc
movsd qword [rbp - 0x31], xmm6
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 0x59]
call fcn.140046460
mov r9, rax
mov r8, rbx
lea rdx, [rbp + 0x6f]
lea rcx, [rbp - 0x59]
call fcn.140017b90
mov rbx, qword [rbp + 0x6f]
mov qword [rbx + 0x20], r12
mov rcx, qword [rbp - 0x51]
mov rax, qword [rcx + 8]
mov rbx, rcx
cmp byte [rax + 0x29], 0
jne 0x1400477cd
cmp byte [rax + 0x18], 0xe8
jae 0x1400477c1
mov rax, qword [rax + 0x10]
jmp 0x1400477c7
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x29], 0
je 0x1400477b5
cmp rbx, rcx
je 0x1400477d8
cmp byte [rbx + 0x18], 0xe8
jbe 0x140047805
mov byte [rbp - 0x39], pe_nt_image_headers64
movsd qword [rbp - 0x31], xmm6
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 0x59]
call fcn.140046460
mov r9, rax
mov r8, rbx
lea rdx, [rbp + 0x6f]
lea rcx, [rbp - 0x59]
call fcn.140017b90
mov rbx, qword [rbp + 0x6f]
mov qword [rbx + 0x20], r12
mov rcx, qword [rbp - 0x51]
mov rax, qword [rcx + 8]
mov rbx, rcx
cmp byte [rax + 0x29], 0
jne 0x140047838
nop word [rax + rax]
cmp byte [rax + 0x18], 0xff
jae 0x14004782c
mov rax, qword [rax + 0x10]
jmp 0x140047832
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x29], 0
je 0x140047820
cmp rbx, rcx
je 0x140047843
cmp byte [rbx + 0x18], 0xff
jbe 0x140047870
mov byte [rbp - 0x39], 0xff
movsd qword [rbp - 0x31], xmm6
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 0x59]
call fcn.140046460
mov r9, rax
mov r8, rbx
lea rdx, [rbp + 0x6f]
lea rcx, [rbp - 0x59]
call fcn.140017b90
mov rbx, qword [rbp + 0x6f]
mov qword [rbx + 0x20], r13
lea rdx, [rbp - 0x59]
mov rcx, rdi
call fcn.140045f70
mov r11, rax
cmp rax, 2
jae 0x140047982
mov rdi, qword [rbp - 0x51]
mov rbx, qword [rdi]
cmp rbx, rbx
jne 0x1400478ee
mov rsi, qword [rdi + 8]
mov rbx, rsi
cmp byte [rsi + 0x29], 0
jne 0x1400478d5
nop word [rax + rax]
mov rdx, qword [rbx + 0x10]
lea rcx, [rbp - 0x59]
call fcn.14001c790
mov rbx, qword [rbx]
mov rcx, rsi
call fcn.140085df8
mov rsi, rbx
cmp byte [rbx + 0x29], 0
je 0x1400478b0
mov rdi, qword [rbp - 0x51]
mov qword [rdi + 8], rdi
mov rax, qword [rbp - 0x51]
mov qword [rax], rax
mov rax, qword [rbp - 0x51]
mov qword [rax + 0x10], rax
mov qword [rbp - 0x49], r14
jmp 0x140047958
cmp rbx, rdi
je 0x14004795c
mov r8, rbx
cmp byte [rbx + 0x29], 0
jne 0x140047946
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x29], 0
jne 0x140047920
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x29], 0
jne 0x140047946
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x29], 0
je 0x140047912
jmp 0x140047946
mov rax, qword [rbx + 8]
cmp byte [rax + 0x29], 0
jne 0x140047943
nop word [rax + rax]
cmp rbx, qword [rax + 0x10]
jne 0x140047943
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x29], 0
je 0x140047930
mov rbx, rax
lea rdx, [rbp + 0x6f]
lea rcx, [rbp - 0x59]
call fcn.14001c7e0
cmp rbx, rdi
jne 0x1400478f3
mov rdi, qword [rbp - 0x51]
mov rcx, rdi
call fcn.140085df8
nop
mov r8, qword [rbp - 0x19]
mov r9, r8
mov r8, qword [r8]
lea rdx, [rbp + 0x6f]
lea rcx, [rbp - 0x21]
call fcn.140008800
nop
jmp 0x140047cd4
mov rax, qword [rbp - 0x49]
shr rax, 1
inc rax
cmp r11, rax
jb 0x140047a8d
mov rdi, qword [rbp - 0x51]
mov rbx, qword [rdi]
cmp rbx, rbx
jne 0x1400479ee
mov rsi, qword [rdi + 8]
mov rbx, rsi
cmp byte [rsi + 0x29], 0
jne 0x1400479d5
nop
mov rdx, qword [rbx + 0x10]
lea rcx, [rbp - 0x59]
call fcn.14001c790
mov rbx, qword [rbx]
mov rcx, rsi
call fcn.140085df8
mov rsi, rbx
cmp byte [rbx + 0x29], 0
je 0x1400479b0
mov rdi, qword [rbp - 0x51]
mov qword [rdi + 8], rdi
mov rax, qword [rbp - 0x51]
mov qword [rax], rax
mov rax, qword [rbp - 0x51]
mov qword [rax + 0x10], rax
mov qword [rbp - 0x49], r14
jmp 0x140047a58
cmp rbx, rdi
je 0x140047a5c
mov r8, rbx
cmp byte [rbx + 0x29], 0
jne 0x140047a46
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x29], 0
jne 0x140047a20
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x29], 0
jne 0x140047a46
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x29], 0
je 0x140047a12
jmp 0x140047a46
mov rax, qword [rbx + 8]
cmp byte [rax + 0x29], 0
jne 0x140047a43
nop word [rax + rax]
cmp rbx, qword [rax + 0x10]
jne 0x140047a43
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x29], 0
je 0x140047a30
mov rbx, rax
lea rdx, [rbp + 0x6f]
lea rcx, [rbp - 0x59]
call fcn.14001c7e0
cmp rbx, rdi
jne 0x1400479f3
mov rdi, qword [rbp - 0x51]
mov rcx, rdi
call fcn.140085df8
nop
mov r8, qword [rbp - 0x19]
mov r9, r8
mov r8, qword [r8]
lea rdx, [rbp + 0x6f]
lea rcx, [rbp - 0x21]
call fcn.140008800
nop
mov rcx, qword [rbp - 0x19]
call fcn.140085df8
mov al, 1
jmp 0x140047cdf
cmp rsi, 2
jae 0x140047b82
mov rdi, qword [rbp - 0x51]
mov rbx, qword [rdi]
cmp rbx, rbx
jne 0x140047aee
mov rsi, qword [rdi + 8]
mov rbx, rsi
cmp byte [rsi + 0x29], 0
jne 0x140047ad5
mov rdx, qword [rbx + 0x10]
lea rcx, [rbp - 0x59]
call fcn.14001c790
mov rbx, qword [rbx]
mov rcx, rsi
call fcn.140085df8
mov rsi, rbx
cmp byte [rbx + 0x29], 0
je 0x140047ab0
mov rdi, qword [rbp - 0x51]
mov qword [rdi + 8], rdi
mov rax, qword [rbp - 0x51]
mov qword [rax], rax
mov rax, qword [rbp - 0x51]
mov qword [rax + 0x10], rax
mov qword [rbp - 0x49], r14
jmp 0x140047b58
cmp rbx, rdi
je 0x140047b5c
mov r8, rbx
cmp byte [rbx + 0x29], 0
jne 0x140047b46
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x29], 0
jne 0x140047b20
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x29], 0
jne 0x140047b46
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x29], 0
je 0x140047b12
jmp 0x140047b46
mov rax, qword [rbx + 8]
cmp byte [rax + 0x29], 0
jne 0x140047b43
nop word [rax + rax]
cmp rbx, qword [rax + 0x10]
jne 0x140047b43
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x29], 0
je 0x140047b30
mov rbx, rax
lea rdx, [rbp + 0x6f]
lea rcx, [rbp - 0x59]
call fcn.14001c7e0
cmp rbx, rdi
jne 0x140047af3
mov rdi, qword [rbp - 0x51]
mov rcx, rdi
call fcn.140085df8
nop
mov r8, qword [rbp - 0x19]
mov r9, r8
mov r8, qword [r8]
lea rdx, [rbp + 0x6f]
lea rcx, [rbp - 0x21]
call fcn.140008800
nop
jmp 0x140047cd4
mov rdi, qword [rbp - 0x51]
mov rbx, qword [rdi]
cmp rbx, rbx
jne 0x140047bde
mov rsi, qword [rdi + 8]
mov rbx, rsi
cmp byte [rsi + 0x29], 0
jne 0x140047bc5
nop dword [rax + rax]
mov rdx, qword [rbx + 0x10]
lea rcx, [rbp - 0x59]
call fcn.14001c790
mov rbx, qword [rbx]
mov rcx, rsi
call fcn.140085df8
mov rsi, rbx
cmp byte [rbx + 0x29], 0
je 0x140047ba0
mov rdi, qword [rbp - 0x51]
mov qword [rdi + 8], rdi
mov rax, qword [rbp - 0x51]
mov qword [rax], rax
mov rax, qword [rbp - 0x51]
mov qword [rax + 0x10], rax
mov qword [rbp - 0x49], r14
jmp 0x140047c48
cmp rbx, rdi
je 0x140047c4c
mov r8, rbx
cmp byte [rbx + 0x29], 0
jne 0x140047c36
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x29], 0
jne 0x140047c10
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x29], 0
jne 0x140047c36
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x29], 0
je 0x140047c02
jmp 0x140047c36
mov rax, qword [rbx + 8]
cmp byte [rax + 0x29], 0
jne 0x140047c33
nop word [rax + rax]
cmp rbx, qword [rax + 0x10]
jne 0x140047c33
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x29], 0
je 0x140047c20
mov rbx, rax
lea rdx, [rbp + 0x6f]
lea rcx, [rbp - 0x59]
call fcn.14001c7e0
cmp rbx, rdi
jne 0x140047be3
mov rdi, qword [rbp - 0x51]
mov rcx, rdi
call fcn.140085df8
nop
mov r8, qword [rbp - 0x19]
mov r9, r8
mov r8, qword [r8]
lea rdx, [rbp + 0x6f]
lea rcx, [rbp - 0x21]
call fcn.140008800
nop
mov rcx, qword [rbp - 0x19]
call fcn.140085df8
mov al, 1
jmp 0x140047cdf
mov qword [rbp + 0x77], r14
lea rdx, [rbp + 0x77]
lea rcx, [rbp - 1]
call fcn.140085bc8
lea r11, vtable.std::bad_alloc.0
mov qword [rbp - 1], r11
lea rdx, [0x1400d3048]
lea rcx, [rbp - 1]
call fcn.14008689c
nop
mov qword [rbp + 0x6f], r14
lea rdx, [rbp + 0x6f]
lea rcx, [rbp - 0x39]
call fcn.140085bc8
lea r11, vtable.std::bad_alloc.0
mov qword [rbp - 0x39], r11
lea rdx, [0x1400d3048]
lea rcx, [rbp - 0x39]
call fcn.14008689c
int3
mov rcx, qword [rbp - 0x19]
call fcn.140085df8
xor al, al
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r14
pop r13
pop r12
pop rdi
pop rbp
ret