Function at 0x14002ba00
Capabilities:
Check for software breakpoints

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xa8
mov dword [rsp + 0x4c], edx
mov r12, rcx
mov edx, 8
mov ecx, 0x40
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], 0
call sym.nimNewObj
xor ecx, ecx
mov qword [rsp + 0x70], 0
mov r13, rax
lea rax, [0x1400483b0]
mov qword [rsp + 0x78], rax
call sym.newHttpHeaders__pureZhttpcore_u114
mov rcx, qword [0x140049080]
mov r14, rax
call sym.__emutls_get_address
movzx edi, byte [rax]
mov rbx, rax
test dil, dil
jne 0x14002c120
lea rcx, [r13 + 0x20]
mov rdx, r14
lea rsi, [rsp + 0x60]
call sym.eqsink___pureZhttpcore_u1748
mov qword [rsp + 0x20], 0xf4240
mov rdx, qword [r12]
mov r9d, 2
mov rcx, rsi
mov r8, qword [r12 + 0xb8]
call sym.recvLine__pureZnet_u2249
cmp byte [rbx], 0
jne 0x14002c120
mov rdx, rsi
lea rcx, [rsp + 0x70]
call sym.eqsink___stdZassertions_u36
mov rdx, qword [rsp + 0x70]
test rdx, rdx
je 0x14002c3a4
mov rcx, qword [rsp + 0x78]
cmp rdx, 2
jne 0x14002bd60
cmp word [rcx + 8], 0xa0d
je 0x14002c3f0
test dil, dil
jne 0x14002c200
movdqa xmm0, xmmword [rsp + 0x70]
lea r14, [rsp + 0x50]
xor r8d, r8d
mov rcx, rsi
movdqa xmm1, xmmword [0x140047e90]
mov rdx, r14
movaps xmmword [rsp + 0x60], xmm0
movaps xmmword [rsp + 0x50], xmm1
call sym.skipIgnoreCase__pureZparseutils_u857
cmp byte [rbx], 0
mov rdi, rax
jne 0x14002c120
test rax, rax
jle 0x14002c030
movdqa xmm2, xmmword [rsp + 0x70]
mov r8, rdi
mov rdx, r14
mov rcx, rsi
movdqa xmm3, xmmword [0x140047e70]
movaps xmmword [rsp + 0x60], xmm2
movaps xmmword [rsp + 0x50], xmm3
call sym.skipIgnoreCase__pureZparseutils_u857
cmp byte [rbx], 0
mov rbp, rax
jne 0x14002c120
test rax, rax
jle 0x14002c1a0
movdqa xmm4, xmmword [0x140047e70]
mov rdx, rsi
mov rcx, r13
movaps xmmword [rsp + 0x60], xmm4
call sym.eqsink___stdZassertions_u36
add rdi, rbp
seto dl
mov rcx, rdi
mov rbp, rdi
movzx edx, dl
jo 0x14002c4a7
mov r8, qword [rsp + 0x70]
mov r15, qword [rsp + 0x78]
lea r11, [r8 - 1]
mov r10, r11
sub r10, rdi
cmp r10, 0xffffffffffffffff
je 0x14002bbc8
test rdi, rdi
js 0x14002c170
cmp r8, rdi
jle 0x14002c170
add r10, 1
lea rdi, [r15 + rcx + 8]
test r15, r15
cmove rdi, r15
nop dword [rax + rax]
cmp r10, rdx
jle 0x14002bbff
movzx eax, byte [rdi + rdx]
lea r11d, [rax - 9]
cmp r11b, 4
jbe 0x14002c150
cmp al, 0x20
je 0x14002c150
cmp byte [rbx], 0
jne 0x14002c125
add rcx, rdx
mov rbp, rcx
jo 0x14002c4a7
mov qword [rsp + 0x90], 0
mov r10, r8
mov qword [rsp + 0x98], 0
add r10, 0xffffffffffffffff
jo 0x14002c190
sub r10, rbp
jo 0x14002c190
mov rdi, r10
xor r14d, r14d
add rdi, 1
seto r14b
jo 0x14002c190
test rdi, rdi
js 0x14002c2c0
mov rdx, rdi
mov rcx, rsi
mov qword [rsp + 0x38], r8
call sym.mnewString
movdqu xmm5, xmmword [rsp + 0x60]
movaps xmmword [rsp + 0x90], xmm5
test rdi, rdi
je 0x14002bd20
lea rax, [rsp + 0x90]
mov r8, qword [rsp + 0x38]
mov qword [rsp + 0x40], rax
jmp 0x14002bd01
mov rax, qword [rsp + 0x98]
test rax, rax
je 0x14002bcc7
test byte [rax + 7], 0x40
je 0x14002bcc7
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x38], r8
call sym.nimPrepareStrMutationImpl__system_u2395
mov r8, qword [rsp + 0x38]
mov rcx, r14
add rcx, rbp
jo 0x14002c190
cmp rcx, r8
jge 0x14002c360
test rcx, rcx
js 0x14002c360
movzx edx, byte [r15 + rcx + 8]
mov rax, qword [rsp + 0x98]
mov byte [rax + r14 + 8], dl
add r14, 1
cmp rdi, r14
jle 0x14002bd20
mov rax, qword [rsp + 0x90]
cmp r14, rax
jl 0x14002bca0
lea rdx, [rax - 1]
mov rcx, r14
call sym.raiseIndexError2
nop word [rax + rax]
cmp byte [rbx], 0
mov rax, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x98]
jne 0x14002c120
mov qword [rsp + 0x68], rdx
lea rcx, [r13 + 0x10]
mov rdx, rsi
mov qword [rsp + 0x60], rax
call sym.eqsink___stdZassertions_u36
mov edi, 1
jmp 0x14002ba89
test dil, dil
je 0x14002baf4
lea rax, [0x1400483b0]
lea r9, [rdx - 1]
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x88], rax
test rdx, rdx
js 0x14002c280
test rcx, rcx
lea rax, [rcx + 8]
cmovne rcx, rax
xor r14d, r14d
jmp 0x14002bdb3
cmp byte [rcx + r14], 0x3a
je 0x14002bdb8
add r14, 1
cmp rdx, r14
jg 0x14002bda8
mov r9, r14
lea r8, [rsp + 0x80]
call sym.fastSubstr__pureZparseutils_u225
cmp byte [rbx], 0
jne 0x14002c2e0
mov r8, qword [rsp + 0x70]
test r14, r14
jle 0x14002c220
cmp r8, r14
jle 0x14002c24c
mov rax, qword [rsp + 0x78]
cmp byte [rax + r14 + 8], 0x3a
je 0x14002be13
movdqa xmm4, xmmword [0x140047de0]
mov rcx, rsi
movaps xmmword [rsp + 0x60], xmm4
call sym.httpError__pureZhttpclient_u307
cmp byte [rbx], 0
jne 0x14002c2e0
mov rbp, r14
add rbp, 1
js 0x14002c4dd
cmp rbp, r14
jb 0x14002c4dd
mov r15, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
mov qword [rsp + 0x90], 0
mov qword [rsp + 0x98], 0
mov r9, r15
sub r9, 1
jo 0x14002c343
sub r9, rbp
jo 0x14002c343
xor r14d, r14d
add r9, 1
seto r14b
jo 0x14002c343
test r9, r9
js 0x14002c4b6
mov rdx, r9
mov rcx, rsi
mov qword [rsp + 0x38], r9
call sym.mnewString
movdqu xmm4, xmmword [rsp + 0x60]
mov r9, qword [rsp + 0x38]
movaps xmmword [rsp + 0x90], xmm4
test r9, r9
je 0x14002bf40
lea rax, [rsp + 0x90]
mov qword [rsp + 0x40], rax
jmp 0x14002bf20
mov rdx, qword [rsp + 0x98]
test rdx, rdx
je 0x14002bee7
test byte [rdx + 7], 0x40
je 0x14002bee7
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x38], r9
call sym.nimPrepareStrMutationImpl__system_u2395
mov r9, qword [rsp + 0x38]
mov rcx, r14
add rcx, rbp
jo 0x14002c343
test rcx, rcx
js 0x14002c4cf
cmp r15, rcx
jle 0x14002c4cf
movzx ecx, byte [rdi + rcx + 8]
mov rdx, qword [rsp + 0x98]
mov byte [rdx + r14 + 8], cl
add r14, 1
cmp r9, r14
jle 0x14002bf40
mov rdx, qword [rsp + 0x90]
cmp r14, rdx
jl 0x14002bec0
sub rdx, 1
mov rcx, r14
call sym.raiseIndexError2
nop dword [rax]
cmp byte [rbx], 0
mov rax, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x98]
mov r14, qword [rsp + 0x98]
jne 0x14002c00c
mov qword [rsp + 0x50], rax
lea rax, [0x140047dc0]
mov rcx, rsi
lea rbp, [rsp + 0x50]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 1
mov qword [rsp + 0x58], rdx
mov rdx, rbp
call sym.nsuStrip
cmp byte [rbx], 0
mov rax, qword [rsp + 0x60]
mov r15, qword [rsp + 0x68]
jne 0x14002bffc
movdqa xmm2, xmmword [rsp + 0x80]
mov qword [rsp + 0x50], rax
mov r8, rbp
mov rdx, rsi
mov qword [rsp + 0x58], r15
movaps xmmword [rsp + 0x60], xmm2
mov rcx, qword [r13 + 0x20]
call sym.add__pureZhttpcore_u3880
cmp byte [rbx], 0
jne 0x14002bffc
mov rax, qword [r13 + 0x20]
mov rcx, qword [rax]
call sym.len__pureZhttpcore_u2491
cmp byte [rbx], 0
jne 0x14002bffc
cmp rax, 0x2710
jle 0x14002bffc
movdqa xmm5, xmmword [0x140047d80]
mov rcx, rsi
movaps xmmword [rsp + 0x60], xmm5
call sym.httpError__pureZhttpclient_u307
test r15, r15
je 0x14002c00c
test byte [r15 + 7], 0x40
je 0x14002c300
test r14, r14
je 0x14002c258
test byte [r14 + 7], 0x40
jne 0x14002c258
mov rcx, r14
call sym.deallocShared
jmp 0x14002c258
mov rax, qword [rsp + 0x70]
mov rcx, rsi
lea rdx, [rax + 0x18]
call sym.rawNewString
mov rbp, qword [rsp + 0x60]
mov r15, qword [rsp + 0x68]
movabs rax, 0x2064696c61766e69
movabs rdx, 0x7265762070747468
lea r11, [rbp + r15 + 8]
mov r10, rbp
mov qword [r11], rax
add r10, 0x17
movabs rax, 0x60202c6e6f6973
mov qword [r11 + 8], rdx
mov r9, r10
mov qword [r11 + 0x10], rax
jo 0x14002c490
lea r11, [rbp + r15 + 0x1f]
mov rbp, qword [rsp + 0x70]
test rbp, rbp
jle 0x14002c0dd
mov r8, rbp
mov rdx, qword [rsp + 0x78]
add r8, 1
jo 0x14002c4e7
test r8, r8
js 0x14002c370
add rdx, 8
mov rcx, r11
mov qword [rsp + 0x38], r9
call sym.memcpy
mov r9, qword [rsp + 0x38]
mov r11, rax
add rbp, r9
jo 0x14002c4e7
lea r11, [rbp + r15 + 8]
mov r9, rbp
mov eax, 0x60
mov word [r11], ax
mov rax, r9
add rax, 1
jo 0x14002c478
mov rcx, rsi
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], r15
call sym.httpError__pureZhttpclient_u307
test r15, r15
je 0x14002c115
test byte [r15 + 7], 0x40
je 0x14002c350
cmp byte [rbx], 0
je 0x14002bb34
nop
mov r15, qword [rsp + 0x78]
test r15, r15
je 0x14002c131
test byte [r15 + 7], 0x40
je 0x14002c160
mov rax, r13
add rsp, 0xa8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
add rdx, 1
jmp 0x14002bbe0
mov rcx, r15
call sym.deallocShared
jmp 0x14002c131
mov rdx, r11
call sym.raiseIndexError4
cmp byte [rbx], 0
jne 0x14002c120
mov r8, qword [rsp + 0x70]
mov r15, qword [rsp + 0x78]
jmp 0x14002bc14
call sym.raiseOverflow
jmp 0x14002bd20
movdqa xmm5, xmmword [rsp + 0x70]
mov r8, rdi
mov rdx, r14
mov rcx, rsi
movaps xmmword [rsp + 0x60], xmm5
movdqa xmm5, xmmword [0x140047e50]
movaps xmmword [rsp + 0x50], xmm5
call sym.skipIgnoreCase__pureZparseutils_u857
cmp byte [rbx], 0
mov rbp, rax
jne 0x14002c120
test rax, rax
jle 0x14002c320
movdqa xmm4, xmmword [0x140047e50]
mov rdx, rsi
mov rcx, r13
movaps xmmword [rsp + 0x60], xmm4
call sym.eqsink___stdZassertions_u36
jmp 0x14002bb87
lea rax, [0x1400483b0]
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x88], rax
jmp 0x14002bd91
movdqa xmm4, xmmword [0x140047de0]
mov rcx, rsi
movaps xmmword [rsp + 0x60], xmm4
call sym.httpError__pureZhttpclient_u307
cmp byte [rbx], 0
jne 0x14002c2e0
mov r8, qword [rsp + 0x70]
test r14, r14
je 0x14002bddf
lea rdx, [r8 - 1]
mov rcx, r14
call sym.raiseIndexError2
mov rcx, qword [rsp + 0x88]
test rcx, rcx
je 0x14002c26f
test byte [rcx + 7], 0x40
je 0x14002c310
cmp byte [rbx], 0
je 0x14002bd4f
jmp 0x14002c120
mov r8, rdx
xor ecx, ecx
mov rdx, r9
call sym.raiseIndexError4
cmp byte [rbx], 0
jne 0x14002c2e0
movdqa xmm5, xmmword [0x140047de0]
mov rcx, rsi
movaps xmmword [rsp + 0x60], xmm5
call sym.httpError__pureZhttpclient_u307
cmp byte [rbx], 0
jne 0x14002c2e0
mov r8, qword [rsp + 0x70]
xor r14d, r14d
jmp 0x14002bddf
movabs r8, 0x7fffffffffffffff
xor edx, edx
mov rcx, rdi
call sym.raiseRangeErrorI
jmp 0x14002bd20
mov rcx, qword [rsp + 0x88]
test rcx, rcx
jne 0x14002c265
jmp 0x14002c120
mov rcx, r15
call sym.deallocShared
jmp 0x14002c00c
call sym.deallocShared
jmp 0x14002c26f
movdqa xmm3, xmmword [0x140047e10]
mov rcx, rsi
movaps xmmword [rsp + 0x60], xmm3
call sym.httpError__pureZhttpclient_u307
cmp byte [rbx], 0
je 0x14002c1db
jmp 0x14002c120
call sym.raiseOverflow
jmp 0x14002bf40
mov rcx, r15
call sym.deallocShared
jmp 0x14002c115
lea rdx, [r8 - 1]
call sym.raiseIndexError2
jmp 0x14002bd20
movabs r8, 0x7fffffffffffffff
xor edx, edx
mov qword [rsp + 0x40], r11
movabs rcx, 0x8000000000000000
mov qword [rsp + 0x38], r9
call sym.raiseRangeErrorI
mov r9, qword [rsp + 0x38]
mov r11, qword [rsp + 0x40]
jmp 0x14002c0dd
cmp byte [r12 + 8], 0
je 0x14002c3c9
mov rcx, qword [r12]
mov edx, 2
call sym.close__pureZnet_u1979
cmp byte [rbx], 0
jne 0x14002c120
mov byte [r12 + 8], 0
cmp byte [rbx], 0
jne 0x14002c120
movdqa xmm2, xmmword [0x140047d20]
mov rcx, rsi
movaps xmmword [rsp + 0x60], xmm2
call sym.httpError__pureZhttpclient_u307
cmp byte [rbx], 0
jne 0x14002c120
movdqa xmm3, xmmword [0x1400483c0]
mov rcx, rsi
movaps xmmword [rsp + 0x60], xmm3
call sym.newStringStream__pureZstreams_u937
cmp byte [rbx], 0
mov rdx, rax
jne 0x14002c120
lea rcx, [r13 + 0x38]
call sym.eqsink___pureZstreams_u792
cmp byte [rsp + 0x4c], 0
je 0x14002c120
mov rcx, r13
call sym.code__pureZhttpclient_u3418
cmp byte [rbx], 0
jne 0x14002c120
cmp rax, 0xcc
je 0x14002c120
mov rdx, qword [r13 + 0x38]
lea rcx, [r12 + 0x100]
mov r8d, 1
call sym.eqcopy___pureZstreams_u784
movdqu xmm0, xmmword [r13]
mov r8, rsi
mov rcx, r12
movaps xmmword [rsp + 0x60], xmm0
mov rdx, qword [r13 + 0x20]
call sym.parseBody__pureZhttpclient_u2747
jmp 0x14002c120
mov qword [rsp + 0x38], r9
call sym.raiseOverflow
mov rax, qword [rsp + 0x38]
jmp 0x14002c0f3
mov qword [rsp + 0x38], r11
call sym.raiseOverflow
mov r11, qword [rsp + 0x38]
mov r9, rbp
jmp 0x14002c08e
call sym.raiseOverflow
mov r15, qword [rsp + 0x78]
jmp 0x14002c125
movabs r8, 0x7fffffffffffffff
xor edx, edx
mov rcx, r9
call sym.raiseRangeErrorI
jmp 0x14002bf40
lea rdx, [r15 - 1]
call sym.raiseIndexError2
jmp 0x14002bf40
call sym.raiseOverflow
jmp 0x14002c258
mov qword [rsp + 0x40], r11
mov qword [rsp + 0x38], r9
call sym.raiseOverflow
mov r9, qword [rsp + 0x38]
mov r11, qword [rsp + 0x40]
jmp 0x14002c0dd