Function at 0x14002ba10
Capabilities:
Check for software breakpoints

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xc8
mov r12, rcx
mov dword [rsp + 0x3c], edx
mov rcx, qword [0x140049120]
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x88], 0
mov qword [rsp + 0x90], 0
mov qword [rsp + 0x98], 0
call sym.__emutls_get_address
cmp byte [rax], 0
mov rbx, rax
jne 0x14002c460
mov edx, 8
mov ecx, 0x40
lea rbp, [0x140048450]
call sym.nimNewObj
xor ecx, ecx
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x88], rbp
mov r13, rax
mov qword [rsp + 0x90], 0
mov qword [rsp + 0x98], rbp
call sym.newHttpHeaders__pureZhttpcore_u114
cmp byte [rbx], 0
mov rdx, rax
jne 0x14002bf10
lea rcx, [r13 + 0x20]
call sym.eqsink___pureZhttpcore_u1866
movzx edi, byte [rbx]
test dil, dil
jne 0x14002bf10
lea rsi, [rsp + 0x70]
mov qword [rsp + 0x20], 0xf4240
mov rdx, qword [r12]
mov r9d, 2
mov rcx, rsi
mov r8, qword [r12 + 0xb8]
call sym.recvLine__pureZnet_u2279
cmp byte [rbx], 0
jne 0x14002bf10
mov rdx, rsi
lea rcx, [rsp + 0x90]
call sym.eqsink___system_u2634
mov rdx, qword [rsp + 0x90]
test rdx, rdx
je 0x14002c67a
mov rax, qword [rsp + 0x98]
cmp rdx, 2
jne 0x14002bb80
cmp word [rax + 8], 0xa0d
je 0x14002c6c6
test dil, dil
je 0x14002bb89
movzx ecx, byte [rax + 8]
cmp cl, 0x20
je 0x14002bb5e
cmp cl, 9
jne 0x14002c1d0
cmp qword [rsp + 0x80], 0
jne 0x14002c020
mov edi, 1
jmp 0x14002bae0
test dil, dil
jne 0x14002bf58
movdqa xmm0, xmmword [rsp + 0x90]
lea r14, [rsp + 0x60]
xor r8d, r8d
mov rcx, rsi
movdqa xmm1, xmmword [0x140047f30]
mov rdx, r14
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x60], xmm1
call sym.skipIgnoreCase__pureZparseutils_u815
cmp byte [rbx], 0
mov rdi, rax
jne 0x14002bf10
test rax, rax
jle 0x14002be08
movdqa xmm2, xmmword [rsp + 0x90]
mov r8, rdi
mov rdx, r14
mov rcx, rsi
movdqa xmm3, xmmword [0x140047f10]
movaps xmmword [rsp + 0x70], xmm2
movaps xmmword [rsp + 0x60], xmm3
call sym.skipIgnoreCase__pureZparseutils_u815
cmp byte [rbx], 0
mov r15, rax
jne 0x14002bf10
test rax, rax
jle 0x14002bf70
movdqa xmm4, xmmword [0x140047f10]
mov rdx, rsi
mov rcx, r13
movaps xmmword [rsp + 0x70], xmm4
call sym.eqsink___system_u2634
add r15, rdi
seto dil
movzx edi, dil
jo 0x14002c827
mov r8, qword [rsp + 0x90]
mov r9, qword [rsp + 0x98]
lea r10, [r8 - 1]
mov rdx, r10
sub rdx, r15
cmp rdx, 0xffffffffffffffff
je 0x14002bc65
test r15, r15
js 0x14002c448
cmp r15, r8
jge 0x14002c448
add rdx, 1
lea rax, [r9 + r15 + 8]
test r9, r9
cmovne r9, rax
nop dword [rax]
cmp rdx, rdi
jle 0x14002bc96
movzx eax, byte [r9 + rdi]
lea ecx, [rax - 9]
cmp cl, 4
jbe 0x14002bff0
cmp al, 0x20
je 0x14002bff0
cmp byte [rbx], 0
jne 0x14002bf10
add rdi, r15
jo 0x14002c827
mov r14, qword [rsp + 0x90]
mov r8, qword [rsp + 0x98]
mov r9, r14
sub r9, 1
jo 0x14002c010
sub r9, rdi
jo 0x14002c010
xor r15d, r15d
add r9, 1
seto r15b
jo 0x14002c010
test r9, r9
js 0x14002c470
mov rdx, r9
mov rcx, rsi
mov qword [rsp + 0x40], r9
mov qword [rsp + 0x50], r8
call sym.mnewString
movdqu xmm5, xmmword [rsp + 0x70]
mov r9, qword [rsp + 0x40]
movaps xmmword [rsp + 0xb0], xmm5
test r9, r9
je 0x14002bdd0
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x40], rbx
mov rbx, r9
mov qword [rsp + 0x110], r12
mov r12, qword [rsp + 0x50]
mov qword [rsp + 0x50], rsi
mov rsi, r15
mov r15, rax
jmp 0x14002bda0
mov rdx, qword [rsp + 0xb8]
test rdx, rdx
je 0x14002bd63
test byte [rdx + 7], 0x40
je 0x14002bd63
mov rcx, r15
call sym.nimPrepareStrMutationImpl__system_u2386
mov rcx, rsi
add rcx, rdi
jo 0x14002bff9
test rcx, rcx
js 0x14002c4a0
cmp r14, rcx
jle 0x14002c4a0
movzx ecx, byte [r12 + rcx + 8]
mov rdx, qword [rsp + 0xb8]
mov byte [rdx + rsi + 8], cl
add rsi, 1
cmp rbx, rsi
jle 0x14002c78b
mov rdx, qword [rsp + 0xb0]
cmp rsi, rdx
jl 0x14002bd48
mov r15, rsi
sub rdx, 1
mov rbx, qword [rsp + 0x40]
mov r12, qword [rsp + 0x110]
mov rcx, r15
mov rsi, qword [rsp + 0x50]
call sym.raiseIndexError2
nop
cmp byte [rbx], 0
mov rax, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0xb8]
jne 0x14002bf10
mov qword [rsp + 0x78], rdx
lea rcx, [r13 + 0x10]
mov rdx, rsi
mov qword [rsp + 0x70], rax
call sym.eqsink___system_u2634
jmp 0x14002bb6d
mov rax, qword [rsp + 0x90]
mov rcx, rsi
lea rdx, [rax + 0x18]
call sym.rawNewString
mov r15, qword [rsp + 0x70]
mov r9, qword [rsp + 0x78]
movabs rax, 0x2064696c61766e69
movabs rdx, 0x7265762070747468
lea r11, [r15 + r9 + 8]
mov r10, r15
mov qword [r11], rax
add r10, 0x17
movabs rax, 0x60202c6e6f6973
mov qword [r11 + 8], rdx
mov qword [r11 + 0x10], rax
jo 0x14002c7a8
lea r11, [r15 + r9 + 0x1f]
mov r15, qword [rsp + 0x90]
test r15, r15
jle 0x14002bec5
mov r8, r15
mov rdx, qword [rsp + 0x98]
add r8, 1
jo 0x14002c87f
test r8, r8
js 0x14002c3c8
add rdx, 8
mov rcx, r11
mov qword [rsp + 0x50], r9
mov qword [rsp + 0x40], r10
call sym.memcpy
mov r10, qword [rsp + 0x40]
mov r9, qword [rsp + 0x50]
mov r11, rax
add r15, r10
jo 0x14002c87f
lea r11, [r15 + r9 + 8]
mov r10, r15
mov eax, 0x60
mov word [r11], ax
mov rax, r10
add rax, 1
jo 0x14002c7c9
mov rcx, rsi
mov qword [rsp + 0x78], r9
mov qword [rsp + 0x40], r9
mov qword [rsp + 0x70], rax
call sym.httpError__pureZhttpclient_u307
mov r9, qword [rsp + 0x40]
test r9, r9
je 0x14002bf07
test byte [r9 + 7], 0x40
je 0x14002c490
cmp byte [rbx], 0
je 0x14002bbcc
mov rcx, qword [rsp + 0x98]
test rcx, rcx
je 0x14002bf27
test byte [rcx + 7], 0x40
je 0x14002bfe0
mov rcx, qword [rsp + 0x88]
test rcx, rcx
je 0x14002bf3e
test byte [rcx + 7], 0x40
je 0x14002bfd0
mov rax, r13
add rsp, 0xc8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
test rdx, rdx
jg 0x14002bb4c
sub rdx, 1
xor ecx, ecx
call sym.raiseIndexError2
jmp 0x14002bf10
movdqa xmm5, xmmword [rsp + 0x90]
mov r8, rdi
mov rdx, r14
mov rcx, rsi
movaps xmmword [rsp + 0x70], xmm5
movdqa xmm5, xmmword [0x140047ef0]
movaps xmmword [rsp + 0x60], xmm5
call sym.skipIgnoreCase__pureZparseutils_u815
cmp byte [rbx], 0
mov r15, rax
jne 0x14002bf10
test rax, rax
jle 0x14002c3a0
movdqa xmm4, xmmword [0x140047ef0]
mov rdx, rsi
mov rcx, r13
movaps xmmword [rsp + 0x70], xmm4
call sym.eqsink___system_u2634
jmp 0x14002bc22
call sym.deallocShared
jmp 0x14002bf3e
call sym.deallocShared
jmp 0x14002bf27
add rdi, 1
jmp 0x14002bc78
mov rbx, qword [rsp + 0x40]
mov r12, qword [rsp + 0x110]
mov rsi, qword [rsp + 0x50]
nop dword [rax + rax]
call sym.raiseOverflow
jmp 0x14002bdd0
mov rax, qword [r13 + 0x20]
mov r8, qword [rsp + 0x80]
lea rdx, [rsp + 0x60]
mov rcx, rsi
mov r9, qword [rsp + 0x88]
cmp byte [rax + 8], 0
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x68], r9
je 0x14002c388
call sym.toTitleCase__pureZhttpcore_u101
mov rax, qword [rsp + 0x70]
mov r14, qword [rsp + 0x78]
cmp byte [rbx], 0
jne 0x14002c422
mov qword [rsp + 0x70], rax
mov rdx, rsi
mov qword [rsp + 0x78], r14
mov rax, qword [r13 + 0x20]
mov rcx, qword [rax]
call sym.X5BX5D___pureZhttpcore_u2150
cmp byte [rbx], 0
jne 0x14002c422
mov rdx, qword [rax]
mov rax, qword [rax + 8]
lea rcx, [rax + 8]
test rax, rax
cmovne rax, rcx
mov rcx, rdx
sub rcx, 1
jo 0x14002c8b1
cmp rdx, rcx
jle 0x14002c410
test rcx, rcx
js 0x14002c410
shl rcx, 4
add rax, rcx
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x90]
mov rcx, rsi
lea rdx, [rax + 1]
call sym.rawNewString
mov rax, qword [rsp + 0x70]
mov r15, qword [rsp + 0x78]
mov edx, 0xa
mov rdi, rax
mov word [rax + r15 + 8], dx
add rdi, 1
jo 0x14002c831
mov r9, qword [rsp + 0x90]
test r9, r9
jle 0x14002c14c
mov r8, r9
mov rax, qword [rsp + 0x98]
add r8, 1
jo 0x14002c8a7
test r8, r8
js 0x14002c807
lea rcx, [rdi + r15 + 8]
lea rdx, [rax + 8]
mov qword [rsp + 0x40], r9
call sym.memcpy
mov r9, qword [rsp + 0x40]
add r9, rdi
jo 0x14002c8a7
mov rdi, r9
mov rcx, qword [rsp + 0x48]
mov rdx, rdi
call sym.prepareAdd
test rdi, rdi
jle 0x14002c19f
mov r8, rdi
add r8, 1
jo 0x14002c781
test r8, r8
js 0x14002c7e7
mov rdx, qword [rsp + 0x48]
mov rax, qword [rdx]
mov rdx, qword [rdx + 8]
lea rcx, [rdx + rax + 8]
lea rdx, [r15 + 8]
call sym.memcpy
mov rax, qword [rsp + 0x48]
add rdi, qword [rax]
jo 0x14002c781
mov qword [rax], rdi
test r15, r15
je 0x14002c1af
test byte [r15 + 7], 0x40
je 0x14002c5e0
test r14, r14
jne 0x14002c42b
nop dword [rax + rax]
cmp byte [rbx], 0
je 0x14002bb6d
jmp 0x14002bf10
mov qword [rsp + 0xa8], rbp
lea rcx, [rax + 8]
xor edi, edi
mov qword [rsp + 0xa0], 0
nop word [rax + rax]
cmp byte [rax + rdi + 8], 0x3a
je 0x14002c5ed
add rdi, 1
cmp rdx, rdi
jg 0x14002c1f0
mov r9, rdi
lea r8, [rsp + 0xa0]
call sym.fastSubstr__pureZparseutils_u215
cmp byte [rbx], 0
jne 0x14002c658
cmp qword [rsp + 0x90], rdi
je 0x14002c637
add rdi, 1
mov r14, rdi
jo 0x14002c670
movdqa xmm4, xmmword [rsp + 0xa0]
lea rcx, [rsp + 0x80]
mov rdx, rsi
movaps xmmword [rsp + 0x70], xmm4
call sym.eqcopy___system_u2628
mov rdi, qword [rsp + 0x90]
mov r8, qword [rsp + 0x98]
mov r9, rdi
sub r9, 1
jo 0x14002c4d2
sub r9, r14
jo 0x14002c4d2
xor r15d, r15d
add r9, 1
seto r15b
jo 0x14002c4d2
test r9, r9
js 0x14002c74e
mov rdx, r9
mov rcx, rsi
mov qword [rsp + 0x40], r9
mov qword [rsp + 0x50], r8
call sym.mnewString
movdqu xmm2, xmmword [rsp + 0x70]
mov r9, qword [rsp + 0x40]
movaps xmmword [rsp + 0xb0], xmm2
test r9, r9
je 0x14002c4d7
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x40], rbx
mov rbx, rdi
mov qword [rsp + 0x110], r12
mov rdi, rax
mov r12, qword [rsp + 0x50]
mov qword [rsp + 0x50], rsi
mov rsi, r14
mov r14, r9
jmp 0x14002c351
mov rdx, qword [rsp + 0xb8]
test rdx, rdx
je 0x14002c313
test byte [rdx + 7], 0x40
je 0x14002c313
mov rcx, rdi
call sym.nimPrepareStrMutationImpl__system_u2386
mov rcx, r15
add rcx, rsi
jo 0x14002c4c0
cmp rbx, rcx
jle 0x14002c845
test rcx, rcx
js 0x14002c845
movzx ecx, byte [r12 + rcx + 8]
mov rdx, qword [rsp + 0xb8]
mov byte [rdx + r15 + 8], cl
add r15, 1
cmp r14, r15
jle 0x14002c868
mov rdx, qword [rsp + 0xb0]
cmp r15, rdx
jl 0x14002c2f8
sub rdx, 1
mov rcx, r15
mov rbx, qword [rsp + 0x40]
mov r12, qword [rsp + 0x110]
mov rsi, qword [rsp + 0x50]
call sym.raiseIndexError2
jmp 0x14002c4d7
call sym.nsuToLowerAsciiStr
mov rax, qword [rsp + 0x70]
mov r14, qword [rsp + 0x78]
jmp 0x14002c05f
movdqa xmm4, xmmword [0x140047ea0]
mov rcx, rsi
movaps xmmword [rsp + 0x70], xmm4
call sym.httpError__pureZhttpclient_u307
cmp byte [rbx], 0
je 0x14002bfae
jmp 0x14002bf10
movabs r8, 0x7fffffffffffffff
xor edx, edx
mov qword [rsp + 0x58], r9
movabs rcx, 0x8000000000000000
mov qword [rsp + 0x50], r11
mov qword [rsp + 0x40], r10
call sym.raiseRangeErrorI
mov r10, qword [rsp + 0x40]
mov r11, qword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
jmp 0x14002bec5
sub rdx, 1
call sym.raiseIndexError2
cmp byte [rbx], 0
je 0x14002c0c7
test r14, r14
je 0x14002bf10
test byte [r14 + 7], 0x40
jne 0x14002c1c0
mov rcx, r14
call sym.deallocShared
jmp 0x14002c1c0
mov rdx, r10
mov rcx, r15
call sym.raiseIndexError4
jmp 0x14002bc96
xor r13d, r13d
jmp 0x14002bf3e
movabs r8, 0x7fffffffffffffff
xor edx, edx
mov rcx, r9
call sym.raiseRangeErrorI
jmp 0x14002bdd0
mov rcx, r9
call sym.deallocShared
jmp 0x14002bf07
lea rdx, [r14 - 1]
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x50]
mov r12, qword [rsp + 0x110]
call sym.raiseIndexError2
jmp 0x14002bdd0
mov rbx, qword [rsp + 0x40]
mov r12, qword [rsp + 0x110]
mov rsi, qword [rsp + 0x50]
call sym.raiseOverflow
cmp byte [rbx], 0
mov rax, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0xb8]
mov r15, qword [rsp + 0xb8]
jne 0x14002c5a3
mov qword [rsp + 0x60], rax
lea rax, [0x140047dc0]
mov rcx, rsi
lea rdi, [rsp + 0x60]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 1
mov qword [rsp + 0x68], rdx
mov rdx, rdi
call sym.nsuStrip
cmp byte [rbx], 0
mov rax, qword [rsp + 0x70]
mov r14, qword [rsp + 0x78]
jne 0x14002c593
movdqa xmm2, xmmword [rsp + 0xa0]
mov qword [rsp + 0x60], rax
mov r8, rdi
mov rdx, rsi
mov qword [rsp + 0x68], r14
movaps xmmword [rsp + 0x70], xmm2
mov rcx, qword [r13 + 0x20]
call sym.add__pureZhttpcore_u4148
cmp byte [rbx], 0
jne 0x14002c593
mov rax, qword [r13 + 0x20]
mov rcx, qword [rax]
call sym.len__pureZhttpcore_u2660
cmp byte [rbx], 0
jne 0x14002c593
cmp rax, 0x2710
jle 0x14002c593
movdqa xmm4, xmmword [0x140047d80]
mov rcx, rsi
movaps xmmword [rsp + 0x70], xmm4
call sym.httpError__pureZhttpclient_u307
test r14, r14
je 0x14002c5a3
test byte [r14 + 7], 0x40
je 0x14002c774
test r15, r15
je 0x14002c5b3
test byte [r15 + 7], 0x40
je 0x14002c767
mov rcx, qword [rsp + 0xa8]
test rcx, rcx
je 0x14002c1c0
test byte [rcx + 7], 0x40
jne 0x14002c1c0
call sym.deallocShared
jmp 0x14002c1c0
mov rcx, r15
call sym.deallocShared
jmp 0x14002c1af
mov r9, rdi
lea r8, [rsp + 0xa0]
call sym.fastSubstr__pureZparseutils_u215
cmp byte [rbx], 0
jne 0x14002c658
test rdi, rdi
jg 0x14002c21d
movdqa xmm3, xmmword [0x140047e40]
mov rcx, rsi
movaps xmmword [rsp + 0x70], xmm3
call sym.httpError__pureZhttpclient_u307
cmp byte [rbx], 0
jne 0x14002c658
lea r14, [rdi + 1]
cmp rdi, qword [rsp + 0x90]
jne 0x14002c238
movdqa xmm5, xmmword [0x140047de0]
mov rcx, rsi
movaps xmmword [rsp + 0x70], xmm5
call sym.httpError__pureZhttpclient_u307
cmp byte [rbx], 0
je 0x14002c22b
nop dword [rax]
mov rcx, qword [rsp + 0xa8]
test rcx, rcx
jne 0x14002c5c4
jmp 0x14002bf10
call sym.raiseOverflow
jmp 0x14002c5b3
cmp byte [r12 + 8], 0
je 0x14002c69f
mov rcx, qword [r12]
mov edx, 2
call sym.close__pureZnet_u2012
cmp byte [rbx], 0
jne 0x14002bf10
mov byte [r12 + 8], 0
cmp byte [rbx], 0
jne 0x14002bf10
movdqa xmm3, xmmword [0x140047d20]
mov rcx, rsi
movaps xmmword [rsp + 0x70], xmm3
call sym.httpError__pureZhttpclient_u307
cmp byte [rbx], 0
jne 0x14002bf10
movdqa xmm5, xmmword [0x140048460]
mov rcx, rsi
movaps xmmword [rsp + 0x70], xmm5
call sym.newStringStream__pureZstreams_u910
cmp byte [rbx], 0
mov rdx, rax
jne 0x14002bf10
lea rcx, [r13 + 0x38]
call sym.eqsink___pureZstreams_u770
cmp byte [rsp + 0x3c], 0
je 0x14002bf10
mov rcx, r13
call sym.code__pureZhttpclient_u3606
cmp byte [rbx], 0
jne 0x14002bf10
cmp rax, 0xcc
je 0x14002bf10
mov rdx, qword [r13 + 0x38]
lea rcx, [r12 + 0x100]
mov r8d, 1
call sym.eqcopy___pureZstreams_u762
movdqu xmm3, xmmword [r13]
mov r8, rsi
mov rcx, r12
movaps xmmword [rsp + 0x70], xmm3
mov rdx, qword [r13 + 0x20]
call sym.parseBody__pureZhttpclient_u2745
jmp 0x14002bf10
movabs r8, 0x7fffffffffffffff
xor edx, edx
mov rcx, r9
call sym.raiseRangeErrorI
jmp 0x14002c4d7
mov rcx, r15
call sym.deallocShared
jmp 0x14002c5b3
mov rcx, r14
call sym.deallocShared
jmp 0x14002c5a3
call sym.raiseOverflow
jmp 0x14002c19f
mov rbx, qword [rsp + 0x40]
mov r12, qword [rsp + 0x110]
mov rsi, qword [rsp + 0x50]
jmp 0x14002bdd0
mov qword [rsp + 0x50], r9
mov qword [rsp + 0x40], r11
call sym.raiseOverflow
mov r9, qword [rsp + 0x50]
mov r11, qword [rsp + 0x40]
mov r10, r15
jmp 0x14002be66
mov qword [rsp + 0x50], r9
mov qword [rsp + 0x40], r10
call sym.raiseOverflow
mov rax, qword [rsp + 0x40]
mov r9, qword [rsp + 0x50]
jmp 0x14002bedb
movabs r8, 0x7fffffffffffffff
xor edx, edx
movabs rcx, 0x8000000000000000
call sym.raiseRangeErrorI
jmp 0x14002c19f
movabs r8, 0x7fffffffffffffff
xor edx, edx
movabs rcx, 0x8000000000000000
call sym.raiseRangeErrorI
jmp 0x14002c14c
call sym.raiseOverflow
jmp 0x14002bf10
mov qword [rsp + 0x40], rax
call sym.raiseOverflow
mov rdi, qword [rsp + 0x40]
jmp 0x14002c0fd
mov rdi, rbx
mov r12, qword [rsp + 0x110]
mov rbx, qword [rsp + 0x40]
lea rdx, [rdi - 1]
mov rsi, qword [rsp + 0x50]
call sym.raiseIndexError2
jmp 0x14002c4d7
mov rbx, qword [rsp + 0x40]
mov r12, qword [rsp + 0x110]
mov rsi, qword [rsp + 0x50]
jmp 0x14002c4d7
mov qword [rsp + 0x58], r9
mov qword [rsp + 0x50], r11
mov qword [rsp + 0x40], r10
call sym.raiseOverflow
mov r10, qword [rsp + 0x40]
mov r11, qword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
jmp 0x14002bec5
call sym.raiseOverflow
jmp 0x14002c14c
call sym.raiseOverflow
jmp 0x14002c419