Function at 0x1400053f0
Capabilities:
Connect to wmi namespace via wbemlocator

Disassembly:
push rbp
mov eax, 0xd140
call fcn.1400ea440
sub rsp, rax
lea rbp, [rsp + 0x80]
mov qword [rbp + 0xd0b8], 0xfffffffffffffffe
mov qword [rbp + 0xd030], rdx
mov qword [rbp + 0xd028], rcx
mov dword [rbp + 0xd020], 0x4311
mov dword [rbp + 0xd01c], 0
cmp dword [rbp + 0xd01c], 0x6c9
jge 0x1400054f1
mov ecx, 0x157f0
call fcn.1400ea428
mov qword [rbp + 0xd010], rax
mov dword [rbp + 0xd00c], 0
cmp dword [rbp + 0xd00c], 0xd1
jge 0x1400054b9
call fcn.1400fb488
mov ecx, 0x2c75
cdq
idiv ecx
mov rax, qword [rbp + 0xd010]
movsxd rcx, dword [rbp + 0xd00c]
mov dword [rax + rcx*4], edx
call fcn.1400fb488
mov ecx, 0x33e8
cdq
idiv ecx
add edx, dword [rbp + 0xd020]
mov dword [rbp + 0xd020], edx
mov eax, dword [rbp + 0xd00c]
add eax, 1
mov dword [rbp + 0xd00c], eax
jmp 0x14000545e
mov rax, qword [rbp + 0xd010]
mov qword [rbp + 0x21f0], rax
cmp rax, 0
je 0x1400054dd
mov rcx, qword [rbp + 0x21f0]
call fcn.1400ea8d4
mov eax, dword [rbp + 0xd01c]
add eax, 1
mov dword [rbp + 0xd01c], eax
jmp 0x140005433
lea rcx, [rbp + 0xcff0]
mov qword [rbp + 0x21e8], rcx
call fcn.140004610
mov dword [rbp + 0xcfe4], 0
mov dword [rbp + 0xcfe0], 0
lea rcx, [rbp + 0xcfe0]
lea rdx, [rbp + 0xcfe4]
call fcn.140004070
mov rcx, qword [rbp + 0x21e8]
mov qword [rbp + 0xcfe8], rax
lea rdx, [rbp + 0xcfe8]
call fcn.14003bc20
jmp 0x14000554a
mov dword [rbp + 0xcfd4], 0xfffffffc
mov dword [rbp + 0xcfd0], 1
lea rcx, [rbp + 0xcfd0]
lea rdx, [rbp + 0xcfd4]
call fcn.140004070
mov qword [rbp + 0xcfd8], rax
lea rcx, [rbp + 0xcff0]
lea rdx, [rbp + 0xcfd8]
call fcn.14003bc20
jmp 0x140005590
mov dword [rbp + 0xcfc4], 0xfffffffb
mov dword [rbp + 0xcfc0], 0xffffffff
lea rcx, [rbp + 0xcfc0]
lea rdx, [rbp + 0xcfc4]
call fcn.140004070
mov qword [rbp + 0xcfc8], rax
lea rcx, [rbp + 0xcff0]
lea rdx, [rbp + 0xcfc8]
call fcn.14003bc20
jmp 0x1400055d6
mov dword [rbp + 0xcfb4], 0xfffffffd
mov dword [rbp + 0xcfb0], 0xfffffffb
lea rcx, [rbp + 0xcfb0]
lea rdx, [rbp + 0xcfb4]
call fcn.140004070
mov qword [rbp + 0xcfb8], rax
lea rcx, [rbp + 0xcff0]
lea rdx, [rbp + 0xcfb8]
call fcn.14003bc20
jmp 0x14000561c
mov dword [rbp + 0xcfa4], 0xffffffff
mov dword [rbp + 0xcfa0], 0xfffffffd
lea rcx, [rbp + 0xcfa0]
lea rdx, [rbp + 0xcfa4]
call fcn.140004070
mov qword [rbp + 0xcfa8], rax
lea rcx, [rbp + 0xcff0]
lea rdx, [rbp + 0xcfa8]
call fcn.14003bc20
jmp 0x140005662
mov dword [rbp + 0xcf94], 0xfffffffd
mov dword [rbp + 0xcf90], 0xffffffff
lea rcx, [rbp + 0xcf90]
lea rdx, [rbp + 0xcf94]
call fcn.140004070
mov qword [rbp + 0xcf98], rax
lea rcx, [rbp + 0xcff0]
lea rdx, [rbp + 0xcf98]
call fcn.14003bc20
jmp 0x1400056a8
mov dword [rbp + 0xcf84], 0xfffffffe
mov dword [rbp + 0xcf80], 0xfffffffe
lea rcx, [rbp + 0xcf80]
lea rdx, [rbp + 0xcf84]
call fcn.140004070
mov qword [rbp + 0xcf88], rax
lea rcx, [rbp + 0xcff0]
lea rdx, [rbp + 0xcf88]
call fcn.14003bc20
jmp 0x1400056ee
mov dword [rbp + 0xcf74], 0xffffffff
mov dword [rbp + 0xcf70], 0xffffffff
lea rcx, [rbp + 0xcf70]
lea rdx, [rbp + 0xcf74]
call fcn.140004070
mov qword [rbp + 0xcf78], rax
lea rcx, [rbp + 0xcff0]
lea rdx, [rbp + 0xcf78]
call fcn.14003bc20
jmp 0x140005734
mov dword [rbp + 0xcf64], 0xffffffff
mov dword [rbp + 0xcf60], 0xfffffffe
lea rcx, [rbp + 0xcf60]
lea rdx, [rbp + 0xcf64]
call fcn.140004070
mov qword [rbp + 0xcf68], rax
lea rcx, [rbp + 0xcff0]
lea rdx, [rbp + 0xcf68]
call fcn.14003bc20
jmp 0x14000577a
mov dword [rbp + 0xcf54], 1
mov dword [rbp + 0xcf50], 0xffffffff
lea rcx, [rbp + 0xcf50]
lea rdx, [rbp + 0xcf54]
call fcn.140004070
mov qword [rbp + 0xcf58], rax
lea rcx, [rbp + 0xcff0]
lea rdx, [rbp + 0xcf58]
call fcn.14003bc20
jmp 0x1400057c0
lea rcx, [rbp + 0xcff0]
mov qword [rbp + 0x21e0], rcx
call fcn.1400045b0
mov rcx, qword [rbp + 0x21e0]
mov dword [rbp + 0xcf4c], eax
lea rdx, [rbp + 0xcf40]
call fcn.140004f50
mov rcx, qword [rbp + 0x21e0]
lea rdx, [rbp + 0xcf38]
call fcn.140004fa0
mov rcx, qword [rbp + 0xcf38]
mov rdx, qword [rbp + 0xcf40]
call fcn.14003bc50
jmp 0x140005817
lea rcx, [rbp + 0xcf08]
lea rdx, [rbp + 0xcff0]
call fcn.140005360
jmp 0x14000582f
lea rcx, [rbp + 0xcf20]
lea rdx, [rbp + 0xcf08]
call fcn.140005010
jmp 0x140005847
lea rcx, [0x1401adbe0]
lea rdx, str.convex_hull:_n
call fcn.14003bc90
jmp 0x14000585f
lea rax, [rbp + 0xcf20]
mov qword [rbp + 0xcf00], rax
mov rcx, qword [rbp + 0xcf00]
lea rdx, [rbp + 0xcef8]
call fcn.140004fa0
mov rcx, qword [rbp + 0xcf00]
lea rdx, [rbp + 0xcef0]
call fcn.140004f50
lea rcx, [rbp + 0xcef8]
lea rdx, [rbp + 0xcef0]
call fcn.14003bfe0
xor al, 0xff
test al, 1
jne 0x1400058b5
jmp 0x14000594f
lea rcx, [rbp + 0xcef8]
call fcn.14003c020
mov rax, qword [rax]
mov qword [rbp + 0xcee8], rax
mov edx, dword [rbp + 0xcee8]
lea rcx, [0x1401adbe0]
call fcn.14003c040
mov qword [rbp + 0x21d8], rax
jmp 0x1400058e9
mov rcx, qword [rbp + 0x21d8]
lea rdx, [0x140166c80]
call fcn.14003bc90
mov qword [rbp + 0x21d0], rax
jmp 0x140005908
mov rcx, qword [rbp + 0x21d0]
mov edx, dword [rbp + 0xceec]
call fcn.14003c040
mov qword [rbp + 0x21c8], rax
jmp 0x140005926
mov rcx, qword [rbp + 0x21c8]
lea rdx, [0x14003c2b0]
call fcn.14003c290
jmp 0x14000593e
lea rcx, [rbp + 0xcef8]
call fcn.14003c300
jmp 0x140005893
mov dword [rbp + 0xcee4], 0x3a42
mov dword [rbp + 0xcee0], 0
cmp dword [rbp + 0xcee0], 0x5c7
jge 0x140005a31
mov ecx, 0xd7d4
call fcn.1400ea428
mov qword [rbp + 0x21c0], rax
jmp 0x140005989
mov rax, qword [rbp + 0x21c0]
mov qword [rbp + 0xced8], rax
mov dword [rbp + 0xced4], 0
cmp dword [rbp + 0xced4], 0x69
jge 0x1400059f9
call fcn.1400fb488
mov ecx, 0x2a9d
cdq
idiv ecx
mov rax, qword [rbp + 0xced8]
movsxd rcx, dword [rbp + 0xced4]
mov dword [rax + rcx*4], edx
call fcn.1400fb488
mov ecx, 0x1a2a
cdq
idiv ecx
add edx, dword [rbp + 0xcee4]
mov dword [rbp + 0xcee4], edx
mov eax, dword [rbp + 0xced4]
add eax, 1
mov dword [rbp + 0xced4], eax
jmp 0x1400059a1
mov rax, qword [rbp + 0xced8]
mov qword [rbp + 0x21b8], rax
cmp rax, 0
je 0x140005a1d
mov rcx, qword [rbp + 0x21b8]
call fcn.1400ea8d4
mov eax, dword [rbp + 0xcee0]
add eax, 1
mov dword [rbp + 0xcee0], eax
jmp 0x140005963
lea rcx, [rbp + 0xceb8]
mov qword [rbp + 0x21b0], rcx
call fcn.140004610
mov dword [rbp + 0xceac], 0
mov dword [rbp + 0xcea8], 0
lea rcx, [rbp + 0xcea8]
lea rdx, [rbp + 0xceac]
call fcn.140004070
mov rcx, qword [rbp + 0x21b0]
mov qword [rbp + 0xceb0], rax
lea rdx, [rbp + 0xceb0]
call fcn.14003bc20
jmp 0x140005a8a
mov dword [rbp + 0xce9c], 0xfffffffc
mov dword [rbp + 0xce98], 1
lea rcx, [rbp + 0xce98]
lea rdx, [rbp + 0xce9c]
call fcn.140004070
mov qword [rbp + 0xcea0], rax
lea rcx, [rbp + 0xceb8]
lea rdx, [rbp + 0xcea0]
call fcn.14003bc20
jmp 0x140005ad0
mov dword [rbp + 0xce8c], 0xfffffffb
mov dword [rbp + 0xce88], 0xffffffff
lea rcx, [rbp + 0xce88]
lea rdx, [rbp + 0xce8c]
call fcn.140004070
mov qword [rbp + 0xce90], rax
lea rcx, [rbp + 0xceb8]
lea rdx, [rbp + 0xce90]
call fcn.14003bc20
jmp 0x140005b16
mov dword [rbp + 0xce7c], 0xfffffffd
mov dword [rbp + 0xce78], 0xfffffffb
lea rcx, [rbp + 0xce78]
lea rdx, [rbp + 0xce7c]
call fcn.140004070
mov qword [rbp + 0xce80], rax
lea rcx, [rbp + 0xceb8]
lea rdx, [rbp + 0xce80]
call fcn.14003bc20
jmp 0x140005b5c
mov dword [rbp + 0xce6c], 0xffffffff
mov dword [rbp + 0xce68], 0xfffffffd
lea rcx, [rbp + 0xce68]
lea rdx, [rbp + 0xce6c]
call fcn.140004070
mov qword [rbp + 0xce70], rax
lea rcx, [rbp + 0xceb8]
lea rdx, [rbp + 0xce70]
call fcn.14003bc20
jmp 0x140005ba2
mov dword [rbp + 0xce5c], 0xfffffffd
mov dword [rbp + 0xce58], 0xffffffff
lea rcx, [rbp + 0xce58]
lea rdx, [rbp + 0xce5c]
call fcn.140004070
mov qword [rbp + 0xce60], rax
lea rcx, [rbp + 0xceb8]
lea rdx, [rbp + 0xce60]
call fcn.14003bc20
jmp 0x140005be8
mov dword [rbp + 0xce4c], 0xfffffffe
mov dword [rbp + 0xce48], 0xfffffffe
lea rcx, [rbp + 0xce48]
lea rdx, [rbp + 0xce4c]
call fcn.140004070
mov qword [rbp + 0xce50], rax
lea rcx, [rbp + 0xceb8]
lea rdx, [rbp + 0xce50]
call fcn.14003bc20
jmp 0x140005c2e
mov dword [rbp + 0xce3c], 0xffffffff
mov dword [rbp + 0xce38], 0xffffffff
lea rcx, [rbp + 0xce38]
lea rdx, [rbp + 0xce3c]
call fcn.140004070
mov qword [rbp + 0xce40], rax
lea rcx, [rbp + 0xceb8]
lea rdx, [rbp + 0xce40]
call fcn.14003bc20
jmp 0x140005c74
mov dword [rbp + 0xce2c], 0xffffffff
mov dword [rbp + 0xce28], 0xfffffffe
lea rcx, [rbp + 0xce28]
lea rdx, [rbp + 0xce2c]
call fcn.140004070
mov qword [rbp + 0xce30], rax
lea rcx, [rbp + 0xceb8]
lea rdx, [rbp + 0xce30]
call fcn.14003bc20
jmp 0x140005cba
mov dword [rbp + 0xce1c], 1
mov dword [rbp + 0xce18], 0xffffffff
lea rcx, [rbp + 0xce18]
lea rdx, [rbp + 0xce1c]
call fcn.140004070
mov qword [rbp + 0xce20], rax
lea rcx, [rbp + 0xceb8]
lea rdx, [rbp + 0xce20]
call fcn.14003bc20
jmp 0x140005d00
lea rcx, [rbp + 0xceb8]
mov qword [rbp + 0x21a8], rcx
call fcn.1400045b0
mov rcx, qword [rbp + 0x21a8]
mov dword [rbp + 0xce14], eax
lea rdx, [rbp + 0xce08]
call fcn.140004f50
mov rcx, qword [rbp + 0x21a8]
lea rdx, [rbp + 0xce00]
call fcn.140004fa0
mov rcx, qword [rbp + 0xce00]
mov rdx, qword [rbp + 0xce08]
call fcn.14003bc50
jmp 0x140005d57
lea rcx, [rbp + 0xcdd0]
lea rdx, [rbp + 0xceb8]
call fcn.140005360
jmp 0x140005d6f
lea rcx, [rbp + 0xcde8]
lea rdx, [rbp + 0xcdd0]
call fcn.140005010
jmp 0x140005d87
lea rcx, [0x1401adbe0]
lea rdx, str.convex_hull:_n
call fcn.14003bc90
jmp 0x140005d9f
lea rax, [rbp + 0xcde8]
mov qword [rbp + 0xcdc8], rax
mov rcx, qword [rbp + 0xcdc8]
lea rdx, [rbp + 0xcdc0]
call fcn.140004fa0
mov rcx, qword [rbp + 0xcdc8]
lea rdx, [rbp + 0xcdb8]
call fcn.140004f50
lea rcx, [rbp + 0xcdc0]
lea rdx, [rbp + 0xcdb8]
call fcn.14003bfe0
xor al, 0xff
test al, 1
jne 0x140005df5
jmp 0x140005e8f
lea rcx, [rbp + 0xcdc0]
call fcn.14003c020
mov rax, qword [rax]
mov qword [rbp + 0xcdb0], rax
mov edx, dword [rbp + 0xcdb0]
lea rcx, [0x1401adbe0]
call fcn.14003c040
mov qword [rbp + 0x21a0], rax
jmp 0x140005e29
mov rcx, qword [rbp + 0x21a0]
lea rdx, [0x140166c80]
call fcn.14003bc90
mov qword [rbp + 0x2198], rax
jmp 0x140005e48
mov rcx, qword [rbp + 0x2198]
mov edx, dword [rbp + 0xcdb4]
call fcn.14003c040
mov qword [rbp + 0x2190], rax
jmp 0x140005e66
mov rcx, qword [rbp + 0x2190]
lea rdx, [0x14003c2b0]
call fcn.14003c290
jmp 0x140005e7e
lea rcx, [rbp + 0xcdc0]
call fcn.14003c300
jmp 0x140005dd3
mov dword [rbp + 0xcdac], 0x2681
mov dword [rbp + 0xcda8], 0
cmp dword [rbp + 0xcda8], 0x4a7
jge 0x140005f74
mov ecx, 0x22644
call fcn.1400ea428
mov qword [rbp + 0x2188], rax
jmp 0x140005ec9
mov rax, qword [rbp + 0x2188]
mov qword [rbp + 0xcda0], rax
mov dword [rbp + 0xcd9c], 0
cmp dword [rbp + 0xcd9c], 0x19e
jge 0x140005f3c
call fcn.1400fb488
mov ecx, 0x22c4
cdq
idiv ecx
mov rax, qword [rbp + 0xcda0]
movsxd rcx, dword [rbp + 0xcd9c]
mov dword [rax + rcx*4], edx
call fcn.1400fb488
mov ecx, 0x2eac
cdq
idiv ecx
add edx, dword [rbp + 0xcdac]
mov dword [rbp + 0xcdac], edx
mov eax, dword [rbp + 0xcd9c]
add eax, 1
mov dword [rbp + 0xcd9c], eax
jmp 0x140005ee1
mov rax, qword [rbp + 0xcda0]
mov qword [rbp + 0x2180], rax
cmp rax, 0
je 0x140005f60
mov rcx, qword [rbp + 0x2180]
call fcn.1400ea8d4
mov eax, dword [rbp + 0xcda8]
add eax, 1
mov dword [rbp + 0xcda8], eax
jmp 0x140005ea3
lea rcx, [rbp + 0xcd80]
mov qword [rbp + 0x2178], rcx
call fcn.140004610
mov dword [rbp + 0xcd74], 0
mov dword [rbp + 0xcd70], 0
lea rcx, [rbp + 0xcd70]
lea rdx, [rbp + 0xcd74]
call fcn.140004070
mov rcx, qword [rbp + 0x2178]
mov qword [rbp + 0xcd78], rax
lea rdx, [rbp + 0xcd78]
call fcn.14003bc20
jmp 0x140005fcd
mov dword [rbp + 0xcd64], 0xfffffffc
mov dword [rbp + 0xcd60], 1
lea rcx, [rbp + 0xcd60]
lea rdx, [rbp + 0xcd64]
call fcn.140004070
mov qword [rbp + 0xcd68], rax
lea rcx, [rbp + 0xcd80]
lea rdx, [rbp + 0xcd68]
call fcn.14003bc20
jmp 0x140006013
mov dword [rbp + 0xcd54], 0xfffffffb
mov dword [rbp + 0xcd50], 0xffffffff
lea rcx, [rbp + 0xcd50]
lea rdx, [rbp + 0xcd54]
call fcn.140004070
mov qword [rbp + 0xcd58], rax
lea rcx, [rbp + 0xcd80]
lea rdx, [rbp + 0xcd58]
call fcn.14003bc20
jmp 0x140006059
mov dword [rbp + 0xcd44], 0xfffffffd
mov dword [rbp + 0xcd40], 0xfffffffb
lea rcx, [rbp + 0xcd40]
lea rdx, [rbp + 0xcd44]
call fcn.140004070
mov qword [rbp + 0xcd48], rax
lea rcx, [rbp + 0xcd80]
lea rdx, [rbp + 0xcd48]
call fcn.14003bc20
jmp 0x14000609f
mov dword [rbp + 0xcd34], 0xffffffff
mov dword [rbp + 0xcd30], 0xfffffffd
lea rcx, [rbp + 0xcd30]
lea rdx, [rbp + 0xcd34]
call fcn.140004070
mov qword [rbp + 0xcd38], rax
lea rcx, [rbp + 0xcd80]
lea rdx, [rbp + 0xcd38]
call fcn.14003bc20
jmp 0x1400060e5
mov dword [rbp + 0xcd24], 0xfffffffd
mov dword [rbp + 0xcd20], 0xffffffff
lea rcx, [rbp + 0xcd20]
lea rdx, [rbp + 0xcd24]
call fcn.140004070
mov qword [rbp + 0xcd28], rax
lea rcx, [rbp + 0xcd80]
lea rdx, [rbp + 0xcd28]
call fcn.14003bc20
jmp 0x14000612b
mov dword [rbp + 0xcd14], 0xfffffffe
mov dword [rbp + 0xcd10], 0xfffffffe
lea rcx, [rbp + 0xcd10]
lea rdx, [rbp + 0xcd14]
call fcn.140004070
mov qword [rbp + 0xcd18], rax
lea rcx, [rbp + 0xcd80]
lea rdx, [rbp + 0xcd18]
call fcn.14003bc20
jmp 0x140006171
mov dword [rbp + 0xcd04], 0xffffffff
mov dword [rbp + 0xcd00], 0xffffffff
lea rcx, [rbp + 0xcd00]
lea rdx, [rbp + 0xcd04]
call fcn.140004070
mov qword [rbp + 0xcd08], rax
lea rcx, [rbp + 0xcd80]
lea rdx, [rbp + 0xcd08]
call fcn.14003bc20
jmp 0x1400061b7
mov dword [rbp + 0xccf4], 0xffffffff
mov dword [rbp + 0xccf0], 0xfffffffe
lea rcx, [rbp + 0xccf0]
lea rdx, [rbp + 0xccf4]
call fcn.140004070
mov qword [rbp + 0xccf8], rax
lea rcx, [rbp + 0xcd80]
lea rdx, [rbp + 0xccf8]
call fcn.14003bc20
jmp 0x1400061fd
mov dword [rbp + 0xcce4], 1
mov dword [rbp + 0xcce0], 0xffffffff
lea rcx, [rbp + 0xcce0]
lea rdx, [rbp + 0xcce4]
call fcn.140004070
mov qword [rbp + 0xcce8], rax
lea rcx, [rbp + 0xcd80]
lea rdx, [rbp + 0xcce8]
call fcn.14003bc20
jmp 0x140006243
lea rcx, [rbp + 0xcd80]
mov qword [rbp + 0x2170], rcx
call fcn.1400045b0
mov rcx, qword [rbp + 0x2170]
mov dword [rbp + 0xccdc], eax
lea rdx, [rbp + 0xccd0]
call fcn.140004f50
mov rcx, qword [rbp + 0x2170]
lea rdx, [rbp + 0xccc8]
call fcn.140004fa0
mov rcx, qword [rbp + 0xccc8]
mov rdx, qword [rbp + 0xccd0]
call fcn.14003bc50
jmp 0x14000629a
lea rcx, [rbp + 0xcc98]
lea rdx, [rbp + 0xcd80]
call fcn.140005360
jmp 0x1400062b2
lea rcx, [rbp + 0xccb0]
lea rdx, [rbp + 0xcc98]
call fcn.140005010
jmp 0x1400062ca
lea rcx, [0x1401adbe0]
lea rdx, str.convex_hull:_n
call fcn.14003bc90
jmp 0x1400062e2
lea rax, [rbp + 0xccb0]
mov qword [rbp + 0xcc90], rax
mov rcx, qword [rbp + 0xcc90]
lea rdx, [rbp + 0xcc88]
call fcn.140004fa0
mov rcx, qword [rbp + 0xcc90]
lea rdx, [rbp + 0xcc80]
call fcn.140004f50
lea rcx, [rbp + 0xcc88]
lea rdx, [rbp + 0xcc80]
call fcn.14003bfe0
xor al, 0xff
test al, 1
jne 0x140006338
jmp 0x1400063d2
lea rcx, [rbp + 0xcc88]
call fcn.14003c020
mov rax, qword [rax]
mov qword [rbp + 0xcc78], rax
mov edx, dword [rbp + 0xcc78]
lea rcx, [0x1401adbe0]
call fcn.14003c040
mov qword [rbp + 0x2168], rax
jmp 0x14000636c
mov rcx, qword [rbp + 0x2168]
lea rdx, [0x140166c80]
call fcn.14003bc90
mov qword [rbp + 0x2160], rax
jmp 0x14000638b
mov rcx, qword [rbp + 0x2160]
mov edx, dword [rbp + 0xcc7c]
call fcn.14003c040
mov qword [rbp + 0x2158], rax
jmp 0x1400063a9
mov rcx, qword [rbp + 0x2158]
lea rdx, [0x14003c2b0]
call fcn.14003c290
jmp 0x1400063c1
lea rcx, [rbp + 0xcc88]
call fcn.14003c300
jmp 0x140006316
mov dword [rbp + 0xcc74], 0x1d76
mov dword [rbp + 0xcc70], 0
cmp dword [rbp + 0xcc70], 0x4bf
jge 0x1400064b7
mov ecx, 0xf728
call fcn.1400ea428
mov qword [rbp + 0x2150], rax
jmp 0x14000640c
mov rax, qword [rbp + 0x2150]
mov qword [rbp + 0xcc68], rax
mov dword [rbp + 0xcc64], 0
cmp dword [rbp + 0xcc64], 0x1f4
jge 0x14000647f
call fcn.1400fb488
mov ecx, 0x3987
cdq
idiv ecx
mov rax, qword [rbp + 0xcc68]
movsxd rcx, dword [rbp + 0xcc64]
mov dword [rax + rcx*4], edx
call fcn.1400fb488
mov ecx, 0x2c84
cdq
idiv ecx
add edx, dword [rbp + 0xcc74]
mov dword [rbp + 0xcc74], edx
mov eax, dword [rbp + 0xcc64]
add eax, 1
mov dword [rbp + 0xcc64], eax
jmp 0x140006424
mov rax, qword [rbp + 0xcc68]
mov qword [rbp + 0x2148], rax
cmp rax, 0
je 0x1400064a3
mov rcx, qword [rbp + 0x2148]
call fcn.1400ea8d4
mov eax, dword [rbp + 0xcc70]
add eax, 1
mov dword [rbp + 0xcc70], eax
jmp 0x1400063e6
lea rcx, [rbp + 0xcc48]
mov qword [rbp + 0x2140], rcx
call fcn.140004610
mov dword [rbp + 0xcc3c], 0
mov dword [rbp + 0xcc38], 0
lea rcx, [rbp + 0xcc38]
lea rdx, [rbp + 0xcc3c]
call fcn.140004070
mov rcx, qword [rbp + 0x2140]
mov qword [rbp + 0xcc40], rax
lea rdx, [rbp + 0xcc40]
call fcn.14003bc20
jmp 0x140006510
mov dword [rbp + 0xcc2c], 0xfffffffc
mov dword [rbp + 0xcc28], 1
lea rcx, [rbp + 0xcc28]
lea rdx, [rbp + 0xcc2c]
call fcn.140004070
mov qword [rbp + 0xcc30], rax
lea rcx, [rbp + 0xcc48]
lea rdx, [rbp + 0xcc30]
call fcn.14003bc20
jmp 0x140006556
mov dword [rbp + 0xcc1c], 0xfffffffb
mov dword [rbp + 0xcc18], 0xffffffff
lea rcx, [rbp + 0xcc18]
lea rdx, [rbp + 0xcc1c]
call fcn.140004070
mov qword [rbp + 0xcc20], rax
lea rcx, [rbp + 0xcc48]
lea rdx, [rbp + 0xcc20]
call fcn.14003bc20
jmp 0x14000659c
mov dword [rbp + 0xcc0c], 0xfffffffd
mov dword [rbp + 0xcc08], 0xfffffffb
lea rcx, [rbp + 0xcc08]
lea rdx, [rbp + 0xcc0c]
call fcn.140004070
mov qword [rbp + 0xcc10], rax
lea rcx, [rbp + 0xcc48]
lea rdx, [rbp + 0xcc10]
call fcn.14003bc20
jmp 0x1400065e2
mov dword [rbp + 0xcbfc], 0xffffffff
mov dword [rbp + 0xcbf8], 0xfffffffd
lea rcx, [rbp + 0xcbf8]
lea rdx, [rbp + 0xcbfc]
call fcn.140004070
mov qword [rbp + 0xcc00], rax
lea rcx, [rbp + 0xcc48]
lea rdx, [rbp + 0xcc00]
call fcn.14003bc20
jmp 0x140006628
mov dword [rbp + 0xcbec], 0xfffffffd
mov dword [rbp + 0xcbe8], 0xffffffff
lea rcx, [rbp + 0xcbe8]
lea rdx, [rbp + 0xcbec]
call fcn.140004070
mov qword [rbp + 0xcbf0], rax
lea rcx, [rbp + 0xcc48]
lea rdx, [rbp + 0xcbf0]
call fcn.14003bc20
jmp 0x14000666e
mov dword [rbp + 0xcbdc], 0xfffffffe
mov dword [rbp + 0xcbd8], 0xfffffffe
lea rcx, [rbp + 0xcbd8]
lea rdx, [rbp + 0xcbdc]
call fcn.140004070
mov qword [rbp + 0xcbe0], rax
lea rcx, [rbp + 0xcc48]
lea rdx, [rbp + 0xcbe0]
call fcn.14003bc20
jmp 0x1400066b4
mov dword [rbp + 0xcbcc], 0xffffffff
mov dword [rbp + 0xcbc8], 0xffffffff
lea rcx, [rbp + 0xcbc8]
lea rdx, [rbp + 0xcbcc]
call fcn.140004070
mov qword [rbp + 0xcbd0], rax
lea rcx, [rbp + 0xcc48]
lea rdx, [rbp + 0xcbd0]
call fcn.14003bc20
jmp 0x1400066fa
mov dword [rbp + 0xcbbc], 0xffffffff
mov dword [rbp + 0xcbb8], 0xfffffffe
lea rcx, [rbp + 0xcbb8]
lea rdx, [rbp + 0xcbbc]
call fcn.140004070
mov qword [rbp + 0xcbc0], rax
lea rcx, [rbp + 0xcc48]
lea rdx, [rbp + 0xcbc0]
call fcn.14003bc20
jmp 0x140006740
mov dword [rbp + 0xcbac], 1
mov dword [rbp + 0xcba8], 0xffffffff
lea rcx, [rbp + 0xcba8]
lea rdx, [rbp + 0xcbac]
call fcn.140004070
mov qword [rbp + 0xcbb0], rax
lea rcx, [rbp + 0xcc48]
lea rdx, [rbp + 0xcbb0]
call fcn.14003bc20
jmp 0x140006786
lea rcx, [rbp + 0xcc48]
mov qword [rbp + 0x2138], rcx
call fcn.1400045b0
mov rcx, qword [rbp + 0x2138]
mov dword [rbp + 0xcba4], eax
lea rdx, [rbp + 0xcb98]
call fcn.140004f50
mov rcx, qword [rbp + 0x2138]
lea rdx, [rbp + 0xcb90]
call fcn.140004fa0
mov rcx, qword [rbp + 0xcb90]
mov rdx, qword [rbp + 0xcb98]
call fcn.14003bc50
jmp 0x1400067dd
lea rcx, [rbp + 0xcb60]
lea rdx, [rbp + 0xcc48]
call fcn.140005360
jmp 0x1400067f5
lea rcx, [rbp + 0xcb78]
lea rdx, [rbp + 0xcb60]
call fcn.140005010
jmp 0x14000680d
lea rcx, [0x1401adbe0]
lea rdx, str.convex_hull:_n
call fcn.14003bc90
jmp 0x140006825
lea rax, [rbp + 0xcb78]
mov qword [rbp + 0xcb58], rax
mov rcx, qword [rbp + 0xcb58]
lea rdx, [rbp + 0xcb50]
call fcn.140004fa0
mov rcx, qword [rbp + 0xcb58]
lea rdx, [rbp + 0xcb48]
call fcn.140004f50
lea rcx, [rbp + 0xcb50]
lea rdx, [rbp + 0xcb48]
call fcn.14003bfe0
xor al, 0xff
test al, 1
jne 0x14000687b
jmp 0x140006915
lea rcx, [rbp + 0xcb50]
call fcn.14003c020
mov rax, qword [rax]
mov qword [rbp + 0xcb40], rax
mov edx, dword [rbp + 0xcb40]
lea rcx, [0x1401adbe0]
call fcn.14003c040
mov qword [rbp + 0x2130], rax
jmp 0x1400068af
mov rcx, qword [rbp + 0x2130]
lea rdx, [0x140166c80]
call fcn.14003bc90
mov qword [rbp + 0x2128], rax
jmp 0x1400068ce
mov rcx, qword [rbp + 0x2128]
mov edx, dword [rbp + 0xcb44]
call fcn.14003c040
mov qword [rbp + 0x2120], rax
jmp 0x1400068ec
mov rcx, qword [rbp + 0x2120]
lea rdx, [0x14003c2b0]
call fcn.14003c290
jmp 0x140006904
lea rcx, [rbp + 0xcb50]
call fcn.14003c300
jmp 0x140006859
mov dword [rbp + 0xcb3c], 0x1f32
mov dword [rbp + 0xcb38], 0
cmp dword [rbp + 0xcb38], 0x508
jge 0x1400069f7
mov ecx, 0x23308
call fcn.1400ea428
mov qword [rbp + 0x2118], rax
jmp 0x14000694f
mov rax, qword [rbp + 0x2118]
mov qword [rbp + 0xcb30], rax
mov dword [rbp + 0xcb2c], 0
cmp dword [rbp + 0xcb2c], 0x7e
jge 0x1400069bf
call fcn.1400fb488
mov ecx, 0x31a3
cdq
idiv ecx
mov rax, qword [rbp + 0xcb30]
movsxd rcx, dword [rbp + 0xcb2c]
mov dword [rax + rcx*4], edx
call fcn.1400fb488
mov ecx, 0x24d3
cdq
idiv ecx
add edx, dword [rbp + 0xcb3c]
mov dword [rbp + 0xcb3c], edx
mov eax, dword [rbp + 0xcb2c]
add eax, 1
mov dword [rbp + 0xcb2c], eax
jmp 0x140006967
mov rax, qword [rbp + 0xcb30]
mov qword [rbp + 0x2110], rax
cmp rax, 0
je 0x1400069e3
mov rcx, qword [rbp + 0x2110]
call fcn.1400ea8d4
mov eax, dword [rbp + 0xcb38]
add eax, 1
mov dword [rbp + 0xcb38], eax
jmp 0x140006929
lea rcx, [rbp + 0xcb10]
mov qword [rbp + 0x2108], rcx
call fcn.140004610
mov dword [rbp + 0xcb04], 0
mov dword [rbp + 0xcb00], 0
lea rcx, [rbp + 0xcb00]
lea rdx, [rbp + 0xcb04]
call fcn.140004070
mov rcx, qword [rbp + 0x2108]
mov qword [rbp + 0xcb08], rax
lea rdx, [rbp + 0xcb08]
call fcn.14003bc20
jmp 0x140006a50
mov dword [rbp + 0xcaf4], 0xfffffffc
mov dword [rbp + 0xcaf0], 1
lea rcx, [rbp + 0xcaf0]
lea rdx, [rbp + 0xcaf4]
call fcn.140004070
mov qword [rbp + 0xcaf8], rax
lea rcx, [rbp + 0xcb10]
lea rdx, [rbp + 0xcaf8]
call fcn.14003bc20
jmp 0x140006a96
mov dword [rbp + 0xcae4], 0xfffffffb
mov dword [rbp + 0xcae0], 0xffffffff
lea rcx, [rbp + 0xcae0]
lea rdx, [rbp + 0xcae4]
call fcn.140004070
mov qword [rbp + 0xcae8], rax
lea rcx, [rbp + 0xcb10]
lea rdx, [rbp + 0xcae8]
call fcn.14003bc20
jmp 0x140006adc
mov dword [rbp + 0xcad4], 0xfffffffd
mov dword [rbp + 0xcad0], 0xfffffffb
lea rcx, [rbp + 0xcad0]
lea rdx, [rbp + 0xcad4]
call fcn.140004070
mov qword [rbp + 0xcad8], rax
lea rcx, [rbp + 0xcb10]
lea rdx, [rbp + 0xcad8]
call fcn.14003bc20
jmp 0x140006b22
mov dword [rbp + 0xcac4], 0xffffffff
mov dword [rbp + 0xcac0], 0xfffffffd
lea rcx, [rbp + 0xcac0]
lea rdx, [rbp + 0xcac4]
call fcn.140004070
mov qword [rbp + 0xcac8], rax
lea rcx, [rbp + 0xcb10]
lea rdx, [rbp + 0xcac8]
call fcn.14003bc20
jmp 0x140006b68
mov dword [rbp + 0xcab4], 0xfffffffd
mov dword [rbp + 0xcab0], 0xffffffff
lea rcx, [rbp + 0xcab0]
lea rdx, [rbp + 0xcab4]
call fcn.140004070
mov qword [rbp + 0xcab8], rax
lea rcx, [rbp + 0xcb10]
lea rdx, [rbp + 0xcab8]
call fcn.14003bc20
jmp 0x140006bae
mov dword [rbp + 0xcaa4], 0xfffffffe
mov dword [rbp + 0xcaa0], 0xfffffffe
lea rcx, [rbp + 0xcaa0]
lea rdx, [rbp + 0xcaa4]
call fcn.140004070
mov qword [rbp + 0xcaa8], rax
lea rcx, [rbp + 0xcb10]
lea rdx, [rbp + 0xcaa8]
call fcn.14003bc20
jmp 0x140006bf4
mov dword [rbp + 0xca94], 0xffffffff
mov dword [rbp + 0xca90], 0xffffffff
lea rcx, [rbp + 0xca90]
lea rdx, [rbp + 0xca94]
call fcn.140004070
mov qword [rbp + 0xca98], rax
lea rcx, [rbp + 0xcb10]
lea rdx, [rbp + 0xca98]
call fcn.14003bc20
jmp 0x140006c3a
mov dword [rbp + 0xca84], 0xffffffff
mov dword [rbp + 0xca80], 0xfffffffe
lea rcx, [rbp + 0xca80]
lea rdx, [rbp + 0xca84]
call fcn.140004070
mov qword [rbp + 0xca88], rax
lea rcx, [rbp + 0xcb10]
lea rdx, [rbp + 0xca88]
call fcn.14003bc20
jmp 0x140006c80
mov dword [rbp + 0xca74], 1
mov dword [rbp + 0xca70], 0xffffffff
lea rcx, [rbp + 0xca70]
lea rdx, [rbp + 0xca74]
call fcn.140004070
mov qword [rbp + 0xca78], rax
lea rcx, [rbp + 0xcb10]
lea rdx, [rbp + 0xca78]
call fcn.14003bc20
jmp 0x140006cc6
lea rcx, [rbp + 0xcb10]
mov qword [rbp + 0x2100], rcx
call fcn.1400045b0
mov rcx, qword [rbp + 0x2100]
mov dword [rbp + 0xca6c], eax
lea rdx, [rbp + 0xca60]
call fcn.140004f50
mov rcx, qword [rbp + 0x2100]
lea rdx, [rbp + 0xca58]
call fcn.140004fa0
mov rcx, qword [rbp + 0xca58]
mov rdx, qword [rbp + 0xca60]
call fcn.14003bc50
jmp 0x140006d1d
lea rcx, [rbp + 0xca28]
lea rdx, [rbp + 0xcb10]
call fcn.140005360
jmp 0x140006d35
lea rcx, [rbp + 0xca40]
lea rdx, [rbp + 0xca28]
call fcn.140005010
jmp 0x140006d4d
lea rcx, [0x1401adbe0]
lea rdx, str.convex_hull:_n
call fcn.14003bc90
jmp 0x140006d65
lea rax, [rbp + 0xca40]
mov qword [rbp + 0xca20], rax
mov rcx, qword [rbp + 0xca20]
lea rdx, [rbp + 0xca18]
call fcn.140004fa0
mov rcx, qword [rbp + 0xca20]
lea rdx, [rbp + 0xca10]
call fcn.140004f50
lea rcx, [rbp + 0xca18]
lea rdx, [rbp + 0xca10]
call fcn.14003bfe0
xor al, 0xff
test al, 1
jne 0x140006dbb
jmp 0x140006e55
lea rcx, [rbp + 0xca18]
call fcn.14003c020
mov rax, qword [rax]
mov qword [rbp + 0xca08], rax
mov edx, dword [rbp + 0xca08]
lea rcx, [0x1401adbe0]
call fcn.14003c040
mov qword [rbp + 0x20f8], rax
jmp 0x140006def
mov rcx, qword [rbp + 0x20f8]
lea rdx, [0x140166c80]
call fcn.14003bc90
mov qword [rbp + 0x20f0], rax
jmp 0x140006e0e
mov rcx, qword [rbp + 0x20f0]
mov edx, dword [rbp + 0xca0c]
call fcn.14003c040
mov qword [rbp + 0x20e8], rax
jmp 0x140006e2c
mov rcx, qword [rbp + 0x20e8]
lea rdx, [0x14003c2b0]
call fcn.14003c290
jmp 0x140006e44
lea rcx, [rbp + 0xca18]
call fcn.14003c300
jmp 0x140006d99
movss xmm0, dword [0x14015c4cc]
movss dword [rbp + 0xca04], xmm0
movss xmm0, dword [0x14015c4c8]
movss dword [rbp + 0xca04], xmm0
movss xmm0, dword [rbp + 0xca04]
cvtss2sd xmm0, xmm0
movsd xmm1, qword [0x14015c4c0]
ucomisd xmm0, xmm1
jne 0x140006fac
jp 0x140006fac
mov dword [rbp + 0xca00], 0
cmp dword [rbp + 0xca00], 0x11bd
jge 0x140006f8c
mov ecx, 0xa530
call fcn.1400ea428
mov qword [rbp + 0x20e0], rax
jmp 0x140006ec9
mov rax, qword [rbp + 0x20e0]
mov qword [rbp + 0xc9f8], rax
mov dword [rbp + 0xc9f4], 0
cmp dword [rbp + 0xc9f4], 0x184
jge 0x140006f54
call fcn.1400fb488
mov ecx, 0x16d1
cdq
idiv ecx
mov rax, qword [rbp + 0xc9f8]
movsxd rcx, dword [rbp + 0xc9f4]
mov dword [rax + rcx*4], edx
call fcn.1400fb488
cvtsi2sd xmm1, eax
movsd xmm0, qword [0x14015ca58]
subsd xmm1, xmm0
movss xmm0, dword [rbp + 0xca04]
cvtss2sd xmm0, xmm0
addsd xmm0, xmm1
cvtsd2ss xmm0, xmm0
movss dword [rbp + 0xca04], xmm0
mov eax, dword [rbp + 0xc9f4]
add eax, 1
mov dword [rbp + 0xc9f4], eax
jmp 0x140006ee1
mov rax, qword [rbp + 0xc9f8]
mov qword [rbp + 0x20d8], rax
cmp rax, 0
je 0x140006f78
mov rcx, qword [rbp + 0x20d8]
call fcn.1400ea8d4
mov eax, dword [rbp + 0xca00]
add eax, 1
mov dword [rbp + 0xca00], eax
jmp 0x140006ea3
movss xmm0, dword [0x14015c4d4]
movss dword [rbp + 0xca04], xmm0
movss xmm0, dword [0x14015c4d0]
movss dword [rbp + 0xca04], xmm0
movss xmm0, dword [rbp + 0xca04]
cvtss2sd xmm0, xmm0
movsd xmm1, qword [0x14015c4d8]
ucomisd xmm0, xmm1
jne 0x1400070e3
jp 0x1400070e3
mov dword [rbp + 0xc9f0], 0
cmp dword [rbp + 0xc9f0], 0x14e7
jge 0x1400070c3
mov ecx, 0x1bc9c
call fcn.1400ea428
mov qword [rbp + 0x20d0], rax
jmp 0x140007000
mov rax, qword [rbp + 0x20d0]
mov qword [rbp + 0xc9e8], rax
mov dword [rbp + 0xc9e4], 0
cmp dword [rbp + 0xc9e4], 0x35c
jge 0x14000708b
call fcn.1400fb488
mov ecx, 0x3238
cdq
idiv ecx
mov rax, qword [rbp + 0xc9e8]
movsxd rcx, dword [rbp + 0xc9e4]
mov dword [rax + rcx*4], edx
call fcn.1400fb488
cvtsi2sd xmm1, eax
movsd xmm0, qword [0x14015ca50]
subsd xmm1, xmm0
movss xmm0, dword [rbp + 0xca04]
cvtss2sd xmm0, xmm0
addsd xmm0, xmm1
cvtsd2ss xmm0, xmm0
movss dword [rbp + 0xca04], xmm0
mov eax, dword [rbp + 0xc9e4]
add eax, 1
mov dword [rbp + 0xc9e4], eax
jmp 0x140007018
mov rax, qword [rbp + 0xc9e8]
mov qword [rbp + 0x20c8], rax
cmp rax, 0
je 0x1400070af
mov rcx, qword [rbp + 0x20c8]
call fcn.1400ea8d4
mov eax, dword [rbp + 0xc9f0]
add eax, 1
mov dword [rbp + 0xc9f0], eax
jmp 0x140006fda
movss xmm0, dword [0x14015c4e4]
movss dword [rbp + 0xca04], xmm0
movss xmm0, dword [str.upEI8]
movss dword [rbp + 0xca04], xmm0
movss xmm0, dword [rbp + 0xca04]
cvtss2sd xmm0, xmm0
movsd xmm1, qword [0x14015c4e8]
ucomisd xmm0, xmm1
jne 0x14000721a
jp 0x14000721a
mov dword [rbp + 0xc9e0], 0
cmp dword [rbp + 0xc9e0], 0xe03
jge 0x1400071fa
mov ecx, 0x15060
call fcn.1400ea428
mov qword [rbp + 0x20c0], rax
jmp 0x140007137
mov rax, qword [rbp + 0x20c0]
mov qword [rbp + 0xc9d8], rax
mov dword [rbp + 0xc9d4], 0
cmp dword [rbp + 0xc9d4], 0x106
jge 0x1400071c2
call fcn.1400fb488
mov ecx, 0x3016
cdq
idiv ecx
mov rax, qword [rbp + 0xc9d8]
movsxd rcx, dword [rbp + 0xc9d4]
mov dword [rax + rcx*4], edx
call fcn.1400fb488
cvtsi2sd xmm1, eax
movsd xmm0, qword [0x14015ca48]
subsd xmm1, xmm0
movss xmm0, dword [rbp + 0xca04]
cvtss2sd xmm0, xmm0
addsd xmm0, xmm1
cvtsd2ss xmm0, xmm0
movss dword [rbp + 0xca04], xmm0
mov eax, dword [rbp + 0xc9d4]
add eax, 1
mov dword [rbp + 0xc9d4], eax
jmp 0x14000714f
mov rax, qword [rbp + 0xc9d8]
mov qword [rbp + 0x20b8], rax
cmp rax, 0
je 0x1400071e6
mov rcx, qword [rbp + 0x20b8]
call fcn.1400ea8d4
mov eax, dword [rbp + 0xc9e0]
add eax, 1
mov dword [rbp + 0xc9e0], eax
jmp 0x140007111
movss xmm0, dword [0x14015c4f4]
movss dword [rbp + 0xca04], xmm0
movss xmm0, dword [0x14015c4f0]
movss dword [rbp + 0xca04], xmm0
movss xmm0, dword [rbp + 0xca04]
cvtss2sd xmm0, xmm0
movsd xmm1, qword [0x14015c4f8]
ucomisd xmm0, xmm1
jne 0x140007351
jp 0x140007351
mov dword [rbp + 0xc9d0], 0
cmp dword [rbp + 0xc9d0], 0xdfa
jge 0x140007331
mov ecx, 0x17280
call fcn.1400ea428
mov qword [rbp + 0x20b0], rax
jmp 0x14000726e
mov rax, qword [rbp + 0x20b0]
mov qword [rbp + 0xc9c8], rax
mov dword [rbp + 0xc9c4], 0
cmp dword [rbp + 0xc9c4], 0x255
jge 0x1400072f9
call fcn.1400fb488
mov ecx, 0x2277
cdq
idiv ecx
mov rax, qword [rbp + 0xc9c8]
movsxd rcx, dword [rbp + 0xc9c4]
mov dword [rax + rcx*4], edx
call fcn.1400fb488
cvtsi2sd xmm1, eax
movsd xmm0, qword [0x14015ca40]
subsd xmm1, xmm0
movss xmm0, dword [rbp + 0xca04]
cvtss2sd xmm0, xmm0
addsd xmm0, xmm1
cvtsd2ss xmm0, xmm0
movss dword [rbp + 0xca04], xmm0
mov eax, dword [rbp + 0xc9c4]
add eax, 1
mov dword [rbp + 0xc9c4], eax
jmp 0x140007286
mov rax, qword [rbp + 0xc9c8]
mov qword [rbp + 0x20a8], rax
cmp rax, 0
je 0x14000731d
mov rcx, qword [rbp + 0x20a8]
call fcn.1400ea8d4
mov eax, dword [rbp + 0xc9d0]
add eax, 1
mov dword [rbp + 0xc9d0], eax
jmp 0x140007248
movss xmm0, dword [0x14015c504]
movss dword [rbp + 0xca04], xmm0
movss xmm0, dword [0x14015c500]
movss dword [rbp + 0xca04], xmm0
xor eax, eax
mov ecx, eax
xor edx, edx
call qword [sym.imp.ole32.dll_CoInitializeEx]
mov dword [rbp + 0xd024], eax
cmp dword [rbp + 0xd024], 0
jge 0x140007389
mov dword [rbp + 0xd03c], 0
mov dword [rbp + 0xc9c0], 1
jmp 0x1400386e1
mov dword [rbp + 0xc9bc], 0x5f8c
mov dword [rbp + 0xc9b8], 0
cmp dword [rbp + 0xc9b8], 0x619
jge 0x14000746e
mov ecx, 0x1b67c
call fcn.1400ea428
mov qword [rbp + 0x20a0], rax
jmp 0x1400073c3
mov rax, qword [rbp + 0x20a0]
mov qword [rbp + 0xc9b0], rax
mov dword [rbp + 0xc9ac], 0
cmp dword [rbp + 0xc9ac], 0x9d
jge 0x140007436
call fcn.1400fb488
mov ecx, 0x294a
cdq
idiv ecx
mov rax, qword [rbp + 0xc9b0]
movsxd rcx, dword [rbp + 0xc9ac]
mov dword [rax + rcx*4], edx
call fcn.1400fb488
mov ecx, 0x2368
cdq
idiv ecx
add edx, dword [rbp + 0xc9bc]
mov dword [rbp + 0xc9bc], edx
mov eax, dword [rbp + 0xc9ac]
add eax, 1
mov dword [rbp + 0xc9ac], eax
jmp 0x1400073db
mov rax, qword [rbp + 0xc9b0]
mov qword [rbp + 0x2098], rax
cmp rax, 0
je 0x14000745a
mov rcx, qword [rbp + 0x2098]
call fcn.1400ea8d4
mov eax, dword [rbp + 0xc9b8]
add eax, 1
mov dword [rbp + 0xc9b8], eax
jmp 0x14000739d
lea rcx, [rbp + 0xc990]
mov qword [rbp + 0x2090], rcx
call fcn.140004610
mov dword [rbp + 0xc984], 0
mov dword [rbp + 0xc980], 0
lea rcx, [rbp + 0xc980]
lea rdx, [rbp + 0xc984]
call fcn.140004070
mov rcx, qword [rbp + 0x2090]
mov qword [rbp + 0xc988], rax
lea rdx, [rbp + 0xc988]
call fcn.14003bc20
jmp 0x1400074c7
mov dword [rbp + 0xc974], 0xfffffffc
mov dword [rbp + 0xc970], 1
lea rcx, [rbp + 0xc970]
lea rdx, [rbp + 0xc974]
call fcn.140004070
mov qword [rbp + 0xc978], rax
lea rcx, [rbp + 0xc990]
lea rdx, [rbp + 0xc978]
call fcn.14003bc20
jmp 0x14000750d
mov dword [rbp + 0xc964], 0xfffffffb
mov dword [rbp + 0xc960], 0xffffffff
lea rcx, [rbp + 0xc960]
lea rdx, [rbp + 0xc964]
call fcn.140004070
mov qword [rbp + 0xc968], rax
lea rcx, [rbp + 0xc990]
lea rdx, [rbp + 0xc968]
call fcn.14003bc20
jmp 0x140007553
mov dword [rbp + 0xc954], 0xfffffffd
mov dword [rbp + 0xc950], 0xfffffffb
lea rcx, [rbp + 0xc950]
lea rdx, [rbp + 0xc954]
call fcn.140004070
mov qword [rbp + 0xc958], rax
lea rcx, [rbp + 0xc990]
lea rdx, [rbp + 0xc958]
call fcn.14003bc20
jmp 0x140007599
mov dword [rbp + 0xc944], 0xffffffff
mov dword [rbp + 0xc940], 0xfffffffd
lea rcx, [rbp + 0xc940]
lea rdx, [rbp + 0xc944]
call fcn.140004070
mov qword [rbp + 0xc948], rax
lea rcx, [rbp + 0xc990]
lea rdx, [rbp + 0xc948]
call fcn.14003bc20
jmp 0x1400075df
mov dword [rbp + 0xc934], 0xfffffffd
mov dword [rbp + 0xc930], 0xffffffff
lea rcx, [rbp + 0xc930]
lea rdx, [rbp + 0xc934]
call fcn.140004070
mov qword [rbp + 0xc938], rax
lea rcx, [rbp + 0xc990]
lea rdx, [rbp + 0xc938]
call fcn.14003bc20
jmp 0x140007625
mov dword [rbp + 0xc924], 0xfffffffe
mov dword [rbp + 0xc920], 0xfffffffe
lea rcx, [rbp + 0xc920]
lea rdx, [rbp + 0xc924]
call fcn.140004070
mov qword [rbp + 0xc928], rax
lea rcx, [rbp + 0xc990]
lea rdx, [rbp + 0xc928]
call fcn.14003bc20
jmp 0x14000766b
mov dword [rbp + 0xc914], 0xffffffff
mov dword [rbp + 0xc910], 0xffffffff
lea rcx, [rbp + 0xc910]
lea rdx, [rbp + 0xc914]
call fcn.140004070
mov qword [rbp + 0xc918], rax
lea rcx, [rbp + 0xc990]
lea rdx, [rbp + 0xc918]
call fcn.14003bc20
jmp 0x1400076b1
mov dword [rbp + 0xc904], 0xffffffff
mov dword [rbp + 0xc900], 0xfffffffe
lea rcx, [rbp + 0xc900]
lea rdx, [rbp + 0xc904]
call fcn.140004070
mov qword [rbp + 0xc908], rax
lea rcx, [rbp + 0xc990]
lea rdx, [rbp + 0xc908]
call fcn.14003bc20
jmp 0x1400076f7
mov dword [rbp + 0xc8f4], 1
mov dword [rbp + 0xc8f0], 0xffffffff
lea rcx, [rbp + 0xc8f0]
lea rdx, [rbp + 0xc8f4]
call fcn.140004070
mov qword [rbp + 0xc8f8], rax
lea rcx, [rbp + 0xc990]
lea rdx, [rbp + 0xc8f8]
call fcn.14003bc20
jmp 0x14000773d
lea rcx, [rbp + 0xc990]
mov qword [rbp + 0x2088], rcx
call fcn.1400045b0
mov rcx, qword [rbp + 0x2088]
mov dword [rbp + 0xc8ec], eax
lea rdx, [rbp + 0xc8e0]
call fcn.140004f50
mov rcx, qword [rbp + 0x2088]
lea rdx, [rbp + 0xc8d8]
call fcn.140004fa0
mov rcx, qword [rbp + 0xc8d8]
mov rdx, qword [rbp + 0xc8e0]
call fcn.14003bc50
jmp 0x140007794
lea rcx, [rbp + 0xc8a8]
lea rdx, [rbp + 0xc990]
call fcn.140005360
jmp 0x1400077ac
lea rcx, [rbp + 0xc8c0]
lea rdx, [rbp + 0xc8a8]
call fcn.140005010
jmp 0x1400077c4
lea rcx, [0x1401adbe0]
lea rdx, str.convex_hull:_n
call fcn.14003bc90
jmp 0x1400077dc
lea rax, [rbp + 0xc8c0]
mov qword [rbp + 0xc8a0], rax
mov rcx, qword [rbp + 0xc8a0]
lea rdx, [rbp + 0xc898]
call fcn.140004fa0
mov rcx, qword [rbp + 0xc8a0]
lea rdx, [rbp + 0xc890]
call fcn.140004f50
lea rcx, [rbp + 0xc898]
lea rdx, [rbp + 0xc890]
call fcn.14003bfe0
xor al, 0xff
test al, 1
jne 0x140007832
jmp 0x1400078cc
lea rcx, [rbp + 0xc898]
call fcn.14003c020
mov rax, qword [rax]
mov qword [rbp + 0xc888], rax
mov edx, dword [rbp + 0xc888]
lea rcx, [0x1401adbe0]
call fcn.14003c040
mov qword [rbp + 0x2080], rax
jmp 0x140007866
mov rcx, qword [rbp + 0x2080]
lea rdx, [0x140166c80]
call fcn.14003bc90
mov qword [rbp + 0x2078], rax
jmp 0x140007885
mov rcx, qword [rbp + 0x2078]
mov edx, dword [rbp + 0xc88c]
call fcn.14003c040
mov qword [rbp + 0x2070], rax
jmp 0x1400078a3
mov rcx, qword [rbp + 0x2070]
lea rdx, [0x14003c2b0]
call fcn.14003c290
jmp 0x1400078bb
lea rcx, [rbp + 0xc898]
call fcn.14003c300
jmp 0x140007810
mov dword [rbp + 0xc884], 0x4016
mov dword [rbp + 0xc880], 0
cmp dword [rbp + 0xc880], 0x44e
jge 0x1400079b1
mov ecx, 0x1d784
call fcn.1400ea428
mov qword [rbp + 0x2068], rax
jmp 0x140007906
mov rax, qword [rbp + 0x2068]
mov qword [rbp + 0xc878], rax
mov dword [rbp + 0xc874], 0
cmp dword [rbp + 0xc874], 0x187
jge 0x140007979
call fcn.1400fb488
mov ecx, 0x20b4
cdq
idiv ecx
mov rax, qword [rbp + 0xc878]
movsxd rcx, dword [rbp + 0xc874]
mov dword [rax + rcx*4], edx
call fcn.1400fb488
mov ecx, 0x198e
cdq
idiv ecx
add edx, dword [rbp + 0xc884]
mov dword [rbp + 0xc884], edx
mov eax, dword [rbp + 0xc874]
add eax, 1
mov dword [rbp + 0xc874], eax
jmp 0x14000791e
mov rax, qword [rbp + 0xc878]
mov qword [rbp + 0x2060], rax
cmp rax, 0
je 0x14000799d
mov rcx, qword [rbp + 0x2060]
call fcn.1400ea8d4
mov eax, dword [rbp + 0xc880]
add eax, 1
mov dword [rbp + 0xc880], eax
jmp 0x1400078e0
lea rcx, [rbp + 0xc858]
mov qword [rbp + 0x2058], rcx
call fcn.140004610
mov dword [rbp + 0xc84c], 0
mov dword [rbp + 0xc848], 0
lea rcx, [rbp + 0xc848]
lea rdx, [rbp + 0xc84c]
call fcn.140004070
mov rcx, qword [rbp + 0x2058]
mov qword [rbp + 0xc850], rax
lea rdx, [rbp + 0xc850]
call fcn.14003bc20
jmp 0x140007a0a
mov dword [rbp + 0xc83c], 0xfffffffc
mov dword [rbp + 0xc838], 1
lea rcx, [rbp + 0xc838]
lea rdx, [rbp + 0xc83c]
call fcn.140004070
mov qword [rbp + 0xc840], rax
lea rcx, [rbp + 0xc858]
lea rdx, [rbp + 0xc840]
call fcn.14003bc20
jmp 0x140007a50
mov dword [rbp + 0xc82c], 0xfffffffb
mov dword [rbp + 0xc828], 0xffffffff
lea rcx, [rbp + 0xc828]
lea rdx, [rbp + 0xc82c]
call fcn.140004070
mov qword [rbp + 0xc830], rax
lea rcx, [rbp + 0xc858]
lea rdx, [rbp + 0xc830]
call fcn.14003bc20
jmp 0x140007a96
mov dword [rbp + 0xc81c], 0xfffffffd
mov dword [rbp + 0xc818], 0xfffffffb
lea rcx, [rbp + 0xc818]
lea rdx, [rbp + 0xc81c]
call fcn.140004070
mov qword [rbp + 0xc820], rax
lea rcx, [rbp + 0xc858]
lea rdx, [rbp + 0xc820]
call fcn.14003bc20
jmp 0x140007adc
mov dword [rbp + 0xc80c], 0xffffffff
mov dword [rbp + 0xc808], 0xfffffffd
lea rcx, [rbp + 0xc808]
lea rdx, [rbp + 0xc80c]
call fcn.140004070
mov qword [rbp + 0xc810], rax
lea rcx, [rbp + 0xc858]
lea rdx, [rbp + 0xc810]
call fcn.14003bc20
jmp 0x140007b22
mov dword [rbp + 0xc7fc], 0xfffffffd
mov dword [rbp + 0xc7f8], 0xffffffff
lea rcx, [rbp + 0xc7f8]
lea rdx, [rbp + 0xc7fc]
call fcn.140004070
mov qword [rbp + 0xc800], rax
lea rcx, [rbp + 0xc858]
lea rdx, [rbp + 0xc800]
call fcn.14003bc20
jmp 0x140007b68
mov dword [rbp + 0xc7ec], 0xfffffffe
mov dword [rbp + 0xc7e8], 0xfffffffe
lea rcx, [rbp + 0xc7e8]
lea rdx, [rbp + 0xc7ec]
call fcn.140004070
mov qword [rbp + 0xc7f0], rax
lea rcx, [rbp + 0xc858]
lea rdx, [rbp + 0xc7f0]
call fcn.14003bc20
jmp 0x140007bae
mov dword [rbp + 0xc7dc], 0xffffffff
mov dword [rbp + 0xc7d8], 0xffffffff
lea rcx, [rbp + 0xc7d8]
lea rdx, [rbp + 0xc7dc]
call fcn.140004070
mov qword [rbp + 0xc7e0], rax
lea rcx, [rbp + 0xc858]
lea rdx, [rbp + 0xc7e0]
call fcn.14003bc20
jmp 0x140007bf4
mov dword [rbp + 0xc7cc], 0xffffffff
mov dword [rbp + 0xc7c8], 0xfffffffe
lea rcx, [rbp + 0xc7c8]
lea rdx, [rbp + 0xc7cc]
call fcn.140004070
mov qword [rbp + 0xc7d0], rax
lea rcx, [rbp + 0xc858]
lea rdx, [rbp + 0xc7d0]
call fcn.14003bc20
jmp 0x140007c3a
mov dword [rbp + 0xc7bc], 1
mov dword [rbp + 0xc7b8], 0xffffffff
lea rcx, [rbp + 0xc7b8]
lea rdx, [rbp + 0xc7bc]
call fcn.140004070
mov qword [rbp + 0xc7c0], rax
lea rcx, [rbp + 0xc858]
lea rdx, [rbp + 0xc7c0]
call fcn.14003bc20
jmp 0x140007c80
lea rcx, [rbp + 0xc858]
mov qword [rbp + 0x2050], rcx
call fcn.1400045b0
mov rcx, qword [rbp + 0x2050]
mov dword [rbp + 0xc7b4], eax
lea rdx, [rbp + 0xc7a8]
call fcn.140004f50
mov rcx, qword [rbp + 0x2050]
lea rdx, [rbp + 0xc7a0]
call fcn.140004fa0
mov rcx, qword [rbp + 0xc7a0]
mov rdx, qword [rbp + 0xc7a8]
call fcn.14003bc50
jmp 0x140007cd7
lea rcx, [rbp + 0xc770]
lea rdx, [rbp + 0xc858]
call fcn.140005360
jmp 0x140007cef
lea rcx, [rbp + 0xc788]
lea rdx, [rbp + 0xc770]
call fcn.140005010
jmp 0x140007d07
lea rcx, [0x1401adbe0]
lea rdx, str.convex_hull:_n
call fcn.14003bc90
jmp 0x140007d1f
lea rax, [rbp + 0xc788]
mov qword [rbp + 0xc768], rax
mov rcx, qword [rbp + 0xc768]
lea rdx, [rbp + 0xc760]
call fcn.140004fa0
mov rcx, qword [rbp + 0xc768]
lea rdx, [rbp + 0xc758]
call fcn.140004f50
lea rcx, [rbp + 0xc760]
lea rdx, [rbp + 0xc758]
call fcn.14003bfe0
xor al, 0xff
test al, 1
jne 0x140007d75
jmp 0x140007e0f
lea rcx, [rbp + 0xc760]
call fcn.14003c020
mov rax, qword [rax]
mov qword [rbp + 0xc750], rax
mov edx, dword [rbp + 0xc750]
lea rcx, [0x1401adbe0]
call fcn.14003c040
mov qword [rbp + 0x2048], rax
jmp 0x140007da9
mov rcx, qword [rbp + 0x2048]
lea rdx, [0x140166c80]
call fcn.14003bc90
mov qword [rbp + 0x2040], rax
jmp 0x140007dc8
mov rcx, qword [rbp + 0x2040]
mov edx, dword [rbp + 0xc754]
call fcn.14003c040
mov qword [rbp + 0x2038], rax
jmp 0x140007de6
mov rcx, qword [rbp + 0x2038]
lea rdx, [0x14003c2b0]
call fcn.14003c290
jmp 0x140007dfe
lea rcx, [rbp + 0xc760]
call fcn.14003c300
jmp 0x140007d53
mov dword [rbp + 0xc74c], 0x647a
mov dword [rbp + 0xc748], 0
cmp dword [rbp + 0xc748], 0x566
jge 0x140007ef4
mov ecx, 0x113d0
call fcn.1400ea428
mov qword [rbp + 0x2030], rax
jmp 0x140007e49
mov rax, qword [rbp + 0x2030]
mov qword [rbp + 0xc740], rax
mov dword [rbp + 0xc73c], 0
cmp dword [rbp + 0xc73c], 0x156
jge 0x140007ebc
call fcn.1400fb488
mov ecx, 0x373d
cdq
idiv ecx
mov rax, qword [rbp + 0xc740]
movsxd rcx, dword [rbp + 0xc73c]
mov dword [rax + rcx*4], edx
call fcn.1400fb488
mov ecx, 0x1beb
cdq
idiv ecx
add edx, dword [rbp + 0xc74c]
mov dword [rbp + 0xc74c], edx
mov eax, dword [rbp + 0xc73c]
add eax, 1
mov dword [rbp + 0xc73c], eax
jmp 0x140007e61
mov rax, qword [rbp + 0xc740]
mov qword [rbp + 0x2028], rax
cmp rax, 0
je 0x140007ee0
mov rcx, qword [rbp + 0x2028]
call fcn.1400ea8d4
mov eax, dword [rbp + 0xc748]
add eax, 1
mov dword [rbp + 0xc748], eax
jmp 0x140007e23
lea rcx, [rbp + 0xc720]
mov qword [rbp + 0x2020], rcx
call fcn.140004610
mov dword [rbp + 0xc714], 0
mov dword [rbp + 0xc710], 0
lea rcx, [rbp + 0xc710]
lea rdx, [rbp + 0xc714]
call fcn.140004070
mov rcx, qword [rbp + 0x2020]
mov qword [rbp + 0xc718], rax
lea rdx, [rbp + 0xc718]
call fcn.14003bc20
jmp 0x140007f4d
mov dword [rbp + 0xc704], 0xfffffffc
mov dword [rbp + 0xc700], 1
lea rcx, [rbp + 0xc700]
lea rdx, [rbp + 0xc704]
call fcn.140004070
mov qword [rbp + 0xc708], rax
lea rcx, [rbp + 0xc720]
lea rdx, [rbp + 0xc708]
call fcn.14003bc20
jmp 0x140007f93
mov dword [rbp + 0xc6f4], 0xfffffffb
mov dword [rbp + 0xc6f0], 0xffffffff
lea rcx, [rbp + 0xc6f0]
lea rdx, [rbp + 0xc6f4]
call fcn.140004070
mov qword [rbp + 0xc6f8], rax
lea rcx, [rbp + 0xc720]
lea rdx, [rbp + 0xc6f8]
call fcn.14003bc20
jmp 0x140007fd9
mov dword [rbp + 0xc6e4], 0xfffffffd
mov dword [rbp + 0xc6e0], 0xfffffffb
lea rcx, [rbp + 0xc6e0]
lea rdx, [rbp + 0xc6e4]
call fcn.140004070
mov qword [rbp + 0xc6e8], rax
lea rcx, [rbp + 0xc720]
lea rdx, [rbp + 0xc6e8]
call fcn.14003bc20
jmp 0x14000801f
lea rcx, [rbp + 0xca40]
call fcn.140004680
lea rcx, [rbp + 0xcb10]
call fcn.140004680
lea rcx, [rbp + 0xcb78]
call fcn.140004680
lea rcx, [rbp + 0xcc48]
call fcn.140004680
lea rcx, [rbp + 0xccb0]
call fcn.140004680
lea rcx, [rbp + 0xcd80]
call fcn.140004680
lea rcx, [rbp + 0xcde8]
call fcn.140004680
lea rcx, [rbp + 0xceb8]
call fcn.140004680
lea rcx, [rbp + 0xcf20]
call fcn.140004680
lea rcx, [rbp + 0xcff0]
call fcn.140004680
mov eax, dword [rbp + 0xd03c]
add rsp, 0xd140
pop rbp
ret