File zig_demo_f2072c8e87056dd4f010dfd24f7c5fd7f3ab5198bb7930c7044fb6b6b95222af.elf
Function:
Loading..
01031500
01031500Io.net.Ip6Address.Unresolved.parse:
01031500push rbp
01031501mov rbp, rsp
01031504push r15
01031506push r14
01031508push r13
0103150apush r12
0103150cpush rbx
0103150dsub rsp, 184
01031514mov rbx, rdi
01031517cmp rdx, 2
0103151bjae 0x103153d
0103151d
0103151dloc_103151d:
0103151dmov rax, 0x202020202020202
01031527vpbroadcastb ymm0, [rip-0x306c0]
01031530mov [rbx+32], rax
01031534vmovdqu [rbx], ymm0
01031538jmp 0x10316aa
0103153d
0103153dloc_103153d:
0103153dmov r14, rdx
01031540mov r15, rsi
01031543lea r13, [rsi+1]
01031547lea r12, [rbp-216]
0103154epush 37
01031550pop rcx
01031551mov rdi, r12
01031554call mem.findScalar__func_21
01031559test [r12+8], 1
0103155fje 0x103162c
01031565mov r12, r13
01031568
01031568loc_1031568:
01031568vpxor x0, x0, x0
0103156cvmovdqa [rbp-80], x0
01031571mov dil, [r15]
01031574lea eax, [rdi-37]
01031577cmp al, 66
01031579jae 0x103169e
0103157fmovzx r10l, dil
01031583xor ecx, ecx
01031585xor eax, eax
01031587xor r9l, r9l
0103158axor edx, edx
0103158cxor r8l, r8l
0103158fjmp [8*r10+0x1006bf8]
01031597movzx edi, al
0103159atest r9b, r9b
0103159dje 0x10315dd
0103159finc cl
010315a1cmp cl, 8
010315a4je 0x103180e
010315aamov rax, rdi
010315adinc rax
010315b0cmp r14, rax
010315b3je 0x103151d
010315b9mov dil, [r15+rax]
010315bdlea r8l, [rdi-37]
010315c1cmp r8b, 65
010315c5ja 0x10316a0
010315cbmovzx r10l, dil
010315cfxor r9l, r9l
010315d2xor r8l, r8l
010315d5jmp [8*r10+0x1006bf8]
010315dd
010315ddloc_10315dd:
010315ddtest dl, 1
010315e0jne 0x1031812
010315e6test al, al
010315e8jne 0x10315f7
010315eamov al, 1
010315eccmp [r12], 58
010315f1jne 0x103182a
010315f7
010315f7loc_10315f7:
010315f7movzx eax, al
010315fainc rax
010315fdcmp r14, rax
01031600je 0x103181e
01031606mov dil, [r15+rax]
0103160alea edx, [rdi-37]
0103160dcmp dl, 65
01031610ja 0x10316a0
01031616movzx r10l, dil
0103161amov dl, 1
0103161cxor r9l, r9l
0103161fmov esi, ecx
01031621xor r8l, r8l
01031624jmp [8*r10+0x1006bf8]
0103162c
0103162cloc_103162c:
0103162cmov [rbp-48], rbx
01031630push -1
01031632pop r13
01031634lea rbx, [rbp-191]
0103163bxor r12l, r12l
0103163emov rax, r15
01031641
01031641loc_1031641:
01031641cmp r14, r12
01031644je 0x10316c2
01031646lea rcx, [rax-1]
0103164ainc r13
0103164dinc r12
01031650dec rbx
01031653cmp [rax+r14-1], 58
01031659mov rax, rcx
0103165cjne 0x1031641
0103165elea rsi, [rcx+r14]
01031662inc rsi
01031665lea rdi, [rbp-144]
0103166cpush 46
0103166epop rcx
0103166fmov [rbp-56], rsi
01031673mov rdx, r13
01031676call mem.findScalar__func_21
0103167blea rax, [rbp-144]
01031682test [rax+8], 1
01031686je 0x10316e3
01031688mov rax, r14
0103168bsub rax, r12
0103168ecmp rax, 30
01031692jb 0x10316f0
01031694mov rbx, [rbp-48]
01031698mov [rbx+32], 5
0103169cjmp 0x10316a7
0103169e
0103169eloc_103169e:
0103169exor eax, eax
010316a0
010316a0loc_10316a0:
010316a0mov [rbx+32], 1
010316a4movzx eax, al
010316a7
010316a7loc_10316a7:
010316a7mov [rbx], rax
010316aa
010316aaloc_10316aa:
010316aamov rax, rbx
010316ad
010316adloc_10316ad:
010316adadd rsp, 184
010316b4pop rbx
010316b5pop r12
010316b7pop r13
010316b9pop r14
010316bbpop r15
010316bdpop rbp
010316bevzeroupper
010316c1ret
010316c2
010316c2loc_10316c2:
010316c2mov rcx, 0x202020202020202
010316ccvpbroadcastb ymm0, [rip-0x30865]
010316d5mov rax, [rbp-48]
010316d9mov [rax+32], rcx
010316ddvmovdqu [rax], ymm0
010316e1jmp 0x10316ad
010316e3
010316e3loc_10316e3:
010316e3lea r12, [r15+1]
010316e7mov rbx, [rbp-48]
010316ebjmp 0x1031568
010316f0
010316f0loc_10316f0:
010316f0mov [rbp-104], rax
010316f4lea r12, [rbp-88]
010316f8mov rdi, r12
010316fbmov rsi, [rbp-56]
010316ffmov rdx, r13
01031702xor ecx, ecx
01031704call Io.net.Ip4Address.parse
01031709cmp [r12+6], 0
01031710je 0x1031722
01031712sub r14, r13
01031715mov rbx, [rbp-48]
01031719mov [rbx+32], 5
0103171djmp 0x103188b
01031722
01031722loc_1031722:
01031722movzx r13l, [rbp-86]
01031727movzx r12l, [rbp-85]
0103172cmovzx eax, [rbp-84]
01031730mov [rbp-96], rax
01031734movzx eax, [rbp-83]
01031738mov [rbp-56], rax
0103173clea rdi, [rbp-199]
01031743mov rsi, r15
01031746mov r15, [rbp-104]
0103174amov rdx, r15
0103174dcall compiler_rt.memcpy.memcpySmall
01031752mov al, 58
01031754mov [rbx+r14-8], al
01031759mov ecx, r13l
0103175cand ecx, 15
0103175fshr r13l, 4
01031763movzx edx, [r13+0x100841f]
0103176bmovzx ecx, [rcx+0x100841f]
01031772shl ecx, 8
01031775or ecx, edx
01031777mov [rbx+r14-7], cx
0103177dmov ecx, r12l
01031780and ecx, 15
01031783shr r12l, 4
01031787movzx edx, [r12+0x100841f]
01031790movzx ecx, [rcx+0x100841f]
01031797shl ecx, 8
0103179aor ecx, edx
0103179cmov [rbx+r14-5], cx
010317a2mov [rbx+r14-3], al
010317a7mov rcx, [rbp-96]
010317abmov eax, ecx
010317adand eax, 15
010317b0shr ecx, 4
010317b3movzx ecx, [rcx+0x100841f]
010317bamovzx eax, [rax+0x100841f]
010317c1shl eax, 8
010317c4or eax, ecx
010317c6mov [rbx+r14-2], ax
010317ccmov rcx, [rbp-56]
010317d0mov eax, ecx
010317d2and eax, 15
010317d5shr ecx, 4
010317d8movzx ecx, [rcx+0x100841f]
010317dfmovzx eax, [rax+0x100841f]
010317e6shl eax, 8
010317e9or eax, ecx
010317ebmov [rbx+r14], ax
010317f0add r15, 10
010317f4mov r14, r15
010317f7lea r15, [rbp-199]
010317femov rbx, [rbp-48]
01031802lea r12, [rbp-198]
01031809jmp 0x1031568
0103180e
0103180eloc_103180e:
0103180emov cl, 8
01031810jmp 0x103185a
01031812
01031812loc_1031812:
01031812mov [rbx+32], 1
01031816mov [rbx], rdi
01031819jmp 0x10316aa
0103181e
0103181eloc_103181e:
0103181emov dl, 1
01031820xor r12l, r12l
01031823xor r13l, r13l
01031826mov esi, ecx
01031828jmp 0x103189f
0103182a
0103182aloc_103182a:
0103182amov [rbx+32], 1
0103182emov [rbx], 1
01031835jmp 0x10316aa
0103183alea r10l, [rdi+32]
0103183ecmp r10b, 103
01031842jae 0x10316a0
01031848movsx r11, dil
0103184cmov r9l, r8l
0103184fmov edi, r10l
01031852jmp [8*r11+0x1006cf8]
0103185a
0103185aloc_103185a:
0103185axor r12l, r12l
0103185dxor r13l, r13l
01031860jmp 0x103189f
01031862test r9b, r9b
01031865je 0x10316a0
0103186bmovzx eax, al
0103186elea rdi, [rax+1]
01031872mov r13, r14
01031875sub r13, rdi
01031878je 0x103151d
0103187ecmp r14, 255
01031885jbe 0x1031893
01031887mov [rbx+32], 6
0103188b
0103188bloc_103188b:
0103188bmov [rbx], r14
0103188ejmp 0x10316aa
01031893
01031893loc_1031893:
01031893inc cl
01031895lea r12, [r15+rax]
01031899inc r12
0103189cmov eax, r14l
0103189f
0103189floc_103189f:
0103189fmovzx eax, al
010318a2cmp r14, rax
010318a5jne 0x10318f8
010318a7cmp dl, 1
010318aajne 0x1031901
010318acmovzx eax, sil
010318b0mov r15, rbx
010318b3lea rbx, [2*rax-80]
010318bbadd rbx, rbp
010318bemovzx r14l, cl
010318c2mov edx, r14l
010318c5sub edx, eax
010318c7push 8
010318c9pop rax
010318casub eax, edx
010318ccadd eax, eax
010318celea rdi, [rax+rbp]
010318d2add rdi, -80
010318d6add edx, edx
010318d8mov rsi, rbx
010318dbcall compiler_rt.memmove.memmoveSmall
010318e0add r14l, r14l
010318e3push 16
010318e5pop rdx
010318e6sub rdx, r14
010318e9mov rdi, rbx
010318ecmov rbx, r15
010318efxor esi, esi
010318f1call compiler_rt.smallMemset
010318f6jmp 0x103190a
010318f8
010318f8loc_10318f8:
010318f8mov [rbx+32], 3
010318fcjmp 0x10316a7
01031901
01031901loc_1031901:
01031901cmp cl, 8
01031904jne 0x103151d
0103190a
0103190aloc_103190a:
0103190axor eax, eax
0103190c
0103190cloc_103190c:
0103190ccmp rax, 8
01031910je 0x1031923
01031912movzx ecx, [rbp+2*rax-80]
01031917movbe [rbp+2*rax-80], cx
0103191einc rax
01031921jmp 0x103190c
01031923
01031923loc_1031923:
01031923mov [rbp-56], r12
01031927vmovaps x0, [rbp-80]
0103192cvmovaps [rbp-128], x0
01031931mov [rbp-48], rbx
01031935mov [rbx+32], 0
01031939push 7
0103193bpop rax
0103193cxor r14l, r14l
0103193fxor r15l, r15l
01031942
01031942loc_1031942:
01031942movzx ecx, [rbp+2*rax-128]
01031947shld r15, r14, 16
0103194cshl r14, 16
01031950or r14, rcx
01031953add rax, -1
01031957jb 0x1031942
01031959lea rbx, [rbp-160]
01031960xor r12l, r12l
01031963
01031963loc_1031963:
01031963movzx edx, r12b
01031967mov rdi, r14
0103196amov rsi, r15
0103196dcall compiler_rt.shift.__lshrti3
01031972mov [rbx], al
01031974add r12, 8
01031978inc rbx
0103197bcmp r12, 128
01031982jne 0x1031963
01031984vmovdqu x0, [rbp-160]
0103198cmov rbx, [rbp-48]
01031990vmovdqu [rbx+16], x0
01031995mov rax, [rbp-56]
01031999mov [rbx], rax
0103199cmov [rbx+8], r13
010319a0jmp 0x10316aa
010319a5movzx r9l, cl
010319a9movzx r10l, [rbp+2*r9-80]
010319afmovzx eax, al
010319b2cmp r10w, 4095
010319b8ja 0x1031a69
010319beshl r10l, 4
010319c2add dil, -87
010319c6movzx edi, dil
010319caadd edi, r10l
010319cdmov [rbp+2*r9-80], di
010319d3cmp r8b, 4
010319d7je 0x1031a72
010319ddinc rax
010319e0cmp r14, rax
010319e3je 0x1031a7b
010319e9mov dil, [r15+rax]
010319edlea r9l, [rdi-37]
010319f1cmp r9b, 65
010319f5ja 0x10316a0
010319fbinc r8b
010319femovzx r10l, dil
01031a02mov r9b, 1
01031a05jmp [8*r10+0x1006bf8]
01031a0dmovzx r9l, cl
01031a11movzx r10l, [rbp+2*r9-80]
01031a17movzx eax, al
01031a1acmp r10w, 4095
01031a20ja 0x1031a69
01031a22shl r10l, 4
01031a26add dil, -48
01031a2amovzx edi, dil
01031a2eadd edi, r10l
01031a31mov [rbp+2*r9-80], di
01031a37cmp r8b, 4
01031a3bje 0x1031a72
01031a3dinc rax
01031a40cmp r14, rax
01031a43je 0x1031a7b
01031a45mov dil, [r15+rax]
01031a49lea r9l, [rdi-37]
01031a4dcmp r9b, 65
01031a51ja 0x10316a0
01031a57inc r8b
01031a5amovzx r10l, dil
01031a5emov r9b, 1
01031a61jmp [8*r10+0x1006bf8]
01031a69
01031a69loc_1031a69:
01031a69mov [rbx+32], 6
01031a6djmp 0x10316a7
01031a72
01031a72loc_1031a72:
01031a72mov [rbx+32], 1
01031a76jmp 0x10316a7
01031a7b
01031a7bloc_1031a7b:
01031a7binc cl
01031a7djmp 0x103185a
01031500
01031500Io.net.Ip6Address.Unresolved.parse:
01031500push rbp
01031501mov rbp, rsp
01031504push r15
01031506push r14
01031508push r13
0103150apush r12
0103150cpush rbx
0103150dsub rsp, 184
01031514mov rbx, rdi
01031517cmp rdx, 2
0103151bjae 0x103153d
0103151d
0103151dloc_103151d:
0103151dmov rax, 0x202020202020202
01031527vpbroadcastb ymm0, [rip-0x306c0]
01031530mov [rbx+32], rax
01031534vmovdqu [rbx], ymm0
01031538jmp 0x10316aa
0103153d
0103153dloc_103153d:
0103153dmov r14, rdx
01031540mov r15, rsi
01031543lea r13, [rsi+1]
01031547lea r12, [rbp-216]
0103154epush 37
01031550pop rcx
01031551mov rdi, r12
01031554call mem.findScalar__func_21
01031559test [r12+8], 1
0103155fje 0x103162c
01031565mov r12, r13
01031568
01031568loc_1031568:
01031568vpxor x0, x0, x0
0103156cvmovdqa [rbp-80], x0
01031571mov dil, [r15]
01031574lea eax, [rdi-37]
01031577cmp al, 66
01031579jae 0x103169e
0103157fmovzx r10l, dil
01031583xor ecx, ecx
01031585xor eax, eax
01031587xor r9l, r9l
0103158axor edx, edx
0103158cxor r8l, r8l
0103158fjmp [8*r10+0x1006bf8]
01031597movzx edi, al
0103159atest r9b, r9b
0103159dje 0x10315dd
0103159finc cl
010315a1cmp cl, 8
010315a4je 0x103180e
010315aamov rax, rdi
010315adinc rax
010315b0cmp r14, rax
010315b3je 0x103151d
010315b9mov dil, [r15+rax]
010315bdlea r8l, [rdi-37]
010315c1cmp r8b, 65
010315c5ja 0x10316a0
010315cbmovzx r10l, dil
010315cfxor r9l, r9l
010315d2xor r8l, r8l
010315d5jmp [8*r10+0x1006bf8]
010315dd
010315ddloc_10315dd:
010315ddtest dl, 1
010315e0jne 0x1031812
010315e6test al, al
010315e8jne 0x10315f7
010315eamov al, 1
010315eccmp [r12], 58
010315f1jne 0x103182a
010315f7
010315f7loc_10315f7:
010315f7movzx eax, al
010315fainc rax
010315fdcmp r14, rax
01031600je 0x103181e
01031606mov dil, [r15+rax]
0103160alea edx, [rdi-37]
0103160dcmp dl, 65
01031610ja 0x10316a0
01031616movzx r10l, dil
0103161amov dl, 1
0103161cxor r9l, r9l
0103161fmov esi, ecx
01031621xor r8l, r8l
01031624jmp [8*r10+0x1006bf8]
0103162c
0103162cloc_103162c:
0103162cmov [rbp-48], rbx
01031630push -1
01031632pop r13
01031634lea rbx, [rbp-191]
0103163bxor r12l, r12l
0103163emov rax, r15
01031641
01031641loc_1031641:
01031641cmp r14, r12
01031644je 0x10316c2
01031646lea rcx, [rax-1]
0103164ainc r13
0103164dinc r12
01031650dec rbx
01031653cmp [rax+r14-1], 58
01031659mov rax, rcx
0103165cjne 0x1031641
0103165elea rsi, [rcx+r14]
01031662inc rsi
01031665lea rdi, [rbp-144]
0103166cpush 46
0103166epop rcx
0103166fmov [rbp-56], rsi
01031673mov rdx, r13
01031676call mem.findScalar__func_21
0103167blea rax, [rbp-144]
01031682test [rax+8], 1
01031686je 0x10316e3
01031688mov rax, r14
0103168bsub rax, r12
0103168ecmp rax, 30
01031692jb 0x10316f0
01031694mov rbx, [rbp-48]
01031698mov [rbx+32], 5
0103169cjmp 0x10316a7
0103169e
0103169eloc_103169e:
0103169exor eax, eax
010316a0
010316a0loc_10316a0:
010316a0mov [rbx+32], 1
010316a4movzx eax, al
010316a7
010316a7loc_10316a7:
010316a7mov [rbx], rax
010316aa
010316aaloc_10316aa:
010316aamov rax, rbx
010316ad
010316adloc_10316ad:
010316adadd rsp, 184
010316b4pop rbx
010316b5pop r12
010316b7pop r13
010316b9pop r14
010316bbpop r15
010316bdpop rbp
010316bevzeroupper
010316c1ret
010316c2
010316c2loc_10316c2:
010316c2mov rcx, 0x202020202020202
010316ccvpbroadcastb ymm0, [rip-0x30865]
010316d5mov rax, [rbp-48]
010316d9mov [rax+32], rcx
010316ddvmovdqu [rax], ymm0
010316e1jmp 0x10316ad
010316e3
010316e3loc_10316e3:
010316e3lea r12, [r15+1]
010316e7mov rbx, [rbp-48]
010316ebjmp 0x1031568
010316f0
010316f0loc_10316f0:
010316f0mov [rbp-104], rax
010316f4lea r12, [rbp-88]
010316f8mov rdi, r12
010316fbmov rsi, [rbp-56]
010316ffmov rdx, r13
01031702xor ecx, ecx
01031704call Io.net.Ip4Address.parse
01031709cmp [r12+6], 0
01031710je 0x1031722
01031712sub r14, r13
01031715mov rbx, [rbp-48]
01031719mov [rbx+32], 5
0103171djmp 0x103188b
01031722
01031722loc_1031722:
01031722movzx r13l, [rbp-86]
01031727movzx r12l, [rbp-85]
0103172cmovzx eax, [rbp-84]
01031730mov [rbp-96], rax
01031734movzx eax, [rbp-83]
01031738mov [rbp-56], rax
0103173clea rdi, [rbp-199]
01031743mov rsi, r15
01031746mov r15, [rbp-104]
0103174amov rdx, r15
0103174dcall compiler_rt.memcpy.memcpySmall
01031752mov al, 58
01031754mov [rbx+r14-8], al
01031759mov ecx, r13l
0103175cand ecx, 15
0103175fshr r13l, 4
01031763movzx edx, [r13+0x100841f]
0103176bmovzx ecx, [rcx+0x100841f]
01031772shl ecx, 8
01031775or ecx, edx
01031777mov [rbx+r14-7], cx
0103177dmov ecx, r12l
01031780and ecx, 15
01031783shr r12l, 4
01031787movzx edx, [r12+0x100841f]
01031790movzx ecx, [rcx+0x100841f]
01031797shl ecx, 8
0103179aor ecx, edx
0103179cmov [rbx+r14-5], cx
010317a2mov [rbx+r14-3], al
010317a7mov rcx, [rbp-96]
010317abmov eax, ecx
010317adand eax, 15
010317b0shr ecx, 4
010317b3movzx ecx, [rcx+0x100841f]
010317bamovzx eax, [rax+0x100841f]
010317c1shl eax, 8
010317c4or eax, ecx
010317c6mov [rbx+r14-2], ax
010317ccmov rcx, [rbp-56]
010317d0mov eax, ecx
010317d2and eax, 15
010317d5shr ecx, 4
010317d8movzx ecx, [rcx+0x100841f]
010317dfmovzx eax, [rax+0x100841f]
010317e6shl eax, 8
010317e9or eax, ecx
010317ebmov [rbx+r14], ax
010317f0add r15, 10
010317f4mov r14, r15
010317f7lea r15, [rbp-199]
010317femov rbx, [rbp-48]
01031802lea r12, [rbp-198]
01031809jmp 0x1031568
0103180e
0103180eloc_103180e:
0103180emov cl, 8
01031810jmp 0x103185a
01031812
01031812loc_1031812:
01031812mov [rbx+32], 1
01031816mov [rbx], rdi
01031819jmp 0x10316aa
0103181e
0103181eloc_103181e:
0103181emov dl, 1
01031820xor r12l, r12l
01031823xor r13l, r13l
01031826mov esi, ecx
01031828jmp 0x103189f
0103182a
0103182aloc_103182a:
0103182amov [rbx+32], 1
0103182emov [rbx], 1
01031835jmp 0x10316aa
0103183alea r10l, [rdi+32]
0103183ecmp r10b, 103
01031842jae 0x10316a0
01031848movsx r11, dil
0103184cmov r9l, r8l
0103184fmov edi, r10l
01031852jmp [8*r11+0x1006cf8]
0103185a
0103185aloc_103185a:
0103185axor r12l, r12l
0103185dxor r13l, r13l
01031860jmp 0x103189f
01031862test r9b, r9b
01031865je 0x10316a0
0103186bmovzx eax, al
0103186elea rdi, [rax+1]
01031872mov r13, r14
01031875sub r13, rdi
01031878je 0x103151d
0103187ecmp r14, 255
01031885jbe 0x1031893
01031887mov [rbx+32], 6
0103188b
0103188bloc_103188b:
0103188bmov [rbx], r14
0103188ejmp 0x10316aa
01031893
01031893loc_1031893:
01031893inc cl
01031895lea r12, [r15+rax]
01031899inc r12
0103189cmov eax, r14l
0103189f
0103189floc_103189f:
0103189fmovzx eax, al
010318a2cmp r14, rax
010318a5jne 0x10318f8
010318a7cmp dl, 1
010318aajne 0x1031901
010318acmovzx eax, sil
010318b0mov r15, rbx
010318b3lea rbx, [2*rax-80]
010318bbadd rbx, rbp
010318bemovzx r14l, cl
010318c2mov edx, r14l
010318c5sub edx, eax
010318c7push 8
010318c9pop rax
010318casub eax, edx
010318ccadd eax, eax
010318celea rdi, [rax+rbp]
010318d2add rdi, -80
010318d6add edx, edx
010318d8mov rsi, rbx
010318dbcall compiler_rt.memmove.memmoveSmall
010318e0add r14l, r14l
010318e3push 16
010318e5pop rdx
010318e6sub rdx, r14
010318e9mov rdi, rbx
010318ecmov rbx, r15
010318efxor esi, esi
010318f1call compiler_rt.smallMemset
010318f6jmp 0x103190a
010318f8
010318f8loc_10318f8:
010318f8mov [rbx+32], 3
010318fcjmp 0x10316a7
01031901
01031901loc_1031901:
01031901cmp cl, 8
01031904jne 0x103151d
0103190a
0103190aloc_103190a:
0103190axor eax, eax
0103190c
0103190cloc_103190c:
0103190ccmp rax, 8
01031910je 0x1031923
01031912movzx ecx, [rbp+2*rax-80]
01031917movbe [rbp+2*rax-80], cx
0103191einc rax
01031921jmp 0x103190c
01031923
01031923loc_1031923:
01031923mov [rbp-56], r12
01031927vmovaps x0, [rbp-80]
0103192cvmovaps [rbp-128], x0
01031931mov [rbp-48], rbx
01031935mov [rbx+32], 0
01031939push 7
0103193bpop rax
0103193cxor r14l, r14l
0103193fxor r15l, r15l
01031942
01031942loc_1031942:
01031942movzx ecx, [rbp+2*rax-128]
01031947shld r15, r14, 16
0103194cshl r14, 16
01031950or r14, rcx
01031953add rax, -1
01031957jb 0x1031942
01031959lea rbx, [rbp-160]
01031960xor r12l, r12l
01031963
01031963loc_1031963:
01031963movzx edx, r12b
01031967mov rdi, r14
0103196amov rsi, r15
0103196dcall compiler_rt.shift.__lshrti3
01031972mov [rbx], al
01031974add r12, 8
01031978inc rbx
0103197bcmp r12, 128
01031982jne 0x1031963
01031984vmovdqu x0, [rbp-160]
0103198cmov rbx, [rbp-48]
01031990vmovdqu [rbx+16], x0
01031995mov rax, [rbp-56]
01031999mov [rbx], rax
0103199cmov [rbx+8], r13
010319a0jmp 0x10316aa
010319a5movzx r9l, cl
010319a9movzx r10l, [rbp+2*r9-80]
010319afmovzx eax, al
010319b2cmp r10w, 4095
010319b8ja 0x1031a69
010319beshl r10l, 4
010319c2add dil, -87
010319c6movzx edi, dil
010319caadd edi, r10l
010319cdmov [rbp+2*r9-80], di
010319d3cmp r8b, 4
010319d7je 0x1031a72
010319ddinc rax
010319e0cmp r14, rax
010319e3je 0x1031a7b
010319e9mov dil, [r15+rax]
010319edlea r9l, [rdi-37]
010319f1cmp r9b, 65
010319f5ja 0x10316a0
010319fbinc r8b
010319femovzx r10l, dil
01031a02mov r9b, 1
01031a05jmp [8*r10+0x1006bf8]
01031a0dmovzx r9l, cl
01031a11movzx r10l, [rbp+2*r9-80]
01031a17movzx eax, al
01031a1acmp r10w, 4095
01031a20ja 0x1031a69
01031a22shl r10l, 4
01031a26add dil, -48
01031a2amovzx edi, dil
01031a2eadd edi, r10l
01031a31mov [rbp+2*r9-80], di
01031a37cmp r8b, 4
01031a3bje 0x1031a72
01031a3dinc rax
01031a40cmp r14, rax
01031a43je 0x1031a7b
01031a45mov dil, [r15+rax]
01031a49lea r9l, [rdi-37]
01031a4dcmp r9b, 65
01031a51ja 0x10316a0
01031a57inc r8b
01031a5amovzx r10l, dil
01031a5emov r9b, 1
01031a61jmp [8*r10+0x1006bf8]
01031a69
01031a69loc_1031a69:
01031a69mov [rbx+32], 6
01031a6djmp 0x10316a7
01031a72
01031a72loc_1031a72:
01031a72mov [rbx+32], 1
01031a76jmp 0x10316a7
01031a7b
01031a7bloc_1031a7b:
01031a7binc cl
01031a7djmp 0x103185a
01031500
01031a82
01031a82Io.Threaded.Thread.checkCancel:
01031a82mov rax, [0xfffffffffffbfff0]
01031a8btest rax, rax
01031a8eje 0x1031abd
01031a90push rbp
01031a91mov rbp, rsp
01031a94cmp [rax+540], 1
01031a9bje 0x1031ab9
01031a9dmov rcx, [rax+8]
01031aa1mov edx, ecx
01031aa3and edx, 7
01031aa6cmp edx, 6
01031aa9jne 0x1031ab9
01031aabor rcx, 7
01031aafmov [rax+8], rcx
01031ab3mov ax, 17
01031ab7jmp 0x1031abb
01031ab9
01031ab9loc_1031ab9:
01031ab9xor eax, eax
01031abb
01031abbloc_1031abb:
01031abbpop rbp
01031abcret
01031abd
01031abdloc_1031abd:
01031abdxor eax, eax
01031abfret
01031a82
01031a82Io.Threaded.Thread.checkCancel:
01031a82mov rax, [0xfffffffffffbfff0]
01031a8btest rax, rax
01031a8eje 0x1031abd
01031a90push rbp
01031a91mov rbp, rsp
01031a94cmp [rax+540], 1
01031a9bje 0x1031ab9
01031a9dmov rcx, [rax+8]
01031aa1mov edx, ecx
01031aa3and edx, 7
01031aa6cmp edx, 6
01031aa9jne 0x1031ab9
01031aabor rcx, 7
01031aafmov [rax+8], rcx
01031ab3mov ax, 17
01031ab7jmp 0x1031abb
01031ab9
01031ab9loc_1031ab9:
01031ab9xor eax, eax
01031abb
01031abbloc_1031abb:
01031abbpop rbp
01031abcret
01031abd
01031abdloc_1031abd:
01031abdxor eax, eax
01031abfret
01031a82
01031ac0
01031ac0Io.net.Ip4Address.parse:
01031ac0push rbp
01031ac1mov rbp, rsp
01031ac4push rbx
01031ac5and [rbp-12], 0
01031ac9xor r8l, r8l
01031accxor eax, eax
01031acexor r10l, r10l
01031ad1xor r9l, r9l
01031ad4
01031ad4loc_1031ad4:
01031ad4cmp rdx, r8
01031ad7je 0x1031b3d
01031ad9mov r11b, [rsi+r8]
01031addcmp r11b, 46
01031ae1jne 0x1031afd
01031ae3test r10b, 1
01031ae7je 0x1031b59
01031ae9cmp r9b, 3
01031aedje 0x1031b79
01031af3inc r9b
01031af6xor eax, eax
01031af8xor r10l, r10l
01031afbjmp 0x1031b38
01031afd
01031afdloc_1031afd:
01031afdlea ebx, [r11-48]
01031b01cmp bl, 10
01031b04jae 0x1031b59
01031b06cmp r11b, 48
01031b0asetne r11b
01031b0eor r11b, r10b
01031b11and al, r11b
01031b14test al, 1
01031b16jne 0x1031b85
01031b18movzx r10l, r9b
01031b1cmov al, 10
01031b1emul [rbp+r10-12]
01031b23jo 0x1031b65
01031b25add al, bl
01031b27jb 0x1031b65
01031b29xor r11b, 1
01031b2dmov [rbp+r10-12], al
01031b32mov r10b, 1
01031b35mov eax, r11l
01031b38
01031b38loc_1031b38:
01031b38inc r8
01031b3bjmp 0x1031ad4
01031b3d
01031b3dloc_1031b3d:
01031b3dcmp r9b, 3
01031b41sete al
01031b44test al, r10b
01031b47je 0x1031b6d
01031b49and [rdi+6], 0
01031b4emov eax, [rbp-12]
01031b51mov [rdi+2], eax
01031b54mov [rdi], cx
01031b57jmp 0x1031b92
01031b59
01031b59loc_1031b59:
01031b59mov rax, 0x1d000000000000
01031b63jmp 0x1031b8f
01031b65
01031b65loc_1031b65:
01031b65mov [rdi+6], 28
01031b6bjmp 0x1031b92
01031b6d
01031b6dloc_1031b6d:
01031b6dmov rax, 0x70000000000000
01031b77jmp 0x1031b8f
01031b79
01031b79loc_1031b79:
01031b79mov rax, 0x6f000000000000
01031b83jmp 0x1031b8f
01031b85
01031b85loc_1031b85:
01031b85mov rax, 0x71000000000000
01031b8f
01031b8floc_1031b8f:
01031b8fmov [rdi], rax
01031b92
01031b92loc_1031b92:
01031b92mov rax, rdi
01031b95pop rbx
01031b96pop rbp
01031b97ret
01031ac0
01031ac0Io.net.Ip4Address.parse:
01031ac0push rbp
01031ac1mov rbp, rsp
01031ac4push rbx
01031ac5and [rbp-12], 0
01031ac9xor r8l, r8l
01031accxor eax, eax
01031acexor r10l, r10l
01031ad1xor r9l, r9l
01031ad4
01031ad4loc_1031ad4:
01031ad4cmp rdx, r8
01031ad7je 0x1031b3d
01031ad9mov r11b, [rsi+r8]
01031addcmp r11b, 46
01031ae1jne 0x1031afd
01031ae3test r10b, 1
01031ae7je 0x1031b59
01031ae9cmp r9b, 3
01031aedje 0x1031b79
01031af3inc r9b
01031af6xor eax, eax
01031af8xor r10l, r10l
01031afbjmp 0x1031b38
01031afd
01031afdloc_1031afd:
01031afdlea ebx, [r11-48]
01031b01cmp bl, 10
01031b04jae 0x1031b59
01031b06cmp r11b, 48
01031b0asetne r11b
01031b0eor r11b, r10b
01031b11and al, r11b
01031b14test al, 1
01031b16jne 0x1031b85
01031b18movzx r10l, r9b
01031b1cmov al, 10
01031b1emul [rbp+r10-12]
01031b23jo 0x1031b65
01031b25add al, bl
01031b27jb 0x1031b65
01031b29xor r11b, 1
01031b2dmov [rbp+r10-12], al
01031b32mov r10b, 1
01031b35mov eax, r11l
01031b38
01031b38loc_1031b38:
01031b38inc r8
01031b3bjmp 0x1031ad4
01031b3d
01031b3dloc_1031b3d:
01031b3dcmp r9b, 3
01031b41sete al
01031b44test al, r10b
01031b47je 0x1031b6d
01031b49and [rdi+6], 0
01031b4emov eax, [rbp-12]
01031b51mov [rdi+2], eax
01031b54mov [rdi], cx
01031b57jmp 0x1031b92
01031b59
01031b59loc_1031b59:
01031b59mov rax, 0x1d000000000000
01031b63jmp 0x1031b8f
01031b65
01031b65loc_1031b65:
01031b65mov [rdi+6], 28
01031b6bjmp 0x1031b92
01031b6d
01031b6dloc_1031b6d:
01031b6dmov rax, 0x70000000000000
01031b77jmp 0x1031b8f
01031b79
01031b79loc_1031b79:
01031b79mov rax, 0x6f000000000000
01031b83jmp 0x1031b8f
01031b85
01031b85loc_1031b85:
01031b85mov rax, 0x71000000000000
01031b8f
01031b8floc_1031b8f:
01031b8fmov [rdi], rax
01031b92
01031b92loc_1031b92:
01031b92mov rax, rdi
01031b95pop rbx
01031b96pop rbp
01031b97ret
01031ac0
01031b98
01031b98mem.endsWith__func_56:
01031b98push rbp
01031b99mov rbp, rsp
01031b9csub rsi, rcx
01031b9fjae 0x1031ba5
01031ba1xor eax, eax
01031ba3pop rbp
01031ba4ret
01031ba5
01031ba5loc_1031ba5:
01031ba5add rdi, rsi
01031ba8mov rsi, rcx
01031babpop rbp
01031bacjmp 0x10408e1
01031b98
01031b98mem.endsWith__func_56:
01031b98push rbp
01031b99mov rbp, rsp
01031b9csub rsi, rcx
01031b9fjae 0x1031ba5
01031ba1xor eax, eax
01031ba3pop rbp
01031ba4ret
01031ba5
01031ba5loc_1031ba5:
01031ba5add rdi, rsi
01031ba8mov rsi, rcx
01031babpop rbp
01031bacjmp 0x10408e1
01031b98
01031bb1
01031bb1Io.net.IpAddress.parseIp4:
01031bb1push rbp
01031bb2mov rbp, rsp
01031bb5push r14
01031bb7push rbx
01031bb8sub rsp, 16
01031bbcmov rbx, rdi
01031bbfand [rdi+32], 0
01031bc4mov [rdi+28], 0
01031bc8lea r14, [rbp-24]
01031bccmov rdi, r14
01031bcfcall Io.net.Ip4Address.parse
01031bd4movzx eax, [r14+6]
01031bd9test ax, ax
01031bdcjne 0x1031bf7
01031bdemovzx eax, [rbp-20]
01031be2mov [rbx+4], ax
01031be6mov eax, [rbp-24]
01031be9mov [rbx], eax
01031beb
01031bebloc_1031beb:
01031bebmov rax, rbx
01031beeadd rsp, 16
01031bf2pop rbx
01031bf3pop r14
01031bf5pop rbp
01031bf6ret
01031bf7
01031bf7loc_1031bf7:
01031bf7mov [rbx+32], ax
01031bfbjmp 0x1031beb
01031bb1
01031bb1Io.net.IpAddress.parseIp4:
01031bb1push rbp
01031bb2mov rbp, rsp
01031bb5push r14
01031bb7push rbx
01031bb8sub rsp, 16
01031bbcmov rbx, rdi
01031bbfand [rdi+32], 0
01031bc4mov [rdi+28], 0
01031bc8lea r14, [rbp-24]
01031bccmov rdi, r14
01031bcfcall Io.net.Ip4Address.parse
01031bd4movzx eax, [r14+6]
01031bd9test ax, ax
01031bdcjne 0x1031bf7
01031bdemovzx eax, [rbp-20]
01031be2mov [rbx+4], ax
01031be6mov eax, [rbp-24]
01031be9mov [rbx], eax
01031beb
01031bebloc_1031beb:
01031bebmov rax, rbx
01031beeadd rsp, 16
01031bf2pop rbx
01031bf3pop r14
01031bf5pop rbp
01031bf6ret
01031bf7
01031bf7loc_1031bf7:
01031bf7mov [rbx+32], ax
01031bfbjmp 0x1031beb
01031bb1
01031bfd
01031bfdIo.Queue(Io.net.HostName.LookupResult).putOne:
01031bfdpush rbp
01031bfemov rbp, rsp
01031c01push rbx
01031c02sub rsp, 56
01031c06mov rax, rsi
01031c09mov rsi, rdi
01031c0cmov rdi, [rdx+32]
01031c10lea rcx, [rbp-64]
01031c14mov [rcx+32], rdi
01031c18vmovups ymm0, [rdx]
01031c1cvmovups [rcx], ymm0
01031c20lea rbx, [rbp-24]
01031c24push 1
01031c26pop r8
01031c28mov rdi, rbx
01031c2bmov rdx, rax
01031c2emov r9, r8
01031c31vzeroupper
01031c34call Io.Queue(Io.net.HostName.LookupResult).put
01031c39movzx eax, [rbx+8]
01031c3dadd rsp, 56
01031c41pop rbx
01031c42pop rbp
01031c43ret
01031bfd
01031bfdIo.Queue(Io.net.HostName.LookupResult).putOne:
01031bfdpush rbp
01031bfemov rbp, rsp
01031c01push rbx
01031c02sub rsp, 56
01031c06mov rax, rsi
01031c09mov rsi, rdi
01031c0cmov rdi, [rdx+32]
01031c10lea rcx, [rbp-64]
01031c14mov [rcx+32], rdi
01031c18vmovups ymm0, [rdx]
01031c1cvmovups [rcx], ymm0
01031c20lea rbx, [rbp-24]
01031c24push 1
01031c26pop r8
01031c28mov rdi, rbx
01031c2bmov rdx, rax
01031c2emov r9, r8
01031c31vzeroupper
01031c34call Io.Queue(Io.net.HostName.LookupResult).put
01031c39movzx eax, [rbx+8]
01031c3dadd rsp, 56
01031c41pop rbx
01031c42pop rbp
01031c43ret
01031bfd
01031c44
01031c44Io.Queue(Io.net.HostName.LookupResult).putAll:
01031c44push rbp
01031c45mov rbp, rsp
01031c48push r15
01031c4apush r14
01031c4cpush r13
01031c4epush r12
01031c50push rbx
01031c51sub rsp, 40
01031c55mov rbx, rcx
01031c58mov r14, rdx
01031c5bmov r15, rsi
01031c5emov r12, rdi
01031c61lea r13, [rbp-56]
01031c65mov rdi, r13
01031c68mov rsi, r12
01031c6bmov rdx, r15
01031c6emov rcx, r14
01031c71mov r8, rbx
01031c74mov r9, rbx
01031c77call Io.Queue(Io.net.HostName.LookupResult).put
01031c7cmovzx eax, [r13+8]
01031c81test ax, ax
01031c84jne 0x1031cba
01031c86mov rax, [rbp-56]
01031c8asub rbx, rax
01031c8djne 0x1031c93
01031c8fxor eax, eax
01031c91jmp 0x1031cba
01031c93
01031c93loc_1031c93:
01031c93imul rax, rax, 40
01031c97add r14, rax
01031c9alea r13, [rbp-72]
01031c9emov rdi, r13
01031ca1mov rsi, r12
01031ca4mov rdx, r15
01031ca7mov rcx, r14
01031caamov r8, rbx
01031cadmov r9, rbx
01031cb0call Io.Queue(Io.net.HostName.LookupResult).put
01031cb5movzx eax, [r13+8]
01031cba
01031cbaloc_1031cba:
01031cbaadd rsp, 40
01031cbepop rbx
01031cbfpop r12
01031cc1pop r13
01031cc3pop r14
01031cc5pop r15
01031cc7pop rbp
01031cc8ret
01031c44
01031c44Io.Queue(Io.net.HostName.LookupResult).putAll:
01031c44push rbp
01031c45mov rbp, rsp
01031c48push r15
01031c4apush r14
01031c4cpush r13
01031c4epush r12
01031c50push rbx
01031c51sub rsp, 40
01031c55mov rbx, rcx
01031c58mov r14, rdx
01031c5bmov r15, rsi
01031c5emov r12, rdi
01031c61lea r13, [rbp-56]
01031c65mov rdi, r13
01031c68mov rsi, r12
01031c6bmov rdx, r15
01031c6emov rcx, r14
01031c71mov r8, rbx
01031c74mov r9, rbx
01031c77call Io.Queue(Io.net.HostName.LookupResult).put
01031c7cmovzx eax, [r13+8]
01031c81test ax, ax
01031c84jne 0x1031cba
01031c86mov rax, [rbp-56]
01031c8asub rbx, rax
01031c8djne 0x1031c93
01031c8fxor eax, eax
01031c91jmp 0x1031cba
01031c93
01031c93loc_1031c93:
01031c93imul rax, rax, 40
01031c97add r14, rax
01031c9alea r13, [rbp-72]
01031c9emov rdi, r13
01031ca1mov rsi, r12
01031ca4mov rdx, r15
01031ca7mov rcx, r14
01031caamov r8, rbx
01031cadmov r9, rbx
01031cb0call Io.Queue(Io.net.HostName.LookupResult).put
01031cb5movzx eax, [r13+8]
01031cba
01031cbaloc_1031cba:
01031cbaadd rsp, 40
01031cbepop rbx
01031cbfpop r12
01031cc1pop r13
01031cc3pop r14
01031cc5pop r15
01031cc7pop rbp
01031cc8ret
01031c44
01031cc9
01031cc9Io.Queue(Io.net.HostName.LookupResult).put:
01031cc9push rbp
01031ccamov rbp, rsp
01031ccdpush r15
01031ccfpush r14
01031cd1push r13
01031cd3push r12
01031cd5push rbx
01031cd6sub rsp, 184
01031cddmov [rbp-128], rcx
01031ce1mov r14, rdi
01031ce4test r8, r8
01031ce7je 0x1031d29
01031ce9mov r15, r9
01031cecmov r13, r8
01031cefmov [rbp-56], r14
01031cf3mov r14, [rdx]
01031cf6mov [rbp-48], rdx
01031cfamov r12, [rdx+8]
01031cfepush 1
01031d00pop rcx
01031d01xor eax, eax
01031d03lock cmpxchg [rsi+64], ecx
01031d08lea rcx, [rsi+64]
01031d0cmov [rbp-72], rcx
01031d10jne 0x1032261
01031d16
01031d16loc_1031d16:
01031d16mov r12w, 107
01031d1btest [rsi+68], 1
01031d1fje 0x1031d31
01031d21xor r15l, r15l
01031d24jmp 0x1031e82
01031d29
01031d29loc_1031d29:
01031d29xor r13l, r13l
01031d2cjmp 0x1031e9b
01031d31
01031d31loc_1031d31:
01031d31imul r13, r13, 40
01031d35imul rax, r15, 40
01031d39mov [rbp-144], rax
01031d40mov rax, [rbp-48]
01031d44mov rcx, [rax]
01031d47mov [rbp-160], rcx
01031d4emov rax, [rax+8]
01031d52mov [rbp-152], rax
01031d59mov [rbp-64], rsi
01031d5dlea r15, [rsi+48]
01031d61xor r12l, r12l
01031d64
01031d64loc_1031d64:
01031d64mov r14, [r15]
01031d67test r14, r14
01031d6aje 0x1031e13
01031d70mov rcx, [r14]
01031d73test rcx, rcx
01031d76je 0x1031d82
01031d78mov rax, [r14+8]
01031d7cmov [rcx+8], rax
01031d80jmp 0x1031d89
01031d82
01031d82loc_1031d82:
01031d82mov rax, [r14+8]
01031d86mov [r15], rax
01031d89
01031d89loc_1031d89:
01031d89mov rcx, [r14]
01031d8ctest rax, rax
01031d8fje 0x1031d96
01031d91mov [rax], rcx
01031d94jmp 0x1031d9e
01031d96
01031d96loc_1031d96:
01031d96mov rax, [rbp-64]
01031d9amov [rax+56], rcx
01031d9e
01031d9eloc_1031d9e:
01031d9emov rdi, [r14-24]
01031da2mov rax, [r14-16]
01031da6mov rbx, r13
01031da9sub r13, r12
01031daccmp rax, r13
01031dafcmovb r13, rax
01031db3mov rax, [rbp-128]
01031db7lea rsi, [rax+r12]
01031dbbmov rdx, r13
01031dbecall compiler_rt.memcpy.memcpySmall
01031dc3add [r14-24], r13
01031dc7sub [r14-16], r13
01031dcbmov rax, [r14-8]
01031dcfsub rax, r13
01031dd2mov ecx, 0
01031dd7cmovae rcx, rax
01031ddbmov [r14-8], rcx
01031ddfjbe 0x1031dee
01031de1mov rdi, r15
01031de4mov rsi, r14
01031de7call DoublyLinkedList.prepend
01031decjmp 0x1031e02
01031dee
01031deeloc_1031dee:
01031deeadd r14, -24
01031df2add r14, 40
01031df6mov rdi, r14
01031df9mov rsi, [rbp-48]
01031dfdcall Io.Condition.signal
01031e02
01031e02loc_1031e02:
01031e02add r12, r13
01031e05mov r13, rbx
01031e08cmp r12, rbx
01031e0bjne 0x1031d64
01031e11jmp 0x1031e7c
01031e13
01031e13loc_1031e13:
01031e13mov r15, [rbp-64]
01031e17mov rdi, [r15+24]
01031e1b
01031e1bloc_1031e1b:
01031e1bmov rax, [r15+8]
01031e1fmov rcx, [r15+16]
01031e23add rdi, rcx
01031e26mov rdx, rdi
01031e29sub rdx, rax
01031e2cjae 0x1031e36
01031e2esub rax, rdi
01031e31add rdi, [r15]
01031e34jmp 0x1031e42
01031e36
01031e36loc_1031e36:
01031e36sub rcx, rdx
01031e39add rdx, [r15]
01031e3cmov rdi, rdx
01031e3fmov rax, rcx
01031e42
01031e42loc_1031e42:
01031e42test rax, rax
01031e45je 0x1031ec6
01031e47test rdi, rdi
01031e4aje 0x1031ec6
01031e4cmov r14, r13
01031e4fsub r14, r12
01031e52cmp rax, r14
01031e55cmovb r14, rax
01031e59mov rax, [rbp-128]
01031e5dlea rsi, [rax+r12]
01031e61mov rdx, r14
01031e64call compiler_rt.memcpy.memcpySmall
01031e69mov rdi, [r15+24]
01031e6dadd rdi, r14
01031e70mov [r15+24], rdi
01031e74add r12, r14
01031e77cmp r12, r13
01031e7ajne 0x1031e1b
01031e7c
01031e7cloc_1031e7c:
01031e7cmov r15b, 1
01031e7fxor r12l, r12l
01031e82
01031e82loc_1031e82:
01031e82mov r14, [rbp-56]
01031e86mov rbx, [rbp-48]
01031e8a
01031e8aloc_1031e8a:
01031e8amov rdi, [rbp-72]
01031e8e
01031e8eloc_1031e8e:
01031e8emov rsi, rbx
01031e91call Io.Mutex.unlock
01031e96test r15b, r15b
01031e99je 0x1031eac
01031e9b
01031e9bloc_1031e9b:
01031e9bpush 40
01031e9dpop rcx
01031e9emov rax, r13
01031ea1xor edx, edx
01031ea3div rcx
01031ea6xor r12l, r12l
01031ea9mov [r14], rax
01031eac
01031eacloc_1031eac:
01031eacmov [r14+8], r12w
01031eb1mov rax, r14
01031eb4add rsp, 184
01031ebbpop rbx
01031ebcpop r12
01031ebepop r13
01031ec0pop r14
01031ec2pop r15
01031ec4pop rbp
01031ec5ret
01031ec6
01031ec6loc_1031ec6:
01031ec6mov rax, [rbp-144]
01031ecdsub rax, r12
01031ed0jbe 0x1031f29
01031ed2mov rcx, [rbp-128]
01031ed6add rcx, r12
01031ed9mov rdx, rax
01031edcmov rax, r13
01031edfsub rax, r12
01031ee2lea rsi, [rbp-96]
01031ee6mov [rsi-24], rcx
01031eeamov [rsi-16], rax
01031eeemov [rsi-8], rdx
01031ef2lea rdi, [r15+32]
01031ef6vxorps x0, x0, x0
01031efaand [rsi+16], 0
01031effvmovups [rsi], x0
01031f03mov rax, [r15+40]
01031f07test rax, rax
01031f0amov [rbp-136], rdi
01031f11je 0x1031f40
01031f13mov [rbp-96], rax
01031f17mov rcx, [rax+8]
01031f1btest rcx, rcx
01031f1eje 0x1031f47
01031f20mov [rbp-88], rcx
01031f24mov [rcx], rsi
01031f27jmp 0x1031f50
01031f29
01031f29loc_1031f29:
01031f29mov r13, r12
01031f2cxor r12l, r12l
01031f2fmov r14, [rbp-56]
01031f33mov rbx, [rbp-48]
01031f37mov rdi, [rbp-72]
01031f3bjmp 0x1032259
01031f40
01031f40loc_1031f40:
01031f40call DoublyLinkedList.prepend
01031f45jmp 0x1031f54
01031f47
01031f47loc_1031f47:
01031f47and [rbp-88], 0
01031f4cmov [r15+40], rsi
01031f50
01031f50loc_1031f50:
01031f50mov [rax+8], rsi
01031f54
01031f54loc_1031f54:
01031f54lea r14, [rbp-76]
01031f58mov r12l, 0xffffffffffff0000
01031f5e
01031f5eloc_1031f5e:
01031f5ecmp [rbp-104], 0
01031f63je 0x103215d
01031f69test [r15+68], 1
01031f6ejne 0x1032183
01031f74mov rsi, [rbp-48]
01031f78mov rax, r15
01031f7bmov r15, [rsi]
01031f7emov rcx, [rsi+8]
01031f82mov [rbp-128], rcx
01031f86vxorps x0, x0, x0
01031f8avmovups [rbp-208], ymm0
01031f92vmovups [rbp-224], ymm0
01031f9amov ebx, [rbp-76]
01031f9dlock inc [rbp-80]
01031fa1lea rdi, [rax+64]
01031fa5vzeroupper
01031fa8call Io.Mutex.unlock
01031fad
01031fadloc_1031fad:
01031fadmov rdi, r15
01031fb0mov rsi, r14
01031fb3mov edx, ebx
01031fb5lea rcx, [rbp-224]
01031fbcmov rax, [rbp-128]
01031fc0call [rax+96]
01031fc3mov ebx, [rbp-76]
01031fc6test ax, ax
01031fc9jne 0x103206e
01031fcfmov eax, [rbp-80]
01031fd2
01031fd2loc_1031fd2:
01031fd2cmp eax, 0x10000
01031fd7jb 0x1031ff2
01031fd9lea ecx, [rax-1]
01031fdcmovzx ecx, cx
01031fdfmov edx, eax
01031fe1and edx, r12l
01031fe4or edx, ecx
01031fe6add edx, r12l
01031fe9lock cmpxchg [rbp-80], edx
01031feejne 0x1031fd2
01031ff0jmp 0x1032058
01031ff2
01031ff2loc_1031ff2:
01031ff2cmp [rbp-192], 0
01031ff9je 0x1031fad
01031ffbmov r14, [rbp-224]
01032002mov [rbp-144], r15
01032009mov r15, r13
0103200cmov r13, [rbp-216]
01032013mov edx, [rbp-208]
01032019mov rax, [rbp-48]
0103201dmov rsi, [rax]
01032020mov rax, [rax+8]
01032024lea rdi, [rbp-176]
0103202bcall [rax+704]
01032031mov rax, [rbp-168]
01032038cmp [rbp-176], r14
0103203flea r14, [rbp-76]
01032043sbb rax, r13
01032046mov r13, r15
01032049mov r15, [rbp-144]
01032050jl 0x1031fad
01032056jmp 0x103206e
01032058
01032058loc_1032058:
01032058mov r15, [rbp-64]
0103205clea rdi, [r15+64]
01032060mov rsi, [rbp-48]
01032064call Io.Mutex.lockUncancelable
01032069jmp 0x1031f5e
0103206e
0103206eloc_103206e:
0103206emov rbx, [rbp-48]
01032072mov rdi, [rbx]
01032075mov r8, [rbx+8]
01032079mov ecx, [rbp-80]
0103207cmov r14, [rbp-56]
01032080mov rax, [rbp-64]
01032084lea r15, [rax+64]
01032088mov r12, [rbp-136]
0103208f
0103208floc_103208f:
0103208fmov edx, ecx
01032091shr edx, 16
01032094lea esi, [rcx-1]
01032097mov eax, esi
01032099cmp dx, si
0103209ccmovb esi, edx
0103209fmovzx eax, ax
010320a2shl esi, 16
010320a5or esi, eax
010320a7mov eax, ecx
010320a9lock cmpxchg [rbp-80], esi
010320aeje 0x10320b4
010320b0mov ecx, eax
010320b2jmp 0x103208f
010320b4
010320b4loc_10320b4:
010320b4test edx, edx
010320b6setne al
010320b9cmp dx, cx
010320bcsetb cl
010320bfand cl, al
010320c1cmp cl, 1
010320c4jne 0x10320d5
010320c6lock inc [rbp-76]
010320capush 1
010320ccpop rdx
010320cdlea rsi, [rbp-76]
010320d1call [r8+112]
010320d5
010320d5loc_10320d5:
010320d5mov rdi, r15
010320d8mov rsi, rbx
010320dbcall Io.Mutex.lockUncancelable
010320e0cmp [rbp-112], r13
010320e4jne 0x103211b
010320e6mov rdx, r12
010320e9mov r12w, 17
010320eecmp [rbp-104], 0
010320f3je 0x103227b
010320f9mov rcx, [rbp-96]
010320fdtest rcx, rcx
01032100mov rdi, [rbp-72]
01032104je 0x10321e7
0103210amov rax, [rbp-88]
0103210emov [rcx+8], rax
01032112mov rcx, [rbp-96]
01032116jmp 0x103221e
0103211b
0103211bloc_103211b:
0103211bmov rdi, [rbp-160]
01032122mov rax, [rbp-152]
01032129call [rax+72]
0103212csub r13, [rbp-112]
01032130cmp [rbp-104], 0
01032135je 0x10321dc
0103213bmov rcx, [rbp-96]
0103213ftest rcx, rcx
01032142mov rdi, [rbp-72]
01032146je 0x10321f2
0103214cmov rax, [rbp-88]
01032150mov [rcx+8], rax
01032154mov rcx, [rbp-96]
01032158jmp 0x10321fc
0103215d
0103215dloc_103215d:
0103215dmov rax, [rbp-112]
01032161cmp rax, r13
01032164mov r14, [rbp-56]
01032168mov rbx, [rbp-48]
0103216cmov rdi, [rbp-72]
01032170jne 0x1032253
01032176xor r15l, r15l
01032179mov r12w, 107
0103217ejmp 0x1031e8e
01032183
01032183loc_1032183:
01032183mov rax, [rbp-112]
01032187mov rdx, [rbp-96]
0103218bcmp rax, r13
0103218ejne 0x10321b6
01032190test rdx, rdx
01032193mov r14, [rbp-56]
01032197mov rbx, [rbp-48]
0103219blea rdi, [r15+64]
0103219fmov rcx, [rbp-136]
010321a6je 0x1032210
010321a8mov rax, [rbp-88]
010321acmov [rdx+8], rax
010321b0mov rcx, [rbp-96]
010321b4jmp 0x1032219
010321b6
010321b6loc_10321b6:
010321b6test rdx, rdx
010321b9mov r14, [rbp-56]
010321bdmov rbx, [rbp-48]
010321c1lea rdi, [r15+64]
010321c5mov rsi, [rbp-136]
010321ccje 0x1032238
010321cemov rcx, [rbp-88]
010321d2mov [rdx+8], rcx
010321d6mov rdx, [rbp-96]
010321dajmp 0x1032241
010321dc
010321dcloc_10321dc:
010321dcxor r12l, r12l
010321dfmov r15b, 1
010321e2jmp 0x1031e8a
010321e7
010321e7loc_10321e7:
010321e7mov rax, [rbp-88]
010321ebmov [rdx], rax
010321eexor ecx, ecx
010321f0jmp 0x103221e
010321f2
010321f2loc_10321f2:
010321f2mov rax, [rbp-88]
010321f6mov [r12], rax
010321faxor ecx, ecx
010321fc
010321fcloc_10321fc:
010321fctest rax, rax
010321ffje 0x1032206
01032201mov [rax], rcx
01032204jmp 0x1032256
01032206
01032206loc_1032206:
01032206mov rax, [rbp-64]
0103220amov [rax+40], rcx
0103220ejmp 0x1032256
01032210
01032210loc_1032210:
01032210mov rax, [rbp-88]
01032214mov [rcx], rax
01032217xor ecx, ecx
01032219
01032219loc_1032219:
01032219mov r12w, 107
0103221e
0103221eloc_103221e:
0103221etest rax, rax
01032221je 0x1032228
01032223mov [rax], rcx
01032226jmp 0x1032230
01032228
01032228loc_1032228:
01032228mov rax, [rbp-64]
0103222cmov [rax+40], rcx
01032230
01032230loc_1032230:
01032230xor r15l, r15l
01032233jmp 0x1031e8e
01032238
01032238loc_1032238:
01032238mov rcx, [rbp-88]
0103223cmov [rsi], rcx
0103223fxor edx, edx
01032241
01032241loc_1032241:
01032241test rcx, rcx
01032244je 0x103224b
01032246mov [rcx], rdx
01032249jmp 0x1032253
0103224b
0103224bloc_103224b:
0103224bmov rcx, [rbp-64]
0103224fmov [rcx+40], rdx
01032253
01032253loc_1032253:
01032253sub r13, rax
01032256
01032256loc_1032256:
01032256xor r12l, r12l
01032259
01032259loc_1032259:
01032259mov r15b, 1
0103225cjmp 0x1031e8e
01032261
01032261loc_1032261:
01032261cmp eax, 2
01032264mov [rbp-64], rsi
01032268lea rbx, [rsi+64]
0103226cjne 0x1032290
0103226epush 2
01032270pop rdx
01032271mov ecx, 0x1006f30
01032276mov rdi, r14
01032279jmp 0x1032283
0103227b
0103227bloc_103227b:
0103227bxor r15l, r15l
0103227ejmp 0x1031e8a
01032283
01032283loc_1032283:
01032283mov rsi, rbx
01032286call [r12+96]
0103228btest ax, ax
0103228ejne 0x10322b2
01032290
01032290loc_1032290:
01032290push 2
01032292pop rax
01032293xchg [rbx], eax
01032295test eax, eax
01032297mov rsi, [rbp-64]
0103229bje 0x1031d16
010322a1push 2
010322a3pop rdx
010322a4mov ecx, 0x1006f30
010322a9mov rdi, r14
010322aclea rbx, [rsi+64]
010322b0jmp 0x1032283
010322b2
010322b2loc_10322b2:
010322b2mov r14, [rbp-56]
010322b6mov r12, rax
010322b9jmp 0x1031eac
01031cc9
01031cc9Io.Queue(Io.net.HostName.LookupResult).put:
01031cc9push rbp
01031ccamov rbp, rsp
01031ccdpush r15
01031ccfpush r14
01031cd1push r13
01031cd3push r12
01031cd5push rbx
01031cd6sub rsp, 184
01031cddmov [rbp-128], rcx
01031ce1mov r14, rdi
01031ce4test r8, r8
01031ce7je 0x1031d29
01031ce9mov r15, r9
01031cecmov r13, r8
01031cefmov [rbp-56], r14
01031cf3mov r14, [rdx]
01031cf6mov [rbp-48], rdx
01031cfamov r12, [rdx+8]
01031cfepush 1
01031d00pop rcx
01031d01xor eax, eax
01031d03lock cmpxchg [rsi+64], ecx
01031d08lea rcx, [rsi+64]
01031d0cmov [rbp-72], rcx
01031d10jne 0x1032261
01031d16
01031d16loc_1031d16:
01031d16mov r12w, 107
01031d1btest [rsi+68], 1
01031d1fje 0x1031d31
01031d21xor r15l, r15l
01031d24jmp 0x1031e82
01031d29
01031d29loc_1031d29:
01031d29xor r13l, r13l
01031d2cjmp 0x1031e9b
01031d31
01031d31loc_1031d31:
01031d31imul r13, r13, 40
01031d35imul rax, r15, 40
01031d39mov [rbp-144], rax
01031d40mov rax, [rbp-48]
01031d44mov rcx, [rax]
01031d47mov [rbp-160], rcx
01031d4emov rax, [rax+8]
01031d52mov [rbp-152], rax
01031d59mov [rbp-64], rsi
01031d5dlea r15, [rsi+48]
01031d61xor r12l, r12l
01031d64
01031d64loc_1031d64:
01031d64mov r14, [r15]
01031d67test r14, r14
01031d6aje 0x1031e13
01031d70mov rcx, [r14]
01031d73test rcx, rcx
01031d76je 0x1031d82
01031d78mov rax, [r14+8]
01031d7cmov [rcx+8], rax
01031d80jmp 0x1031d89
01031d82
01031d82loc_1031d82:
01031d82mov rax, [r14+8]
01031d86mov [r15], rax
01031d89
01031d89loc_1031d89:
01031d89mov rcx, [r14]
01031d8ctest rax, rax
01031d8fje 0x1031d96
01031d91mov [rax], rcx
01031d94jmp 0x1031d9e
01031d96
01031d96loc_1031d96:
01031d96mov rax, [rbp-64]
01031d9amov [rax+56], rcx
01031d9e
01031d9eloc_1031d9e:
01031d9emov rdi, [r14-24]
01031da2mov rax, [r14-16]
01031da6mov rbx, r13
01031da9sub r13, r12
01031daccmp rax, r13
01031dafcmovb r13, rax
01031db3mov rax, [rbp-128]
01031db7lea rsi, [rax+r12]
01031dbbmov rdx, r13
01031dbecall compiler_rt.memcpy.memcpySmall
01031dc3add [r14-24], r13
01031dc7sub [r14-16], r13
01031dcbmov rax, [r14-8]
01031dcfsub rax, r13
01031dd2mov ecx, 0
01031dd7cmovae rcx, rax
01031ddbmov [r14-8], rcx
01031ddfjbe 0x1031dee
01031de1mov rdi, r15
01031de4mov rsi, r14
01031de7call DoublyLinkedList.prepend
01031decjmp 0x1031e02
01031dee
01031deeloc_1031dee:
01031deeadd r14, -24
01031df2add r14, 40
01031df6mov rdi, r14
01031df9mov rsi, [rbp-48]
01031dfdcall Io.Condition.signal
01031e02
01031e02loc_1031e02:
01031e02add r12, r13
01031e05mov r13, rbx
01031e08cmp r12, rbx
01031e0bjne 0x1031d64
01031e11jmp 0x1031e7c
01031e13
01031e13loc_1031e13:
01031e13mov r15, [rbp-64]
01031e17mov rdi, [r15+24]
01031e1b
01031e1bloc_1031e1b:
01031e1bmov rax, [r15+8]
01031e1fmov rcx, [r15+16]
01031e23add rdi, rcx
01031e26mov rdx, rdi
01031e29sub rdx, rax
01031e2cjae 0x1031e36
01031e2esub rax, rdi
01031e31add rdi, [r15]
01031e34jmp 0x1031e42
01031e36
01031e36loc_1031e36:
01031e36sub rcx, rdx
01031e39add rdx, [r15]
01031e3cmov rdi, rdx
01031e3fmov rax, rcx
01031e42
01031e42loc_1031e42:
01031e42test rax, rax
01031e45je 0x1031ec6
01031e47test rdi, rdi
01031e4aje 0x1031ec6
01031e4cmov r14, r13
01031e4fsub r14, r12
01031e52cmp rax, r14
01031e55cmovb r14, rax
01031e59mov rax, [rbp-128]
01031e5dlea rsi, [rax+r12]
01031e61mov rdx, r14
01031e64call compiler_rt.memcpy.memcpySmall
01031e69mov rdi, [r15+24]
01031e6dadd rdi, r14
01031e70mov [r15+24], rdi
01031e74add r12, r14
01031e77cmp r12, r13
01031e7ajne 0x1031e1b
01031e7c
01031e7cloc_1031e7c:
01031e7cmov r15b, 1
01031e7fxor r12l, r12l
01031e82
01031e82loc_1031e82:
01031e82mov r14, [rbp-56]
01031e86mov rbx, [rbp-48]
01031e8a
01031e8aloc_1031e8a:
01031e8amov rdi, [rbp-72]
01031e8e
01031e8eloc_1031e8e:
01031e8emov rsi, rbx
01031e91call Io.Mutex.unlock
01031e96test r15b, r15b
01031e99je 0x1031eac
01031e9b
01031e9bloc_1031e9b:
01031e9bpush 40
01031e9dpop rcx
01031e9emov rax, r13
01031ea1xor edx, edx
01031ea3div rcx
01031ea6xor r12l, r12l
01031ea9mov [r14], rax
01031eac
01031eacloc_1031eac:
01031eacmov [r14+8], r12w
01031eb1mov rax, r14
01031eb4add rsp, 184
01031ebbpop rbx
01031ebcpop r12
01031ebepop r13
01031ec0pop r14
01031ec2pop r15
01031ec4pop rbp
01031ec5ret
01031ec6
01031ec6loc_1031ec6:
01031ec6mov rax, [rbp-144]
01031ecdsub rax, r12
01031ed0jbe 0x1031f29
01031ed2mov rcx, [rbp-128]
01031ed6add rcx, r12
01031ed9mov rdx, rax
01031edcmov rax, r13
01031edfsub rax, r12
01031ee2lea rsi, [rbp-96]
01031ee6mov [rsi-24], rcx
01031eeamov [rsi-16], rax
01031eeemov [rsi-8], rdx
01031ef2lea rdi, [r15+32]
01031ef6vxorps x0, x0, x0
01031efaand [rsi+16], 0
01031effvmovups [rsi], x0
01031f03mov rax, [r15+40]
01031f07test rax, rax
01031f0amov [rbp-136], rdi
01031f11je 0x1031f40
01031f13mov [rbp-96], rax
01031f17mov rcx, [rax+8]
01031f1btest rcx, rcx
01031f1eje 0x1031f47
01031f20mov [rbp-88], rcx
01031f24mov [rcx], rsi
01031f27jmp 0x1031f50
01031f29
01031f29loc_1031f29:
01031f29mov r13, r12
01031f2cxor r12l, r12l
01031f2fmov r14, [rbp-56]
01031f33mov rbx, [rbp-48]
01031f37mov rdi, [rbp-72]
01031f3bjmp 0x1032259
01031f40
01031f40loc_1031f40:
01031f40call DoublyLinkedList.prepend
01031f45jmp 0x1031f54
01031f47
01031f47loc_1031f47:
01031f47and [rbp-88], 0
01031f4cmov [r15+40], rsi
01031f50
01031f50loc_1031f50:
01031f50mov [rax+8], rsi
01031f54
01031f54loc_1031f54:
01031f54lea r14, [rbp-76]
01031f58mov r12l, 0xffffffffffff0000
01031f5e
01031f5eloc_1031f5e:
01031f5ecmp [rbp-104], 0
01031f63je 0x103215d
01031f69test [r15+68], 1
01031f6ejne 0x1032183
01031f74mov rsi, [rbp-48]
01031f78mov rax, r15
01031f7bmov r15, [rsi]
01031f7emov rcx, [rsi+8]
01031f82mov [rbp-128], rcx
01031f86vxorps x0, x0, x0
01031f8avmovups [rbp-208], ymm0
01031f92vmovups [rbp-224], ymm0
01031f9amov ebx, [rbp-76]
01031f9dlock inc [rbp-80]
01031fa1lea rdi, [rax+64]
01031fa5vzeroupper
01031fa8call Io.Mutex.unlock
01031fad
01031fadloc_1031fad:
01031fadmov rdi, r15
01031fb0mov rsi, r14
01031fb3mov edx, ebx
01031fb5lea rcx, [rbp-224]
01031fbcmov rax, [rbp-128]
01031fc0call [rax+96]
01031fc3mov ebx, [rbp-76]
01031fc6test ax, ax
01031fc9jne 0x103206e
01031fcfmov eax, [rbp-80]
01031fd2
01031fd2loc_1031fd2:
01031fd2cmp eax, 0x10000
01031fd7jb 0x1031ff2
01031fd9lea ecx, [rax-1]
01031fdcmovzx ecx, cx
01031fdfmov edx, eax
01031fe1and edx, r12l
01031fe4or edx, ecx
01031fe6add edx, r12l
01031fe9lock cmpxchg [rbp-80], edx
01031feejne 0x1031fd2
01031ff0jmp 0x1032058
01031ff2
01031ff2loc_1031ff2:
01031ff2cmp [rbp-192], 0
01031ff9je 0x1031fad
01031ffbmov r14, [rbp-224]
01032002mov [rbp-144], r15
01032009mov r15, r13
0103200cmov r13, [rbp-216]
01032013mov edx, [rbp-208]
01032019mov rax, [rbp-48]
0103201dmov rsi, [rax]
01032020mov rax, [rax+8]
01032024lea rdi, [rbp-176]
0103202bcall [rax+704]
01032031mov rax, [rbp-168]
01032038cmp [rbp-176], r14
0103203flea r14, [rbp-76]
01032043sbb rax, r13
01032046mov r13, r15
01032049mov r15, [rbp-144]
01032050jl 0x1031fad
01032056jmp 0x103206e
01032058
01032058loc_1032058:
01032058mov r15, [rbp-64]
0103205clea rdi, [r15+64]
01032060mov rsi, [rbp-48]
01032064call Io.Mutex.lockUncancelable
01032069jmp 0x1031f5e
0103206e
0103206eloc_103206e:
0103206emov rbx, [rbp-48]
01032072mov rdi, [rbx]
01032075mov r8, [rbx+8]
01032079mov ecx, [rbp-80]
0103207cmov r14, [rbp-56]
01032080mov rax, [rbp-64]
01032084lea r15, [rax+64]
01032088mov r12, [rbp-136]
0103208f
0103208floc_103208f:
0103208fmov edx, ecx
01032091shr edx, 16
01032094lea esi, [rcx-1]
01032097mov eax, esi
01032099cmp dx, si
0103209ccmovb esi, edx
0103209fmovzx eax, ax
010320a2shl esi, 16
010320a5or esi, eax
010320a7mov eax, ecx
010320a9lock cmpxchg [rbp-80], esi
010320aeje 0x10320b4
010320b0mov ecx, eax
010320b2jmp 0x103208f
010320b4
010320b4loc_10320b4:
010320b4test edx, edx
010320b6setne al
010320b9cmp dx, cx
010320bcsetb cl
010320bfand cl, al
010320c1cmp cl, 1
010320c4jne 0x10320d5
010320c6lock inc [rbp-76]
010320capush 1
010320ccpop rdx
010320cdlea rsi, [rbp-76]
010320d1call [r8+112]
010320d5
010320d5loc_10320d5:
010320d5mov rdi, r15
010320d8mov rsi, rbx
010320dbcall Io.Mutex.lockUncancelable
010320e0cmp [rbp-112], r13
010320e4jne 0x103211b
010320e6mov rdx, r12
010320e9mov r12w, 17
010320eecmp [rbp-104], 0
010320f3je 0x103227b
010320f9mov rcx, [rbp-96]
010320fdtest rcx, rcx
01032100mov rdi, [rbp-72]
01032104je 0x10321e7
0103210amov rax, [rbp-88]
0103210emov [rcx+8], rax
01032112mov rcx, [rbp-96]
01032116jmp 0x103221e
0103211b
0103211bloc_103211b:
0103211bmov rdi, [rbp-160]
01032122mov rax, [rbp-152]
01032129call [rax+72]
0103212csub r13, [rbp-112]
01032130cmp [rbp-104], 0
01032135je 0x10321dc
0103213bmov rcx, [rbp-96]
0103213ftest rcx, rcx
01032142mov rdi, [rbp-72]
01032146je 0x10321f2
0103214cmov rax, [rbp-88]
01032150mov [rcx+8], rax
01032154mov rcx, [rbp-96]
01032158jmp 0x10321fc
0103215d
0103215dloc_103215d:
0103215dmov rax, [rbp-112]
01032161cmp rax, r13
01032164mov r14, [rbp-56]
01032168mov rbx, [rbp-48]
0103216cmov rdi, [rbp-72]
01032170jne 0x1032253
01032176xor r15l, r15l
01032179mov r12w, 107
0103217ejmp 0x1031e8e
01032183
01032183loc_1032183:
01032183mov rax, [rbp-112]
01032187mov rdx, [rbp-96]
0103218bcmp rax, r13
0103218ejne 0x10321b6
01032190test rdx, rdx
01032193mov r14, [rbp-56]
01032197mov rbx, [rbp-48]
0103219blea rdi, [r15+64]
0103219fmov rcx, [rbp-136]
010321a6je 0x1032210
010321a8mov rax, [rbp-88]
010321acmov [rdx+8], rax
010321b0mov rcx, [rbp-96]
010321b4jmp 0x1032219
010321b6
010321b6loc_10321b6:
010321b6test rdx, rdx
010321b9mov r14, [rbp-56]
010321bdmov rbx, [rbp-48]
010321c1lea rdi, [r15+64]
010321c5mov rsi, [rbp-136]
010321ccje 0x1032238
010321cemov rcx, [rbp-88]
010321d2mov [rdx+8], rcx
010321d6mov rdx, [rbp-96]
010321dajmp 0x1032241
010321dc
010321dcloc_10321dc:
010321dcxor r12l, r12l
010321dfmov r15b, 1
010321e2jmp 0x1031e8a
010321e7
010321e7loc_10321e7:
010321e7mov rax, [rbp-88]
010321ebmov [rdx], rax
010321eexor ecx, ecx
010321f0jmp 0x103221e
010321f2
010321f2loc_10321f2:
010321f2mov rax, [rbp-88]
010321f6mov [r12], rax
010321faxor ecx, ecx
010321fc
010321fcloc_10321fc:
010321fctest rax, rax
010321ffje 0x1032206
01032201mov [rax], rcx
01032204jmp 0x1032256
01032206
01032206loc_1032206:
01032206mov rax, [rbp-64]
0103220amov [rax+40], rcx
0103220ejmp 0x1032256
01032210
01032210loc_1032210:
01032210mov rax, [rbp-88]
01032214mov [rcx], rax
01032217xor ecx, ecx
01032219
01032219loc_1032219:
01032219mov r12w, 107
0103221e
0103221eloc_103221e:
0103221etest rax, rax
01032221je 0x1032228
01032223mov [rax], rcx
01032226jmp 0x1032230
01032228
01032228loc_1032228:
01032228mov rax, [rbp-64]
0103222cmov [rax+40], rcx
01032230
01032230loc_1032230:
01032230xor r15l, r15l
01032233jmp 0x1031e8e
01032238
01032238loc_1032238:
01032238mov rcx, [rbp-88]
0103223cmov [rsi], rcx
0103223fxor edx, edx
01032241
01032241loc_1032241:
01032241test rcx, rcx
01032244je 0x103224b
01032246mov [rcx], rdx
01032249jmp 0x1032253
0103224b
0103224bloc_103224b:
0103224bmov rcx, [rbp-64]
0103224fmov [rcx+40], rdx
01032253
01032253loc_1032253:
01032253sub r13, rax
01032256
01032256loc_1032256:
01032256xor r12l, r12l
01032259
01032259loc_1032259:
01032259mov r15b, 1
0103225cjmp 0x1031e8e
01032261
01032261loc_1032261:
01032261cmp eax, 2
01032264mov [rbp-64], rsi
01032268lea rbx, [rsi+64]
0103226cjne 0x1032290
0103226epush 2
01032270pop rdx
01032271mov ecx, 0x1006f30
01032276mov rdi, r14
01032279jmp 0x1032283
0103227b
0103227bloc_103227b:
0103227bxor r15l, r15l
0103227ejmp 0x1031e8a
01032283
01032283loc_1032283:
01032283mov rsi, rbx
01032286call [r12+96]
0103228btest ax, ax
0103228ejne 0x10322b2
01032290
01032290loc_1032290:
01032290push 2
01032292pop rax
01032293xchg [rbx], eax
01032295test eax, eax
01032297mov rsi, [rbp-64]
0103229bje 0x1031d16
010322a1push 2
010322a3pop rdx
010322a4mov ecx, 0x1006f30
010322a9mov rdi, r14
010322aclea rbx, [rsi+64]
010322b0jmp 0x1032283
010322b2
010322b2loc_10322b2:
010322b2mov r14, [rbp-56]
010322b6mov r12, rax
010322b9jmp 0x1031eac
01031cc9
010322be
010322beIo.net.IpAddress.parseIp6:
010322bepush rbp
010322bfmov rbp, rsp
010322c2push r15
010322c4push r14
010322c6push rbx
010322c7sub rsp, 72
010322cbmov r14l, ecx
010322cemov rbx, rdi
010322d1and [rdi+32], 0
010322d6mov [rdi+28], 1
010322dalea r15, [rbp-88]
010322demov rdi, r15
010322e1call Io.net.Ip6Address.Unresolved.parse
010322e6mov ax, 109
010322eacmp [r15+32], 0
010322efjne 0x1032306
010322f1vmovups x0, [rbp-72]
010322f6vmovaps [rbp-48], x0
010322fbmov ax, 110
010322ffcmp [rbp-88], 0
01032304je 0x1032318
01032306
01032306loc_1032306:
01032306mov [rbx+32], ax
0103230a
0103230aloc_103230a:
0103230amov rax, rbx
0103230dadd rsp, 72
01032311pop rbx
01032312pop r14
01032314pop r15
01032316pop rbp
01032317ret
01032318
01032318loc_1032318:
01032318and [rbx], 0
0103231cmov [rbx+8], r14w
01032321vmovaps x0, [rbp-48]
01032326vmovups [rbx+10], x0
0103232bjmp 0x103230a
010322be
010322beIo.net.IpAddress.parseIp6:
010322bepush rbp
010322bfmov rbp, rsp
010322c2push r15
010322c4push r14
010322c6push rbx
010322c7sub rsp, 72
010322cbmov r14l, ecx
010322cemov rbx, rdi
010322d1and [rdi+32], 0
010322d6mov [rdi+28], 1
010322dalea r15, [rbp-88]
010322demov rdi, r15
010322e1call Io.net.Ip6Address.Unresolved.parse
010322e6mov ax, 109
010322eacmp [r15+32], 0
010322efjne 0x1032306
010322f1vmovups x0, [rbp-72]
010322f6vmovaps [rbp-48], x0
010322fbmov ax, 110
010322ffcmp [rbp-88], 0
01032304je 0x1032318
01032306
01032306loc_1032306:
01032306mov [rbx+32], ax
0103230a
0103230aloc_103230a:
0103230amov rax, rbx
0103230dadd rsp, 72
01032311pop rbx
01032312pop r14
01032314pop r15
01032316pop rbp
01032317ret
01032318
01032318loc_1032318:
01032318and [rbx], 0
0103231cmov [rbx+8], r14w
01032321vmovaps x0, [rbp-48]
01032326vmovups [rbx+10], x0
0103232bjmp 0x103230a
010322be
0103232d
0103232dDoublyLinkedList.prepend:
0103232dpush rbp
0103232emov rbp, rsp
01032331mov rax, [rdi]
01032334test rax, rax
01032337je 0x103234e
01032339mov [rsi+8], rax
0103233dmov rcx, [rax]
01032340test rcx, rcx
01032343je 0x103235f
01032345mov [rsi], rcx
01032348mov [rcx+8], rsi
0103234cjmp 0x1032366
0103234e
0103234eloc_103234e:
0103234emov [rdi], rsi
01032351mov [rdi+8], rsi
01032355vxorps x0, x0, x0
01032359vmovups [rsi], x0
0103235djmp 0x1032369
0103235f
0103235floc_103235f:
0103235fand [rsi], 0
01032363mov [rdi], rsi
01032366
01032366loc_1032366:
01032366mov [rax], rsi
01032369
01032369loc_1032369:
01032369pop rbp
0103236aret
0103232d
0103232dDoublyLinkedList.prepend:
0103232dpush rbp
0103232emov rbp, rsp
01032331mov rax, [rdi]
01032334test rax, rax
01032337je 0x103234e
01032339mov [rsi+8], rax
0103233dmov rcx, [rax]
01032340test rcx, rcx
01032343je 0x103235f
01032345mov [rsi], rcx
01032348mov [rcx+8], rsi
0103234cjmp 0x1032366
0103234e
0103234eloc_103234e:
0103234emov [rdi], rsi
01032351mov [rdi+8], rsi
01032355vxorps x0, x0, x0
01032359vmovups [rsi], x0
0103235djmp 0x1032369
0103235f
0103235floc_103235f:
0103235fand [rsi], 0
01032363mov [rdi], rsi
01032366
01032366loc_1032366:
01032366mov [rax], rsi
01032369
01032369loc_1032369:
01032369pop rbp
0103236aret
0103232d
0103236b
0103236bIo.Threaded.netInterfaceNameResolve:
0103236bpush rbp
0103236cmov rbp, rsp
0103236fpush r15
01032371push r14
01032373push rbx
01032374sub rsp, 72
01032378mov r15, rdx
0103237bmov rbx, rdi
0103237elea r14, [rbp-32]
01032382push 1
01032384pop rsi
01032385mov edx, 0x1003be0
0103238amov rdi, r14
0103238dcall Io.Threaded.openSocketPosix
01032392movzx eax, [r14+4]
01032397test eax, eax
01032399jne 0x1032493
0103239fmov r14l, [rbp-32]
010323a3vmovups x0, [r15]
010323a8vmovaps [rbp-96], x0
010323adlea r15, [rbp-48]
010323b1mov rdi, r15
010323b4call Io.Threaded.Syscall.start
010323b9movzx edx, [r15+8]
010323betest dx, dx
010323c1jne 0x10324ae
010323c7mov r9, [rbp-48]
010323cbpush 16
010323cdpop r8
010323cflea rdx, [rbp-96]
010323d3xor r10l, r10l
010323d6mov esi, 35123
010323db
010323dbloc_10323db:
010323dbmov rax, r8
010323demov rdi, r14
010323e1syscall
010323e3mov rcx, rax
010323e6neg rcx
010323e9cmp rax, -4095
010323efcmovb rcx, r10
010323f3cmp rcx, 4
010323f7jne 0x1032429
010323f9test r9, r9
010323fcje 0x10323db
010323femov rax, [r9+8]
01032402
01032402loc_1032402:
01032402mov rcx, rax
01032405or rcx, 2
01032409lock cmpxchg [r9+8], rcx
0103240fjne 0x1032402
01032411and eax, 7
01032414cmp eax, 5
01032417jne 0x10323db
01032419push 3
0103241bpop rax
0103241cmov rdi, r14
0103241fsyscall
01032421mov [rbx+4], 17
01032427jmp 0x1032485
01032429
01032429loc_1032429:
01032429cmp ecx, 19
0103242cje 0x1032451
0103242etest ecx, ecx
01032430jne 0x103246c
01032432test r9, r9
01032435je 0x103243d
01032437lock xor [r9+8], 3
0103243d
0103243dloc_103243d:
0103243dand [rbx+4], 0
01032442mov eax, [rbp-80]
01032445mov [rbx], eax
01032447push 3
01032449pop rax
0103244amov rdi, r14
0103244dsyscall
0103244fjmp 0x1032485
01032451
01032451loc_1032451:
01032451test r9, r9
01032454je 0x103245c
01032456lock xor [r9+8], 3
0103245c
0103245cloc_103245c:
0103245cpush 3
0103245epop rax
0103245fmov rdi, r14
01032462syscall
01032464mov [rbx+4], 97
0103246ajmp 0x1032485
0103246c
0103246cloc_103246c:
0103246ctest r9, r9
0103246fje 0x1032477
01032471lock xor [r9+8], 3
01032477
01032477loc_1032477:
01032477push 3
01032479pop rax
0103247amov rdi, r14
0103247dsyscall
0103247fmov [rbx+4], 4
01032485
01032485loc_1032485:
01032485mov rax, rbx
01032488add rsp, 72
0103248cpop rbx
0103248dpop r14
0103248fpop r15
01032491pop rbp
01032492ret
01032493
01032493loc_1032493:
01032493lea ecx, [rax-88]
01032496cmp ecx, 3
01032499ja 0x10324bc
0103249bjmp [8*rcx+0x1000e78]
010324a2
010324a2loc_10324a2:
010324a2mov rax, 0x400000000
010324acjmp 0x10324db
010324ae
010324aeloc_10324ae:
010324aepush 3
010324b0pop rax
010324b1mov rdi, r14
010324b4syscall
010324b6mov [rbx+4], dx
010324bajmp 0x1032485
010324bc
010324bcloc_10324bc:
010324bccmp eax, 36
010324bfje 0x10324d1
010324c1cmp eax, 37
010324c4je 0x10324d1
010324c6cmp eax, 45
010324c9je 0x10324a2
010324cbmov [rbx+4], ax
010324cfjmp 0x1032485
010324d1
010324d1loc_10324d1:
010324d1mov rax, 0x200000000
010324db
010324dbloc_10324db:
010324dbmov [rbx], rax
010324dejmp 0x1032485
0103236b
0103236bIo.Threaded.netInterfaceNameResolve:
0103236bpush rbp
0103236cmov rbp, rsp
0103236fpush r15
01032371push r14
01032373push rbx
01032374sub rsp, 72
01032378mov r15, rdx
0103237bmov rbx, rdi
0103237elea r14, [rbp-32]
01032382push 1
01032384pop rsi
01032385mov edx, 0x1003be0
0103238amov rdi, r14
0103238dcall Io.Threaded.openSocketPosix
01032392movzx eax, [r14+4]
01032397test eax, eax
01032399jne 0x1032493
0103239fmov r14l, [rbp-32]
010323a3vmovups x0, [r15]
010323a8vmovaps [rbp-96], x0
010323adlea r15, [rbp-48]
010323b1mov rdi, r15
010323b4call Io.Threaded.Syscall.start
010323b9movzx edx, [r15+8]
010323betest dx, dx
010323c1jne 0x10324ae
010323c7mov r9, [rbp-48]
010323cbpush 16
010323cdpop r8
010323cflea rdx, [rbp-96]
010323d3xor r10l, r10l
010323d6mov esi, 35123
010323db
010323dbloc_10323db:
010323dbmov rax, r8
010323demov rdi, r14
010323e1syscall
010323e3mov rcx, rax
010323e6neg rcx
010323e9cmp rax, -4095
010323efcmovb rcx, r10
010323f3cmp rcx, 4
010323f7jne 0x1032429
010323f9test r9, r9
010323fcje 0x10323db
010323femov rax, [r9+8]
01032402
01032402loc_1032402:
01032402mov rcx, rax
01032405or rcx, 2
01032409lock cmpxchg [r9+8], rcx
0103240fjne 0x1032402
01032411and eax, 7
01032414cmp eax, 5
01032417jne 0x10323db
01032419push 3
0103241bpop rax
0103241cmov rdi, r14
0103241fsyscall
01032421mov [rbx+4], 17
01032427jmp 0x1032485
01032429
01032429loc_1032429:
01032429cmp ecx, 19
0103242cje 0x1032451
0103242etest ecx, ecx
01032430jne 0x103246c
01032432test r9, r9
01032435je 0x103243d
01032437lock xor [r9+8], 3
0103243d
0103243dloc_103243d:
0103243dand [rbx+4], 0
01032442mov eax, [rbp-80]
01032445mov [rbx], eax
01032447push 3
01032449pop rax
0103244amov rdi, r14
0103244dsyscall
0103244fjmp 0x1032485
01032451
01032451loc_1032451:
01032451test r9, r9
01032454je 0x103245c
01032456lock xor [r9+8], 3
0103245c
0103245cloc_103245c:
0103245cpush 3
0103245epop rax
0103245fmov rdi, r14
01032462syscall
01032464mov [rbx+4], 97
0103246ajmp 0x1032485
0103246c
0103246cloc_103246c:
0103246ctest r9, r9
0103246fje 0x1032477
01032471lock xor [r9+8], 3
01032477
01032477loc_1032477:
01032477push 3
01032479pop rax
0103247amov rdi, r14
0103247dsyscall
0103247fmov [rbx+4], 4
01032485
01032485loc_1032485:
01032485mov rax, rbx
01032488add rsp, 72
0103248cpop rbx
0103248dpop r14
0103248fpop r15
01032491pop rbp
01032492ret
01032493
01032493loc_1032493:
01032493lea ecx, [rax-88]
01032496cmp ecx, 3
01032499ja 0x10324bc
0103249bjmp [8*rcx+0x1000e78]
010324a2
010324a2loc_10324a2:
010324a2mov rax, 0x400000000
010324acjmp 0x10324db
010324ae
010324aeloc_10324ae:
010324aepush 3
010324b0pop rax
010324b1mov rdi, r14
010324b4syscall
010324b6mov [rbx+4], dx
010324bajmp 0x1032485
010324bc
010324bcloc_10324bc:
010324bccmp eax, 36
010324bfje 0x10324d1
010324c1cmp eax, 37
010324c4je 0x10324d1
010324c6cmp eax, 45
010324c9je 0x10324a2
010324cbmov [rbx+4], ax
010324cfjmp 0x1032485
010324d1
010324d1loc_10324d1:
010324d1mov rax, 0x200000000
010324db
010324dbloc_10324db:
010324dbmov [rbx], rax
010324dejmp 0x1032485
0103236b
010324e0
010324e0Io.Threaded.posixSocketModeProtocol:
010324e0push rbp
010324e1mov rbp, rsp
010324e4mov rax, rdi
010324e7and [rdi+8], 0
010324ecxor sil, 4
010324f0movzx ecx, sil
010324f4and ecx, 7
010324f7mov ecx, [4*rcx+0x1007bc0]
010324femov [rdi], ecx
01032500xor ecx, ecx
01032502test [rdx+4], 1
01032506je 0x103250a
01032508mov ecx, [rdx]
0103250a
0103250aloc_103250a:
0103250amov [rax+4], ecx
0103250dpop rbp
0103250eret
010324e0
010324e0Io.Threaded.posixSocketModeProtocol:
010324e0push rbp
010324e1mov rbp, rsp
010324e4mov rax, rdi
010324e7and [rdi+8], 0
010324ecxor sil, 4
010324f0movzx ecx, sil
010324f4and ecx, 7
010324f7mov ecx, [4*rcx+0x1007bc0]
010324femov [rdi], ecx
01032500xor ecx, ecx
01032502test [rdx+4], 1
01032506je 0x103250a
01032508mov ecx, [rdx]
0103250a
0103250aloc_103250a:
0103250amov [rax+4], ecx
0103250dpop rbp
0103250eret
010324e0
0103250f
0103250fIo.Threaded.setSocketOptionPosix:
0103250fpush rbp
01032510mov rbp, rsp
01032513push r15
01032515push r14
01032517push r12
01032519push rbx
0103251asub rsp, 32
0103251emov ebx, edx
01032520mov r14l, esi
01032523mov r15l, edi
01032526mov [rbp-36], ecx
01032529lea r12, [rbp-56]
0103252dmov rdi, r12
01032530call Io.Threaded.Syscall.start
01032535movzx eax, [r12+8]
0103253btest ax, ax
0103253ejne 0x10325b5
01032540mov r12, [rbp-56]
01032544mov edi, r15l
01032547mov esi, r14l
0103254amov edx, ebx
0103254cpush 54
0103254epop r9
01032550lea r10, [rbp-36]
01032554push 4
01032556pop r8
01032558xor ebx, ebx
0103255a
0103255aloc_103255a:
0103255amov rax, r9
0103255dsyscall
0103255fmov rcx, rax
01032562neg rcx
01032565cmp rax, -4095
0103256bcmovb rcx, rbx
0103256fcmp rcx, 4
01032573jne 0x103259d
01032575test r12, r12
01032578je 0x103255a
0103257amov rax, [r12+8]
0103257f
0103257floc_103257f:
0103257fmov rcx, rax
01032582or rcx, 2
01032586lock cmpxchg [r12+8], rcx
0103258djne 0x103257f
0103258fand eax, 7
01032592cmp eax, 5
01032595jne 0x103255a
01032597mov ax, 17
0103259bjmp 0x10325b5
0103259d
0103259dloc_103259d:
0103259dtest ecx, ecx
0103259fjne 0x10325a5
010325a1xor eax, eax
010325a3jmp 0x10325a9
010325a5
010325a5loc_10325a5:
010325a5mov ax, 4
010325a9
010325a9loc_10325a9:
010325a9test r12, r12
010325acje 0x10325b5
010325aelock xor [r12+8], 3
010325b5
010325b5loc_10325b5:
010325b5add rsp, 32
010325b9pop rbx
010325bapop r12
010325bcpop r14
010325bepop r15
010325c0pop rbp
010325c1ret
0103250f
0103250fIo.Threaded.setSocketOptionPosix:
0103250fpush rbp
01032510mov rbp, rsp
01032513push r15
01032515push r14
01032517push r12
01032519push rbx
0103251asub rsp, 32
0103251emov ebx, edx
01032520mov r14l, esi
01032523mov r15l, edi
01032526mov [rbp-36], ecx
01032529lea r12, [rbp-56]
0103252dmov rdi, r12
01032530call Io.Threaded.Syscall.start
01032535movzx eax, [r12+8]
0103253btest ax, ax
0103253ejne 0x10325b5
01032540mov r12, [rbp-56]
01032544mov edi, r15l
01032547mov esi, r14l
0103254amov edx, ebx
0103254cpush 54
0103254epop r9
01032550lea r10, [rbp-36]
01032554push 4
01032556pop r8
01032558xor ebx, ebx
0103255a
0103255aloc_103255a:
0103255amov rax, r9
0103255dsyscall
0103255fmov rcx, rax
01032562neg rcx
01032565cmp rax, -4095
0103256bcmovb rcx, rbx
0103256fcmp rcx, 4
01032573jne 0x103259d
01032575test r12, r12
01032578je 0x103255a
0103257amov rax, [r12+8]
0103257f
0103257floc_103257f:
0103257fmov rcx, rax
01032582or rcx, 2
01032586lock cmpxchg [r12+8], rcx
0103258djne 0x103257f
0103258fand eax, 7
01032592cmp eax, 5
01032595jne 0x103255a
01032597mov ax, 17
0103259bjmp 0x10325b5
0103259d
0103259dloc_103259d:
0103259dtest ecx, ecx
0103259fjne 0x10325a5
010325a1xor eax, eax
010325a3jmp 0x10325a9
010325a5
010325a5loc_10325a5:
010325a5mov ax, 4
010325a9
010325a9loc_10325a9:
010325a9test r12, r12
010325acje 0x10325b5
010325aelock xor [r12+8], 3
010325b5
010325b5loc_10325b5:
010325b5add rsp, 32
010325b9pop rbx
010325bapop r12
010325bcpop r14
010325bepop r15
010325c0pop rbp
010325c1ret
0103250f
010325c2
010325c2Io.Threaded.openSocketPosix:
010325c2push rbp
010325c3mov rbp, rsp
010325c6push r15
010325c8push r14
010325capush r13
010325ccpush r12
010325cepush rbx
010325cfsub rsp, 56
010325d3mov r15l, esi
010325d6mov rbx, rdi
010325d9mov rax, [rdx]
010325dcmovzx ecx, [rdx+8]
010325e0mov [rbp-48], ecx
010325e3mov cl, [rdx+9]
010325e6mov [rbp-41], cl
010325e9movzx esi, [rdx+11]
010325edlea rdx, [rbp-56]
010325f1mov [rdx], rax
010325f4lea r13, [rbp-84]
010325f8mov rdi, r13
010325fbcall Io.Threaded.posixSocketModeProtocol
01032600mov r12l, [r13]
01032604mov r13l, [r13+4]
01032608lea r14, [rbp-72]
0103260cmov rdi, r14
0103260fcall Io.Threaded.Syscall.start
01032614movzx edx, [r14+8]
01032619test dx, dx
0103261cjne 0x1032719
01032622or r12, 0x80000
01032629mov r9, [rbp-72]
0103262dmovzx edi, r15w
01032631push 41
01032633pop r8
01032635xor r10l, r10l
01032638
01032638loc_1032638:
01032638mov rax, r8
0103263bmov rsi, r12
0103263emov rdx, r13
01032641syscall
01032643mov r15, rax
01032646neg rax
01032649cmp r15, -4095
01032650cmovb rax, r10
01032654cmp rax, 4
01032658jne 0x1032683
0103265atest r9, r9
0103265dje 0x1032638
0103265fmov rax, [r9+8]
01032663
01032663loc_1032663:
01032663mov rcx, rax
01032666or rcx, 2
0103266alock cmpxchg [r9+8], rcx
01032670jne 0x1032663
01032672and eax, 7
01032675cmp eax, 5
01032678jne 0x1032638
0103267amov dx, 17
0103267ejmp 0x1032719
01032683
01032683loc_1032683:
01032683cmp eax, 105
01032686je 0x10326e0
01032688cmp eax, 12
0103268bje 0x10326e0
0103268dcmp eax, 22
01032690je 0x10326f8
01032692cmp eax, 23
01032695je 0x103270a
01032697cmp eax, 24
0103269aje 0x1032704
0103269ccmp eax, 91
0103269fje 0x10326e6
010326a1cmp eax, 93
010326a4je 0x10326f2
010326a6cmp eax, 97
010326a9je 0x10326ec
010326abtest eax, eax
010326adjne 0x10326fe
010326aftest r9, r9
010326b2je 0x10326ba
010326b4lock xor [r9+8], 3
010326ba
010326baloc_10326ba:
010326batest [rbp-41], 1
010326beje 0x10326d9
010326c0mov ecx, [rbp-48]
010326c3and ecx, 1
010326c6push 41
010326c8pop rsi
010326c9push 26
010326cbpop rdx
010326ccmov edi, r15l
010326cfcall Io.Threaded.setSocketOptionPosix
010326d4test ax, ax
010326d7jne 0x103272f
010326d9
010326d9loc_10326d9:
010326d9mov [rbx], r15l
010326dcxor edx, edx
010326dejmp 0x1032719
010326e0
010326e0loc_10326e0:
010326e0mov dx, 2
010326e4jmp 0x103270e
010326e6
010326e6loc_10326e6:
010326e6mov dx, 90
010326eajmp 0x103270e
010326ec
010326ecloc_10326ec:
010326ecmov dx, 45
010326f0jmp 0x103270e
010326f2
010326f2loc_10326f2:
010326f2mov dx, 89
010326f6jmp 0x103270e
010326f8
010326f8loc_10326f8:
010326f8mov dx, 88
010326fcjmp 0x103270e
010326fe
010326feloc_10326fe:
010326femov dx, 4
01032702jmp 0x103270e
01032704
01032704loc_1032704:
01032704mov dx, 36
01032708jmp 0x103270e
0103270a
0103270aloc_103270a:
0103270amov dx, 37
0103270e
0103270eloc_103270e:
0103270etest r9, r9
01032711je 0x1032719
01032713lock xor [r9+8], 3
01032719
01032719loc_1032719:
01032719mov [rbx+4], dx
0103271dmov rax, rbx
01032720add rsp, 56
01032724pop rbx
01032725pop r12
01032727pop r13
01032729pop r14
0103272bpop r15
0103272dpop rbp
0103272eret
0103272f
0103272floc_103272f:
0103272fmov edx, eax
01032731push 3
01032733pop rax
01032734mov rdi, r15
01032737syscall
01032739jmp 0x1032719
010325c2
010325c2Io.Threaded.openSocketPosix:
010325c2push rbp
010325c3mov rbp, rsp
010325c6push r15
010325c8push r14
010325capush r13
010325ccpush r12
010325cepush rbx
010325cfsub rsp, 56
010325d3mov r15l, esi
010325d6mov rbx, rdi
010325d9mov rax, [rdx]
010325dcmovzx ecx, [rdx+8]
010325e0mov [rbp-48], ecx
010325e3mov cl, [rdx+9]
010325e6mov [rbp-41], cl
010325e9movzx esi, [rdx+11]
010325edlea rdx, [rbp-56]
010325f1mov [rdx], rax
010325f4lea r13, [rbp-84]
010325f8mov rdi, r13
010325fbcall Io.Threaded.posixSocketModeProtocol
01032600mov r12l, [r13]
01032604mov r13l, [r13+4]
01032608lea r14, [rbp-72]
0103260cmov rdi, r14
0103260fcall Io.Threaded.Syscall.start
01032614movzx edx, [r14+8]
01032619test dx, dx
0103261cjne 0x1032719
01032622or r12, 0x80000
01032629mov r9, [rbp-72]
0103262dmovzx edi, r15w
01032631push 41
01032633pop r8
01032635xor r10l, r10l
01032638
01032638loc_1032638:
01032638mov rax, r8
0103263bmov rsi, r12
0103263emov rdx, r13
01032641syscall
01032643mov r15, rax
01032646neg rax
01032649cmp r15, -4095
01032650cmovb rax, r10
01032654cmp rax, 4
01032658jne 0x1032683
0103265atest r9, r9
0103265dje 0x1032638
0103265fmov rax, [r9+8]
01032663
01032663loc_1032663:
01032663mov rcx, rax
01032666or rcx, 2
0103266alock cmpxchg [r9+8], rcx
01032670jne 0x1032663
01032672and eax, 7
01032675cmp eax, 5
01032678jne 0x1032638
0103267amov dx, 17
0103267ejmp 0x1032719
01032683
01032683loc_1032683:
01032683cmp eax, 105
01032686je 0x10326e0
01032688cmp eax, 12
0103268bje 0x10326e0
0103268dcmp eax, 22
01032690je 0x10326f8
01032692cmp eax, 23
01032695je 0x103270a
01032697cmp eax, 24
0103269aje 0x1032704
0103269ccmp eax, 91
0103269fje 0x10326e6
010326a1cmp eax, 93
010326a4je 0x10326f2
010326a6cmp eax, 97
010326a9je 0x10326ec
010326abtest eax, eax
010326adjne 0x10326fe
010326aftest r9, r9
010326b2je 0x10326ba
010326b4lock xor [r9+8], 3
010326ba
010326baloc_10326ba:
010326batest [rbp-41], 1
010326beje 0x10326d9
010326c0mov ecx, [rbp-48]
010326c3and ecx, 1
010326c6push 41
010326c8pop rsi
010326c9push 26
010326cbpop rdx
010326ccmov edi, r15l
010326cfcall Io.Threaded.setSocketOptionPosix
010326d4test ax, ax
010326d7jne 0x103272f
010326d9
010326d9loc_10326d9:
010326d9mov [rbx], r15l
010326dcxor edx, edx
010326dejmp 0x1032719
010326e0
010326e0loc_10326e0:
010326e0mov dx, 2
010326e4jmp 0x103270e
010326e6
010326e6loc_10326e6:
010326e6mov dx, 90
010326eajmp 0x103270e
010326ec
010326ecloc_10326ec:
010326ecmov dx, 45
010326f0jmp 0x103270e
010326f2
010326f2loc_10326f2:
010326f2mov dx, 89
010326f6jmp 0x103270e
010326f8
010326f8loc_10326f8:
010326f8mov dx, 88
010326fcjmp 0x103270e
010326fe
010326feloc_10326fe:
010326femov dx, 4
01032702jmp 0x103270e
01032704
01032704loc_1032704:
01032704mov dx, 36
01032708jmp 0x103270e
0103270a
0103270aloc_103270a:
0103270amov dx, 37
0103270e
0103270eloc_103270e:
0103270etest r9, r9
01032711je 0x1032719
01032713lock xor [r9+8], 3
01032719
01032719loc_1032719:
01032719mov [rbx+4], dx
0103271dmov rax, rbx
01032720add rsp, 56
01032724pop rbx
01032725pop r12
01032727pop r13
01032729pop r14
0103272bpop r15
0103272dpop rbp
0103272eret
0103272f
0103272floc_103272f:
0103272fmov edx, eax
01032731push 3
01032733pop rax
01032734mov rdi, r15
01032737syscall
01032739jmp 0x1032719
010325c2
0103273b
0103273bIo.Threaded.netWriteFile:
0103273bpush rbp
0103273cmov rbp, rsp
0103273fmov rax, rdi
01032742vmovups x0, [rip-0x2afea]
0103274avmovups [rdi], x0
0103274epop rbp
0103274fret
0103273b
0103273bIo.Threaded.netWriteFile:
0103273bpush rbp
0103273cmov rbp, rsp
0103273fmov rax, rdi
01032742vmovups x0, [rip-0x2afea]
0103274avmovups [rdi], x0
0103274epop rbp
0103274fret
0103273b
01032750
01032750Io.Threaded.netClose:
01032750push rbp
01032751mov rbp, rsp
01032754mov r8, 3
0103275e
0103275eloc_103275e:
0103275esub rdx, 1
01032762jb 0x1032771
01032764mov edi, [rsi]
01032766mov rax, r8
01032769syscall
0103276badd rsi, 36
0103276fjmp 0x103275e
01032771
01032771loc_1032771:
01032771pop rbp
01032772ret
01032750
01032750Io.Threaded.netClose:
01032750push rbp
01032751mov rbp, rsp
01032754mov r8, 3
0103275e
0103275eloc_103275e:
0103275esub rdx, 1
01032762jb 0x1032771
01032764mov edi, [rsi]
01032766mov rax, r8
01032769syscall
0103276badd rsi, 36
0103276fjmp 0x103275e
01032771
01032771loc_1032771:
01032771pop rbp
01032772ret
01032750
01032773
01032773Io.Threaded.posixGetSockName:
01032773push rbp
01032774mov rbp, rsp
01032777push r15
01032779push r14
0103277bpush r12
0103277dpush rbx
0103277esub rsp, 16
01032782mov rbx, rdx
01032785mov r14, rsi
01032788mov r15l, edi
0103278blea r12, [rbp-48]
0103278fmov rdi, r12
01032792call Io.Threaded.Syscall.start
01032797movzx eax, [r12+8]
0103279dtest ax, ax
010327a0jne 0x1032829
010327a6mov r9, [rbp-48]
010327aamov edi, r15l
010327adpush 51
010327afpop r8
010327b1xor r10l, r10l
010327b4
010327b4loc_10327b4:
010327b4mov rax, r8
010327b7mov rsi, r14
010327bamov rdx, rbx
010327bdsyscall
010327bfmov rcx, rax
010327c2neg rcx
010327c5cmp rax, -4095
010327cbcmovb rcx, r10
010327cfcmp rcx, 4
010327d3jne 0x10327fb
010327d5test r9, r9
010327d8je 0x10327b4
010327damov rax, [r9+8]
010327de
010327deloc_10327de:
010327demov rcx, rax
010327e1or rcx, 2
010327e5lock cmpxchg [r9+8], rcx
010327ebjne 0x10327de
010327edand eax, 7
010327f0cmp eax, 5
010327f3jne 0x10327b4
010327f5mov ax, 17
010327f9jmp 0x1032829
010327fb
010327fbloc_10327fb:
010327fbtest ecx, ecx
010327fdjne 0x103280e
010327fftest r9, r9
01032802je 0x103280a
01032804lock xor [r9+8], 3
0103280a
0103280aloc_103280a:
0103280axor eax, eax
0103280cjmp 0x1032829
0103280e
0103280eloc_103280e:
0103280etest r9, r9
01032811je 0x1032819
01032813lock xor [r9+8], 3
01032819
01032819loc_1032819:
01032819xor eax, eax
0103281bcmp rcx, 105
0103281fsetne al
01032822lea eax, [2*rax+2]
01032829
01032829loc_1032829:
01032829add rsp, 16
0103282dpop rbx
0103282epop r12
01032830pop r14
01032832pop r15
01032834pop rbp
01032835ret
01032773
01032773Io.Threaded.posixGetSockName:
01032773push rbp
01032774mov rbp, rsp
01032777push r15
01032779push r14
0103277bpush r12
0103277dpush rbx
0103277esub rsp, 16
01032782mov rbx, rdx
01032785mov r14, rsi
01032788mov r15l, edi
0103278blea r12, [rbp-48]
0103278fmov rdi, r12
01032792call Io.Threaded.Syscall.start
01032797movzx eax, [r12+8]
0103279dtest ax, ax
010327a0jne 0x1032829
010327a6mov r9, [rbp-48]
010327aamov edi, r15l
010327adpush 51
010327afpop r8
010327b1xor r10l, r10l
010327b4
010327b4loc_10327b4:
010327b4mov rax, r8
010327b7mov rsi, r14
010327bamov rdx, rbx
010327bdsyscall
010327bfmov rcx, rax
010327c2neg rcx
010327c5cmp rax, -4095
010327cbcmovb rcx, r10
010327cfcmp rcx, 4
010327d3jne 0x10327fb
010327d5test r9, r9
010327d8je 0x10327b4
010327damov rax, [r9+8]
010327de
010327deloc_10327de:
010327demov rcx, rax
010327e1or rcx, 2
010327e5lock cmpxchg [r9+8], rcx
010327ebjne 0x10327de
010327edand eax, 7
010327f0cmp eax, 5
010327f3jne 0x10327b4
010327f5mov ax, 17
010327f9jmp 0x1032829
010327fb
010327fbloc_10327fb:
010327fbtest ecx, ecx
010327fdjne 0x103280e
010327fftest r9, r9
01032802je 0x103280a
01032804lock xor [r9+8], 3
0103280a
0103280aloc_103280a:
0103280axor eax, eax
0103280cjmp 0x1032829
0103280e
0103280eloc_103280e:
0103280etest r9, r9
01032811je 0x1032819
01032813lock xor [r9+8], 3
01032819
01032819loc_1032819:
01032819xor eax, eax
0103281bcmp rcx, 105
0103281fsetne al
01032822lea eax, [2*rax+2]
01032829
01032829loc_1032829:
01032829add rsp, 16
0103282dpop rbx
0103282epop r12
01032830pop r14
01032832pop r15
01032834pop rbp
01032835ret
01032773
01032836
01032836Io.Threaded.netSocketCreatePair:
01032836push rbp
01032837mov rbp, rsp
0103283apush r15
0103283cpush r14
0103283epush r13
01032840push r12
01032842push rbx
01032843sub rsp, 152
0103284amov rbx, rdi
0103284dmov rax, [rdx]
01032850mov r13b, [rdx+8]
01032854movzx esi, [rdx+9]
01032858lea rdx, [rbp-152]
0103285fmov [rdx], rax
01032862lea r15, [rbp-180]
01032869mov rdi, r15
0103286ccall Io.Threaded.posixSocketModeProtocol
01032871mov r14l, [r15]
01032874mov r15l, [r15+4]
01032878lea r12, [rbp-168]
0103287fmov rdi, r12
01032882call Io.Threaded.Syscall.start
01032887movzx eax, [r12+8]
0103288dtest ax, ax
01032890jne 0x1032b69
01032896or r14, 0x80000
0103289dmov r9, [rbp-168]
010328a4movzx eax, r13b
010328a8lea rdi, [8*rax+2]
010328b0push 53
010328b2pop r8
010328b4lea r10, [rbp-48]
010328b8xor r12l, r12l
010328bb
010328bbloc_10328bb:
010328bbmov rax, r8
010328bemov rsi, r14
010328c1mov rdx, r15
010328c4syscall
010328c6mov rcx, rax
010328c9neg rcx
010328cccmp rax, -4095
010328d2cmovb rcx, r12
010328d6cmp rcx, 4
010328dajne 0x1032907
010328dctest r9, r9
010328dfje 0x10328bb
010328e1mov rax, [r9+8]
010328e5
010328e5loc_10328e5:
010328e5mov rcx, rax
010328e8or rcx, 2
010328eclock cmpxchg [r9+8], rcx
010328f2jne 0x10328e5
010328f4and eax, 7
010328f7cmp eax, 5
010328fajne 0x10328bb
010328fcmov [rbx+72], 17
01032902jmp 0x1032b54
01032907
01032907loc_1032907:
01032907cmp ecx, 105
0103290aje 0x10329ee
01032910cmp ecx, 12
01032913je 0x10329ee
01032919cmp ecx, 13
0103291cje 0x1032a9e
01032922cmp ecx, 22
01032925je 0x1032a46
0103292bcmp ecx, 23
0103292eje 0x1032a88
01032934cmp ecx, 24
01032937je 0x1032a72
0103293dcmp ecx, 91
01032940je 0x1032a04
01032946cmp ecx, 93
01032949je 0x1032a30
0103294fcmp ecx, 97
01032952je 0x1032a1a
01032958test ecx, ecx
0103295ajne 0x1032a5c
01032960test r9, r9
01032963je 0x103296b
01032965lock xor [r9+8], 3
0103296b
0103296bloc_103296b:
0103296bmov rax, 0x1c0000001c
01032975lea rdx, [rbp-112]
01032979mov [rdx], rax
0103297cmov edi, [rbp-48]
0103297flea rsi, [rbp-104]
01032983call Io.Threaded.posixGetSockName
01032988test ax, ax
0103298bjne 0x1032b6f
01032991lea rdx, [rbp-108]
01032995mov edi, [rbp-44]
01032998lea rsi, [rbp-76]
0103299ccall Io.Threaded.posixGetSockName
010329a1test ax, ax
010329a4jne 0x1032b86
010329aamov rax, 0x100007f0000
010329b4and [rbx+72], 0
010329b9mov ecx, [rbp-48]
010329bcmov [rbx], ecx
010329bemovzx ecx, [rbp-104]
010329c2cmp ecx, 10
010329c5je 0x1032ab4
010329cbcmp ecx, 2
010329cejne 0x1032ad5
010329d4movbe dx, [rbp-102]
010329damov ecx, [rbp-100]
010329ddmovzx edx, dx
010329e0shl rcx, 16
010329e4or rcx, rdx
010329e7xor edx, edx
010329e9jmp 0x1032ada
010329ee
010329eeloc_10329ee:
010329eetest r9, r9
010329f1je 0x10329f9
010329f3lock xor [r9+8], 3
010329f9
010329f9loc_10329f9:
010329f9mov [rbx+72], 2
010329ffjmp 0x1032b54
01032a04
01032a04loc_1032a04:
01032a04test r9, r9
01032a07je 0x1032a0f
01032a09lock xor [r9+8], 3
01032a0f
01032a0floc_1032a0f:
01032a0fmov [rbx+72], 90
01032a15jmp 0x1032b54
01032a1a
01032a1aloc_1032a1a:
01032a1atest r9, r9
01032a1dje 0x1032a25
01032a1flock xor [r9+8], 3
01032a25
01032a25loc_1032a25:
01032a25mov [rbx+72], 45
01032a2bjmp 0x1032b54
01032a30
01032a30loc_1032a30:
01032a30test r9, r9
01032a33je 0x1032a3b
01032a35lock xor [r9+8], 3
01032a3b
01032a3bloc_1032a3b:
01032a3bmov [rbx+72], 89
01032a41jmp 0x1032b54
01032a46
01032a46loc_1032a46:
01032a46test r9, r9
01032a49je 0x1032a51
01032a4block xor [r9+8], 3
01032a51
01032a51loc_1032a51:
01032a51mov [rbx+72], 88
01032a57jmp 0x1032b54
01032a5c
01032a5cloc_1032a5c:
01032a5ctest r9, r9
01032a5fje 0x1032a67
01032a61lock xor [r9+8], 3
01032a67
01032a67loc_1032a67:
01032a67mov [rbx+72], 4
01032a6djmp 0x1032b54
01032a72
01032a72loc_1032a72:
01032a72test r9, r9
01032a75je 0x1032a7d
01032a77lock xor [r9+8], 3
01032a7d
01032a7dloc_1032a7d:
01032a7dmov [rbx+72], 36
01032a83jmp 0x1032b54
01032a88
01032a88loc_1032a88:
01032a88test r9, r9
01032a8bje 0x1032a93
01032a8dlock xor [r9+8], 3
01032a93
01032a93loc_1032a93:
01032a93mov [rbx+72], 37
01032a99jmp 0x1032b54
01032a9e
01032a9eloc_1032a9e:
01032a9etest r9, r9
01032aa1je 0x1032aa9
01032aa3lock xor [r9+8], 3
01032aa9
01032aa9loc_1032aa9:
01032aa9mov [rbx+72], 10
01032aafjmp 0x1032b54
01032ab4
01032ab4loc_1032ab4:
01032ab4movbe si, [rbp-102]
01032abamov edx, [rbp-100]
01032abdmov ecx, [rbp-80]
01032ac0shl rcx, 32
01032ac4or rcx, rdx
01032ac7vmovups x0, [rbp-96]
01032accvmovaps [rbp-128], x0
01032ad1mov dl, 1
01032ad3jmp 0x1032ada
01032ad5
01032ad5loc_1032ad5:
01032ad5xor edx, edx
01032ad7mov rcx, rax
01032ada
01032adaloc_1032ada:
01032adamov [rbx+4], rcx
01032ademov [rbx+12], si
01032ae2vmovaps x0, [rbp-128]
01032ae7vmovups [rbx+14], x0
01032aecmov [rbx+32], dl
01032aefmov ecx, [rbp-44]
01032af2mov [rbx+36], ecx
01032af5movzx ecx, [rbp-76]
01032af9cmp ecx, 10
01032afcje 0x1032b1a
01032afecmp ecx, 2
01032b01jne 0x1032b16
01032b03movbe cx, [rbp-74]
01032b09mov eax, [rbp-72]
01032b0cmovzx ecx, cx
01032b0fshl rax, 16
01032b13or rax, rcx
01032b16
01032b16loc_1032b16:
01032b16xor edx, edx
01032b18jmp 0x1032b3c
01032b1a
01032b1aloc_1032b1a:
01032b1amovbe cx, [rbp-74]
01032b20mov edx, [rbp-72]
01032b23mov eax, [rbp-52]
01032b26shl rax, 32
01032b2aor rax, rdx
01032b2dvmovups x0, [rbp-68]
01032b32vmovaps [rbp-144], x0
01032b3amov dl, 1
01032b3c
01032b3cloc_1032b3c:
01032b3cmov [rbx+40], rax
01032b40mov [rbx+48], cx
01032b44vmovaps x0, [rbp-144]
01032b4cvmovups [rbx+50], x0
01032b51mov [rbx+68], dl
01032b54
01032b54loc_1032b54:
01032b54mov rax, rbx
01032b57add rsp, 152
01032b5epop rbx
01032b5fpop r12
01032b61pop r13
01032b63pop r14
01032b65pop r15
01032b67pop rbp
01032b68ret
01032b69
01032b69loc_1032b69:
01032b69mov [rbx+72], ax
01032b6djmp 0x1032b54
01032b6f
01032b6floc_1032b6f:
01032b6fmov edx, eax
01032b71mov edi, [rbp-48]
01032b74push 3
01032b76pop rsi
01032b77mov rax, rsi
01032b7asyscall
01032b7cmov edi, [rbp-44]
01032b7fmov rax, rsi
01032b82syscall
01032b84jmp 0x1032b9b
01032b86
01032b86loc_1032b86:
01032b86mov edx, eax
01032b88mov edi, [rbp-48]
01032b8bpush 3
01032b8dpop rsi
01032b8emov rax, rsi
01032b91syscall
01032b93mov edi, [rbp-44]
01032b96mov rax, rsi
01032b99syscall
01032b9b
01032b9bloc_1032b9b:
01032b9bmov [rbx+72], dx
01032b9fjmp 0x1032b54
01032836
01032836Io.Threaded.netSocketCreatePair:
01032836push rbp
01032837mov rbp, rsp
0103283apush r15
0103283cpush r14
0103283epush r13
01032840push r12
01032842push rbx
01032843sub rsp, 152
0103284amov rbx, rdi
0103284dmov rax, [rdx]
01032850mov r13b, [rdx+8]
01032854movzx esi, [rdx+9]
01032858lea rdx, [rbp-152]
0103285fmov [rdx], rax
01032862lea r15, [rbp-180]
01032869mov rdi, r15
0103286ccall Io.Threaded.posixSocketModeProtocol
01032871mov r14l, [r15]
01032874mov r15l, [r15+4]
01032878lea r12, [rbp-168]
0103287fmov rdi, r12
01032882call Io.Threaded.Syscall.start
01032887movzx eax, [r12+8]
0103288dtest ax, ax
01032890jne 0x1032b69
01032896or r14, 0x80000
0103289dmov r9, [rbp-168]
010328a4movzx eax, r13b
010328a8lea rdi, [8*rax+2]
010328b0push 53
010328b2pop r8
010328b4lea r10, [rbp-48]
010328b8xor r12l, r12l
010328bb
010328bbloc_10328bb:
010328bbmov rax, r8
010328bemov rsi, r14
010328c1mov rdx, r15
010328c4syscall
010328c6mov rcx, rax
010328c9neg rcx
010328cccmp rax, -4095
010328d2cmovb rcx, r12
010328d6cmp rcx, 4
010328dajne 0x1032907
010328dctest r9, r9
010328dfje 0x10328bb
010328e1mov rax, [r9+8]
010328e5
010328e5loc_10328e5:
010328e5mov rcx, rax
010328e8or rcx, 2
010328eclock cmpxchg [r9+8], rcx
010328f2jne 0x10328e5
010328f4and eax, 7
010328f7cmp eax, 5
010328fajne 0x10328bb
010328fcmov [rbx+72], 17
01032902jmp 0x1032b54
01032907
01032907loc_1032907:
01032907cmp ecx, 105
0103290aje 0x10329ee
01032910cmp ecx, 12
01032913je 0x10329ee
01032919cmp ecx, 13
0103291cje 0x1032a9e
01032922cmp ecx, 22
01032925je 0x1032a46
0103292bcmp ecx, 23
0103292eje 0x1032a88
01032934cmp ecx, 24
01032937je 0x1032a72
0103293dcmp ecx, 91
01032940je 0x1032a04
01032946cmp ecx, 93
01032949je 0x1032a30
0103294fcmp ecx, 97
01032952je 0x1032a1a
01032958test ecx, ecx
0103295ajne 0x1032a5c
01032960test r9, r9
01032963je 0x103296b
01032965lock xor [r9+8], 3
0103296b
0103296bloc_103296b:
0103296bmov rax, 0x1c0000001c
01032975lea rdx, [rbp-112]
01032979mov [rdx], rax
0103297cmov edi, [rbp-48]
0103297flea rsi, [rbp-104]
01032983call Io.Threaded.posixGetSockName
01032988test ax, ax
0103298bjne 0x1032b6f
01032991lea rdx, [rbp-108]
01032995mov edi, [rbp-44]
01032998lea rsi, [rbp-76]
0103299ccall Io.Threaded.posixGetSockName
010329a1test ax, ax
010329a4jne 0x1032b86
010329aamov rax, 0x100007f0000
010329b4and [rbx+72], 0
010329b9mov ecx, [rbp-48]
010329bcmov [rbx], ecx
010329bemovzx ecx, [rbp-104]
010329c2cmp ecx, 10
010329c5je 0x1032ab4
010329cbcmp ecx, 2
010329cejne 0x1032ad5
010329d4movbe dx, [rbp-102]
010329damov ecx, [rbp-100]
010329ddmovzx edx, dx
010329e0shl rcx, 16
010329e4or rcx, rdx
010329e7xor edx, edx
010329e9jmp 0x1032ada
010329ee
010329eeloc_10329ee:
010329eetest r9, r9
010329f1je 0x10329f9
010329f3lock xor [r9+8], 3
010329f9
010329f9loc_10329f9:
010329f9mov [rbx+72], 2
010329ffjmp 0x1032b54
01032a04
01032a04loc_1032a04:
01032a04test r9, r9
01032a07je 0x1032a0f
01032a09lock xor [r9+8], 3
01032a0f
01032a0floc_1032a0f:
01032a0fmov [rbx+72], 90
01032a15jmp 0x1032b54
01032a1a
01032a1aloc_1032a1a:
01032a1atest r9, r9
01032a1dje 0x1032a25
01032a1flock xor [r9+8], 3
01032a25
01032a25loc_1032a25:
01032a25mov [rbx+72], 45
01032a2bjmp 0x1032b54
01032a30
01032a30loc_1032a30:
01032a30test r9, r9
01032a33je 0x1032a3b
01032a35lock xor [r9+8], 3
01032a3b
01032a3bloc_1032a3b:
01032a3bmov [rbx+72], 89
01032a41jmp 0x1032b54
01032a46
01032a46loc_1032a46:
01032a46test r9, r9
01032a49je 0x1032a51
01032a4block xor [r9+8], 3
01032a51
01032a51loc_1032a51:
01032a51mov [rbx+72], 88
01032a57jmp 0x1032b54
01032a5c
01032a5cloc_1032a5c:
01032a5ctest r9, r9
01032a5fje 0x1032a67
01032a61lock xor [r9+8], 3
01032a67
01032a67loc_1032a67:
01032a67mov [rbx+72], 4
01032a6djmp 0x1032b54
01032a72
01032a72loc_1032a72:
01032a72test r9, r9
01032a75je 0x1032a7d
01032a77lock xor [r9+8], 3
01032a7d
01032a7dloc_1032a7d:
01032a7dmov [rbx+72], 36
01032a83jmp 0x1032b54
01032a88
01032a88loc_1032a88:
01032a88test r9, r9
01032a8bje 0x1032a93
01032a8dlock xor [r9+8], 3
01032a93
01032a93loc_1032a93:
01032a93mov [rbx+72], 37
01032a99jmp 0x1032b54
01032a9e
01032a9eloc_1032a9e:
01032a9etest r9, r9
01032aa1je 0x1032aa9
01032aa3lock xor [r9+8], 3
01032aa9
01032aa9loc_1032aa9:
01032aa9mov [rbx+72], 10
01032aafjmp 0x1032b54
01032ab4
01032ab4loc_1032ab4:
01032ab4movbe si, [rbp-102]
01032abamov edx, [rbp-100]
01032abdmov ecx, [rbp-80]
01032ac0shl rcx, 32
01032ac4or rcx, rdx
01032ac7vmovups x0, [rbp-96]
01032accvmovaps [rbp-128], x0
01032ad1mov dl, 1
01032ad3jmp 0x1032ada
01032ad5
01032ad5loc_1032ad5:
01032ad5xor edx, edx
01032ad7mov rcx, rax
01032ada
01032adaloc_1032ada:
01032adamov [rbx+4], rcx
01032ademov [rbx+12], si
01032ae2vmovaps x0, [rbp-128]
01032ae7vmovups [rbx+14], x0
01032aecmov [rbx+32], dl
01032aefmov ecx, [rbp-44]
01032af2mov [rbx+36], ecx
01032af5movzx ecx, [rbp-76]
01032af9cmp ecx, 10
01032afcje 0x1032b1a
01032afecmp ecx, 2
01032b01jne 0x1032b16
01032b03movbe cx, [rbp-74]
01032b09mov eax, [rbp-72]
01032b0cmovzx ecx, cx
01032b0fshl rax, 16
01032b13or rax, rcx
01032b16
01032b16loc_1032b16:
01032b16xor edx, edx
01032b18jmp 0x1032b3c
01032b1a
01032b1aloc_1032b1a:
01032b1amovbe cx, [rbp-74]
01032b20mov edx, [rbp-72]
01032b23mov eax, [rbp-52]
01032b26shl rax, 32
01032b2aor rax, rdx
01032b2dvmovups x0, [rbp-68]
01032b32vmovaps [rbp-144], x0
01032b3amov dl, 1
01032b3c
01032b3cloc_1032b3c:
01032b3cmov [rbx+40], rax
01032b40mov [rbx+48], cx
01032b44vmovaps x0, [rbp-144]
01032b4cvmovups [rbx+50], x0
01032b51mov [rbx+68], dl
01032b54
01032b54loc_1032b54:
01032b54mov rax, rbx
01032b57add rsp, 152
01032b5epop rbx
01032b5fpop r12
01032b61pop r13
01032b63pop r14
01032b65pop r15
01032b67pop rbp
01032b68ret
01032b69
01032b69loc_1032b69:
01032b69mov [rbx+72], ax
01032b6djmp 0x1032b54
01032b6f
01032b6floc_1032b6f:
01032b6fmov edx, eax
01032b71mov edi, [rbp-48]
01032b74push 3
01032b76pop rsi
01032b77mov rax, rsi
01032b7asyscall
01032b7cmov edi, [rbp-44]
01032b7fmov rax, rsi
01032b82syscall
01032b84jmp 0x1032b9b
01032b86
01032b86loc_1032b86:
01032b86mov edx, eax
01032b88mov edi, [rbp-48]
01032b8bpush 3
01032b8dpop rsi
01032b8emov rax, rsi
01032b91syscall
01032b93mov edi, [rbp-44]
01032b96mov rax, rsi
01032b99syscall
01032b9b
01032b9bloc_1032b9b:
01032b9bmov [rbx+72], dx
01032b9fjmp 0x1032b54
01032836
01032ba1
01032ba1Io.Threaded.randomSecure:
01032ba1push rbp
01032ba2mov rbp, rsp
01032ba5push r15
01032ba7push r14
01032ba9push rbx
01032baasub rsp, 24
01032baemov rbx, rdx
01032bb1mov r14, rsi
01032bb4lea r15, [rbp-40]
01032bb8mov rdi, r15
01032bbbcall Io.Threaded.Syscall.start
01032bc0movzx eax, [r15+8]
01032bc5test ax, ax
01032bc8jne 0x1032c55
01032bcemov r8, [rbp-40]
01032bd2xor r9l, r9l
01032bd5xor r10l, r10l
01032bd8
01032bd8loc_1032bd8:
01032bd8mov rsi, rbx
01032bdbsub rsi, r10
01032bdelea rdi, [r14+r10]
01032be2
01032be2loc_1032be2:
01032be2cmp rbx, r10
01032be5je 0x1032c3c
01032be7mov eax, 318
01032becxor edx, edx
01032beesyscall
01032bf0mov rcx, rax
01032bf3neg rcx
01032bf6cmp rax, -4095
01032bfccmovb rcx, r9
01032c00cmp rcx, 4
01032c04jne 0x1032c28
01032c06test r8, r8
01032c09je 0x1032be2
01032c0bmov rax, [r8+8]
01032c0f
01032c0floc_1032c0f:
01032c0fmov rcx, rax
01032c12or rcx, 2
01032c16lock cmpxchg [r8+8], rcx
01032c1cjne 0x1032c0f
01032c1eand eax, 7
01032c21cmp eax, 5
01032c24jne 0x1032be2
01032c26jmp 0x1032c51
01032c28
01032c28loc_1032c28:
01032c28test ecx, ecx
01032c2ajne 0x1032c40
01032c2ctest r8, r8
01032c2fje 0x1032c37
01032c31lock xor [r8+8], 3
01032c37
01032c37loc_1032c37:
01032c37add r10, rax
01032c3ajmp 0x1032bd8
01032c3c
01032c3cloc_1032c3c:
01032c3cxor eax, eax
01032c3ejmp 0x1032c55
01032c40
01032c40loc_1032c40:
01032c40mov ax, 85
01032c44test r8, r8
01032c47je 0x1032c55
01032c49lock xor [r8+8], 3
01032c4fjmp 0x1032c55
01032c51
01032c51loc_1032c51:
01032c51mov ax, 17
01032c55
01032c55loc_1032c55:
01032c55add rsp, 24
01032c59pop rbx
01032c5apop r14
01032c5cpop r15
01032c5epop rbp
01032c5fret
01032ba1
01032ba1Io.Threaded.randomSecure:
01032ba1push rbp
01032ba2mov rbp, rsp
01032ba5push r15
01032ba7push r14
01032ba9push rbx
01032baasub rsp, 24
01032baemov rbx, rdx
01032bb1mov r14, rsi
01032bb4lea r15, [rbp-40]
01032bb8mov rdi, r15
01032bbbcall Io.Threaded.Syscall.start
01032bc0movzx eax, [r15+8]
01032bc5test ax, ax
01032bc8jne 0x1032c55
01032bcemov r8, [rbp-40]
01032bd2xor r9l, r9l
01032bd5xor r10l, r10l
01032bd8
01032bd8loc_1032bd8:
01032bd8mov rsi, rbx
01032bdbsub rsi, r10
01032bdelea rdi, [r14+r10]
01032be2
01032be2loc_1032be2:
01032be2cmp rbx, r10
01032be5je 0x1032c3c
01032be7mov eax, 318
01032becxor edx, edx
01032beesyscall
01032bf0mov rcx, rax
01032bf3neg rcx
01032bf6cmp rax, -4095
01032bfccmovb rcx, r9
01032c00cmp rcx, 4
01032c04jne 0x1032c28
01032c06test r8, r8
01032c09je 0x1032be2
01032c0bmov rax, [r8+8]
01032c0f
01032c0floc_1032c0f:
01032c0fmov rcx, rax
01032c12or rcx, 2
01032c16lock cmpxchg [r8+8], rcx
01032c1cjne 0x1032c0f
01032c1eand eax, 7
01032c21cmp eax, 5
01032c24jne 0x1032be2
01032c26jmp 0x1032c51
01032c28
01032c28loc_1032c28:
01032c28test ecx, ecx
01032c2ajne 0x1032c40
01032c2ctest r8, r8
01032c2fje 0x1032c37
01032c31lock xor [r8+8], 3
01032c37
01032c37loc_1032c37:
01032c37add r10, rax
01032c3ajmp 0x1032bd8
01032c3c
01032c3cloc_1032c3c:
01032c3cxor eax, eax
01032c3ejmp 0x1032c55
01032c40
01032c40loc_1032c40:
01032c40mov ax, 85
01032c44test r8, r8
01032c47je 0x1032c55
01032c49lock xor [r8+8], 3
01032c4fjmp 0x1032c55
01032c51
01032c51loc_1032c51:
01032c51mov ax, 17
01032c55
01032c55loc_1032c55:
01032c55add rsp, 24
01032c59pop rbx
01032c5apop r14
01032c5cpop r15
01032c5epop rbp
01032c5fret
01032ba1
01032c60
01032c60Io.Threaded.random:
01032c60push rbp
01032c61mov rbp, rsp
01032c64push r15
01032c66push r14
01032c68push r13
01032c6apush r12
01032c6cpush rbx
01032c6dsub rsp, 552
01032c74mov rbx, rdx
01032c77mov r14, rsi
01032c7amov rax, [0xfffffffffffbfff0]
01032c83test rax, rax
01032c86je 0x1032cb2
01032c88lea r15, [rax+16]
01032c8ccmp [rax+16], -1
01032c91je 0x1032cce
01032c93
01032c93loc_1032c93:
01032c93mov rdi, r15
01032c96mov rsi, r14
01032c99mov rdx, rbx
01032c9cadd rsp, 552
01032ca3pop rbx
01032ca4pop r12
01032ca6pop r13
01032ca8pop r14
01032caapop r15
01032cacpop rbp
01032cadjmp 0x1032e15
01032cb2
01032cb2loc_1032cb2:
01032cb2mov rsi, r14
01032cb5mov rdx, rbx
01032cb8add rsp, 552
01032cbfpop rbx
01032cc0pop r12
01032cc2pop r13
01032cc4pop r14
01032cc6pop r15
01032cc8pop rbp
01032cc9jmp 0x1033394
01032cce
01032cceloc_1032cce:
01032ccelea r12, [rbp-72]
01032cd2push 32
01032cd4pop rdx
01032cd5mov rsi, r12
01032cd8call Io.Threaded.randomMainThread
01032cddlea r13, [rbp-592]
01032ce4mov rdi, r13
01032ce7mov rsi, r12
01032ceacall Random.ChaCha.init
01032cefmov ecx, 520
01032cf4mov rdi, r15
01032cf7mov rsi, r13
01032cfarep movsb [rdi], [rsi]
01032cfcjmp 0x1032c93
01032c60
01032c60Io.Threaded.random:
01032c60push rbp
01032c61mov rbp, rsp
01032c64push r15
01032c66push r14
01032c68push r13
01032c6apush r12
01032c6cpush rbx
01032c6dsub rsp, 552
01032c74mov rbx, rdx
01032c77mov r14, rsi
01032c7amov rax, [0xfffffffffffbfff0]
01032c83test rax, rax
01032c86je 0x1032cb2
01032c88lea r15, [rax+16]
01032c8ccmp [rax+16], -1
01032c91je 0x1032cce
01032c93
01032c93loc_1032c93:
01032c93mov rdi, r15
01032c96mov rsi, r14
01032c99mov rdx, rbx
01032c9cadd rsp, 552
01032ca3pop rbx
01032ca4pop r12
01032ca6pop r13
01032ca8pop r14
01032caapop r15
01032cacpop rbp
01032cadjmp 0x1032e15
01032cb2
01032cb2loc_1032cb2:
01032cb2mov rsi, r14
01032cb5mov rdx, rbx
01032cb8add rsp, 552
01032cbfpop rbx
01032cc0pop r12
01032cc2pop r13
01032cc4pop r14
01032cc6pop r15
01032cc8pop rbp
01032cc9jmp 0x1033394
01032cce
01032cceloc_1032cce:
01032ccelea r12, [rbp-72]
01032cd2push 32
01032cd4pop rdx
01032cd5mov rsi, r12
01032cd8call Io.Threaded.randomMainThread
01032cddlea r13, [rbp-592]
01032ce4mov rdi, r13
01032ce7mov rsi, r12
01032ceacall Random.ChaCha.init
01032cefmov ecx, 520
01032cf4mov rdi, r15
01032cf7mov rsi, r13
01032cfarep movsb [rdi], [rsi]
01032cfcjmp 0x1032c93
01032c60
01032cfe
01032cfeIo.Threaded.sleep:
01032cfepush rbp
01032cffmov rbp, rsp
01032d02push r15
01032d04push r14
01032d06push r13
01032d08push r12
01032d0apush rbx
01032d0bsub rsp, 40
01032d0fmov rbx, rsi
01032d12cmp [rsi+32], 0
01032d16je 0x1032d2c
01032d18mov edi, [rbx+16]
01032d1bcall Io.Threaded.clockToPosix
01032d20mov r15, [rbx]
01032d23mov r12, [rbx+8]
01032d27mov r14l, eax
01032d2ajmp 0x1032d3a
01032d2c
01032d2cloc_1032d2c:
01032d2cmov r12l, 0x7fffffff
01032d32push -1
01032d34pop r15
01032d36push 1
01032d38pop r14
01032d3a
01032d3aloc_1032d3a:
01032d3amovsxd rsi, r12l
01032d3dmov r13l, 0x3b9aca00
01032d43mov edx, 0x3b9aca00
01032d48mov rdi, r15
01032d4bxor ecx, ecx
01032d4dcall compiler_rt.udivmod.__divti3
01032d52mov rcx, rdx
01032d55mov rdx, rax
01032d58mulx rdx, rsi, r13
01032d5dimul rcx, rcx, 0x3b9aca00
01032d64add rcx, rdx
01032d67sub r15, rsi
01032d6asbb r12, rcx
01032d6dmovsxd rcx, r12l
01032d70sar rcx, 31
01032d74add rax, rcx
01032d77and rcx, r13
01032d7aadd rcx, r15
01032d7dmov [rbp-56], rax
01032d81mov [rbp-48], rcx
01032d85lea r15, [rbp-72]
01032d89mov rdi, r15
01032d8ccall Io.Threaded.Syscall.start
01032d91movzx eax, [r15+8]
01032d96test ax, ax
01032d99jne 0x1032e06
01032d9bmov r8, [rbp-72]
01032d9flea rdx, [rbp-56]
01032da3xor r9l, r9l
01032da6
01032da6loc_1032da6:
01032da6xor esi, esi
01032da8cmp [rbx+32], 2
01032dacsete sil
01032db0mov eax, 230
01032db5mov rdi, r14
01032db8mov r10, rdx
01032dbbsyscall
01032dbdmov rcx, rax
01032dc0neg rcx
01032dc3cmp rax, -4095
01032dc9cmovb rcx, r9
01032dcdcmp rcx, 4
01032dd1jne 0x1032df9
01032dd3test r8, r8
01032dd6je 0x1032da6
01032dd8mov rax, [r8+8]
01032ddc
01032ddcloc_1032ddc:
01032ddcmov rcx, rax
01032ddfor rcx, 2
01032de3lock cmpxchg [r8+8], rcx
01032de9jne 0x1032ddc
01032deband eax, 7
01032deecmp eax, 5
01032df1jne 0x1032da6
01032df3mov ax, 17
01032df7jmp 0x1032e06
01032df9
01032df9loc_1032df9:
01032df9test r8, r8
01032dfcje 0x1032e04
01032dfelock xor [r8+8], 3
01032e04
01032e04loc_1032e04:
01032e04xor eax, eax
01032e06
01032e06loc_1032e06:
01032e06add rsp, 40
01032e0apop rbx
01032e0bpop r12
01032e0dpop r13
01032e0fpop r14
01032e11pop r15
01032e13pop rbp
01032e14ret
01032cfe
01032cfeIo.Threaded.sleep:
01032cfepush rbp
01032cffmov rbp, rsp
01032d02push r15
01032d04push r14
01032d06push r13
01032d08push r12
01032d0apush rbx
01032d0bsub rsp, 40
01032d0fmov rbx, rsi
01032d12cmp [rsi+32], 0
01032d16je 0x1032d2c
01032d18mov edi, [rbx+16]
01032d1bcall Io.Threaded.clockToPosix
01032d20mov r15, [rbx]
01032d23mov r12, [rbx+8]
01032d27mov r14l, eax
01032d2ajmp 0x1032d3a
01032d2c
01032d2cloc_1032d2c:
01032d2cmov r12l, 0x7fffffff
01032d32push -1
01032d34pop r15
01032d36push 1
01032d38pop r14
01032d3a
01032d3aloc_1032d3a:
01032d3amovsxd rsi, r12l
01032d3dmov r13l, 0x3b9aca00
01032d43mov edx, 0x3b9aca00
01032d48mov rdi, r15
01032d4bxor ecx, ecx
01032d4dcall compiler_rt.udivmod.__divti3
01032d52mov rcx, rdx
01032d55mov rdx, rax
01032d58mulx rdx, rsi, r13
01032d5dimul rcx, rcx, 0x3b9aca00
01032d64add rcx, rdx
01032d67sub r15, rsi
01032d6asbb r12, rcx
01032d6dmovsxd rcx, r12l
01032d70sar rcx, 31
01032d74add rax, rcx
01032d77and rcx, r13
01032d7aadd rcx, r15
01032d7dmov [rbp-56], rax
01032d81mov [rbp-48], rcx
01032d85lea r15, [rbp-72]
01032d89mov rdi, r15
01032d8ccall Io.Threaded.Syscall.start
01032d91movzx eax, [r15+8]
01032d96test ax, ax
01032d99jne 0x1032e06
01032d9bmov r8, [rbp-72]
01032d9flea rdx, [rbp-56]
01032da3xor r9l, r9l
01032da6
01032da6loc_1032da6:
01032da6xor esi, esi
01032da8cmp [rbx+32], 2
01032dacsete sil
01032db0mov eax, 230
01032db5mov rdi, r14
01032db8mov r10, rdx
01032dbbsyscall
01032dbdmov rcx, rax
01032dc0neg rcx
01032dc3cmp rax, -4095
01032dc9cmovb rcx, r9
01032dcdcmp rcx, 4
01032dd1jne 0x1032df9
01032dd3test r8, r8
01032dd6je 0x1032da6
01032dd8mov rax, [r8+8]
01032ddc
01032ddcloc_1032ddc:
01032ddcmov rcx, rax
01032ddfor rcx, 2
01032de3lock cmpxchg [r8+8], rcx
01032de9jne 0x1032ddc
01032deband eax, 7
01032deecmp eax, 5
01032df1jne 0x1032da6
01032df3mov ax, 17
01032df7jmp 0x1032e06
01032df9
01032df9loc_1032df9:
01032df9test r8, r8
01032dfcje 0x1032e04
01032dfelock xor [r8+8], 3
01032e04
01032e04loc_1032e04:
01032e04xor eax, eax
01032e06
01032e06loc_1032e06:
01032e06add rsp, 40
01032e0apop rbx
01032e0bpop r12
01032e0dpop r13
01032e0fpop r14
01032e11pop r15
01032e13pop rbp
01032e14ret
01032cfe
01032e15
01032e15Random.ChaCha.fill:
01032e15push rbp
01032e16mov rbp, rsp
01032e19push r15
01032e1bpush r14
01032e1dpush r13
01032e1fpush r12
01032e21push rbx
01032e22push rax
01032e23mov rbx, rdx
01032e26mov r12, rsi
01032e29mov r14, rdi
01032e2clea r15, [rdi+40]
01032e30mov rsi, [rdi]
01032e33cmp rsi, 480
01032e3aje 0x1032e73
01032e3cmov r13l, 480
01032e42sub r13, rsi
01032e45cmp r13, rbx
01032e48cmovae r13, rbx
01032e4cadd rsi, r15
01032e4fmov rdi, r12
01032e52mov rdx, r13
01032e55call compiler_rt.memcpy.memcpySmall
01032e5amov rdi, [r14]
01032e5dadd rdi, r15
01032e60xor esi, esi
01032e62mov rdx, r13
01032e65call compiler_rt.smallMemset
01032e6aadd r12, r13
01032e6dsub rbx, r13
01032e70add [r14], r13
01032e73
01032e73loc_1032e73:
01032e73test rbx, rbx
01032e76jne 0x1032e95
01032e78jmp 0x1032ec9
01032e7a
01032e7aloc_1032e7a:
01032e7amov ecx, 480
01032e7fmov rdi, r12
01032e82mov rsi, r15
01032e85rep movsb [rdi], [rsi]
01032e87add r12, 480
01032e8eadd rbx, -480
01032e95
01032e95loc_1032e95:
01032e95mov rdi, r14
01032e98call Random.ChaCha.refill
01032e9dcmp rbx, 480
01032ea4jae 0x1032e7a
01032ea6test rbx, rbx
01032ea9je 0x1032ec9
01032eabmov rdi, r12
01032eaemov rsi, r15
01032eb1mov rdx, rbx
01032eb4call compiler_rt.memcpy.memcpySmall
01032eb9mov rdi, r15
01032ebcxor esi, esi
01032ebemov rdx, rbx
01032ec1call compiler_rt.smallMemset
01032ec6mov [r14], rbx
01032ec9
01032ec9loc_1032ec9:
01032ec9add rsp, 8
01032ecdpop rbx
01032ecepop r12
01032ed0pop r13
01032ed2pop r14
01032ed4pop r15
01032ed6pop rbp
01032ed7ret
01032e15
01032e15Random.ChaCha.fill:
01032e15push rbp
01032e16mov rbp, rsp
01032e19push r15
01032e1bpush r14
01032e1dpush r13
01032e1fpush r12
01032e21push rbx
01032e22push rax
01032e23mov rbx, rdx
01032e26mov r12, rsi
01032e29mov r14, rdi
01032e2clea r15, [rdi+40]
01032e30mov rsi, [rdi]
01032e33cmp rsi, 480
01032e3aje 0x1032e73
01032e3cmov r13l, 480
01032e42sub r13, rsi
01032e45cmp r13, rbx
01032e48cmovae r13, rbx
01032e4cadd rsi, r15
01032e4fmov rdi, r12
01032e52mov rdx, r13
01032e55call compiler_rt.memcpy.memcpySmall
01032e5amov rdi, [r14]
01032e5dadd rdi, r15
01032e60xor esi, esi
01032e62mov rdx, r13
01032e65call compiler_rt.smallMemset
01032e6aadd r12, r13
01032e6dsub rbx, r13
01032e70add [r14], r13
01032e73
01032e73loc_1032e73:
01032e73test rbx, rbx
01032e76jne 0x1032e95
01032e78jmp 0x1032ec9
01032e7a
01032e7aloc_1032e7a:
01032e7amov ecx, 480
01032e7fmov rdi, r12
01032e82mov rsi, r15
01032e85rep movsb [rdi], [rsi]
01032e87add r12, 480
01032e8eadd rbx, -480
01032e95
01032e95loc_1032e95:
01032e95mov rdi, r14
01032e98call Random.ChaCha.refill
01032e9dcmp rbx, 480
01032ea4jae 0x1032e7a
01032ea6test rbx, rbx
01032ea9je 0x1032ec9
01032eabmov rdi, r12
01032eaemov rsi, r15
01032eb1mov rdx, rbx
01032eb4call compiler_rt.memcpy.memcpySmall
01032eb9mov rdi, r15
01032ebcxor esi, esi
01032ebemov rdx, rbx
01032ec1call compiler_rt.smallMemset
01032ec6mov [r14], rbx
01032ec9
01032ec9loc_1032ec9:
01032ec9add rsp, 8
01032ecdpop rbx
01032ecepop r12
01032ed0pop r13
01032ed2pop r14
01032ed4pop r15
01032ed6pop rbp
01032ed7ret
01032e15
01032ed8
01032ed8Random.ChaCha.refill:
01032ed8push rbp
01032ed9mov rbp, rsp
01032edcpush rbx
01032eddsub rsp, 40
01032ee1mov rbx, rdi
01032ee4add rdi, 8
01032ee8vmovups ymm0, [rbx+8]
01032eedlea rsi, [rbp-48]
01032ef1vmovups [rsi], ymm0
01032ef5vzeroupper
01032ef8call crypto.chacha20.ChaChaIETF(8).stream
01032efdand [rbx], 0
01032f01add rsp, 40
01032f05pop rbx
01032f06pop rbp
01032f07ret
01032ed8
01032ed8Random.ChaCha.refill:
01032ed8push rbp
01032ed9mov rbp, rsp
01032edcpush rbx
01032eddsub rsp, 40
01032ee1mov rbx, rdi
01032ee4add rdi, 8
01032ee8vmovups ymm0, [rbx+8]
01032eedlea rsi, [rbp-48]
01032ef1vmovups [rsi], ymm0
01032ef5vzeroupper
01032ef8call crypto.chacha20.ChaChaIETF(8).stream
01032efdand [rbx], 0
01032f01add rsp, 40
01032f05pop rbx
01032f06pop rbp
01032f07ret
01032ed8
01032f08
01032f08crypto.chacha20.ChaChaIETF(8).stream:
01032f08push rbp
01032f09mov rbp, rsp
01032f0cpush r15
01032f0epush r14
01032f10push r13
01032f12push r12
01032f14push rbx
01032f15and rsp, -32
01032f19sub rsp, 256
01032f20and [rsp+12], 0
01032f25mov [rsp+48], rdi
01032f2axor eax, eax
01032f2cpush 4
01032f2epop rcx
01032f2f
01032f2floc_1032f2f:
01032f2fmovzx edx, [rsp+rcx+11]
01032f34shl eax, 8
01032f37or eax, edx
01032f39dec rcx
01032f3cjne 0x1032f2f
01032f3eand [rsp+16], 0
01032f43xor ecx, ecx
01032f45push 4
01032f47pop rdx
01032f48
01032f48loc_1032f48:
01032f48movzx edi, [rsp+rdx+15]
01032f4dshl ecx, 8
01032f50or ecx, edi
01032f52dec rdx
01032f55jne 0x1032f48
01032f57and [rsp+20], 0
01032f5cxor edx, edx
01032f5epush 4
01032f60pop rdi
01032f61
01032f61loc_1032f61:
01032f61movzx r8l, [rsp+rdi+19]
01032f67shl edx, 8
01032f6aor edx, r8l
01032f6ddec rdi
01032f70jne 0x1032f61
01032f72vmovups ymm0, [rsi]
01032f76vmovaps [rsp+64], ymm0
01032f7cxor esi, esi
01032f7epush 4
01032f80pop r8
01032f82
01032f82loc_1032f82:
01032f82cmp rsi, 8
01032f86je 0x1032faf
01032f88mov edi, [rsp+4*rsi+64]
01032f8cmov [rsp+8], edi
01032f90xor edi, edi
01032f92mov r9, r8
01032f95
01032f95loc_1032f95:
01032f95movzx r10l, [rsp+r9+7]
01032f9bshl edi, 8
01032f9eor edi, r10l
01032fa1dec r9
01032fa4jne 0x1032f95
01032fa6mov [rsp+4*rsi+96], edi
01032faainc rsi
01032fadjmp 0x1032f82
01032faf
01032fafloc_1032faf:
01032fafvbroadcasti128 ymm0, [rsp+96]
01032fb6vbroadcasti128 ymm1, [rsp+112]
01032fbdpush 1
01032fbfpop rsi
01032fc0vmovd x2, esi
01032fc4vpinsrd x2, x2, eax, 1
01032fcavpinsrd x2, x2, ecx, 2
01032fd0vpinsrd x2, x2, edx, 3
01032fd6vmovd x3, edx
01032fdavmovd x4, ecx
01032fdevpunpckldq x3, x4, x3
01032fe2vmovd x4, eax
01032fe6vshufps x3, x4, x3, 65
01032febvinsertf128 ymm2, ymm3, x2, 1
01032ff1xor ecx, ecx
01032ff3vbroadcasti128 ymm3, [rip-0x2b7dc]
01032ffcvmovdqa ymm4, [rip-0x2b424]
01033004vmovdqa ymm5, [rip-0x2b40c]
0103300cvmovdqa ymm6, [rip-0x2b4d4]
01033014vpmovsxbq ymm7, [rip-0x2b355]
0103301dlea rsi, [rsp+8]
01033022lea r8, [rsp+64]
01033027lea r9, [rsp+24]
0103302clea rdi, [rsp+28]
01033031lea r11, [rsp+32]
01033036lea rbx, [rsp+36]
0103303b
0103303bloc_103303b:
0103303bcmp rcx, 384
01033042ja 0x103332c
01033048vmovdqa ymm9, ymm1
0103304cvmovaps ymm8, ymm2
01033050vmovdqa ymm11, ymm0
01033054vmovdqa ymm10, ymm3
01033058xor r14l, r14l
0103305b
0103305bloc_103305b:
0103305bcmp r14, 7
0103305fja 0x1033143
01033065vpaddd ymm10, ymm10, ymm11
0103306avpxor ymm8, ymm10, ymm8
0103306fvpshufb ymm8, ymm8, ymm4
01033074vpaddd ymm9, ymm8, ymm9
01033079vpxor ymm11, ymm9, ymm11
0103307evpsrld ymm12, ymm11, 20
01033084vpslld ymm11, ymm11, 12
0103308avpor ymm11, ymm11, ymm12
0103308fvpaddd ymm10, ymm11, ymm10
01033094vpshufd ymm12, ymm10, 147
0103309avpshufb ymm10, ymm10, ymm5
0103309fvpshufb ymm8, ymm8, ymm5
010330a4vpxor ymm8, ymm10, ymm8
010330a9vpaddd ymm9, ymm8, ymm9
010330aevpxor ymm10, ymm9, ymm11
010330b3vpshufd ymm9, ymm9, 57
010330b9vpsrld ymm11, ymm10, 25
010330bfvpslld ymm10, ymm10, 7
010330c5vpor ymm10, ymm10, ymm11
010330cavpaddd ymm11, ymm10, ymm12
010330cfvpshufb ymm12, ymm11, ymm4
010330d4vpshufb ymm8, ymm8, ymm6
010330d9vpxor ymm8, ymm12, ymm8
010330devpaddd ymm9, ymm8, ymm9
010330e3vpxor ymm10, ymm9, ymm10
010330e8vpsrld ymm12, ymm10, 20
010330eevpslld ymm10, ymm10, 12
010330f4vpor ymm12, ymm10, ymm12
010330f9vpaddd ymm11, ymm12, ymm11
010330fevpshufd ymm10, ymm11, 57
01033104vpshufb ymm11, ymm11, ymm5
01033109vpshufb ymm8, ymm8, ymm5
0103310evpxor ymm8, ymm11, ymm8
01033113vpaddd ymm9, ymm8, ymm9
01033118vpshufd ymm8, ymm8, 78
0103311evpxor ymm11, ymm9, ymm12
01033123vpshufd ymm9, ymm9, 147
01033129vpsrld ymm12, ymm11, 25
0103312fvpslld ymm11, ymm11, 7
01033135vpor ymm11, ymm11, ymm12
0103313aadd r14, 2
0103313ejmp 0x103305b
01033143
01033143loc_1033143:
01033143vpaddd ymm10, ymm10, ymm3
01033147vmovdqa [rsp+96], ymm10
0103314dvpaddd ymm10, ymm11, ymm0
01033151vmovdqa [rsp+128], ymm10
0103315avpaddd ymm9, ymm9, ymm1
0103315evmovdqa [rsp+160], ymm9
01033167vpaddd ymm8, ymm8, ymm2
0103316bvmovdqa [rsp+192], ymm8
01033174mov rax, [rsp+48]
01033179mov [rsp+56], rcx
0103317elea r14, [rax+rcx]
01033182xor r15l, r15l
01033185
01033185loc_1033185:
01033185cmp r15, 4
01033189je 0x103324b
0103318fmov rax, r15
01033192shl rax, 5
01033196lea r12, [rsp+rax]
0103319aadd r12, 96
0103319emov r13l, [r12]
010331a2mov rax, r9
010331a5xor r10l, r10l
010331a8
010331a8loc_10331a8:
010331a8shrx ecx, r13l, r10l
010331admov [rax], cl
010331afadd r10, 8
010331b3inc rax
010331b6cmp r10, 32
010331bajne 0x10331a8
010331bcmov r13, r15
010331bfshl r13, 4
010331c3mov eax, [rsp+24]
010331c7mov [r14+r13], eax
010331cbmov eax, [r12+4]
010331d0mov r10, rdi
010331d3xor ecx, ecx
010331d5
010331d5loc_10331d5:
010331d5shrx edx, eax, ecx
010331damov [r10], dl
010331ddadd rcx, 8
010331e1inc r10
010331e4cmp rcx, 32
010331e8jne 0x10331d5
010331eamov eax, [rsp+28]
010331eemov [r14+r13+4], eax
010331f3mov eax, [r12+8]
010331f8mov r10, r11
010331fbxor ecx, ecx
010331fd
010331fdloc_10331fd:
010331fdshrx edx, eax, ecx
01033202mov [r10], dl
01033205add rcx, 8
01033209inc r10
0103320ccmp rcx, 32
01033210jne 0x10331fd
01033212mov eax, [rsp+32]
01033216mov [r14+r13+8], eax
0103321bmov eax, [r12+12]
01033220mov r10, rbx
01033223xor ecx, ecx
01033225
01033225loc_1033225:
01033225shrx edx, eax, ecx
0103322amov [r10], dl
0103322dadd rcx, 8
01033231inc r10
01033234cmp rcx, 32
01033238jne 0x1033225
0103323amov eax, [rsp+36]
0103323emov [r14+r13+12], eax
01033243inc r15
01033246jmp 0x1033185
0103324b
0103324bloc_103324b:
0103324bxor r15l, r15l
0103324e
0103324eloc_103324e:
0103324ecmp r15, 4
01033252je 0x103331a
01033258mov rax, r15
0103325bshl rax, 5
0103325flea r12, [rsp+rax]
01033263add r12, 96
01033267mov eax, [r12+16]
0103326clea r10, [rsp+40]
01033271xor ecx, ecx
01033273
01033273loc_1033273:
01033273shrx edx, eax, ecx
01033278mov [r10], dl
0103327badd rcx, 8
0103327finc r10
01033282cmp rcx, 32
01033286jne 0x1033273
01033288mov r13, r15
0103328bshl r13, 4
0103328fmov eax, [rsp+40]
01033293mov [r14+r13+64], eax
01033298mov eax, [r12+20]
0103329dlea r10, [rsp+44]
010332a2xor ecx, ecx
010332a4
010332a4loc_10332a4:
010332a4shrx edx, eax, ecx
010332a9mov [r10], dl
010332acadd rcx, 8
010332b0inc r10
010332b3cmp rcx, 32
010332b7jne 0x10332a4
010332b9mov eax, [rsp+44]
010332bdmov [r14+r13+68], eax
010332c2mov eax, [r12+24]
010332c7mov r10, rsi
010332caxor ecx, ecx
010332cc
010332ccloc_10332cc:
010332ccshrx edx, eax, ecx
010332d1mov [r10], dl
010332d4add rcx, 8
010332d8inc r10
010332dbcmp rcx, 32
010332dfjne 0x10332cc
010332e1mov eax, [rsp+8]
010332e5mov [r14+r13+72], eax
010332eamov eax, [r12+28]
010332efmov r10, r8
010332f2xor ecx, ecx
010332f4
010332f4loc_10332f4:
010332f4shrx edx, eax, ecx
010332f9mov [r10], dl
010332fcadd rcx, 8
01033300inc r10
01033303cmp rcx, 32
01033307jne 0x10332f4
01033309mov eax, [rsp+64]
0103330dmov [r14+r13+76], eax
01033312inc r15
01033315jmp 0x103324e
0103331a
0103331aloc_103331a:
0103331amov rcx, [rsp+56]
0103331fsub rcx, -128
01033323vpaddd ymm2, ymm2, ymm7
01033327jmp 0x103303b
0103332c
0103332cloc_103332c:
0103332clea rsp, [rbp-40]
01033330pop rbx
01033331pop r12
01033333pop r13
01033335pop r14
01033337pop r15
01033339pop rbp
0103333avzeroupper
0103333dret
01032f08
01032f08crypto.chacha20.ChaChaIETF(8).stream:
01032f08push rbp
01032f09mov rbp, rsp
01032f0cpush r15
01032f0epush r14
01032f10push r13
01032f12push r12
01032f14push rbx
01032f15and rsp, -32
01032f19sub rsp, 256
01032f20and [rsp+12], 0
01032f25mov [rsp+48], rdi
01032f2axor eax, eax
01032f2cpush 4
01032f2epop rcx
01032f2f
01032f2floc_1032f2f:
01032f2fmovzx edx, [rsp+rcx+11]
01032f34shl eax, 8
01032f37or eax, edx
01032f39dec rcx
01032f3cjne 0x1032f2f
01032f3eand [rsp+16], 0
01032f43xor ecx, ecx
01032f45push 4
01032f47pop rdx
01032f48
01032f48loc_1032f48:
01032f48movzx edi, [rsp+rdx+15]
01032f4dshl ecx, 8
01032f50or ecx, edi
01032f52dec rdx
01032f55jne 0x1032f48
01032f57and [rsp+20], 0
01032f5cxor edx, edx
01032f5epush 4
01032f60pop rdi
01032f61
01032f61loc_1032f61:
01032f61movzx r8l, [rsp+rdi+19]
01032f67shl edx, 8
01032f6aor edx, r8l
01032f6ddec rdi
01032f70jne 0x1032f61
01032f72vmovups ymm0, [rsi]
01032f76vmovaps [rsp+64], ymm0
01032f7cxor esi, esi
01032f7epush 4
01032f80pop r8
01032f82
01032f82loc_1032f82:
01032f82cmp rsi, 8
01032f86je 0x1032faf
01032f88mov edi, [rsp+4*rsi+64]
01032f8cmov [rsp+8], edi
01032f90xor edi, edi
01032f92mov r9, r8
01032f95
01032f95loc_1032f95:
01032f95movzx r10l, [rsp+r9+7]
01032f9bshl edi, 8
01032f9eor edi, r10l
01032fa1dec r9
01032fa4jne 0x1032f95
01032fa6mov [rsp+4*rsi+96], edi
01032faainc rsi
01032fadjmp 0x1032f82
01032faf
01032fafloc_1032faf:
01032fafvbroadcasti128 ymm0, [rsp+96]
01032fb6vbroadcasti128 ymm1, [rsp+112]
01032fbdpush 1
01032fbfpop rsi
01032fc0vmovd x2, esi
01032fc4vpinsrd x2, x2, eax, 1
01032fcavpinsrd x2, x2, ecx, 2
01032fd0vpinsrd x2, x2, edx, 3
01032fd6vmovd x3, edx
01032fdavmovd x4, ecx
01032fdevpunpckldq x3, x4, x3
01032fe2vmovd x4, eax
01032fe6vshufps x3, x4, x3, 65
01032febvinsertf128 ymm2, ymm3, x2, 1
01032ff1xor ecx, ecx
01032ff3vbroadcasti128 ymm3, [rip-0x2b7dc]
01032ffcvmovdqa ymm4, [rip-0x2b424]
01033004vmovdqa ymm5, [rip-0x2b40c]
0103300cvmovdqa ymm6, [rip-0x2b4d4]
01033014vpmovsxbq ymm7, [rip-0x2b355]
0103301dlea rsi, [rsp+8]
01033022lea r8, [rsp+64]
01033027lea r9, [rsp+24]
0103302clea rdi, [rsp+28]
01033031lea r11, [rsp+32]
01033036lea rbx, [rsp+36]
0103303b
0103303bloc_103303b:
0103303bcmp rcx, 384
01033042ja 0x103332c
01033048vmovdqa ymm9, ymm1
0103304cvmovaps ymm8, ymm2
01033050vmovdqa ymm11, ymm0
01033054vmovdqa ymm10, ymm3
01033058xor r14l, r14l
0103305b
0103305bloc_103305b:
0103305bcmp r14, 7
0103305fja 0x1033143
01033065vpaddd ymm10, ymm10, ymm11
0103306avpxor ymm8, ymm10, ymm8
0103306fvpshufb ymm8, ymm8, ymm4
01033074vpaddd ymm9, ymm8, ymm9
01033079vpxor ymm11, ymm9, ymm11
0103307evpsrld ymm12, ymm11, 20
01033084vpslld ymm11, ymm11, 12
0103308avpor ymm11, ymm11, ymm12
0103308fvpaddd ymm10, ymm11, ymm10
01033094vpshufd ymm12, ymm10, 147
0103309avpshufb ymm10, ymm10, ymm5
0103309fvpshufb ymm8, ymm8, ymm5
010330a4vpxor ymm8, ymm10, ymm8
010330a9vpaddd ymm9, ymm8, ymm9
010330aevpxor ymm10, ymm9, ymm11
010330b3vpshufd ymm9, ymm9, 57
010330b9vpsrld ymm11, ymm10, 25
010330bfvpslld ymm10, ymm10, 7
010330c5vpor ymm10, ymm10, ymm11
010330cavpaddd ymm11, ymm10, ymm12
010330cfvpshufb ymm12, ymm11, ymm4
010330d4vpshufb ymm8, ymm8, ymm6
010330d9vpxor ymm8, ymm12, ymm8
010330devpaddd ymm9, ymm8, ymm9
010330e3vpxor ymm10, ymm9, ymm10
010330e8vpsrld ymm12, ymm10, 20
010330eevpslld ymm10, ymm10, 12
010330f4vpor ymm12, ymm10, ymm12
010330f9vpaddd ymm11, ymm12, ymm11
010330fevpshufd ymm10, ymm11, 57
01033104vpshufb ymm11, ymm11, ymm5
01033109vpshufb ymm8, ymm8, ymm5
0103310evpxor ymm8, ymm11, ymm8
01033113vpaddd ymm9, ymm8, ymm9
01033118vpshufd ymm8, ymm8, 78
0103311evpxor ymm11, ymm9, ymm12
01033123vpshufd ymm9, ymm9, 147
01033129vpsrld ymm12, ymm11, 25
0103312fvpslld ymm11, ymm11, 7
01033135vpor ymm11, ymm11, ymm12
0103313aadd r14, 2
0103313ejmp 0x103305b
01033143
01033143loc_1033143:
01033143vpaddd ymm10, ymm10, ymm3
01033147vmovdqa [rsp+96], ymm10
0103314dvpaddd ymm10, ymm11, ymm0
01033151vmovdqa [rsp+128], ymm10
0103315avpaddd ymm9, ymm9, ymm1
0103315evmovdqa [rsp+160], ymm9
01033167vpaddd ymm8, ymm8, ymm2
0103316bvmovdqa [rsp+192], ymm8
01033174mov rax, [rsp+48]
01033179mov [rsp+56], rcx
0103317elea r14, [rax+rcx]
01033182xor r15l, r15l
01033185
01033185loc_1033185:
01033185cmp r15, 4
01033189je 0x103324b
0103318fmov rax, r15
01033192shl rax, 5
01033196lea r12, [rsp+rax]
0103319aadd r12, 96
0103319emov r13l, [r12]
010331a2mov rax, r9
010331a5xor r10l, r10l
010331a8
010331a8loc_10331a8:
010331a8shrx ecx, r13l, r10l
010331admov [rax], cl
010331afadd r10, 8
010331b3inc rax
010331b6cmp r10, 32
010331bajne 0x10331a8
010331bcmov r13, r15
010331bfshl r13, 4
010331c3mov eax, [rsp+24]
010331c7mov [r14+r13], eax
010331cbmov eax, [r12+4]
010331d0mov r10, rdi
010331d3xor ecx, ecx
010331d5
010331d5loc_10331d5:
010331d5shrx edx, eax, ecx
010331damov [r10], dl
010331ddadd rcx, 8
010331e1inc r10
010331e4cmp rcx, 32
010331e8jne 0x10331d5
010331eamov eax, [rsp+28]
010331eemov [r14+r13+4], eax
010331f3mov eax, [r12+8]
010331f8mov r10, r11
010331fbxor ecx, ecx
010331fd
010331fdloc_10331fd:
010331fdshrx edx, eax, ecx
01033202mov [r10], dl
01033205add rcx, 8
01033209inc r10
0103320ccmp rcx, 32
01033210jne 0x10331fd
01033212mov eax, [rsp+32]
01033216mov [r14+r13+8], eax
0103321bmov eax, [r12+12]
01033220mov r10, rbx
01033223xor ecx, ecx
01033225
01033225loc_1033225:
01033225shrx edx, eax, ecx
0103322amov [r10], dl
0103322dadd rcx, 8
01033231inc r10
01033234cmp rcx, 32
01033238jne 0x1033225
0103323amov eax, [rsp+36]
0103323emov [r14+r13+12], eax
01033243inc r15
01033246jmp 0x1033185
0103324b
0103324bloc_103324b:
0103324bxor r15l, r15l
0103324e
0103324eloc_103324e:
0103324ecmp r15, 4
01033252je 0x103331a
01033258mov rax, r15
0103325bshl rax, 5
0103325flea r12, [rsp+rax]
01033263add r12, 96
01033267mov eax, [r12+16]
0103326clea r10, [rsp+40]
01033271xor ecx, ecx
01033273
01033273loc_1033273:
01033273shrx edx, eax, ecx
01033278mov [r10], dl
0103327badd rcx, 8
0103327finc r10
01033282cmp rcx, 32
01033286jne 0x1033273
01033288mov r13, r15
0103328bshl r13, 4
0103328fmov eax, [rsp+40]
01033293mov [r14+r13+64], eax
01033298mov eax, [r12+20]
0103329dlea r10, [rsp+44]
010332a2xor ecx, ecx
010332a4
010332a4loc_10332a4:
010332a4shrx edx, eax, ecx
010332a9mov [r10], dl
010332acadd rcx, 8
010332b0inc r10
010332b3cmp rcx, 32
010332b7jne 0x10332a4
010332b9mov eax, [rsp+44]
010332bdmov [r14+r13+68], eax
010332c2mov eax, [r12+24]
010332c7mov r10, rsi
010332caxor ecx, ecx
010332cc
010332ccloc_10332cc:
010332ccshrx edx, eax, ecx
010332d1mov [r10], dl
010332d4add rcx, 8
010332d8inc r10
010332dbcmp rcx, 32
010332dfjne 0x10332cc
010332e1mov eax, [rsp+8]
010332e5mov [r14+r13+72], eax
010332eamov eax, [r12+28]
010332efmov r10, r8
010332f2xor ecx, ecx
010332f4
010332f4loc_10332f4:
010332f4shrx edx, eax, ecx
010332f9mov [r10], dl
010332fcadd rcx, 8
01033300inc r10
01033303cmp rcx, 32
01033307jne 0x10332f4
01033309mov eax, [rsp+64]
0103330dmov [r14+r13+76], eax
01033312inc r15
01033315jmp 0x103324e
0103331a
0103331aloc_103331a:
0103331amov rcx, [rsp+56]
0103331fsub rcx, -128
01033323vpaddd ymm2, ymm2, ymm7
01033327jmp 0x103303b
0103332c
0103332cloc_103332c:
0103332clea rsp, [rbp-40]
01033330pop rbx
01033331pop r12
01033333pop r13
01033335pop r14
01033337pop r15
01033339pop rbp
0103333avzeroupper
0103333dret
01032f08
0103333e
0103333eIo.Threaded.clockToPosix:
0103333epush rbp
0103333fmov rbp, rsp
01033342xor dil, 4
01033346movzx eax, dil
0103334aand eax, 7
0103334dmov eax, [4*rax+0x1007ca0]
01033354pop rbp
01033355ret
0103333e
0103333eIo.Threaded.clockToPosix:
0103333epush rbp
0103333fmov rbp, rsp
01033342xor dil, 4
01033346movzx eax, dil
0103334aand eax, 7
0103334dmov eax, [4*rax+0x1007ca0]
01033354pop rbp
01033355ret
0103333e
01033356
01033356Random.ChaCha.init:
01033356push rbp
01033357mov rbp, rsp
0103335apush rbx
0103335bsub rsp, 520
01033362mov rbx, rdi
01033365lea rdi, [rbp-520]
0103336cand [rdi-8], 0
01033371call crypto.chacha20.ChaChaIETF(8).stream
01033376lea rsi, [rbp-528]
0103337dmov ecx, 520
01033382mov rdi, rbx
01033385rep movsb [rdi], [rsi]
01033387mov rax, rbx
0103338aadd rsp, 520
01033391pop rbx
01033392pop rbp
01033393ret
01033356
01033356Random.ChaCha.init:
01033356push rbp
01033357mov rbp, rsp
0103335apush rbx
0103335bsub rsp, 520
01033362mov rbx, rdi
01033365lea rdi, [rbp-520]
0103336cand [rdi-8], 0
01033371call crypto.chacha20.ChaChaIETF(8).stream
01033376lea rsi, [rbp-528]
0103337dmov ecx, 520
01033382mov rdi, rbx
01033385rep movsb [rdi], [rsi]
01033387mov rax, rbx
0103338aadd rsp, 520
01033391pop rbx
01033392pop rbp
01033393ret
01033356
01033394
01033394Io.Threaded.randomMainThread:
01033394push rbp
01033395mov rbp, rsp
01033398push r15
0103339apush r14
0103339cpush r13
0103339epush r12
010333a0push rbx
010333a1sub rsp, 600
010333a8mov r14, rdx
010333abmov r15, rsi
010333aemov r13, rdi
010333b1lea rbx, [rdi+844]
010333b8mov rdi, rbx
010333bbcall Io.Threaded.mutexLockUncancelable
010333c0lea r12, [r13+8]
010333c4cmp [r13+8], -1
010333c9je 0x10333f3
010333cb
010333cbloc_10333cb:
010333cbmov rdi, r12
010333cemov rsi, r15
010333d1mov rdx, r14
010333d4call Random.ChaCha.fill
010333d9mov rdi, rbx
010333dccall Io.Threaded.mutexUnlock
010333e1add rsp, 600
010333e8pop rbx
010333e9pop r12
010333ebpop r13
010333edpop r14
010333efpop r15
010333f1pop rbp
010333f2ret
010333f3
010333f3loc_10333f3:
010333f3mov rdi, rbx
010333f6call Io.Threaded.mutexUnlock
010333fbmov rax, [0xfffffffffffbfff0]
01033404test rax, rax
01033407je 0x103341e
01033409mov cl, [rax+540]
0103340fmov [rax+540], 1
01033416and cl, 1
01033419mov [rbp-44], ecx
0103341cjmp 0x1033425
0103341e
0103341eloc_103341e:
0103341emov [rbp-44], 0
01033425
01033425loc_1033425:
01033425lea rsi, [rbp-80]
01033429push 32
0103342bpop rdx
0103342ccall Io.Threaded.randomSecure
01033431test ax, ax
01033434jne 0x103347a
01033436
01033436loc_1033436:
01033436mov rax, [0xfffffffffffbfff0]
0103343ftest rax, rax
01033442je 0x103344d
01033444mov ecx, [rbp-44]
01033447mov [rax+540], cl
0103344d
0103344dloc_103344d:
0103344dmov rdi, rbx
01033450call Io.Threaded.mutexLockUncancelable
01033455lea r13, [rbp-640]
0103345clea rsi, [rbp-80]
01033460mov rdi, r13
01033463call Random.ChaCha.init
01033468mov ecx, 520
0103346dmov rdi, r12
01033470mov rsi, r13
01033473rep movsb [rdi], [rsi]
01033475jmp 0x10333cb
0103347a
0103347aloc_103347a:
0103347avxorps x0, x0, x0
0103347eand [rbp-64], 0
01033483vmovaps [rbp-80], x0
01033488lea rax, [rbp-88]
0103348cxor ecx, ecx
0103348e
0103348eloc_103348e:
0103348eshrx rdx, r13, rcx
01033493mov [rax], dl
01033495add rcx, 8
01033499inc rax
0103349ccmp rcx, 64
010334a0jne 0x103348e
010334a2mov rax, [rbp-88]
010334a6mov [rbp-56], rax
010334aapush 39
010334acpop rax
010334adsyscall
010334aflea rcx, [rbp-48]
010334b3xor edx, edx
010334b5
010334b5loc_10334b5:
010334b5shrx esi, eax, edx
010334bamov [rcx], sil
010334bdadd rdx, 8
010334c1inc rcx
010334c4cmp rdx, 32
010334c8jne 0x10334b5
010334camov eax, [rbp-48]
010334cdmov [rbp-80], eax
010334d0xor r13l, r13l
010334d3lea rsi, [rbp-120]
010334d7xor edi, edi
010334d9call os.linux.clock_gettime
010334demov rcx, rax
010334e1neg rcx
010334e4cmp rax, -4095
010334eacmovae r13, rcx
010334eetest r13, r13
010334f1jne 0x1033436
010334f7lea rax, [rbp-96]
010334fbmov rcx, [rbp-120]
010334ffxor edx, edx
01033501
01033501loc_1033501:
01033501shrx rsi, rcx, rdx
01033506mov [rax], sil
01033509add rdx, 8
0103350dinc rax
01033510cmp rdx, 64
01033514jne 0x1033501
01033516mov rax, [rbp-96]
0103351amov [rbp-76], rax
0103351elea rax, [rbp-104]
01033522mov rcx, [rbp-112]
01033526xor edx, edx
01033528
01033528loc_1033528:
01033528shrx rsi, rcx, rdx
0103352dmov [rax], sil
01033530add rdx, 8
01033534inc rax
01033537cmp rdx, 64
0103353bjne 0x1033528
0103353dmov rax, [rbp-104]
01033541mov [rbp-68], rax
01033545jmp 0x1033436
01033394
01033394Io.Threaded.randomMainThread:
01033394push rbp
01033395mov rbp, rsp
01033398push r15
0103339apush r14
0103339cpush r13
0103339epush r12
010333a0push rbx
010333a1sub rsp, 600
010333a8mov r14, rdx
010333abmov r15, rsi
010333aemov r13, rdi
010333b1lea rbx, [rdi+844]
010333b8mov rdi, rbx
010333bbcall Io.Threaded.mutexLockUncancelable
010333c0lea r12, [r13+8]
010333c4cmp [r13+8], -1
010333c9je 0x10333f3
010333cb
010333cbloc_10333cb:
010333cbmov rdi, r12
010333cemov rsi, r15
010333d1mov rdx, r14
010333d4call Random.ChaCha.fill
010333d9mov rdi, rbx
010333dccall Io.Threaded.mutexUnlock
010333e1add rsp, 600
010333e8pop rbx
010333e9pop r12
010333ebpop r13
010333edpop r14
010333efpop r15
010333f1pop rbp
010333f2ret
010333f3
010333f3loc_10333f3:
010333f3mov rdi, rbx
010333f6call Io.Threaded.mutexUnlock
010333fbmov rax, [0xfffffffffffbfff0]
01033404test rax, rax
01033407je 0x103341e
01033409mov cl, [rax+540]
0103340fmov [rax+540], 1
01033416and cl, 1
01033419mov [rbp-44], ecx
0103341cjmp 0x1033425
0103341e
0103341eloc_103341e:
0103341emov [rbp-44], 0
01033425
01033425loc_1033425:
01033425lea rsi, [rbp-80]
01033429push 32
0103342bpop rdx
0103342ccall Io.Threaded.randomSecure
01033431test ax, ax
01033434jne 0x103347a
01033436
01033436loc_1033436:
01033436mov rax, [0xfffffffffffbfff0]
0103343ftest rax, rax
01033442je 0x103344d
01033444mov ecx, [rbp-44]
01033447mov [rax+540], cl
0103344d
0103344dloc_103344d:
0103344dmov rdi, rbx
01033450call Io.Threaded.mutexLockUncancelable
01033455lea r13, [rbp-640]
0103345clea rsi, [rbp-80]
01033460mov rdi, r13
01033463call Random.ChaCha.init
01033468mov ecx, 520
0103346dmov rdi, r12
01033470mov rsi, r13
01033473rep movsb [rdi], [rsi]
01033475jmp 0x10333cb
0103347a
0103347aloc_103347a:
0103347avxorps x0, x0, x0
0103347eand [rbp-64], 0
01033483vmovaps [rbp-80], x0
01033488lea rax, [rbp-88]
0103348cxor ecx, ecx
0103348e
0103348eloc_103348e:
0103348eshrx rdx, r13, rcx
01033493mov [rax], dl
01033495add rcx, 8
01033499inc rax
0103349ccmp rcx, 64
010334a0jne 0x103348e
010334a2mov rax, [rbp-88]
010334a6mov [rbp-56], rax
010334aapush 39
010334acpop rax
010334adsyscall
010334aflea rcx, [rbp-48]
010334b3xor edx, edx
010334b5
010334b5loc_10334b5:
010334b5shrx esi, eax, edx
010334bamov [rcx], sil
010334bdadd rdx, 8
010334c1inc rcx
010334c4cmp rdx, 32
010334c8jne 0x10334b5
010334camov eax, [rbp-48]
010334cdmov [rbp-80], eax
010334d0xor r13l, r13l
010334d3lea rsi, [rbp-120]
010334d7xor edi, edi
010334d9call os.linux.clock_gettime
010334demov rcx, rax
010334e1neg rcx
010334e4cmp rax, -4095
010334eacmovae r13, rcx
010334eetest r13, r13
010334f1jne 0x1033436
010334f7lea rax, [rbp-96]
010334fbmov rcx, [rbp-120]
010334ffxor edx, edx
01033501
01033501loc_1033501:
01033501shrx rsi, rcx, rdx
01033506mov [rax], sil
01033509add rdx, 8
0103350dinc rax
01033510cmp rdx, 64
01033514jne 0x1033501
01033516mov rax, [rbp-96]
0103351amov [rbp-76], rax
0103351elea rax, [rbp-104]
01033522mov rcx, [rbp-112]
01033526xor edx, edx
01033528
01033528loc_1033528:
01033528shrx rsi, rcx, rdx
0103352dmov [rax], sil
01033530add rdx, 8
01033534inc rax
01033537cmp rdx, 64
0103353bjne 0x1033528
0103353dmov rax, [rbp-104]
01033541mov [rbp-68], rax
01033545jmp 0x1033436
01033394
0103354a
0103354aIo.Threaded.clockResolution:
0103354apush rbp
0103354bmov rbp, rsp
0103354epush rbx
0103354fsub rsp, 24
01033553mov rbx, rdi
01033556mov edi, edx
01033558call Io.Threaded.clockToPosix
0103355dmov edi, eax
0103355flea rsi, [rbp-24]
01033563mov eax, 229
01033568syscall
0103356amov rdx, rax
0103356dneg rdx
01033570xor ecx, ecx
01033572cmp rax, -4095
01033578cmovae rcx, rdx
0103357ccmp rcx, 22
01033580je 0x10335a7
01033582test ecx, ecx
01033584jne 0x10335ad
01033586mov eax, 0x3b9aca00
0103358bimul [rbp-24]
0103358fmov rcx, [rbp-16]
01033593mov rsi, rcx
01033596sar rsi, 63
0103359aadd rax, rcx
0103359dadc rsi, rdx
010335a0movsxd rdx, esi
010335a3xor ecx, ecx
010335a5jmp 0x10335b1
010335a7
010335a7loc_10335a7:
010335a7mov cx, 84
010335abjmp 0x10335b1
010335ad
010335adloc_10335ad:
010335admov cx, 4
010335b1
010335b1loc_10335b1:
010335b1mov [rbx], rax
010335b4mov [rbx+8], rdx
010335b8mov [rbx+16], cx
010335bcand [rbx+18], 0
010335c1and [rbx+24], 0
010335c6mov rax, rbx
010335c9add rsp, 24
010335cdpop rbx
010335cepop rbp
010335cfret
0103354a
0103354aIo.Threaded.clockResolution:
0103354apush rbp
0103354bmov rbp, rsp
0103354epush rbx
0103354fsub rsp, 24
01033553mov rbx, rdi
01033556mov edi, edx
01033558call Io.Threaded.clockToPosix
0103355dmov edi, eax
0103355flea rsi, [rbp-24]
01033563mov eax, 229
01033568syscall
0103356amov rdx, rax
0103356dneg rdx
01033570xor ecx, ecx
01033572cmp rax, -4095
01033578cmovae rcx, rdx
0103357ccmp rcx, 22
01033580je 0x10335a7
01033582test ecx, ecx
01033584jne 0x10335ad
01033586mov eax, 0x3b9aca00
0103358bimul [rbp-24]
0103358fmov rcx, [rbp-16]
01033593mov rsi, rcx
01033596sar rsi, 63
0103359aadd rax, rcx
0103359dadc rsi, rdx
010335a0movsxd rdx, esi
010335a3xor ecx, ecx
010335a5jmp 0x10335b1
010335a7
010335a7loc_10335a7:
010335a7mov cx, 84
010335abjmp 0x10335b1
010335ad
010335adloc_10335ad:
010335admov cx, 4
010335b1
010335b1loc_10335b1:
010335b1mov [rbx], rax
010335b4mov [rbx+8], rdx
010335b8mov [rbx+16], cx
010335bcand [rbx+18], 0
010335c1and [rbx+24], 0
010335c6mov rax, rbx
010335c9add rsp, 24
010335cdpop rbx
010335cepop rbp
010335cfret
0103354a
010335d0
010335d0os.linux.clock_gettime:
010335d0push rbp
010335d1mov rbp, rsp
010335d4push r14
010335d6push rbx
010335d7mov rbx, rsi
010335damov r14l, edi
010335ddmov rax, [rip+0x16b6c]
010335e4test rax, rax
010335e7je 0x10335fc
010335e9mov edi, r14l
010335ecmov rsi, rbx
010335efcall rax
010335f1cmp rax, -22
010335f5je 0x1033609
010335f7test rax, rax
010335faje 0x1033609
010335fc
010335fcloc_10335fc:
010335fcmov edi, r14l
010335ffmov eax, 228
01033604mov rsi, rbx
01033607syscall
01033609
01033609loc_1033609:
01033609pop rbx
0103360apop r14
0103360cpop rbp
0103360dret
010335d0
010335d0os.linux.clock_gettime:
010335d0push rbp
010335d1mov rbp, rsp
010335d4push r14
010335d6push rbx
010335d7mov rbx, rsi
010335damov r14l, edi
010335ddmov rax, [rip+0x16b6c]
010335e4test rax, rax
010335e7je 0x10335fc
010335e9mov edi, r14l
010335ecmov rsi, rbx
010335efcall rax
010335f1cmp rax, -22
010335f5je 0x1033609
010335f7test rax, rax
010335faje 0x1033609
010335fc
010335fcloc_10335fc:
010335fcmov edi, r14l
010335ffmov eax, 228
01033604mov rsi, rbx
01033607syscall
01033609
01033609loc_1033609:
01033609pop rbx
0103360apop r14
0103360cpop rbp
0103360dret
010335d0
0103360e
0103360eos.linux.init_vdso_clock_gettime:
0103360epush rbp
0103360fmov rbp, rsp
01033612push r15
01033614push r14
01033616push r13
01033618push r12
0103361apush rbx
0103361bsub rsp, 56
0103361fmov [rbp-88], rsi
01033623mov [rbp-48], edi
01033626push 33
01033628pop rdi
01033629call os.linux.getauxvalImpl
0103362etest rax, rax
01033631je 0x103370a
01033637mov rdx, [rax+32]
0103363badd rdx, rax
0103363emovzx esi, [rax+56]
01033642push -1
01033644pop r8
01033646xor ecx, ecx
01033648
01033648loc_1033648:
01033648sub rsi, 1
0103364cjb 0x1033677
0103364emov edi, [rdx]
01033650cmp edi, 1
01033653je 0x1033663
01033655cmp edi, 2
01033658jne 0x103366e
0103365amov rcx, [rdx+8]
0103365eadd rcx, rax
01033661jmp 0x103366e
01033663
01033663loc_1033663:
01033663mov r8, [rdx+8]
01033667add r8, rax
0103366asub r8, [rdx+16]
0103366e
0103366eloc_103366e:
0103366emovzx edi, [rax+54]
01033672add rdx, rdi
01033675jmp 0x1033648
01033677
01033677loc_1033677:
01033677test rcx, rcx
0103367aje 0x103370a
01033680cmp r8, -1
01033684je 0x103370a
0103368aadd rcx, 8
0103368exor esi, esi
01033690xor r12l, r12l
01033693xor ebx, ebx
01033695xor r9l, r9l
01033698xor edi, edi
0103369a
0103369aloc_103369a:
0103369amov rdx, [rcx-8]
0103369etest rdx, rdx
010336a1je 0x10336ea
010336a3mov rax, [rcx]
010336a6add rax, r8
010336a9cmp rdx, 4
010336adje 0x10336e1
010336afcmp rdx, 5
010336b3je 0x10336d2
010336b5cmp rdx, 6
010336b9je 0x10336dc
010336bbcmp rdx, 0x6ffffff0
010336c2je 0x10336d7
010336c4cmp rdx, 0x6ffffffc
010336cbjne 0x10336e4
010336cdmov rdi, rax
010336d0jmp 0x10336e4
010336d2
010336d2loc_10336d2:
010336d2mov r9, rax
010336d5jmp 0x10336e4
010336d7
010336d7loc_10336d7:
010336d7mov rsi, rax
010336dajmp 0x10336e4
010336dc
010336dcloc_10336dc:
010336dcmov rbx, rax
010336dfjmp 0x10336e4
010336e1
010336e1loc_10336e1:
010336e1mov r12, rax
010336e4
010336e4loc_10336e4:
010336e4add rcx, 16
010336e8jmp 0x103369a
010336ea
010336ealoc_10336ea:
010336eamov [rbp-56], rdi
010336eemov [rbp-64], rsi
010336f2test r9, r9
010336f5sete al
010336f8test rbx, rbx
010336fbsete cl
010336feor cl, al
01033700test r12, r12
01033703sete al
01033706or al, cl
01033708je 0x1033727
0103370a
0103370aloc_103370a:
0103370amov [rip+0x16a3b], 0
01033715
01033715loc_1033715:
01033715push -38
01033717pop rax
01033718add rsp, 56
0103371cpop rbx
0103371dpop r12
0103371fpop r13
01033721pop r14
01033723pop r15
01033725pop rbp
01033726ret
01033727
01033727loc_1033727:
01033727cmp [rbp-56], 0
0103372csete al
0103372fcmp [rbp-64], 0
01033734sete cl
01033737or cl, al
01033739mov [rbp-41], cl
0103373cxor r13l, r13l
0103373fpush 39
01033741pop rsi
01033742mov edi, 1030
01033747mov [rbp-80], r8
0103374bmov [rbp-72], r9
0103374f
0103374floc_103374f:
0103374fmov eax, [r12+4]
01033754cmp r13, rax
01033757jae 0x103370a
01033759imul r14, r13, 24
0103375dmovzx eax, [rbx+r14+4]
01033763mov ecx, eax
01033765and ecx, 15
01033768bt esi, ecx
0103376bjae 0x1033827
01033771shr eax, 4
01033774bt edi, eax
01033777jae 0x1033827
0103377dadd r14, rbx
01033780cmp [r14+6], 0
01033786je 0x1033827
0103378cmov edi, [r14]
0103378fadd rdi, r9
01033792mov r15l, esi
01033795call mem.sliceTo__func_534
0103379amov rcx, rdx
0103379dmov edi, 0x1008595
010337a2push 20
010337a4pop rsi
010337a5mov rdx, rax
010337a8call mem.eql__func_22
010337admov edi, 1030
010337b2mov esi, r15l
010337b5mov r9, [rbp-72]
010337b9mov r8, [rbp-80]
010337bdtest al, 1
010337bfje 0x1033827
010337c1cmp [rbp-41], 0
010337c5jne 0x103382f
010337c7mov rax, [rbp-64]
010337cbmovzx eax, [rax+2*r13]
010337d0and eax, 32767
010337d5mov rcx, [rbp-56]
010337d9
010337d9loc_10337d9:
010337d9test [rcx+2], 1
010337ddjne 0x10337e5
010337dfcmp [rcx+4], ax
010337e3je 0x10337f2
010337e5
010337e5loc_10337e5:
010337e5mov edx, [rcx+16]
010337e8test rdx, rdx
010337ebje 0x1033827
010337edadd rcx, rdx
010337f0jmp 0x10337d9
010337f2
010337f2loc_10337f2:
010337f2mov eax, [rcx+12]
010337f5mov edi, [rax+rcx]
010337f8add rdi, r9
010337fbcall mem.sliceTo__func_534
01033800mov rcx, rdx
01033803mov edi, 0x1008bac
01033808push 9
0103380apop rsi
0103380bmov rdx, rax
0103380ecall mem.eql__func_22
01033813mov edi, 1030
01033818mov esi, r15l
0103381bmov r9, [rbp-72]
0103381fmov r8, [rbp-80]
01033823test al, 1
01033825jne 0x103382f
01033827
01033827loc_1033827:
01033827inc r13
0103382ajmp 0x103374f
0103382f
0103382floc_103382f:
0103382fadd r8, [r14+8]
01033833mov [rip+0x16916], r8
0103383aje 0x1033715
01033840mov edi, [rbp-48]
01033843mov rsi, [rbp-88]
01033847add rsp, 56
0103384bpop rbx
0103384cpop r12
0103384epop r13
01033850pop r14
01033852pop r15
01033854pop rbp
01033855jmp r8
0103360e
0103360eos.linux.init_vdso_clock_gettime:
0103360epush rbp
0103360fmov rbp, rsp
01033612push r15
01033614push r14
01033616push r13
01033618push r12
0103361apush rbx
0103361bsub rsp, 56
0103361fmov [rbp-88], rsi
01033623mov [rbp-48], edi
01033626push 33
01033628pop rdi
01033629call os.linux.getauxvalImpl
0103362etest rax, rax
01033631je 0x103370a
01033637mov rdx, [rax+32]
0103363badd rdx, rax
0103363emovzx esi, [rax+56]
01033642push -1
01033644pop r8
01033646xor ecx, ecx
01033648
01033648loc_1033648:
01033648sub rsi, 1
0103364cjb 0x1033677
0103364emov edi, [rdx]
01033650cmp edi, 1
01033653je 0x1033663
01033655cmp edi, 2
01033658jne 0x103366e
0103365amov rcx, [rdx+8]
0103365eadd rcx, rax
01033661jmp 0x103366e
01033663
01033663loc_1033663:
01033663mov r8, [rdx+8]
01033667add r8, rax
0103366asub r8, [rdx+16]
0103366e
0103366eloc_103366e:
0103366emovzx edi, [rax+54]
01033672add rdx, rdi
01033675jmp 0x1033648
01033677
01033677loc_1033677:
01033677test rcx, rcx
0103367aje 0x103370a
01033680cmp r8, -1
01033684je 0x103370a
0103368aadd rcx, 8
0103368exor esi, esi
01033690xor r12l, r12l
01033693xor ebx, ebx
01033695xor r9l, r9l
01033698xor edi, edi
0103369a
0103369aloc_103369a:
0103369amov rdx, [rcx-8]
0103369etest rdx, rdx
010336a1je 0x10336ea
010336a3mov rax, [rcx]
010336a6add rax, r8
010336a9cmp rdx, 4
010336adje 0x10336e1
010336afcmp rdx, 5
010336b3je 0x10336d2
010336b5cmp rdx, 6
010336b9je 0x10336dc
010336bbcmp rdx, 0x6ffffff0
010336c2je 0x10336d7
010336c4cmp rdx, 0x6ffffffc
010336cbjne 0x10336e4
010336cdmov rdi, rax
010336d0jmp 0x10336e4
010336d2
010336d2loc_10336d2:
010336d2mov r9, rax
010336d5jmp 0x10336e4
010336d7
010336d7loc_10336d7:
010336d7mov rsi, rax
010336dajmp 0x10336e4
010336dc
010336dcloc_10336dc:
010336dcmov rbx, rax
010336dfjmp 0x10336e4
010336e1
010336e1loc_10336e1:
010336e1mov r12, rax
010336e4
010336e4loc_10336e4:
010336e4add rcx, 16
010336e8jmp 0x103369a
010336ea
010336ealoc_10336ea:
010336eamov [rbp-56], rdi
010336eemov [rbp-64], rsi
010336f2test r9, r9
010336f5sete al
010336f8test rbx, rbx
010336fbsete cl
010336feor cl, al
01033700test r12, r12
01033703sete al
01033706or al, cl
01033708je 0x1033727
0103370a
0103370aloc_103370a:
0103370amov [rip+0x16a3b], 0
01033715
01033715loc_1033715:
01033715push -38
01033717pop rax
01033718add rsp, 56
0103371cpop rbx
0103371dpop r12
0103371fpop r13
01033721pop r14
01033723pop r15
01033725pop rbp
01033726ret
01033727
01033727loc_1033727:
01033727cmp [rbp-56], 0
0103372csete al
0103372fcmp [rbp-64], 0
01033734sete cl
01033737or cl, al
01033739mov [rbp-41], cl
0103373cxor r13l, r13l
0103373fpush 39
01033741pop rsi
01033742mov edi, 1030
01033747mov [rbp-80], r8
0103374bmov [rbp-72], r9
0103374f
0103374floc_103374f:
0103374fmov eax, [r12+4]
01033754cmp r13, rax
01033757jae 0x103370a
01033759imul r14, r13, 24
0103375dmovzx eax, [rbx+r14+4]
01033763mov ecx, eax
01033765and ecx, 15
01033768bt esi, ecx
0103376bjae 0x1033827
01033771shr eax, 4
01033774bt edi, eax
01033777jae 0x1033827
0103377dadd r14, rbx
01033780cmp [r14+6], 0
01033786je 0x1033827
0103378cmov edi, [r14]
0103378fadd rdi, r9
01033792mov r15l, esi
01033795call mem.sliceTo__func_534
0103379amov rcx, rdx
0103379dmov edi, 0x1008595
010337a2push 20
010337a4pop rsi
010337a5mov rdx, rax
010337a8call mem.eql__func_22
010337admov edi, 1030
010337b2mov esi, r15l
010337b5mov r9, [rbp-72]
010337b9mov r8, [rbp-80]
010337bdtest al, 1
010337bfje 0x1033827
010337c1cmp [rbp-41], 0
010337c5jne 0x103382f
010337c7mov rax, [rbp-64]
010337cbmovzx eax, [rax+2*r13]
010337d0and eax, 32767
010337d5mov rcx, [rbp-56]
010337d9
010337d9loc_10337d9:
010337d9test [rcx+2], 1
010337ddjne 0x10337e5
010337dfcmp [rcx+4], ax
010337e3je 0x10337f2
010337e5
010337e5loc_10337e5:
010337e5mov edx, [rcx+16]
010337e8test rdx, rdx
010337ebje 0x1033827
010337edadd rcx, rdx
010337f0jmp 0x10337d9
010337f2
010337f2loc_10337f2:
010337f2mov eax, [rcx+12]
010337f5mov edi, [rax+rcx]
010337f8add rdi, r9
010337fbcall mem.sliceTo__func_534
01033800mov rcx, rdx
01033803mov edi, 0x1008bac
01033808push 9
0103380apop rsi
0103380bmov rdx, rax
0103380ecall mem.eql__func_22
01033813mov edi, 1030
01033818mov esi, r15l
0103381bmov r9, [rbp-72]
0103381fmov r8, [rbp-80]
01033823test al, 1
01033825jne 0x103382f
01033827
01033827loc_1033827:
01033827inc r13
0103382ajmp 0x103374f
0103382f
0103382floc_103382f:
0103382fadd r8, [r14+8]
01033833mov [rip+0x16916], r8
0103383aje 0x1033715
01033840mov edi, [rbp-48]
01033843mov rsi, [rbp-88]
01033847add rsp, 56
0103384bpop rbx
0103384cpop r12
0103384epop r13
01033850pop r14
01033852pop r15
01033854pop rbp
01033855jmp r8
0103360e
Loading..