File zig_demo_f2072c8e87056dd4f010dfd24f7c5fd7f3ab5198bb7930c7044fb6b6b95222af.elf
Function:
    010357b0
    010357b0mem.sliceTo__func_539:
    010357b0push rbp
    010357b1mov rbp, rsp
    010357b4mov rax, rdi
    010357b7xor edx, edx
    010357b9
    010357b9loc_10357b9:
    010357b9movzx ecx, [rax+rdx]
    010357bdtest ecx, ecx
    010357bfje 0x10357cb
    010357c1cmp ecx, 61
    010357c4je 0x10357cb
    010357c6inc rdx
    010357c9jmp 0x10357b9
    010357cb
    010357cbloc_10357cb:
    010357cbpop rbp
    010357ccret
    010357b0
    010357cd
    010357cdIo.Threaded.posixExecveat:
    010357cdpush rbp
    010357cemov rbp, rsp
    010357d1push r15
    010357d3push r14
    010357d5push r13
    010357d7push r12
    010357d9push rbx
    010357dasub rsp, 4120
    010357e1mov rbx, rdx
    010357e4mov r15, rsi
    010357e7mov r12l, edi
    010357eamov r14, [rcx]
    010357edcall Io.Threaded.Thread.checkCancel
    010357f2test ax, ax
    010357f5jne 0x103598d
    010357fbtest r15, r15
    010357feje 0x103582b
    01035800cmp r12l, -100
    01035804je 0x1035818
    01035806mov rdi, r15
    01035809call mem.sliceTo__func_397
    0103580etest rdx, rdx
    01035811je 0x1035838
    01035813cmp [rax], 47
    01035816jne 0x1035838
    01035818
    01035818loc_1035818:
    01035818push 59
    0103581apop rax
    0103581bmov rdi, r15
    0103581emov rsi, rbx
    01035821mov rdx, r14
    01035824syscall
    01035826jmp 0x10358de
    0103582b
    0103582bloc_103582b:
    0103582bmov esi, 0x1008c09
    01035830mov r8l, 4096
    01035836jmp 0x103583e
    01035838
    01035838loc_1035838:
    01035838xor r8l, r8l
    0103583bmov rsi, r15
    0103583e
    0103583eloc_103583e:
    0103583emov edi, r12l
    01035841mov eax, 322
    01035846mov rdx, rbx
    01035849mov r10, r14
    0103584csyscall
    0103584emov rdx, rax
    01035851neg rdx
    01035854xor ecx, ecx
    01035856cmp rax, -4095
    0103585ccmovae rcx, rdx
    01035860cmp rcx, 38
    01035864jne 0x10358f0
    0103586alea r13, [rbp-56]
    0103586elea rdx, [rbp-4152]
    01035875mov ecx, 4096
    0103587amov rdi, r13
    0103587dmov esi, r12l
    01035880call Io.Threaded.realPathPosix
    01035885movzx ecx, [r13+8]
    0103588atest ecx, ecx
    0103588cjne 0x1035959
    01035892mov r12, [rbp-56]
    01035896test r15, r15
    01035899je 0x10358c3
    0103589bmov rdi, r15
    0103589ecall mem.sliceTo__func_397
    010358a3mov r15, rdx
    010358a6lea rdi, [r12+rbp]
    010358aaadd rdi, -4151
    010358b1mov [rdi-1], 47
    010358b5mov rsi, rax
    010358b8call compiler_rt.memcpy.memcpySmall
    010358bdadd r12, r15
    010358c0inc r12
    010358c3
    010358c3loc_10358c3:
    010358c3mov [rbp+r12-4152], 0
    010358ccpush 59
    010358cepop rax
    010358cflea rdi, [rbp-4152]
    010358d6mov rsi, rbx
    010358d9mov rdx, r14
    010358dcsyscall
    010358de
    010358deloc_10358de:
    010358demov rdx, rax
    010358e1neg rdx
    010358e4xor ecx, ecx
    010358e6cmp rax, -4095
    010358eccmovae rcx, rdx
    010358f0
    010358f0loc_10358f0:
    010358f0lea eax, [rcx-1]
    010358f3cmp eax, 25
    010358f6ja 0x1035908
    010358f8jmp [8*rax+0x1000f30]
    010358ffmov ax, 2
    01035903jmp 0x103598d
    01035908
    01035908loc_1035908:
    01035908cmp ecx, 36
    0103590bje 0x1035953
    0103590dcmp ecx, 40
    01035910je 0x1035989
    01035912cmp ecx, 80
    01035915jne 0x103591d
    01035917mov ax, 77
    0103591bjmp 0x103598d
    0103591d
    0103591dloc_103591d:
    0103591dmov ax, 4
    01035921jmp 0x103598d
    01035923mov ax, 36
    01035927jmp 0x103598d
    01035929mov ax, 32
    0103592djmp 0x103598d
    0103592fmov ax, 16
    01035933jmp 0x103598d
    01035935mov ax, 53
    01035939jmp 0x103598d
    0103593bmov ax, 37
    0103593fjmp 0x103598d
    01035941mov ax, 10
    01035945jmp 0x103598d
    01035947mov ax, 1
    0103594bjmp 0x103598d
    0103594dmov ax, 52
    01035951jmp 0x103598d
    01035953
    01035953loc_1035953:
    01035953mov ax, 56
    01035957jmp 0x103598d
    01035959
    01035959loc_1035959:
    01035959mov edx, ecx
    0103595badd edx, -6
    0103595ecmp edx, 58
    01035961ja 0x103599f
    01035963mov ax, 52
    01035967mov rsi, 0x32180000000007
    01035971bt rsi, rdx
    01035975jb 0x103598d
    01035977mov rax, 0x400000000000208
    01035981bt rax, rdx
    01035985mov eax, ecx
    01035987jae 0x103598d
    01035989
    01035989loc_1035989:
    01035989mov ax, 63
    0103598d
    0103598dloc_103598d:
    0103598dadd rsp, 4120
    01035994pop rbx
    01035995pop r12
    01035997pop r13
    01035999pop r14
    0103599bpop r15
    0103599dpop rbp
    0103599eret
    0103599f
    0103599floc_103599f:
    0103599fmov eax, ecx
    010359a1jmp 0x103598d
    010357cd
    010359a3
    010359a3Io.Threaded.realPathPosix:
    010359a3push rbp
    010359a4mov rbp, rsp
    010359a7push r15
    010359a9push r14
    010359abpush r13
    010359adpush r12
    010359afpush rbx
    010359b0sub rsp, 104
    010359b4mov r14, rcx
    010359b7mov r15, rdx
    010359bamov rbx, rdi
    010359bdcmp esi, -100
    010359c0jne 0x1035a00
    010359c2lea r12, [rbp-64]
    010359c6mov rdi, r12
    010359c9mov rsi, r15
    010359ccmov rdx, r14
    010359cfcall Io.Threaded.processCurrentPathPosix
    010359d4movzx eax, [r12+8]
    010359datest eax, eax
    010359dcjne 0x1035b1f
    010359e2mov rax, [rbp-64]
    010359e6
    010359e6loc_10359e6:
    010359e6mov [rbx], rax
    010359e9and [rbx+8], 0
    010359ee
    010359eeloc_10359ee:
    010359eemov rax, rbx
    010359f1add rsp, 104
    010359f5pop rbx
    010359f6pop r12
    010359f8pop r13
    010359fapop r14
    010359fcpop r15
    010359fepop rbp
    010359ffret
    01035a00
    01035a00loc_1035a00:
    01035a00lea rcx, [rbp-44]
    01035a04mov [rcx], esi
    01035a06lea r12, [rbp-104]
    01035a0alea rsi, [rbp-132]
    01035a11push 28
    01035a13pop rdx
    01035a14mov rdi, r12
    01035a17call mem.printSentinel__func_556
    01035a1cmov r12, [r12]
    01035a20lea r13, [rbp-80]
    01035a24mov rdi, r13
    01035a27call Io.Threaded.Syscall.start
    01035a2cmovzx eax, [r13+8]
    01035a31test ax, ax
    01035a34jne 0x1035b44
    01035a3amov r9, [rbp-80]
    01035a3epush 89
    01035a40pop r8
    01035a42xor r10l, r10l
    01035a45
    01035a45loc_1035a45:
    01035a45mov rax, r8
    01035a48mov rdi, r12
    01035a4bmov rsi, r15
    01035a4emov rdx, r14
    01035a51syscall
    01035a53mov rcx, rax
    01035a56neg rcx
    01035a59cmp rax, -4095
    01035a5fcmovb rcx, r10
    01035a63cmp rcx, 4
    01035a67jne 0x1035a94
    01035a69test r9, r9
    01035a6cje 0x1035a45
    01035a6emov rax, [r9+8]
    01035a72
    01035a72loc_1035a72:
    01035a72mov rcx, rax
    01035a75or rcx, 2
    01035a79lock cmpxchg [r9+8], rcx
    01035a7fjne 0x1035a72
    01035a81and eax, 7
    01035a84cmp eax, 5
    01035a87jne 0x1035a45
    01035a89mov [rbx+8], 17
    01035a8fjmp 0x10359ee
    01035a94
    01035a94loc_1035a94:
    01035a94test ecx, ecx
    01035a96jne 0x1035aac
    01035a98test r9, r9
    01035a9bje 0x10359e6
    01035aa1lock xor [r9+8], 3
    01035aa7jmp 0x10359e6
    01035aac
    01035aacloc_1035aac:
    01035aactest r9, r9
    01035aafje 0x1035ab7
    01035ab1lock xor [r9+8], 3
    01035ab7
    01035ab7loc_1035ab7:
    01035ab7movzx eax, cx
    01035abalea ecx, [rax-12]
    01035abdcmp ecx, 8
    01035ac0jbe 0x1035adb
    01035ac2cmp eax, 2
    01035ac5je 0x1035b33
    01035ac7cmp eax, 5
    01035acaje 0x1035b15
    01035acccmp eax, 36
    01035acfje 0x1035b29
    01035ad1cmp eax, 40
    01035ad4je 0x1035b0b
    01035ad6cmp eax, 84
    01035ad9jmp 0x1035ae2
    01035adb
    01035adbloc_1035adb:
    01035adbjmp [8*rcx+0x1001000]
    01035ae2
    01035ae2loc_1035ae2:
    01035ae2mov [rbx+8], 4
    01035ae8jmp 0x10359ee
    01035aedvmovups x0, [rip-0x2e285]
    01035af5jmp 0x1035b3b
    01035af7vmovups x0, [rip-0x2e32f]
    01035affjmp 0x1035b3b
    01035b01vmovups x0, [rip-0x2e259]
    01035b09jmp 0x1035b3b
    01035b0b
    01035b0bloc_1035b0b:
    01035b0bvmovups x0, [rip-0x2e223]
    01035b13jmp 0x1035b3b
    01035b15
    01035b15loc_1035b15:
    01035b15vmovups x0, [rip-0x2e18d]
    01035b1djmp 0x1035b3b
    01035b1f
    01035b1floc_1035b1f:
    01035b1fcmp eax, 74
    01035b22je 0x1035b33
    01035b24cmp eax, 75
    01035b27jne 0x1035b4d
    01035b29
    01035b29loc_1035b29:
    01035b29vmovups x0, [rip-0x2e321]
    01035b31jmp 0x1035b3b
    01035b33
    01035b33loc_1035b33:
    01035b33vmovups x0, [rip-0x2e23b]
    01035b3b
    01035b3bloc_1035b3b:
    01035b3bvmovups [rbx], x0
    01035b3fjmp 0x10359ee
    01035b44
    01035b44loc_1035b44:
    01035b44mov [rbx+8], ax
    01035b48jmp 0x10359ee
    01035b4d
    01035b4dloc_1035b4d:
    01035b4dmov [rbx+8], ax
    01035b51jmp 0x10359ee
    010359a3
    01035b56
    01035b56mem.printSentinel__func_556:
    01035b56push rbp
    01035b57mov rbp, rsp
    01035b5apush r14
    01035b5cpush rbx
    01035b5dsub rsp, 32
    01035b61mov rbx, rdi
    01035b64lea rdi, [rbp-48]
    01035b68mov [rdi], 0x1005f80
    01035b6fmov [rdi+8], rsi
    01035b73mov [rdi+16], rdx
    01035b77and [rdi+24], 0
    01035b7cmov r14l, [rcx]
    01035b7fpush 14
    01035b81pop rdx
    01035b82mov esi, 0x1006fdd
    01035b87call Io.Writer.writeAll
    01035b8ctest ax, ax
    01035b8fjne 0x1035bdc
    01035b91lea rdi, [rbp-48]
    01035b95mov esi, r14l
    01035b98call Io.Writer.printValue__func_551
    01035b9dtest ax, ax
    01035ba0jne 0x1035bdc
    01035ba2lea rdi, [rbp-48]
    01035ba6push 1
    01035ba8pop rdx
    01035ba9mov esi, 0x1008c09
    01035baecall Io.Writer.writeAll
    01035bb3test ax, ax
    01035bb6jne 0x1035bdc
    01035bb8mov rax, [rbp-40]
    01035bbcmov rcx, [rbp-24]
    01035bc0dec rcx
    01035bc3mov [rbx], rax
    01035bc6mov [rbx+8], rcx
    01035bcaxor eax, eax
    01035bcc
    01035bccloc_1035bcc:
    01035bccmov [rbx+16], ax
    01035bd0mov rax, rbx
    01035bd3add rsp, 32
    01035bd7pop rbx
    01035bd8pop r14
    01035bdapop rbp
    01035bdbret
    01035bdc
    01035bdcloc_1035bdc:
    01035bdcmov ax, 8
    01035be0jmp 0x1035bcc
    01035b56
    01035be2
    01035be2Io.Threaded.processCurrentPathPosix:
    01035be2push rbp
    01035be3mov rbp, rsp
    01035be6push r14
    01035be8push rbx
    01035be9sub rsp, 16
    01035bedmov r8, rsi
    01035bf0mov rbx, rdi
    01035bf3push 79
    01035bf5pop rax
    01035bf6mov rdi, rsi
    01035bf9mov rsi, rdx
    01035bfcsyscall
    01035bfemov rsi, rax
    01035c01neg rsi
    01035c04xor ecx, ecx
    01035c06cmp rax, -4095
    01035c0ccmovae rcx, rsi
    01035c10test rcx, rcx
    01035c13je 0x1035c58
    01035c15cmp ecx, 2
    01035c18je 0x1035c4a
    01035c1acmp ecx, 14
    01035c1dje 0x1035c38
    01035c1fcmp ecx, 22
    01035c22je 0x1035c38
    01035c24cmp ecx, 34
    01035c27je 0x1035c40
    01035c29cmp ecx, 36
    01035c2cjne 0x1035c38
    01035c2evmovups x0, [rip-0x2e366]
    01035c36jmp 0x1035c52
    01035c38
    01035c38loc_1035c38:
    01035c38mov [rbx+8], 4
    01035c3ejmp 0x1035c74
    01035c40
    01035c40loc_1035c40:
    01035c40vmovups x0, [rip-0x2e438]
    01035c48jmp 0x1035c52
    01035c4a
    01035c4aloc_1035c4a:
    01035c4avmovups x0, [rip-0x2e332]
    01035c52
    01035c52loc_1035c52:
    01035c52vmovups [rbx], x0
    01035c56jmp 0x1035c74
    01035c58
    01035c58loc_1035c58:
    01035c58lea r14, [rbp-32]
    01035c5cmov rdi, r14
    01035c5fmov rsi, r8
    01035c62xor ecx, ecx
    01035c64call mem.findScalar__func_21
    01035c69mov rax, [r14]
    01035c6cmov [rbx], rax
    01035c6fand [rbx+8], 0
    01035c74
    01035c74loc_1035c74:
    01035c74mov rax, rbx
    01035c77add rsp, 16
    01035c7bpop rbx
    01035c7cpop r14
    01035c7epop rbp
    01035c7fret
    01035be2
    01035c80
    01035c80process.Environ.Map.createPosixBlock:
    01035c80push rbp
    01035c81mov rbp, rsp
    01035c84push r15
    01035c86push r14
    01035c88push r13
    01035c8apush r12
    01035c8cpush rbx
    01035c8dsub rsp, 424
    01035c94mov r15, rsi
    01035c97mov [rbp-88], rdx
    01035c9bvmovups x0, [rdx]
    01035c9fvmovaps [rbp-192], x0
    01035ca7mov r13, rdi
    01035caamov eax, [rcx]
    01035cacmov [rbp-76], eax
    01035caftest [rcx+4], 1
    01035cb3mov [rbp-64], rdi
    01035cb7je 0x1035fbf
    01035cbdmov r14, [r15+24]
    01035cc1test r14, r14
    01035cc4mov [rbp-56], r15
    01035cc8je 0x1035d3a
    01035ccamov r15l, [r14]
    01035ccdcmp r15b, 17
    01035cd1mov al, 2
    01035cd3sbb al, 0
    01035cd5xor ecx, ecx
    01035cd7cmp r15b, 9
    01035cdbmovzx eax, al
    01035cdecmovb eax, ecx
    01035ce1test al, al
    01035ce3je 0x1035da0
    01035ce9movzx eax, al
    01035ceccmp eax, 1
    01035cefjne 0x1035de5
    01035cf5mov rcx, [rbp-56]
    01035cf9mov rax, [rcx+16]
    01035cfdlea rsi, [rbp-368]
    01035d04mov [rsi+16], rax
    01035d08vmovups x0, [rcx]
    01035d0cvmovaps [rsi], x0
    01035d10mov [rsi+24], r14
    01035d14lea rbx, [rbp-168]
    01035d1bmov rdi, rbx
    01035d1ecall multi_array_list.MultiArrayList(array_hash_map.Custom([]const u8,[]const u8,process.Environ.Map.EnvNameHashContext,false).Data).slice
    01035d23cmp [rbx+32], 0
    01035d28je 0x1035e32
    01035d2emov r13, [rbp-160]
    01035d35jmp 0x1035e36
    01035d3a
    01035d3aloc_1035d3a:
    01035d3alea rbx, [rbp-168]
    01035d41mov rdi, rbx
    01035d44mov rsi, r15
    01035d47call multi_array_list.MultiArrayList(array_hash_map.Custom([]const u8,[]const u8,process.Environ.Map.EnvNameHashContext,false).Data).slice
    01035d4ccmp [rbx+32], 0
    01035d51je 0x1035e2a
    01035d57mov rcx, [rbp-160]
    01035d5emov r15, [rbp-144]
    01035d65add rcx, 8
    01035d69inc r15
    01035d6cpush 12
    01035d6epop rbx
    01035d6f
    01035d6floc_1035d6f:
    01035d6fdec r15
    01035d72setne r14b
    01035d76je 0x1035f69
    01035d7clea r12, [rcx+16]
    01035d80mov rdx, [rcx-8]
    01035d84mov rcx, [rcx]
    01035d87mov edi, 0x1008b40
    01035d8cmov rsi, rbx
    01035d8fcall mem.eql__func_22
    01035d94mov rcx, r12
    01035d97test al, 1
    01035d99je 0x1035d6f
    01035d9bjmp 0x1035f69
    01035da0
    01035da0loc_1035da0:
    01035da0mov rcx, [rbp-56]
    01035da4mov rax, [rcx+16]
    01035da8lea rsi, [rbp-368]
    01035dafmov [rsi+16], rax
    01035db3vmovups x0, [rcx]
    01035db7vmovaps [rsi], x0
    01035dbbmov [rsi+24], r14
    01035dbflea rbx, [rbp-168]
    01035dc6mov rdi, rbx
    01035dc9call multi_array_list.MultiArrayList(array_hash_map.Custom([]const u8,[]const u8,process.Environ.Map.EnvNameHashContext,false).Data).slice
    01035dcecmp [rbx+32], 0
    01035dd3je 0x1035e9d
    01035dd9mov r13, [rbp-160]
    01035de0jmp 0x1035ea1
    01035de5
    01035de5loc_1035de5:
    01035de5mov rcx, [rbp-56]
    01035de9mov rax, [rcx+16]
    01035dedlea rsi, [rbp-368]
    01035df4mov [rsi+16], rax
    01035df8vmovups x0, [rcx]
    01035dfcvmovaps [rsi], x0
    01035e00mov [rsi+24], r14
    01035e04lea rbx, [rbp-168]
    01035e0bmov rdi, rbx
    01035e0ecall multi_array_list.MultiArrayList(array_hash_map.Custom([]const u8,[]const u8,process.Environ.Map.EnvNameHashContext,false).Data).slice
    01035e13cmp [rbx+32], 0
    01035e18je 0x1035f03
    01035e1emov r12, [rbp-160]
    01035e25jmp 0x1035f07
    01035e2a
    01035e2aloc_1035e2a:
    01035e2axor r14l, r14l
    01035e2djmp 0x1035f69
    01035e32
    01035e32loc_1035e32:
    01035e32push 8
    01035e34pop r13
    01035e36
    01035e36loc_1035e36:
    01035e36call array_hash_map.Custom([]const u8,[]const u8,process.Environ.Map.EnvNameHashContext,false).checkedHash__func_585
    01035e3bmov r12l, eax
    01035e3exor ebx, ebx
    01035e40
    01035e40loc_1035e40:
    01035e40lea eax, [r12+rbx]
    01035e44push 1
    01035e46pop rcx
    01035e47shlx rcx, rcx, r15
    01035e4cmov edx, -1
    01035e51add ecx, edx
    01035e53and ecx, eax
    01035e55movzx eax, [r14+4*rcx+4]
    01035e5bcmp rax, 65535
    01035e61je 0x1035f5d
    01035e67cmp [r14+4*rcx+6], bx
    01035e6djb 0x1035f5d
    01035e73shl eax, 4
    01035e76mov rdx, [r13+rax]
    01035e7bmov rcx, [r13+rax+8]
    01035e80mov edi, 0x1008b40
    01035e85push 12
    01035e87pop rsi
    01035e88call mem.eql__func_22
    01035e8dtest al, 1
    01035e8fjne 0x1035f62
    01035e95mov r15l, [r14]
    01035e98inc rbx
    01035e9bjmp 0x1035e40
    01035e9d
    01035e9dloc_1035e9d:
    01035e9dpush 8
    01035e9fpop r13
    01035ea1
    01035ea1loc_1035ea1:
    01035ea1call array_hash_map.Custom([]const u8,[]const u8,process.Environ.Map.EnvNameHashContext,false).checkedHash__func_585
    01035ea6mov r12l, eax
    01035ea9xor ebx, ebx
    01035eab
    01035eabloc_1035eab:
    01035eablea eax, [r12+rbx]
    01035eafpush 1
    01035eb1pop rcx
    01035eb2shlx rcx, rcx, r15
    01035eb7mov edx, -1
    01035ebcadd ecx, edx
    01035ebeand ecx, eax
    01035ec0movzx eax, [r14+2*rcx+4]
    01035ec6cmp rax, 255
    01035eccje 0x1035f5d
    01035ed2cmp [r14+2*rcx+5], bl
    01035ed7jb 0x1035f5d
    01035eddshl eax, 4
    01035ee0mov rdx, [r13+rax]
    01035ee5mov rcx, [r13+rax+8]
    01035eeamov edi, 0x1008b40
    01035eefpush 12
    01035ef1pop rsi
    01035ef2call mem.eql__func_22
    01035ef7test al, 1
    01035ef9jne 0x1035f62
    01035efbmov r15l, [r14]
    01035efeinc rbx
    01035f01jmp 0x1035eab
    01035f03
    01035f03loc_1035f03:
    01035f03push 8
    01035f05pop r12
    01035f07
    01035f07loc_1035f07:
    01035f07call array_hash_map.Custom([]const u8,[]const u8,process.Environ.Map.EnvNameHashContext,false).checkedHash__func_585
    01035f0cmov ebx, eax
    01035f0exor r13l, r13l
    01035f11
    01035f11loc_1035f11:
    01035f11lea ecx, [rbx+r13]
    01035f15push 1
    01035f17pop rax
    01035f18shlx rax, rax, r15
    01035f1dmov edx, -1
    01035f22add eax, edx
    01035f24and eax, ecx
    01035f26mov ecx, [r14+8*rax+4]
    01035f2bcmp rcx, rdx
    01035f2eje 0x1035f5d
    01035f30cmp [r14+8*rax+8], r13l
    01035f35jb 0x1035f5d
    01035f37shl rcx, 4
    01035f3bmov rdx, [r12+rcx]
    01035f3fmov rcx, [r12+rcx+8]
    01035f44mov edi, 0x1008b40
    01035f49push 12
    01035f4bpop rsi
    01035f4ccall mem.eql__func_22
    01035f51test al, 1
    01035f53jne 0x1035f62
    01035f55mov r15l, [r14]
    01035f58inc r13
    01035f5bjmp 0x1035f11
    01035f5d
    01035f5dloc_1035f5d:
    01035f5dxor r14l, r14l
    01035f60jmp 0x1035f65
    01035f62
    01035f62loc_1035f62:
    01035f62mov r14b, 1
    01035f65
    01035f65loc_1035f65:
    01035f65mov r13, [rbp-64]
    01035f69
    01035f69loc_1035f69:
    01035f69cmp [rbp-76], 0
    01035f6djs 0x1035f98
    01035f6fmov al, 1
    01035f71mov [rbp-44], eax
    01035f74test r14b, r14b
    01035f77mov r15, [rbp-56]
    01035f7bjne 0x1035fc6
    01035f7dvmovaps x0, [rbp-192]
    01035f85vmovaps [rbp-208], x0
    01035f8dmov rdx, [r15+8]
    01035f91inc rdx
    01035f94mov al, 3
    01035f96jmp 0x1035fba
    01035f98
    01035f98loc_1035f98:
    01035f98test r14b, r14b
    01035f9bmov r15, [rbp-56]
    01035f9fje 0x1035fbf
    01035fa1vmovaps x0, [rbp-192]
    01035fa9vmovaps [rbp-208], x0
    01035fb1mov rdx, [r15+8]
    01035fb5dec rdx
    01035fb8mov al, 2
    01035fba
    01035fbaloc_1035fba:
    01035fbamov [rbp-44], eax
    01035fbdjmp 0x1035fda
    01035fbf
    01035fbfloc_1035fbf:
    01035fbfmov [rbp-44], 0
    01035fc6
    01035fc6loc_1035fc6:
    01035fc6vmovaps x0, [rbp-192]
    01035fcevmovaps [rbp-208], x0
    01035fd6mov rdx, [r15+8]
    01035fda
    01035fdaloc_1035fda:
    01035fdalea rbx, [rbp-392]
    01035fe1lea rsi, [rbp-208]
    01035fe8mov rdi, rbx
    01035febcall mem.Allocator.allocSentinel__func_536
    01035ff0movzx eax, [rbx+16]
    01035ff4test ax, ax
    01035ff7jne 0x10363cb
    01035ffdmov rax, [rbp-392]
    01036004mov [rbp-72], rax
    01036008mov rax, [rbp-384]
    0103600fmov [rbp-232], rax
    01036016cmp [rbp-44], 3
    0103601aje 0x1036026
    0103601cmov [rbp-56], 0
    01036024jmp 0x1036067
    01036026
    01036026loc_1036026:
    01036026lea rdx, [rbp-300]
    0103602dmov eax, [rbp-76]
    01036030mov [rdx], eax
    01036032lea rbx, [rbp-416]
    01036039mov rdi, rbx
    0103603cmov rsi, [rbp-88]
    01036040call fmt.allocPrintSentinel__func_541
    01036045movzx ebx, [rbx+16]
    01036049test bx, bx
    0103604cjne 0x10363d5
    01036052push 1
    01036054pop rax
    01036055mov [rbp-56], rax
    01036059mov rax, [rbp-416]
    01036060mov rcx, [rbp-72]
    01036064mov [rcx], rax
    01036067
    01036067loc_1036067:
    01036067push 8
    01036069pop r14
    0103606blea rbx, [rbp-168]
    01036072mov rdi, rbx
    01036075mov rsi, r15
    01036078call multi_array_list.MultiArrayList(array_hash_map.Custom([]const u8,[]const u8,process.Environ.Map.EnvNameHashContext,false).Data).slice
    0103607dmov rax, [rbx+8]
    01036081mov [rbp-240], rax
    01036088mov rax, [rbx+24]
    0103608cmov [rbp-248], rax
    01036093mov rax, [rbx+32]
    01036097mov [rbp-256], rax
    0103609emov rdi, rbx
    010360a1mov rsi, r15
    010360a4call multi_array_list.MultiArrayList(array_hash_map.Custom([]const u8,[]const u8,process.Environ.Map.EnvNameHashContext,false).Data).slice
    010360a9cmp [rbx+32], 0
    010360aemov rbx, r14
    010360b1mov [rbp-104], r14
    010360b5je 0x10360c2
    010360b7mov rax, [rbp-152]
    010360bemov [rbp-104], rax
    010360c2
    010360c2loc_10360c2:
    010360c2xor r14l, r14l
    010360c5movzx eax, [rbp-44]
    010360c9mov [rbp-92], eax
    010360cc
    010360ccloc_10360cc:
    010360cccmp [rbp-256], 0
    010360d4je 0x1036334
    010360dacmp [rbp-248], r14
    010360e1jbe 0x1036334
    010360e7mov rax, [rbp-240]
    010360eemov r12, [rax+rbx-8]
    010360f3mov r15, [rax+rbx]
    010360f7mov rax, [rbp-104]
    010360fbmov r13, [rax+rbx-8]
    01036100mov rax, [rax+rbx]
    01036104mov [rbp-272], rax
    0103610bmov edx, 0x1008b40
    01036110mov rdi, r12
    01036113mov rsi, r15
    01036116push 12
    01036118pop rcx
    01036119call mem.eql__func_22
    0103611etest al, 1
    01036120je 0x103622e
    01036126cmp [rbp-44], 0
    0103612aje 0x103622e
    01036130cmp [rbp-92], 2
    01036134je 0x1036328
    0103613amov r13, rbx
    0103613dmov rax, [rbp-88]
    01036141vmovups x0, [rax]
    01036145vmovaps [rbp-224], x0
    0103614dlea rdi, [rbp-168]
    01036154lea rsi, [rbp-224]
    0103615bpush 7
    0103615dpop rdx
    0103615ecall Io.Writer.Allocating.initCapacity
    01036163movzx ebx, [rbp-112]
    01036167test bx, bx
    0103616ajne 0x10363b5
    01036170vmovups ymm0, [rbp-168]
    01036178vmovups ymm1, [rbp-144]
    01036180vmovups [rbp-344], ymm1
    01036188vmovups [rbp-368], ymm0
    01036190lea rbx, [rbp-352]
    01036197mov rdi, rbx
    0103619amov rsi, r12
    0103619dmov rdx, r15
    010361a0vzeroupper
    010361a3call Io.Writer.writeAll
    010361a8test ax, ax
    010361abjne 0x10363a5
    010361b1mov esi, 0x1006feb
    010361b6mov rdi, rbx
    010361b9push 1
    010361bbpop rdx
    010361bccall Io.Writer.writeAll
    010361c1test ax, ax
    010361c4jne 0x10363a5
    010361camov rdi, rbx
    010361cdmov esi, [rbp-76]
    010361d0call Io.Writer.printValue__func_551
    010361d5test ax, ax
    010361d8jne 0x10363a5
    010361delea rdi, [rbp-296]
    010361e5lea rbx, [rbp-368]
    010361ecmov rsi, rbx
    010361efcall Io.Writer.Allocating.toOwnedSliceSentinel__func_550
    010361f4mov rdi, rbx
    010361f7call Io.Writer.Allocating.deinit
    010361fcmovzx ebx, [rbp-280]
    01036203test bx, bx
    01036206jne 0x10363b5
    0103620cmov rax, [rbp-296]
    01036213mov rcx, [rbp-72]
    01036217mov rdx, [rbp-56]
    0103621bmov [rcx+8*rdx], rax
    0103621finc rdx
    01036222mov [rbp-56], rdx
    01036226mov rbx, r13
    01036229jmp 0x1036328
    0103622e
    0103622eloc_103622e:
    0103622emov [rbp-264], rbx
    01036235mov rax, [rbp-88]
    01036239vmovups x0, [rax]
    0103623dvmovaps [rbp-224], x0
    01036245lea rdi, [rbp-168]
    0103624clea rsi, [rbp-224]
    01036253push 7
    01036255pop rdx
    01036256call Io.Writer.Allocating.initCapacity
    0103625bmovzx ebx, [rbp-112]
    0103625ftest bx, bx
    01036262jne 0x1036376
    01036268vmovups ymm0, [rbp-168]
    01036270vmovups ymm1, [rbp-144]
    01036278vmovups [rbp-344], ymm1
    01036280vmovups [rbp-368], ymm0
    01036288lea rbx, [rbp-352]
    0103628fmov rdi, rbx
    01036292mov rsi, r12
    01036295mov rdx, r15
    01036298vzeroupper
    0103629bcall Io.Writer.writeAll
    010362a0test ax, ax
    010362a3jne 0x1036366
    010362a9mov esi, 0x1006feb
    010362aemov rdi, rbx
    010362b1push 1
    010362b3pop rdx
    010362b4call Io.Writer.writeAll
    010362b9test ax, ax
    010362bcjne 0x1036366
    010362c2mov rdi, rbx
    010362c5mov rsi, r13
    010362c8mov rdx, [rbp-272]
    010362cfcall Io.Writer.writeAll
    010362d4test ax, ax
    010362d7jne 0x1036366
    010362ddlea rdi, [rbp-296]
    010362e4lea rbx, [rbp-368]
    010362ebmov rsi, rbx
    010362eecall Io.Writer.Allocating.toOwnedSliceSentinel__func_550
    010362f3mov rdi, rbx
    010362f6call Io.Writer.Allocating.deinit
    010362fbmovzx ebx, [rbp-280]
    01036302test bx, bx
    01036305jne 0x1036376
    01036307mov rax, [rbp-296]
    0103630emov rcx, [rbp-72]
    01036312mov rdx, [rbp-56]
    01036316mov [rcx+8*rdx], rax
    0103631ainc rdx
    0103631dmov [rbp-56], rdx
    01036321mov rbx, [rbp-264]
    01036328
    01036328loc_1036328:
    01036328inc r14
    0103632badd rbx, 16
    0103632fjmp 0x10360cc
    01036334
    01036334loc_1036334:
    01036334mov r13, [rbp-64]
    01036338and [r13+16], 0
    0103633emov rax, [rbp-72]
    01036342mov [r13], rax
    01036346mov rax, [rbp-232]
    0103634dmov [r13+8], rax
    01036351
    01036351loc_1036351:
    01036351mov rax, r13
    01036354add rsp, 424
    0103635bpop rbx
    0103635cpop r12
    0103635epop r13
    01036360pop r14
    01036362pop r15
    01036364pop rbp
    01036365ret
    01036366
    01036366loc_1036366:
    01036366lea rdi, [rbp-368]
    0103636dcall Io.Writer.Allocating.deinit
    01036372mov bx, 26
    01036376
    01036376loc_1036376:
    01036376mov rax, [rbp-72]
    0103637amov rcx, [rbp-56]
    0103637eand [rax+8*rcx], 0
    01036383lea rdi, [rbp-464]
    0103638a
    0103638aloc_103638a:
    0103638amov [rdi], rax
    0103638dmov [rdi+8], rcx
    01036391mov rsi, [rbp-88]
    01036395call process.Environ.PosixBlock.deinit
    0103639amov r13, [rbp-64]
    0103639e
    0103639eloc_103639e:
    0103639emov [r13+16], bx
    010363a3jmp 0x1036351
    010363a5
    010363a5loc_10363a5:
    010363a5lea rdi, [rbp-368]
    010363accall Io.Writer.Allocating.deinit
    010363b1mov bx, 26
    010363b5
    010363b5loc_10363b5:
    010363b5mov rax, [rbp-72]
    010363b9mov rcx, [rbp-56]
    010363bdand [rax+8*rcx], 0
    010363c2lea rdi, [rbp-448]
    010363c9jmp 0x103638a
    010363cb
    010363cbloc_10363cb:
    010363cbmov [r13+16], ax
    010363d0jmp 0x1036351
    010363d5
    010363d5loc_10363d5:
    010363d5mov rax, [rbp-72]
    010363d9and [rax], 0
    010363ddlea rdi, [rbp-432]
    010363e4mov [rdi], rax
    010363e7and [rdi+8], 0
    010363ecmov rsi, [rbp-88]
    010363f0call process.Environ.PosixBlock.deinit
    010363f5jmp 0x103639e
    01035c80
    010363f7
    010363f7multi_array_list.MultiArrayList(array_hash_map.Custom([]const u8,[]const u8,process.Environ.Map.EnvNameHashContext,false).Data).slice:
    010363f7push rbp
    010363f8mov rbp, rsp
    010363fbmov rax, rdi
    010363femov rcx, [rsi]
    01036401mov rdx, [rsi+16]
    01036405vmovups x0, [rsi+8]
    0103640avmovups [rbp-16], x0
    0103640fmov rsi, -24
    01036419
    01036419loc_1036419:
    01036419test rsi, rsi
    0103641cje 0x103643e
    0103641emov rdi, [rsi+0x1004080]
    01036425mov [rbp+8*rdi-40], rcx
    0103642amov rdi, [rsi+0x1007008]
    01036431imul rdi, rdx
    01036435add rcx, rdi
    01036438add rsi, 8
    0103643cjmp 0x1036419
    0103643e
    0103643eloc_103643e:
    0103643emov rcx, [rbp-8]
    01036442mov [rax+32], rcx
    01036446vmovups ymm0, [rbp-40]
    0103644bvmovups [rax], ymm0
    0103644fpop rbp
    01036450vzeroupper
    01036453ret
    010363f7
    01036454
    01036454mem.Allocator.allocSentinel__func_536:
    01036454push rbp
    01036455mov rbp, rsp
    01036458push r15
    0103645apush r14
    0103645cpush rbx
    0103645dsub rsp, 40
    01036461mov r14, rdx
    01036464mov rbx, rdi
    01036467vmovups x0, [rsi]
    0103646blea rsi, [rbp-64]
    0103646fvmovaps [rsi], x0
    01036473mov rcx, [rbp+8]
    01036477inc rdx
    0103647alea r15, [rbp-40]
    0103647emov rdi, r15
    01036481call mem.Allocator.allocWithSizeAndAlignment__func_280
    01036486movzx eax, [r15+8]
    0103648btest ax, ax
    0103648ejne 0x10364b2
    01036490mov rcx, [rbp-40]
    01036494and [rcx+8*r14], 0
    01036499
    01036499loc_1036499:
    01036499mov [rbx], rcx
    0103649cmov [rbx+8], r14
    010364a0mov [rbx+16], ax
    010364a4mov rax, rbx
    010364a7add rsp, 40
    010364abpop rbx
    010364acpop r14
    010364aepop r15
    010364b0pop rbp
    010364b1ret
    010364b2
    010364b2loc_10364b2:
    010364b2jmp 0x1036499
    01036454
    010364b4
    010364b4array_hash_map.Custom([]const u8,[]const u8,process.Environ.Map.EnvNameHashContext,false).checkedHash__func_585:
    010364b4push rbp
    010364b5mov rbp, rsp
    010364b8mov rsi, 12
    010364c2mov edi, 0x1008b40
    010364c7pop rbp
    010364c8jmp 0x1023726
    010364b4
    010364cd
    010364cdIo.Threaded.dup2:
    010364cdpush rbp
    010364cemov rbp, rsp
    010364d1push r15
    010364d3push r14
    010364d5push rbx
    010364d6sub rsp, 24
    010364damov ebx, esi
    010364dcmov r14l, edi
    010364dflea r15, [rbp-40]
    010364e3mov rdi, r15
    010364e6call Io.Threaded.Syscall.start
    010364ebmovzx eax, [r15+8]
    010364f0test ax, ax
    010364f3jne 0x1036585
    010364f9mov r8, [rbp-40]
    010364fdmov edi, r14l
    01036500mov esi, ebx
    01036502push 33
    01036504pop rdx
    01036505xor r9l, r9l
    01036508
    01036508loc_1036508:
    01036508mov rax, rdx
    0103650bsyscall
    0103650dmov rcx, rax
    01036510neg rcx
    01036513cmp rax, -4095
    01036519cmovb rcx, r9
    0103651dcmp rcx, 4
    01036521je 0x1036528
    01036523cmp ecx, 16
    01036526jne 0x103654e
    01036528
    01036528loc_1036528:
    01036528test r8, r8
    0103652bje 0x1036508
    0103652dmov rax, [r8+8]
    01036531
    01036531loc_1036531:
    01036531mov rcx, rax
    01036534or rcx, 2
    01036538lock cmpxchg [r8+8], rcx
    0103653ejne 0x1036531
    01036540and eax, 7
    01036543cmp eax, 5
    01036546jne 0x1036508
    01036548mov ax, 17
    0103654cjmp 0x1036585
    0103654e
    0103654eloc_103654e:
    0103654ecmp ecx, 24
    01036551je 0x1036576
    01036553cmp ecx, 9
    01036556je 0x103656a
    01036558cmp ecx, 12
    0103655bje 0x1036570
    0103655dcmp ecx, 22
    01036560je 0x103656a
    01036562test ecx, ecx
    01036564jne 0x103656a
    01036566xor eax, eax
    01036568jmp 0x103657a
    0103656a
    0103656aloc_103656a:
    0103656amov ax, 4
    0103656ejmp 0x103657a
    01036570
    01036570loc_1036570:
    01036570mov ax, 2
    01036574jmp 0x103657a
    01036576
    01036576loc_1036576:
    01036576mov ax, 36
    0103657a
    0103657aloc_103657a:
    0103657atest r8, r8
    0103657dje 0x1036585
    0103657flock xor [r8+8], 3
    01036585
    01036585loc_1036585:
    01036585add rsp, 24
    01036589pop rbx
    0103658apop r14
    0103658cpop r15
    0103658epop rbp
    0103658fret
    010364cd
    01036590
    01036590Io.Threaded.chdir:
    01036590push rbp
    01036591mov rbp, rsp
    01036594push r14
    01036596push rbx
    01036597sub rsp, 4144
    0103659emov rdx, rsi
    010365a1mov rsi, rdi
    010365a4lea rbx, [rbp-56]
    010365a8lea rcx, [rbp-4152]
    010365afmov rdi, rbx
    010365b2call Io.Threaded.pathToPosix
    010365b7movzx eax, [rbx+16]
    010365bbtest ax, ax
    010365bejne 0x103668e
    010365c4mov rbx, [rbp-56]
    010365c8lea r14, [rbp-32]
    010365ccmov rdi, r14
    010365cfcall Io.Threaded.Syscall.start
    010365d4movzx eax, [r14+8]
    010365d9test ax, ax
    010365dcjne 0x103668e
    010365e2mov rsi, [rbp-32]
    010365e6push 80
    010365e8pop rdx
    010365e9xor r8l, r8l
    010365ec
    010365ecloc_10365ec:
    010365ecmov rax, rdx
    010365efmov rdi, rbx
    010365f2syscall
    010365f4mov rcx, rax
    010365f7neg rcx
    010365facmp rax, -4095
    01036600cmovb rcx, r8
    01036604cmp rcx, 14
    01036608ja 0x1036637
    0103660ajmp [8*rcx+0x1001048]
    01036611test rsi, rsi
    01036614je 0x10365ec
    01036616mov rax, [rsi+8]
    0103661a
    0103661aloc_103661a:
    0103661amov rcx, rax
    0103661dor rcx, 2
    01036621lock cmpxchg [rsi+8], rcx
    01036627jne 0x103661a
    01036629and eax, 7
    0103662ccmp eax, 5
    0103662fjne 0x10365ec
    01036631mov ax, 17
    01036635jmp 0x103668e
    01036637
    01036637loc_1036637:
    01036637cmp ecx, 20
    0103663aje 0x1036673
    0103663ccmp ecx, 36
    0103663fje 0x103667f
    01036641cmp ecx, 40
    01036644je 0x1036679
    01036646cmp ecx, 84
    01036649jne 0x1036651
    0103664bmov ax, 57
    0103664fjmp 0x1036683
    01036651
    01036651loc_1036651:
    01036651mov ax, 4
    01036655jmp 0x1036683
    01036657mov ax, 2
    0103665bjmp 0x1036683
    0103665dmov ax, 63
    01036661jmp 0x1036683
    01036663xor eax, eax
    01036665jmp 0x1036683
    01036667mov ax, 10
    0103666bjmp 0x1036683
    0103666dmov ax, 52
    01036671jmp 0x1036683
    01036673
    01036673loc_1036673:
    01036673mov ax, 53
    01036677jmp 0x1036683
    01036679
    01036679loc_1036679:
    01036679mov ax, 50
    0103667djmp 0x1036683
    0103667f
    0103667floc_103667f:
    0103667fmov ax, 56
    01036683
    01036683loc_1036683:
    01036683test rsi, rsi
    01036686je 0x103668e
    01036688lock xor [rsi+8], 3
    0103668e
    0103668eloc_103668e:
    0103668eadd rsp, 4144
    01036695pop rbx
    01036696pop r14
    01036698pop rbp
    01036699ret
    01036590
    0103669a
    0103669aIo.Threaded.writeIntFd:
    0103669apush rbp
    0103669bmov rbp, rsp
    0103669epush rbx
    0103669fmovzx eax, si
    010366a2lea rcx, [rbp-24]
    010366a6xor edx, edx
    010366a8
    010366a8loc_10366a8:
    010366a8shrx rsi, rax, rdx
    010366admov [rcx], sil
    010366b0add rdx, 8
    010366b4inc rcx
    010366b7cmp rdx, 64
    010366bbjne 0x10366a8
    010366bdmov rax, [rbp-24]
    010366c1mov [rbp-16], rax
    010366c5mov edi, edi
    010366c7xor r9l, r9l
    010366camov r10, 8
    010366d4mov r8, 1
    010366dexor ebx, ebx
    010366e0
    010366e0loc_10366e0:
    010366e0lea rsi, [rbx+rbp]
    010366e4add rsi, -16
    010366e8mov rdx, r10
    010366ebsub rdx, rbx
    010366ee
    010366eeloc_10366ee:
    010366eemov rax, r8
    010366f1syscall
    010366f3mov rcx, rax
    010366f6neg rcx
    010366f9cmp rax, -4095
    010366ffcmovb rcx, r9
    01036703cmp rcx, 4
    01036707je 0x10366ee
    01036709test ecx, ecx
    0103670bjne 0x1036716
    0103670dadd rbx, rax
    01036710cmp rbx, 8
    01036714jne 0x10366e0
    01036716
    01036716loc_1036716:
    01036716pop rbx
    01036717pop rbp
    01036718ret
    0103669a
    01036719
    01036719Io.Threaded.forkBail:
    01036719push rbp
    0103671amov rbp, rsp
    0103671dcall Io.Threaded.writeIntFd
    01036722push 1
    01036724pop rdi
    01036725mov eax, 231
    0103672asyscall
    01036719
    0103672c
    0103672cIo.Threaded.fchdir:
    0103672ccmp edi, -100
    0103672fjne 0x1036734
    01036731xor eax, eax
    01036733ret
    01036734
    01036734loc_1036734:
    01036734push rbp
    01036735mov rbp, rsp
    01036738push r14
    0103673apush rbx
    0103673bsub rsp, 16
    0103673fmov ebx, edi
    01036741lea r14, [rbp-32]
    01036745mov rdi, r14
    01036748call Io.Threaded.Syscall.start
    0103674dmovzx eax, [r14+8]
    01036752test ax, ax
    01036755jne 0x10367e0
    0103675bmov rsi, [rbp-32]
    0103675fmov edi, ebx
    01036761push 81
    01036763pop rdx
    01036764xor r8l, r8l
    01036767
    01036767loc_1036767:
    01036767mov rax, rdx
    0103676asyscall
    0103676cmov ecx, eax
    0103676eneg ecx
    01036770cmp rax, -4095
    01036776cmovb ecx, r8l
    0103677amovzx eax, cx
    0103677dlea ecx, [rax-4]
    01036780cmp ecx, 9
    01036783ja 0x10367b2
    01036785jmp [8*rcx+0x10010c0]
    0103678ctest rsi, rsi
    0103678fje 0x1036767
    01036791mov rax, [rsi+8]
    01036795
    01036795loc_1036795:
    01036795mov rcx, rax
    01036798or rcx, 2
    0103679clock cmpxchg [rsi+8], rcx
    010367a2jne 0x1036795
    010367a4and eax, 7
    010367a7cmp eax, 5
    010367aajne 0x1036767
    010367acmov ax, 17
    010367b0jmp 0x10367e0
    010367b2
    010367b2loc_10367b2:
    010367b2cmp eax, 20
    010367b5je 0x10367d1
    010367b7test eax, eax
    010367b9jne 0x10367bf
    010367bbxor eax, eax
    010367bdjmp 0x10367d5
    010367bf
    010367bfloc_10367bf:
    010367bfmov ax, 4
    010367c3jmp 0x10367d5
    010367c5mov ax, 10
    010367c9jmp 0x10367d5
    010367cbmov ax, 63
    010367cfjmp 0x10367d5
    010367d1
    010367d1loc_10367d1:
    010367d1mov ax, 53
    010367d5
    010367d5loc_10367d5:
    010367d5test rsi, rsi
    010367d8je 0x10367e0
    010367dalock xor [rsi+8], 3
    010367e0
    010367e0loc_10367e0:
    010367e0add rsp, 16
    010367e4pop rbx
    010367e5pop r14
    010367e7pop rbp
    010367e8ret
    0103672c
    010367e9
    010367e9Io.Threaded.mutexLock:
    010367e9xor ecx, ecx
    010367ebpush 1
    010367edpop rdx
    010367eexor eax, eax
    010367f0lock cmpxchg [rdi], edx
    010367f4jne 0x10367f9
    010367f6
    010367f6loc_10367f6:
    010367f6mov eax, ecx
    010367f8ret
    010367f9
    010367f9loc_10367f9:
    010367f9push rbp
    010367famov rbp, rsp
    010367fdpush r14
    010367ffpush rbx
    01036800mov rbx, rdi
    01036803cmp eax, 2
    01036806je 0x1036836
    01036808
    01036808loc_1036808:
    01036808push 2
    0103680apop r14
    0103680c
    0103680cloc_103680c:
    0103680cmov eax, r14l
    0103680fxchg [rbx], eax
    01036811test eax, eax
    01036813je 0x103682e
    01036815mov edx, 0x10079e0
    0103681amov rdi, rbx
    0103681dmov esi, r14l
    01036820call Io.Threaded.Thread.futexWait
    01036825test ax, ax
    01036828je 0x103680c
    0103682a
    0103682aloc_103682a:
    0103682amov ecx, eax
    0103682cjmp 0x1036830
    0103682e
    0103682eloc_103682e:
    0103682exor ecx, ecx
    01036830
    01036830loc_1036830:
    01036830pop rbx
    01036831pop r14
    01036833pop rbp
    01036834jmp 0x10367f6
    01036836
    01036836loc_1036836:
    01036836push 2
    01036838pop rsi
    01036839mov edx, 0x10079e0
    0103683emov rdi, rbx
    01036841call Io.Threaded.Thread.futexWait
    01036846test ax, ax
    01036849je 0x1036808
    0103684bjmp 0x103682a
    010367e9
    0103684d
    0103684dIo.Threaded.destroyPipe:
    0103684dpush rbp
    0103684emov rbp, rsp
    01036851mov rax, rdi
    01036854mov edi, [rdi]
    01036856mov edx, [rax+4]
    01036859mov eax, -1
    0103685ecmp rdi, rax
    01036861je 0x103686f
    01036863mov rax, 3
    0103686dsyscall
    0103686f
    0103686floc_103686f:
    0103686fcmp edi, edx
    01036871je 0x1036882
    01036873mov rax, 3
    0103687dmov rdi, rdx
    01036880syscall
    01036882
    01036882loc_1036882:
    01036882pop rbp
    01036883ret
    0103684d
    01036884
    01036884Io.Threaded.pipe2:
    01036884push rbp
    01036885mov rbp, rsp
    01036888mov rdx, rdi
    0103688bmov esi, esi
    0103688dlea rdi, [rbp-8]
    01036891mov eax, 293
    01036896syscall
    01036898mov rsi, rax
    0103689bneg rsi
    0103689exor ecx, ecx
    010368a0cmp rax, -4095
    010368a6cmovae rcx, rsi
    010368aatest rcx, rcx
    010368adje 0x10368dc
    010368afcmp ecx, 22
    010368b2je 0x10368c7
    010368b4cmp ecx, 23
    010368b7je 0x10368cf
    010368b9cmp ecx, 24
    010368bcjne 0x10368c7
    010368bemov [rdx+8], 36
    010368c5jmp 0x10368d6
    010368c7
    010368c7loc_10368c7:
    010368c7mov [rdx+8], 4
    010368cdjmp 0x10368e8
    010368cf
    010368cfloc_10368cf:
    010368cfmov [rdx+8], 37
    010368d6
    010368d6loc_10368d6:
    010368d6and [rdx], 0
    010368dajmp 0x10368e8
    010368dc
    010368dcloc_10368dc:
    010368dcmov rax, [rbp-8]
    010368e0mov [rdx], rax
    010368e3and [rdx+8], 0
    010368e8
    010368e8loc_10368e8:
    010368e8mov rax, rdx
    010368ebpop rbp
    010368ecret
    01036884
    010368ed
    010368edIo.Threaded.processSetCurrentPath:
    010368edpush rbp
    010368eemov rbp, rsp
    010368f1mov rdi, rsi
    010368f4mov rsi, rdx
    010368f7pop rbp
    010368f8jmp 0x1036590
    010368ed
    010368fd
    010368fdIo.Threaded.processSetCurrentDir:
    010368fdpush rbp
    010368femov rbp, rsp
    01036901mov edi, [rsi]
    01036903pop rbp
    01036904jmp 0x103672c
    010368fd
    01036909
    01036909Io.Threaded.processCurrentPath:
    01036909push rbp
    0103690amov rbp, rsp
    0103690dpush r14
    0103690fpush rbx
    01036910sub rsp, 16
    01036914mov rbx, rdi
    01036917lea r14, [rbp-32]
    0103691bmov rdi, r14
    0103691emov rsi, rdx
    01036921mov rdx, rcx
    01036924call Io.Threaded.processCurrentPathPosix
    01036929vmovups x0, [r14]
    0103692evmovups [rbx], x0
    01036932mov rax, rbx
    01036935add rsp, 16
    01036939pop rbx
    0103693apop r14
    0103693cpop rbp
    0103693dret
    01036909
    0103693e
    0103693eIo.Threaded.unlockStderr:
    0103693epush rbp
    0103693fmov rbp, rsp
    01036942push rbx
    01036943push rax
    01036944mov rbx, rdi
    01036947movzx eax, [rdi+832]
    0103694etest ax, ax
    01036951jne 0x103696b
    01036953lea rdi, [rbx+792]
    0103695amov rax, [rbx+792]
    01036961call [rax+16]
    01036964movzx eax, [rbx+832]
    0103696b
    0103696bloc_103696b:
    0103696btest ax, ax
    0103696eje 0x103698f
    01036970movzx eax, ax
    01036973cmp eax, 17
    01036976jne 0x1036987
    01036978mov rax, [0xfffffffffffbfff0]
    01036981lock xor [rax+8], 1
    01036987
    01036987loc_1036987:
    01036987and [rbx+832], 0
    0103698f
    0103698floc_103698f:
    0103698fmov [rbx+800], 1
    0103699avxorps x0, x0, x0
    0103699evmovups [rbx+808], x0
    010369a6dec [rbx+744]
    010369adje 0x10369b6
    010369afadd rsp, 8
    010369b3pop rbx
    010369b4pop rbp
    010369b5ret
    010369b6
    010369b6loc_10369b6:
    010369b6mov [rbx+840], -1
    010369c0add rbx, 864
    010369c7mov rdi, rbx
    010369caadd rsp, 8
    010369cepop rbx
    010369cfpop rbp
    010369d0jmp 0x102b2ab
    0103693e
    010369d5
    010369d5Io.Threaded.tryLockStderr:
    010369d5push rbp
    010369d6mov rbp, rsp
    010369d9push r15
    010369dbpush r14
    010369ddpush r12
    010369dfpush rbx
    010369e0sub rsp, 32
    010369e4mov r14, rdx
    010369e7mov r15, rsi
    010369eamov rbx, rdi
    010369edcall Io.Threaded.Thread.currentId
    010369f2cmp [r15+840], eax
    010369f9jne 0x1036a07
    010369fbmov rax, [r15+744]
    01036a02inc rax
    01036a05jmp 0x1036a23
    01036a07
    01036a07loc_1036a07:
    01036a07mov ecx, eax
    01036a09push 1
    01036a0bpop rdx
    01036a0cxor eax, eax
    01036a0elock cmpxchg [r15+864], edx
    01036a17jne 0x1036a5b
    01036a19mov [r15+840], ecx
    01036a20push 1
    01036a22pop rax
    01036a23
    01036a23loc_1036a23:
    01036a23mov [r15+744], rax
    01036a2alea r12, [rbp-56]
    01036a2emov rdi, r12
    01036a31mov rsi, r15
    01036a34mov rdx, r14
    01036a37call Io.Threaded.initLockedStderr
    01036a3cmovzx eax, [r12+16]
    01036a42test ax, ax
    01036a45jne 0x1036a76
    01036a47vmovups x0, [rbp-56]
    01036a4cvmovups [rbx], x0
    01036a50mov [rbx+16], 1
    01036a54and [rbx+24], 0
    01036a59jmp 0x1036a63
    01036a5b
    01036a5bloc_1036a5b:
    01036a5bvxorps x0, x0, x0
    01036a5fvmovups [rbx], ymm0
    01036a63
    01036a63loc_1036a63:
    01036a63mov rax, rbx
    01036a66add rsp, 32
    01036a6apop rbx
    01036a6bpop r12
    01036a6dpop r14
    01036a6fpop r15
    01036a71pop rbp
    01036a72vzeroupper
    01036a75ret
    01036a76
    01036a76loc_1036a76:
    01036a76mov [rbx+24], ax
    01036a7ajmp 0x1036a63
    010369d5
    01036a7c
    01036a7cIo.Threaded.initLockedStderr:
    01036a7cpush rbp
    01036a7dmov rbp, rsp
    01036a80push r15
    01036a82push r14
    01036a84push r13
    01036a86push r12
    01036a88push rbx
    01036a89push rax
    01036a8amov r15, rdx
    01036a8dmov r14, rsi
    01036a90mov rbx, rdi
    01036a93cmp [rsi+871], 1
    01036a9aje 0x1036b49
    01036aa0mov [r14+768], r14
    01036aa7mov [r14+776], 0x1002d68
    01036ab2mov [r14+871], 1
    01036abamov rdi, r14
    01036abdcall Io.Threaded.scanEnviron
    01036ac2test [r15+1], 1
    01036ac7je 0x1036ace
    01036ac9mov cl, [r15]
    01036accjmp 0x1036b42
    01036ace
    01036aceloc_1036ace:
    01036acemov eax, 0x100702e
    01036ad3test [r14+743], 1
    01036adbmov ecx, 0x1007030
    01036ae0cmovne rcx, rax
    01036ae4test [r14+742], 1
    01036aecmov eax, 0x100702c
    01036af1cmove rax, rcx
    01036af5mov r13b, [rax]
    01036af8mov r12b, [rax+1]
    01036afctest r12b, 1
    01036b00sete al
    01036b03or al, r13b
    01036b06test al, 1
    01036b08je 0x1036b40
    01036b0amov rax, [r14+824]
    01036b11lea rsi, [rbp-48]
    01036b15mov [rsi], rax
    01036b18mov rdi, r14
    01036b1bcall Io.Threaded.fileEnableAnsiEscapeCodes
    01036b20mov cl, 1
    01036b22test ax, ax
    01036b25je 0x1036b42
    01036b27movzx eax, ax
    01036b2acmp eax, 4
    01036b2dje 0x1036b34
    01036b2fcmp eax, 70
    01036b32jne 0x1036b80
    01036b34
    01036b34loc_1036b34:
    01036b34and r12b, r13b
    01036b37and r12b, 1
    01036b3bmov ecx, r12l
    01036b3ejmp 0x1036b42
    01036b40
    01036b40loc_1036b40:
    01036b40xor ecx, ecx
    01036b42
    01036b42loc_1036b42:
    01036b42mov [r14+870], cl
    01036b49
    01036b49loc_1036b49:
    01036b49and [rbx+16], 0
    01036b4elea rax, [r14+768]
    01036b55mov [rbx], rax
    01036b58add r14, 870
    01036b5ftest [r15+1], 1
    01036b64cmovne r14, r15
    01036b68mov al, [r14]
    01036b6bmov [rbx+8], al
    01036b6e
    01036b6eloc_1036b6e:
    01036b6emov rax, rbx
    01036b71add rsp, 8
    01036b75pop rbx
    01036b76pop r12
    01036b78pop r13
    01036b7apop r14
    01036b7cpop r15
    01036b7epop rbp
    01036b7fret
    01036b80
    01036b80loc_1036b80:
    01036b80mov [rbx+16], 17
    01036b86jmp 0x1036b6e
    01036a7c
    01036b88
    01036b88Io.Threaded.Thread.currentId:
    01036b88push rbp
    01036b89mov rbp, rsp
    01036b8cmov rax, [0xfffffffffffbfff0]
    01036b95test rax, rax
    01036b98je 0x1036ba2
    01036b9amov eax, [rax+536]
    01036ba0pop rbp
    01036ba1ret
    01036ba2
    01036ba2loc_1036ba2:
    01036ba2pop rbp
    01036ba3jmp 0x1031343
    01036b88
    01036ba8
    01036ba8Io.Threaded.lockStderr:
    01036ba8push rbp
    01036ba9mov rbp, rsp
    01036bacpush r15
    01036baepush r14
    01036bb0push r12
    01036bb2push rbx
    01036bb3sub rsp, 32
    01036bb7mov r14, rdx
    01036bbamov r15, rsi
    01036bbdmov rbx, rdi
    01036bc0call Io.Threaded.Thread.currentId
    01036bc5cmp [r15+840], eax
    01036bccjne 0x1036bda
    01036bcemov rax, [r15+744]
    01036bd5inc rax
    01036bd8jmp 0x1036bf8
    01036bda
    01036bdaloc_1036bda:
    01036bdamov r12l, eax
    01036bddlea rdi, [r15+864]
    01036be4call Io.Threaded.mutexLock
    01036be9test ax, ax
    01036becjne 0x1036c34
    01036beemov [r15+840], r12l
    01036bf5push 1
    01036bf7pop rax
    01036bf8
    01036bf8loc_1036bf8:
    01036bf8mov [r15+744], rax
    01036bfflea r12, [rbp-56]
    01036c03mov rdi, r12
    01036c06mov rsi, r15
    01036c09mov rdx, r14
    01036c0ccall Io.Threaded.initLockedStderr
    01036c11mov rax, [r12+16]
    01036c16mov [rbx+16], rax
    01036c1avmovups x0, [r12]
    01036c20vmovups [rbx], x0
    01036c24
    01036c24loc_1036c24:
    01036c24mov rax, rbx
    01036c27add rsp, 32
    01036c2bpop rbx
    01036c2cpop r12
    01036c2epop r14
    01036c30pop r15
    01036c32pop rbp
    01036c33ret
    01036c34
    01036c34loc_1036c34:
    01036c34mov [rbx+16], ax
    01036c38jmp 0x1036c24
    01036ba8
    01036c3a
    01036c3aIo.Threaded.processExecutablePath:
    01036c3apush rbp
    01036c3bmov rbp, rsp
    01036c3epush r14
    01036c40push rbx
    01036c41sub rsp, 32
    01036c45mov r9, rdx
    01036c48mov rbx, rdi
    01036c4blea rdx, [rbp-20]
    01036c4fmov [rdx], -100
    01036c55mov [rsp], rcx
    01036c59lea r14, [rbp-40]
    01036c5dpush 14
    01036c5fpop r8
    01036c61mov ecx, 0x10084a3
    01036c66mov rdi, r14
    01036c69call Io.Threaded.dirReadLink
    01036c6emovzx eax, [r14+8]
    01036c73test ax, ax
    01036c76jne 0x1036c7f
    01036c78mov rcx, [rbp-40]
    01036c7cmov [rbx], rcx
    01036c7f
    01036c7floc_1036c7f:
    01036c7fmov [rbx+8], ax
    01036c83mov rax, rbx
    01036c86add rsp, 32
    01036c8apop rbx
    01036c8bpop r14
    01036c8dpop rbp
    01036c8eret
    01036c3a
    01036c8f
    01036c8fIo.Threaded.processExecutableOpen:
    01036c8fpush rbp
    01036c90mov rbp, rsp
    01036c93push r14
    01036c95push rbx
    01036c96sub rsp, 16
    01036c9amov r9, rdx
    01036c9dmov rbx, rdi
    01036ca0lea r14, [rbp-28]
    01036ca4push 14
    01036ca6pop r8
    01036ca8mov edx, 0x1007cdc
    01036cadmov ecx, 0x10084a3
    01036cb2mov rdi, r14
    01036cb5call Io.Threaded.dirOpenFilePosix
    01036cbamov eax, [r14+8]
    01036cbemov [rbx+8], eax
    01036cc1mov rax, [r14]
    01036cc4mov [rbx], rax
    01036cc7mov rax, rbx
    01036ccaadd rsp, 16
    01036ccepop rbx
    01036ccfpop r14
    01036cd1pop rbp
    01036cd2ret
    01036c8f
    01036cd3
    01036cd3Io.Threaded.fileMemoryMapWrite:
    01036cd3cmp [rsi+32], 0
    01036cd7je 0x1036cdc
    01036cd9xor eax, eax
    01036cdbret
    01036cdc
    01036cdcloc_1036cdc:
    01036cdcpush rbp
    01036cddmov rbp, rsp
    01036ce0push r15
    01036ce2push r14
    01036ce4push r13
    01036ce6push r12
    01036ce8push rbx
    01036ce9sub rsp, 24
    01036cedmov ebx, [rsi+24]
    01036cf0mov r15, [rsi]
    01036cf3mov r12, [rsi+8]
    01036cf7mov r13, [rsi+16]
    01036cfblea r14, [rbp-56]
    01036cffmov rdi, r14
    01036d02call Io.Threaded.Syscall.start
    01036d07movzx eax, [r14+8]
    01036d0ctest ax, ax
    01036d0fjne 0x1036e19
    01036d15mov r9, [rbp-56]
    01036d19push 18
    01036d1bpop r8
    01036d1dxor r14l, r14l
    01036d20
    01036d20loc_1036d20:
    01036d20mov rdx, r13
    01036d23sub rdx, r14
    01036d26lea rsi, [r12+r14]
    01036d2alea r10, [r14+r15]
    01036d2e
    01036d2eloc_1036d2e:
    01036d2ecmp r13, r14
    01036d31je 0x1036dd6
    01036d37mov rax, r8
    01036d3amov rdi, rbx
    01036d3dsyscall
    01036d3fmov rcx, rax
    01036d42neg rcx
    01036d45cmp rax, -4095
    01036d4bmov edi, 0
    01036d50cmovb rcx, rdi
    01036d54cmp rcx, 32
    01036d58ja 0x1036db0
    01036d5ajmp [8*rcx+0x1001110]
    01036d61test r9, r9
    01036d64je 0x1036d2e
    01036d66mov rax, [r9+8]
    01036d6a
    01036d6aloc_1036d6a:
    01036d6amov rcx, rax
    01036d6dor rcx, 2
    01036d71lock cmpxchg [r9+8], rcx
    01036d77jne 0x1036d6a
    01036d79and eax, 7
    01036d7ccmp eax, 5
    01036d7fjne 0x1036d2e
    01036d81jmp 0x1036daa
    01036d83add r14, rax
    01036d86test r9, r9
    01036d89je 0x1036d20
    01036d8bmov rax, [r9+8]
    01036d8f
    01036d8floc_1036d8f:
    01036d8fmov rcx, rax
    01036d92or rcx, 2
    01036d96lock cmpxchg [r9+8], rcx
    01036d9cjne 0x1036d8f
    01036d9eand eax, 7
    01036da1cmp eax, 5
    01036da4jne 0x1036d20
    01036daa
    01036daaloc_1036daa:
    01036daamov ax, 17
    01036daejmp 0x1036e19
    01036db0
    01036db0loc_1036db0:
    01036db0cmp ecx, 75
    01036db3je 0x1036dd0
    01036db5cmp ecx, 89
    01036db8je 0x1036dca
    01036dbacmp ecx, 104
    01036dbdje 0x1036dca
    01036dbfcmp ecx, 122
    01036dc2jne 0x1036dca
    01036dc4mov ax, 5
    01036dc8jmp 0x1036e0e
    01036dca
    01036dcaloc_1036dca:
    01036dcamov ax, 4
    01036dcejmp 0x1036e0e
    01036dd0
    01036dd0loc_1036dd0:
    01036dd0mov ax, 22
    01036dd4jmp 0x1036e0e
    01036dd6
    01036dd6loc_1036dd6:
    01036dd6xor eax, eax
    01036dd8jmp 0x1036e0e
    01036ddamov ax, 14
    01036ddejmp 0x1036e0e
    01036de0mov ax, 8
    01036de4jmp 0x1036e0e
    01036de6mov ax, 12
    01036deajmp 0x1036e0e
    01036decmov ax, 6
    01036df0jmp 0x1036e0e
    01036df2mov ax, 7
    01036df6jmp 0x1036e0e
    01036df8mov ax, 11
    01036dfcjmp 0x1036e0e
    01036dfemov ax, 9
    01036e02jmp 0x1036e0e
    01036e04mov ax, 1
    01036e08jmp 0x1036e0e
    01036e0amov ax, 16
    01036e0e
    01036e0eloc_1036e0e:
    01036e0etest r9, r9
    01036e11je 0x1036e19
    01036e13lock xor [r9+8], 3
    01036e19
    01036e19loc_1036e19:
    01036e19add rsp, 24
    01036e1dpop rbx
    01036e1epop r12
    01036e20pop r13
    01036e22pop r14
    01036e24pop r15
    01036e26pop rbp
    01036e27ret
    01036cd3
    01036e28
    01036e28Io.Threaded.fileMemoryMapRead:
    01036e28cmp [rsi+32], 0
    01036e2cje 0x1036e31
    01036e2exor eax, eax
    01036e30ret
    01036e31
    01036e31loc_1036e31:
    01036e31push rbp
    01036e32mov rbp, rsp
    01036e35sub rsp, 16
    01036e39mov rax, [rsi+24]
    01036e3dlea rdi, [rbp-8]
    01036e41mov [rdi], rax
    01036e44mov rcx, [rsi]
    01036e47mov rax, [rsi+8]
    01036e4bmov rdx, [rsi+16]
    01036e4fmov rsi, rax
    01036e52call Io.Threaded.mmSyncRead
    01036e57add rsp, 16
    01036e5bpop rbp
    01036e5cret
    01036e28
    01036e5d
    01036e5dIo.Threaded.mmSyncRead:
    01036e5dpush rbp
    01036e5emov rbp, rsp
    01036e61push r15
    01036e63push r14
    01036e65push r13
    01036e67push r12
    01036e69push rbx
    01036e6asub rsp, 24
    01036e6emov [rbp-48], rcx
    01036e72mov r15, rdx
    01036e75mov r12, rsi
    01036e78mov r13l, [rdi]
    01036e7blea rbx, [rbp-64]
    01036e7fmov rdi, rbx
    01036e82call Io.Threaded.Syscall.start
    01036e87movzx ebx, [rbx+8]
    01036e8btest bx, bx
    01036e8ejne 0x1036f92
    01036e94mov r9, [rbp-64]
    01036e98xor ebx, ebx
    01036e9apush 17
    01036e9cpop r8
    01036e9exor r14l, r14l
    01036ea1
    01036ea1loc_1036ea1:
    01036ea1mov rdx, r15
    01036ea4sub rdx, r14
    01036ea7lea rsi, [r12+r14]
    01036eabmov rax, [rbp-48]
    01036eaflea r10, [r14+rax]
    01036eb3
    01036eb3loc_1036eb3:
    01036eb3cmp r15, r14
    01036eb6je 0x1036f4c
    01036ebcmov rax, r8
    01036ebfmov rdi, r13
    01036ec2syscall
    01036ec4mov rcx, rax
    01036ec7neg rcx
    01036ecacmp rax, -4095
    01036ed0cmovb rcx, rbx
    01036ed4cmp rcx, 22
    01036ed8ja 0x1036ee1
    01036edajmp [8*rcx+0x1001218]
    01036ee1
    01036ee1loc_1036ee1:
    01036ee1lea eax, [rcx-104]
    01036ee4cmp eax, 6
    01036ee7ja 0x1036f5b
    01036ee9jmp [8*rax+0x10012d0]
    01036ef0test r9, r9
    01036ef3je 0x1036eb3
    01036ef5mov rax, [r9+8]
    01036ef9
    01036ef9loc_1036ef9:
    01036ef9mov rcx, rax
    01036efcor rcx, 2
    01036f00lock cmpxchg [r9+8], rcx
    01036f06jne 0x1036ef9
    01036f08and eax, 7
    01036f0bcmp eax, 5
    01036f0ejne 0x1036eb3
    01036f10jmp 0x1036f46
    01036f12test rax, rax
    01036f15je 0x1036fa3
    01036f1badd r14, rax
    01036f1etest r9, r9
    01036f21je 0x1036ea1
    01036f27mov rax, [r9+8]
    01036f2b
    01036f2bloc_1036f2b:
    01036f2bmov rcx, rax
    01036f2eor rcx, 2
    01036f32lock cmpxchg [r9+8], rcx
    01036f38jne 0x1036f2b
    01036f3aand eax, 7
    01036f3dcmp eax, 5
    01036f40jne 0x1036ea1
    01036f46
    01036f46loc_1036f46:
    01036f46mov bx, 17
    01036f4ajmp 0x1036f92
    01036f4c
    01036f4cloc_1036f4c:
    01036f4ctest r9, r9
    01036f4fje 0x1036f57
    01036f51lock xor [r9+8], 3
    01036f57
    01036f57loc_1036f57:
    01036f57xor ebx, ebx
    01036f59jmp 0x1036f92
    01036f5b
    01036f5bloc_1036f5b:
    01036f5bcmp ecx, 29
    01036f5eje 0x1036f65
    01036f60cmp ecx, 75
    01036f63jne 0x1036f6b
    01036f65
    01036f65loc_1036f65:
    01036f65mov bx, 22
    01036f69jmp 0x1036f87
    01036f6b
    01036f6bloc_1036f6b:
    01036f6bmov bx, 4
    01036f6fjmp 0x1036f87
    01036f71mov bx, 2
    01036f75jmp 0x1036f87
    01036f77mov bx, 7
    01036f7bjmp 0x1036f87
    01036f7dmov bx, 32
    01036f81jmp 0x1036f87
    01036f83mov bx, 14
    01036f87
    01036f87loc_1036f87:
    01036f87test r9, r9
    01036f8aje 0x1036f92
    01036f8clock xor [r9+8], 3
    01036f92
    01036f92loc_1036f92:
    01036f92mov eax, ebx
    01036f94add rsp, 24
    01036f98pop rbx
    01036f99pop r12
    01036f9bpop r13
    01036f9dpop r14
    01036f9fpop r15
    01036fa1pop rbp
    01036fa2ret
    01036fa3
    01036fa3loc_1036fa3:
    01036fa3test r9, r9
    01036fa6je 0x1036fae
    01036fa8lock xor [r9+8], 3
    01036fae
    01036faeloc_1036fae:
    01036faexor ebx, ebx
    01036fb0mov rdi, rsi
    01036fb3xor esi, esi
    01036fb5call compiler_rt.smallMemset
    01036fbajmp 0x1036f92
    01036e5d
    01036fbc
    01036fbcIo.Threaded.fileMemoryMapSetLength:
    01036fbcpush rbp
    01036fbdmov rbp, rsp
    01036fc0push r15
    01036fc2push r14
    01036fc4push r13
    01036fc6push r12
    01036fc8push rbx
    01036fc9sub rsp, 40
    01036fcdmov rbx, rdx
    01036fd0mov r14, rsi
    01036fd3mov r15, [rsi+8]
    01036fd7mov r12, [rsi+16]
    01036fdbcmp [rsi+32], 0
    01036fdfje 0x1037074
    01036fe5mov eax, 4095
    01036fealea rcx, [rbx+rax]
    01036feeadd rax, r12
    01036ff1xor rax, rcx
    01036ff4cmp rax, 4096
    01036ffajb 0x10370a9
    01037000push 1
    01037002pop r13
    01037004
    01037004loc_1037004:
    01037004lea rdi, [rbp-80]
    01037008call Io.Threaded.Syscall.start
    0103700dmovzx eax, [rbp-72]
    01037011test ax, ax
    01037014jne 0x10370af
    0103701amov r9, [rbp-80]
    0103701epush 25
    01037020pop rax
    01037021mov rdi, r15
    01037024mov rsi, r12
    01037027mov rdx, rbx
    0103702amov r10, r13
    0103702dxor r8l, r8l
    01037030syscall
    01037032test r9, r9
    01037035je 0x103703d
    01037037lock xor [r9+8], 3
    0103703d
    0103703dloc_103703d:
    0103703dmov rcx, rax
    01037040neg rcx
    01037043cmp rax, -4095
    01037049mov edx, 0
    0103704ecmovb rcx, rdx
    01037052cmp rcx, 4
    01037056je 0x1037004
    01037058cmp ecx, 12
    0103705bje 0x1037114
    01037061cmp ecx, 11
    01037064je 0x103711a
    0103706atest ecx, ecx
    0103706cje 0x10370a5
    0103706emov ax, 4
    01037072jmp 0x10370af
    01037074
    01037074loc_1037074:
    01037074mov r13, [rdi+752]
    0103707bmov rax, [rdi+760]
    01037082mov r9, [rbp+8]
    01037086push 12
    01037088pop rcx
    01037089mov rdi, r13
    0103708cmov rsi, r15
    0103708fmov rdx, r12
    01037092mov r8, rbx
    01037095mov [rbp-48], r9
    01037099mov [rbp-56], rax
    0103709dcall [rax+16]
    010370a0test rax, rax
    010370a3je 0x10370be
    010370a5
    010370a5loc_10370a5:
    010370a5mov [r14+8], rax
    010370a9
    010370a9loc_10370a9:
    010370a9mov [r14+16], rbx
    010370ad
    010370adloc_10370ad:
    010370adxor eax, eax
    010370af
    010370afloc_10370af:
    010370afadd rsp, 40
    010370b3pop rbx
    010370b4pop r12
    010370b6pop r13
    010370b8pop r14
    010370bapop r15
    010370bcpop rbp
    010370bdret
    010370be
    010370beloc_10370be:
    010370bepush 12
    010370c0pop rdx
    010370c1mov rdi, r13
    010370c4mov rsi, rbx
    010370c7mov rcx, [rbp-48]
    010370cbmov rax, [rbp-56]
    010370cfcall [rax]
    010370d1test rax, rax
    010370d4je 0x1037114
    010370d6cmp rbx, r12
    010370d9mov rdx, r12
    010370dccmovb rdx, rbx
    010370e0mov rdi, rax
    010370e3mov rsi, r15
    010370e6mov [rbp-64], rax
    010370eacall compiler_rt.memcpy.memcpySmall
    010370efmov rax, [rbp-64]
    010370f3mov [r14+8], rax
    010370f7mov [r14+16], rbx
    010370fbpush 12
    010370fdpop rcx
    010370femov rdi, r13
    01037101mov rsi, r15
    01037104mov rdx, r12
    01037107mov r8, [rbp-48]
    0103710bmov rax, [rbp-56]
    0103710fcall [rax+24]
    01037112jmp 0x10370ad
    01037114
    01037114loc_1037114:
    01037114mov ax, 26
    01037118jmp 0x10370af
    0103711a
    0103711aloc_103711a:
    0103711amov ax, 72
    0103711ejmp 0x10370af
    01036fbc
    01037120
    01037120Io.Threaded.fileMemoryMapDestroy:
    01037120mov r9, [rsi+8]
    01037124mov rdx, [rsi+16]
    01037128cmp [rsi+32], 0
    0103712cje 0x1037146
    0103712etest rdx, rdx
    01037131je 0x103716f
    01037133mov rax, 11
    0103713dmov rdi, r9
    01037140mov rsi, rdx
    01037143syscall
    01037145ret
    01037146
    01037146loc_1037146:
    01037146push rbp
    01037147mov rbp, rsp
    0103714amov rax, [rdi+752]
    01037151mov rcx, [rdi+760]
    01037158mov r8, [rbp+8]
    0103715cmov r11, [rcx+24]
    01037160mov ecx, 12
    01037165mov rdi, rax
    01037168mov rsi, r9
    0103716bpop rbp
    0103716cjmp r11
    0103716f
    0103716floc_103716f:
    0103716fret
    01037120
    01037170
    01037170Io.Threaded.fileMemoryMapCreate:
    01037170push rbp
    01037171mov rbp, rsp
    01037174push r15
    01037176push r14
    01037178push r13
    0103717apush r12
    0103717cpush rbx
    0103717dsub rsp, 72
    01037181mov r8, rsi
    01037184mov [rbp-64], rdi
    01037188mov rsi, [rcx]
    0103718bmov r12, [rcx+8]
    0103718fmov al, [rcx+17]
    01037192mov [rbp-41], al
    01037195cmp [r8+872], 1
    0103719dmov [rbp-56], rsi
    010371a1jne 0x103721c
    010371a3
    010371a3loc_10371a3:
    010371a3mov r14, rdx
    010371a6mov r15, [r8+752]
    010371admov rax, [r8+760]
    010371b4mov rbx, [rbp+8]
    010371b8push 12
    010371bapop rdx
    010371bbmov rdi, r15
    010371bemov rcx, rbx
    010371c1mov [rbp-80], rax
    010371c5call [rax]
    010371c7test rax, rax
    010371caje 0x10372de
    010371d0mov r13, rax
    010371d3test [rbp-41], 1
    010371d7jne 0x10371f4
    010371d9mov rdi, r14
    010371dcmov rsi, r13
    010371dfmov rdx, [rbp-56]
    010371e3mov rcx, r12
    010371e6call Io.Threaded.mmSyncRead
    010371ebtest ax, ax
    010371eejne 0x1037358
    010371f4
    010371f4loc_10371f4:
    010371f4mov rdx, [rbp-64]
    010371f8and [rdx+40], 0
    010371fdmov rax, [r14]
    01037200mov [rdx+24], rax
    01037204mov [rdx], r12
    01037207mov [rdx+8], r13
    0103720bmov rax, [rbp-56]
    0103720fmov [rdx+16], rax
    01037213mov [rdx+32], 0
    01037217jmp 0x103730b
    0103721c
    0103721cloc_103721c:
    0103721cmov [rbp-88], r8
    01037220movzx r15l, [rcx+18]
    01037225movzx r13l, [rcx+16]
    0103722amov [rbp-72], rdx
    0103722emov eax, [rdx]
    01037230mov [rbp-80], rax
    01037234and r13l, 7
    01037238shl r15l, 15
    0103723cor r15, 3
    01037240
    01037240loc_1037240:
    01037240lea rdi, [rbp-104]
    01037244call Io.Threaded.Syscall.start
    01037249movzx r14l, [rbp-96]
    0103724etest r14l, r14l
    01037251jne 0x1037331
    01037257mov r14w, 22
    0103725ctest r12, r12
    0103725fjs 0x1037302
    01037265mov rbx, [rbp-104]
    01037269push 9
    0103726bpop rax
    0103726cxor edi, edi
    0103726emov rsi, [rbp-56]
    01037272mov rdx, r13
    01037275mov r10, r15
    01037278mov r8, [rbp-80]
    0103727cmov r9, r12
    0103727fsyscall
    01037281test rbx, rbx
    01037284je 0x103728c
    01037286lock xor [rbx+8], 3
    0103728c
    0103728cloc_103728c:
    0103728cmov rcx, rax
    0103728fneg rcx
    01037292cmp rax, -4095
    01037298mov edx, 0
    0103729dcmovb rcx, rdx
    010372a1cmp rcx, 4
    010372a5je 0x1037240
    010372a7cmp ecx, 75
    010372aaje 0x1037302
    010372accmp ecx, 13
    010372afje 0x10372fd
    010372b1test ecx, ecx
    010372b3jne 0x1037320
    010372b5mov rcx, [rbp-72]
    010372b9mov rcx, [rcx]
    010372bcmov rdx, [rbp-64]
    010372c0mov [rdx], r12
    010372c3mov [rdx+8], rax
    010372c7mov rax, [rbp-56]
    010372cbmov [rdx+16], rax
    010372cfmov [rdx+24], rcx
    010372d3mov [rdx+32], 1
    010372d7and [rdx+40], 0
    010372dcjmp 0x103730b
    010372de
    010372deloc_10372de:
    010372devmovups ymm0, [rip-0x3029e]
    010372e6mov rax, [rbp-64]
    010372eavmovups [rax+16], ymm0
    010372efvmovups ymm0, [rip-0x302bf]
    010372f7vmovups [rax], ymm0
    010372fbjmp 0x103730e
    010372fd
    010372fdloc_10372fd:
    010372fdmov r14w, 10
    01037302
    01037302loc_1037302:
    01037302mov rdx, [rbp-64]
    01037306mov [rdx+40], r14w
    0103730b
    0103730bloc_103730b:
    0103730bmov rax, rdx
    0103730e
    0103730eloc_103730e:
    0103730eadd rsp, 72
    01037312pop rbx
    01037313pop r12
    01037315pop r13
    01037317pop r14
    01037319pop r15
    0103731bpop rbp
    0103731cvzeroupper
    0103731fret
    01037320
    01037320loc_1037320:
    01037320mov rsi, [rbp-56]
    01037324mov rdx, [rbp-72]
    01037328mov r8, [rbp-88]
    0103732cjmp 0x10371a3
    01037331
    01037331loc_1037331:
    01037331cmp r14l, 22
    01037335mov rsi, [rbp-56]
    01037339mov rdx, [rbp-72]
    0103733dmov r8, [rbp-88]
    01037341ja 0x10371a3
    01037347mov eax, 0x420400
    0103734cbt eax, r14l
    01037350jae 0x10371a3
    01037356jmp 0x1037302
    01037358
    01037358loc_1037358:
    01037358push 12
    0103735apop rcx
    0103735bmov rdi, r15
    0103735emov rsi, r13
    01037361mov rdx, [rbp-56]
    01037365mov r8, rbx
    01037368mov ebx, eax
    0103736amov rax, [rbp-80]
    0103736ecall [rax+24]
    01037371mov rdx, [rbp-64]
    01037375mov [rdx+40], bx
    01037379jmp 0x103730b
    01037170
    0103737b
    0103737bIo.Threaded.fileHardLink:
    0103737bpush rbp
    0103737cmov rbp, rsp
    0103737fpush r15
    01037381push r14
    01037383push r12
    01037385push rbx
    01037386sub rsp, 4192
    0103738dmov r14l, [rsi]
    01037390mov ebx, [rdx]
    01037392mov r12b, [r9]
    01037395lea r15, [rbp-64]
    01037399lea rax, [rbp-4210]
    010373a0mov rdi, r15
    010373a3mov rsi, rcx
    010373a6mov rdx, r8
    010373a9mov rcx, rax
    010373accall Io.Threaded.pathToPosix
    010373b1movzx eax, [r15+16]
    010373b6test ax, ax
    010373b9jne 0x10373e3
    010373bbmov r15, [rbp-64]
    010373bfmovzx r8l, r12b
    010373c3or r8l, 4
    010373c7shl r8l, 10
    010373cbmov esi, 0x1008c09
    010373d0mov edi, r14l
    010373d3mov edx, ebx
    010373d5mov rcx, r15
    010373d8call Io.Threaded.linkat
    010373ddcmp ax, 52
    010373e1je 0x10373f3
    010373e3
    010373e3loc_10373e3:
    010373e3add rsp, 4192
    010373eapop rbx
    010373ebpop r12
    010373edpop r14
    010373efpop r15
    010373f1pop rbp
    010373f2ret
    010373f3
    010373f3loc_10373f3:
    010373f3mov ax, 52
    010373f7test r12b, 1
    010373fbjne 0x10373e3
    010373fdlea rcx, [rbp-36]
    01037401mov [rcx], r14l
    01037404lea r14, [rbp-88]
    01037408lea rsi, [rbp-114]
    0103740cpush 26
    0103740epop rdx
    0103740fmov rdi, r14
    01037412call mem.printSentinel__func_556
    01037417mov rsi, [r14]
    0103741apush -100
    0103741cpop rdi
    0103741dmov edx, ebx
    0103741fmov rcx, r15
    01037422mov r8l, 1024
    01037428call Io.Threaded.linkat
    0103742djmp 0x10373e3
    0103737b
    0103742f
    0103742fIo.Threaded.linkat:
    0103742fpush rbp
    01037430mov rbp, rsp
    01037433push r15
    01037435push r14
    01037437push r13
    01037439push r12
    0103743bpush rbx
    0103743csub rsp, 24
    01037440mov r15l, r8l
    01037443mov [rbp-48], rcx
    01037447mov r12l, edx
    0103744amov r14, rsi
    0103744dmov r13l, edi
    01037450lea rbx, [rbp-64]
    01037454mov rdi, rbx
    01037457call Io.Threaded.Syscall.start
    0103745cmovzx eax, [rbx+8]
    01037460test ax, ax
    01037463jne 0x1037540
    01037469mov r9, [rbp-64]
    0103746dmov edi, r13l
    01037470mov edx, r12l
    01037473mov r8l, r15l
    01037476xor ebx, ebx
    01037478mov r10, [rbp-48]
    0103747cmov rsi, r14
    0103747f
    0103747floc_103747f:
    0103747fmov eax, 265
    01037484syscall
    01037486mov rcx, rax
    01037489neg rcx
    0103748ccmp rax, -4095
    01037492cmovb rcx, rbx
    01037496cmp rcx, 40
    0103749aja 0x10374c9
    0103749cjmp [8*rcx+0x1001308]
    010374a3test r9, r9
    010374a6je 0x103747f
    010374a8mov rax, [r9+8]
    010374ac
    010374acloc_10374ac:
    010374acmov rcx, rax
    010374afor rcx, 2
    010374b3lock cmpxchg [r9+8], rcx
    010374b9jne 0x10374ac
    010374bband eax, 7
    010374becmp eax, 5
    010374c1jne 0x103747f
    010374c3mov ax, 17
    010374c7jmp 0x1037540
    010374c9
    010374c9loc_10374c9:
    010374c9cmp ecx, 84
    010374ccje 0x1037531
    010374cecmp ecx, 122
    010374d1jne 0x10374d9
    010374d3mov ax, 5
    010374d7jmp 0x1037535
    010374d9
    010374d9loc_10374d9:
    010374d9mov ax, 4
    010374ddjmp 0x1037535
    010374dfmov ax, 49
    010374e3jmp 0x1037535
    010374e5mov ax, 1
    010374e9jmp 0x1037535
    010374ebmov ax, 52
    010374efjmp 0x1037535
    010374f1mov ax, 53
    010374f5jmp 0x1037535
    010374f7xor eax, eax
    010374f9jmp 0x1037535
    010374fbmov ax, 51
    010374ffjmp 0x1037535
    01037501mov ax, 66
    01037505jmp 0x1037535
    01037507mov ax, 10
    0103750bjmp 0x1037535
    0103750dmov ax, 67
    01037511jmp 0x1037535
    01037513mov ax, 56
    01037517jmp 0x1037535
    01037519mov ax, 8
    0103751djmp 0x1037535
    0103751fmov ax, 54
    01037523jmp 0x1037535
    01037525mov ax, 2
    01037529jmp 0x1037535
    0103752bmov ax, 50
    0103752fjmp 0x1037535
    01037531
    01037531loc_1037531:
    01037531mov ax, 57
    01037535
    01037535loc_1037535:
    01037535test r9, r9
    01037538je 0x1037540
    0103753alock xor [r9+8], 3
    01037540
    01037540loc_1037540:
    01037540add rsp, 24
    01037544pop rbx
    01037545pop r12
    01037547pop r13
    01037549pop r14
    0103754bpop r15
    0103754dpop rbp
    0103754eret
    0103742f
    0103754f
    0103754fIo.Threaded.fileDowngradeLock:
    0103754fpush rbp
    01037550mov rbp, rsp
    01037553push r14
    01037555push rbx
    01037556sub rsp, 16
    0103755amov ebx, [rsi]
    0103755clea r14, [rbp-32]
    01037560mov rdi, r14
    01037563call Io.Threaded.Syscall.start
    01037568movzx eax, [r14+8]
    0103756dtest ax, ax
    01037570jne 0x10375da
    01037572mov r8, [rbp-32]
    01037576push 73
    01037578pop rdx
    01037579push 5
    0103757bpop rsi
    0103757cxor r9l, r9l
    0103757f
    0103757floc_103757f:
    0103757fmov rax, rdx
    01037582mov rdi, rbx
    01037585syscall
    01037587mov rcx, rax
    0103758aneg rcx
    0103758dcmp rax, -4095
    01037593cmovb rcx, r9
    01037597cmp rcx, 4
    0103759bjne 0x10375c3
    0103759dtest r8, r8
    010375a0je 0x103757f
    010375a2mov rax, [r8+8]
    010375a6
    010375a6loc_10375a6:
    010375a6mov rcx, rax
    010375a9or rcx, 2
    010375adlock cmpxchg [r8+8], rcx
    010375b3jne 0x10375a6
    010375b5and eax, 7
    010375b8cmp eax, 5
    010375bbjne 0x103757f
    010375bdmov ax, 17
    010375c1jmp 0x10375da
    010375c3
    010375c3loc_10375c3:
    010375c3test ecx, ecx
    010375c5jne 0x10375cb
    010375c7xor eax, eax
    010375c9jmp 0x10375cf
    010375cb
    010375cbloc_10375cb:
    010375cbmov ax, 4
    010375cf
    010375cfloc_10375cf:
    010375cftest r8, r8
    010375d2je 0x10375da
    010375d4lock xor [r8+8], 3
    010375da
    010375daloc_10375da:
    010375daadd rsp, 16
    010375depop rbx
    010375dfpop r14
    010375e1pop rbp
    010375e2ret
    0103754f
    010375e3
    010375e3Io.Threaded.fileUnlock:
    010375e3push rbp
    010375e4mov rbp, rsp
    010375e7mov edi, [rsi]
    010375e9mov rdx, 73
    010375f3mov rsi, 8
    010375fdxor r8l, r8l
    01037600
    01037600loc_1037600:
    01037600mov rax, rdx
    01037603syscall
    01037605mov rcx, rax
    01037608neg rcx
    0103760bcmp rax, -4095
    01037611cmovb rcx, r8
    01037615cmp rcx, 4
    01037619je 0x1037600
    0103761bcmp ecx, 125
    0103761eje 0x1037600
    01037620pop rbp
    01037621ret
    010375e3
    01037622
    01037622Io.Threaded.fileTryLock:
    01037622push rbp
    01037623mov rbp, rsp
    01037626push r15
    01037628push r14
    0103762apush r12
    0103762cpush rbx
    0103762dsub rsp, 16
    01037631mov rbx, rdi
    01037634mov r14l, [rdx]
    01037637xor cl, 2
    0103763amovzx eax, cl
    0103763dand eax, 3
    01037640mov r15, [8*rax+0x1007c40]
    01037648lea r12, [rbp-48]
    0103764cmov rdi, r12
    0103764fcall Io.Threaded.Syscall.start
    01037654movzx eax, [r12+8]
    0103765atest ax, ax
    0103765djne 0x1037729
    01037663mov r8, [rbp-48]
    01037667push 73
    01037669pop rdx
    0103766axor r9l, r9l
    0103766d
    0103766dloc_103766d:
    0103766dmov rax, rdx
    01037670mov rdi, r14
    01037673mov rsi, r15
    01037676syscall
    01037678mov rcx, rax
    0103767bneg rcx
    0103767ecmp rax, -4095
    01037684cmovb rcx, r9
    01037688cmp rcx, 4
    0103768cjne 0x10376b5
    0103768etest r8, r8
    01037691je 0x103766d
    01037693mov rax, [r8+8]
    01037697
    01037697loc_1037697:
    01037697mov rcx, rax
    0103769aor rcx, 2
    0103769elock cmpxchg [r8+8], rcx
    010376a4jne 0x1037697
    010376a6and eax, 7
    010376a9cmp eax, 5
    010376acjne 0x103766d
    010376aemov [rbx], 17
    010376b3jmp 0x1037719
    010376b5
    010376b5loc_10376b5:
    010376b5cmp ecx, 11
    010376b8je 0x10376d1
    010376batest ecx, ecx
    010376bcjne 0x10376e1
    010376betest r8, r8
    010376c1je 0x10376c9
    010376c3lock xor [r8+8], 3
    010376c9
    010376c9loc_10376c9:
    010376c9mov [rbx], 0x10000
    010376cfjmp 0x1037719
    010376d1
    010376d1loc_10376d1:
    010376d1test r8, r8
    010376d4je 0x10376dc
    010376d6lock xor [r8+8], 3
    010376dc
    010376dcloc_10376dc:
    010376dcand [rbx], 0
    010376dfjmp 0x1037719
    010376e1
    010376e1loc_10376e1:
    010376e1test r8, r8
    010376e4je 0x10376ec
    010376e6lock xor [r8+8], 3
    010376ec
    010376ecloc_10376ec:
    010376eccmp cx, 9
    010376f0je 0x103770c
    010376f2movzx eax, cx
    010376f5cmp eax, 22
    010376f8je 0x103770c
    010376facmp eax, 37
    010376fdje 0x1037713
    010376ffcmp eax, 95
    01037702jne 0x103770c
    01037704mov [rbx], 60
    0103770ajmp 0x1037719
    0103770c
    0103770cloc_103770c:
    0103770cmov [rbx], 4
    01037711jmp 0x1037719
    01037713
    01037713loc_1037713:
    01037713mov [rbx], 2
    01037719
    01037719loc_1037719:
    01037719mov rax, rbx
    0103771cadd rsp, 16
    01037720pop rbx
    01037721pop r12
    01037723pop r14
    01037725pop r15
    01037727pop rbp
    01037728ret
    01037729
    01037729loc_1037729:
    01037729mov [rbx], ax
    0103772cjmp 0x1037719
    01037622
    0103772e
    0103772eIo.Threaded.fileLock:
    0103772epush rbp
    0103772fmov rbp, rsp
    01037732push r15
    01037734push r14
    01037736push rbx
    01037737sub rsp, 24
    0103773bmov ebx, [rsi]
    0103773dxor dl, 2
    01037740movzx eax, dl
    01037743and eax, 3
    01037746mov r14, [8*rax+0x1007c60]
    0103774elea r15, [rbp-40]
    01037752mov rdi, r15
    01037755call Io.Threaded.Syscall.start
    0103775amovzx eax, [r15+8]
    0103775ftest ax, ax
    01037762jne 0x10377f1
    01037768mov r8, [rbp-40]
    0103776cpush 73
    0103776epop rdx
    0103776fxor r9l, r9l
    01037772
    01037772loc_1037772:
    01037772mov rax, rdx
    01037775mov rdi, rbx
    01037778mov rsi, r14
    0103777bsyscall
    0103777dmov rcx, rax
    01037780neg rcx
    01037783cmp rax, -4095
    01037789cmovb rcx, r9
    0103778dcmp rcx, 4
    01037791jne 0x10377b9
    01037793test r8, r8
    01037796je 0x1037772
    01037798mov rax, [r8+8]
    0103779c
    0103779cloc_103779c:
    0103779cmov rcx, rax
    0103779for rcx, 2
    010377a3lock cmpxchg [r8+8], rcx
    010377a9jne 0x103779c
    010377aband eax, 7
    010377aecmp eax, 5
    010377b1jne 0x1037772
    010377b3mov ax, 17
    010377b7jmp 0x10377f1
    010377b9
    010377b9loc_10377b9:
    010377b9test ecx, ecx
    010377bbjne 0x10377cc
    010377bdtest r8, r8
    010377c0je 0x10377c8
    010377c2lock xor [r8+8], 3
    010377c8
    010377c8loc_10377c8:
    010377c8xor eax, eax
    010377cajmp 0x10377f1
    010377cc
    010377ccloc_10377cc:
    010377cctest r8, r8
    010377cfje 0x10377d7
    010377d1lock xor [r8+8], 3
    010377d7
    010377d7loc_10377d7:
    010377d7xor eax, eax
    010377d9cmp rcx, 37
    010377ddsetne al
    010377e0lea edx, [2*rax+2]
    010377e7cmp rcx, 95
    010377ebpush 60
    010377edpop rax
    010377eecmovne eax, edx
    010377f1
    010377f1loc_10377f1:
    010377f1add rsp, 24
    010377f5pop rbx
    010377f6pop r14
    010377f8pop r15
    010377fapop rbp
    010377fbret
    0103772e