File zig_demo_f2072c8e87056dd4f010dfd24f7c5fd7f3ab5198bb7930c7044fb6b6b95222af.elf
Function:
    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
    010377fc
    010377fcIo.Threaded.fileSetTimestamps:
    010377fcpush rbp
    010377fdmov rbp, rsp
    01037800push r15
    01037802push r14
    01037804push r12
    01037806push rbx
    01037807sub rsp, 128
    0103780emov r15, rdx
    01037811mov ebx, [rsi]
    01037813mov al, [rdx+16]
    01037816mov r12b, [rdx+48]
    0103781amov ecx, r12l
    0103781dxor cl, 1
    01037820mov edx, eax
    01037822xor dl, 1
    01037825or dl, cl
    01037827jne 0x103782e
    01037829xor r14l, r14l
    0103782cjmp 0x1037897
    0103782e
    0103782eloc_103782e:
    0103782evmovaps x0, [r15+32]
    01037834vmovaps [rbp-48], x0
    01037839mov rcx, [r15]
    0103783cmov rdx, [r15+8]
    01037840lea rsi, [rbp-128]
    01037844mov [rsi], rcx
    01037847mov [rsi+8], rdx
    0103784bmov [rsi+16], al
    0103784emov rax, [r15+17]
    01037852mov rcx, [r15+24]
    01037856mov [rsi+24], rcx
    0103785amov [rsi+17], rax
    0103785elea r14, [rbp-96]
    01037862mov rdi, r14
    01037865call Io.Threaded.setTimestampToPosix
    0103786alea rdi, [rbp-80]
    0103786elea rsi, [rbp-160]
    01037875vmovaps x0, [rbp-48]
    0103787avmovaps [rsi], x0
    0103787emov [rsi+16], r12b
    01037882mov rax, [r15+49]
    01037886mov rcx, [r15+56]
    0103788amov [rsi+17], rax
    0103788emov [rsi+24], rcx
    01037892call Io.Threaded.setTimestampToPosix
    01037897
    01037897loc_1037897:
    01037897lea r15, [rbp-64]
    0103789bmov rdi, r15
    0103789ecall Io.Threaded.Syscall.start
    010378a3movzx eax, [r15+8]
    010378a8test ax, ax
    010378abjne 0x1037928
    010378admov r8, [rbp-64]
    010378b1xor r9l, r9l
    010378b4
    010378b4loc_10378b4:
    010378b4mov eax, 280
    010378b9mov rdi, rbx
    010378bcxor esi, esi
    010378bemov rdx, r14
    010378c1xor r10l, r10l
    010378c4syscall
    010378c6mov rcx, rax
    010378c9neg rcx
    010378cccmp rax, -4095
    010378d2cmovb rcx, r9
    010378d6cmp rcx, 14
    010378daja 0x1037909
    010378dcjmp [8*rcx+0x1001450]
    010378e3test r8, r8
    010378e6je 0x10378b4
    010378e8mov rax, [r8+8]
    010378ec
    010378ecloc_10378ec:
    010378ecmov rcx, rax
    010378efor rcx, 2
    010378f3lock cmpxchg [r8+8], rcx
    010378f9jne 0x10378ec
    010378fband eax, 7
    010378fecmp eax, 5
    01037901jne 0x10378b4
    01037903mov ax, 17
    01037907jmp 0x1037928
    01037909
    01037909loc_1037909:
    01037909cmp ecx, 22
    0103790cje 0x1037919
    0103790ecmp ecx, 30
    01037911jne 0x1037919
    01037913mov ax, 54
    01037917jmp 0x103791d
    01037919
    01037919loc_1037919:
    01037919mov ax, 4
    0103791d
    0103791dloc_103791d:
    0103791dtest r8, r8
    01037920je 0x1037928
    01037922lock xor [r8+8], 3
    01037928
    01037928loc_1037928:
    01037928add rsp, 128
    0103792fpop rbx
    01037930pop r12
    01037932pop r14
    01037934pop r15
    01037936pop rbp
    01037937ret
    01037938mov ax, 1
    0103793cjmp 0x103791d
    0103793emov ax, 10
    01037942jmp 0x103791d
    01037944xor eax, eax
    01037946jmp 0x103791d
    010377fc
    01037948
    01037948Io.Threaded.setPermissionsPosix:
    01037948push rbp
    01037949mov rbp, rsp
    0103794cpush r15
    0103794epush r14
    01037950push rbx
    01037951sub rsp, 24
    01037955mov ebx, esi
    01037957mov r14l, edi
    0103795alea r15, [rbp-40]
    0103795emov rdi, r15
    01037961call Io.Threaded.Syscall.start
    01037966movzx eax, [r15+8]
    0103796btest ax, ax
    0103796ejne 0x10379d1
    01037970mov r8, [rbp-40]
    01037974mov edi, r14l
    01037977mov esi, ebx
    01037979push 91
    0103797bpop rdx
    0103797cxor r9l, r9l
    0103797f
    0103797floc_103797f:
    0103797fmov rax, rdx
    01037982syscall
    01037984mov rcx, rax
    01037987neg rcx
    0103798acmp rax, -4095
    01037990cmovb rcx, r9
    01037994cmp rcx, 4
    01037998jne 0x10379c0
    0103799atest r8, r8
    0103799dje 0x103797f
    0103799fmov rax, [r8+8]
    010379a3
    010379a3loc_10379a3:
    010379a3mov rcx, rax
    010379a6or rcx, 2
    010379aalock cmpxchg [r8+8], rcx
    010379b0jne 0x10379a3
    010379b2and eax, 7
    010379b5cmp eax, 5
    010379b8jne 0x103797f
    010379bamov ax, 17
    010379bejmp 0x10379d1
    010379c0
    010379c0loc_10379c0:
    010379c0test ecx, ecx
    010379c2jne 0x10379dc
    010379c4test r8, r8
    010379c7je 0x10379cf
    010379c9lock xor [r8+8], 3
    010379cf
    010379cfloc_10379cf:
    010379cfxor eax, eax
    010379d1
    010379d1loc_10379d1:
    010379d1add rsp, 24
    010379d5pop rbx
    010379d6pop r14
    010379d8pop r15
    010379dapop rbp
    010379dbret
    010379dc
    010379dcloc_10379dc:
    010379dctest r8, r8
    010379dfje 0x10379e7
    010379e1lock xor [r8+8], 3
    010379e7
    010379e7loc_10379e7:
    010379e7cmp cx, 1
    010379ebje 0x1037a3d
    010379edmovzx eax, cx
    010379f0cmp eax, 2
    010379f3je 0x1037a19
    010379f5cmp eax, 40
    010379f8je 0x1037a37
    010379facmp eax, 12
    010379fdje 0x1037a31
    010379ffcmp eax, 13
    01037a02je 0x1037a1f
    01037a04cmp eax, 20
    01037a07je 0x1037a19
    01037a09cmp eax, 30
    01037a0cje 0x1037a25
    01037a0ecmp eax, 5
    01037a11jne 0x1037a2b
    01037a13mov ax, 7
    01037a17jmp 0x10379d1
    01037a19
    01037a19loc_1037a19:
    01037a19mov ax, 52
    01037a1djmp 0x10379d1
    01037a1f
    01037a1floc_1037a1f:
    01037a1fmov ax, 10
    01037a23jmp 0x10379d1
    01037a25
    01037a25loc_1037a25:
    01037a25mov ax, 54
    01037a29jmp 0x10379d1
    01037a2b
    01037a2bloc_1037a2b:
    01037a2bmov ax, 4
    01037a2fjmp 0x10379d1
    01037a31
    01037a31loc_1037a31:
    01037a31mov ax, 2
    01037a35jmp 0x10379d1
    01037a37
    01037a37loc_1037a37:
    01037a37mov ax, 50
    01037a3bjmp 0x10379d1
    01037a3d
    01037a3dloc_1037a3d:
    01037a3dmov ax, 1
    01037a41jmp 0x10379d1
    01037948
    01037a43
    01037a43Io.Threaded.setTimestampToPosix:
    01037a43push rbp
    01037a44mov rbp, rsp
    01037a47push r15
    01037a49push r14
    01037a4bpush r12
    01037a4dpush rbx
    01037a4esub rsp, 16
    01037a52mov rbx, rdi
    01037a55movzx eax, [rsi+16]
    01037a59cmp eax, 2
    01037a5cje 0x1037a6a
    01037a5ecmp eax, 1
    01037a61jne 0x1037ac2
    01037a63mov ecx, 0x1007a10
    01037a68jmp 0x1037ac7
    01037a6a
    01037a6aloc_1037a6a:
    01037a6amov r14, [rsi]
    01037a6dmov r12, [rsi+8]
    01037a71movsxd rsi, r12l
    01037a74mov r15l, 0x3b9aca00
    01037a7amov edx, 0x3b9aca00
    01037a7fmov rdi, r14
    01037a82xor ecx, ecx
    01037a84call compiler_rt.udivmod.__divti3
    01037a89mov rcx, rdx
    01037a8cmov rdx, rax
    01037a8fmulx rdx, rsi, r15
    01037a94imul rcx, rcx, 0x3b9aca00
    01037a9badd rcx, rdx
    01037a9esub r14, rsi
    01037aa1sbb r12, rcx
    01037aa4movsxd rdx, r12l
    01037aa7sar rdx, 31
    01037aabadd rax, rdx
    01037aaelea rcx, [rbp-48]
    01037ab2mov [rcx], rax
    01037ab5and rdx, r15
    01037ab8lea rax, [rdx+r14]
    01037abcmov [rcx+8], rax
    01037ac0jmp 0x1037ac7
    01037ac2
    01037ac2loc_1037ac2:
    01037ac2mov ecx, 0x1007a40
    01037ac7
    01037ac7loc_1037ac7:
    01037ac7vmovups x0, [rcx]
    01037acbvmovups [rbx], x0
    01037acfmov rax, rbx
    01037ad2add rsp, 16
    01037ad6pop rbx
    01037ad7pop r12
    01037ad9pop r14
    01037adbpop r15
    01037addpop rbp
    01037aderet
    01037a43
    01037adf
    01037adfIo.Threaded.fileSetLength:
    01037adfmov ax, 6
    01037ae3test rdx, rdx
    01037ae6js 0x1037b81
    01037aecpush rbp
    01037aedmov rbp, rsp
    01037af0push r15
    01037af2push r14
    01037af4push rbx
    01037af5sub rsp, 24
    01037af9mov rbx, rdx
    01037afcmov r14l, [rsi]
    01037afflea r15, [rbp-40]
    01037b03mov rdi, r15
    01037b06call Io.Threaded.Syscall.start
    01037b0bmovzx eax, [r15+8]
    01037b10test ax, ax
    01037b13jne 0x1037b77
    01037b15mov r8, [rbp-40]
    01037b19push 77
    01037b1bpop rdx
    01037b1cxor r9l, r9l
    01037b1f
    01037b1floc_1037b1f:
    01037b1fmov rax, rdx
    01037b22mov rdi, r14
    01037b25mov rsi, rbx
    01037b28syscall
    01037b2amov rcx, rax
    01037b2dneg rcx
    01037b30cmp rax, -4095
    01037b36cmovb rcx, r9
    01037b3acmp rcx, 4
    01037b3ejne 0x1037b66
    01037b40test r8, r8
    01037b43je 0x1037b1f
    01037b45mov rax, [r8+8]
    01037b49
    01037b49loc_1037b49:
    01037b49mov rcx, rax
    01037b4cor rcx, 2
    01037b50lock cmpxchg [r8+8], rcx
    01037b56jne 0x1037b49
    01037b58and eax, 7
    01037b5bcmp eax, 5
    01037b5ejne 0x1037b1f
    01037b60mov ax, 17
    01037b64jmp 0x1037b77
    01037b66
    01037b66loc_1037b66:
    01037b66test ecx, ecx
    01037b68jne 0x1037b82
    01037b6atest r8, r8
    01037b6dje 0x1037b75
    01037b6flock xor [r8+8], 3
    01037b75
    01037b75loc_1037b75:
    01037b75xor eax, eax
    01037b77
    01037b77loc_1037b77:
    01037b77add rsp, 24
    01037b7bpop rbx
    01037b7cpop r14
    01037b7epop r15
    01037b80pop rbp
    01037b81
    01037b81loc_1037b81:
    01037b81ret
    01037b82
    01037b82loc_1037b82:
    01037b82test r8, r8
    01037b85je 0x1037b8d
    01037b87lock xor [r8+8], 3
    01037b8d
    01037b8dloc_1037b8d:
    01037b8dcmp cx, 1
    01037b91je 0x1037bc6
    01037b93movzx ecx, cx
    01037b96mov ax, 6
    01037b9acmp ecx, 27
    01037b9dje 0x1037b77
    01037b9fcmp ecx, 22
    01037ba2je 0x1037bba
    01037ba4cmp ecx, 26
    01037ba7je 0x1037bb4
    01037ba9cmp ecx, 5
    01037bacjne 0x1037bc0
    01037baemov ax, 7
    01037bb2jmp 0x1037b77
    01037bb4
    01037bb4loc_1037bb4:
    01037bb4mov ax, 16
    01037bb8jmp 0x1037b77
    01037bba
    01037bbaloc_1037bba:
    01037bbamov ax, 71
    01037bbejmp 0x1037b77
    01037bc0
    01037bc0loc_1037bc0:
    01037bc0mov ax, 4
    01037bc4jmp 0x1037b77
    01037bc6
    01037bc6loc_1037bc6:
    01037bc6mov ax, 1
    01037bcajmp 0x1037b77
    01037adf
    01037bcc
    01037bccIo.Threaded.posixFchown:
    01037bccpush rbp
    01037bcdmov rbp, rsp
    01037bd0push r15
    01037bd2push r14
    01037bd4push r12
    01037bd6push rbx
    01037bd7sub rsp, 16
    01037bdbmov ebx, edx
    01037bddmov r14l, esi
    01037be0mov r15l, edi
    01037be3lea r12, [rbp-48]
    01037be7mov rdi, r12
    01037beacall Io.Threaded.Syscall.start
    01037befmovzx eax, [r12+8]
    01037bf5test ax, ax
    01037bf8jne 0x1037c5f
    01037bfamov r9, [rbp-48]
    01037bfemov edi, r15l
    01037c01mov esi, r14l
    01037c04mov edx, ebx
    01037c06push 93
    01037c08pop r8
    01037c0axor r10l, r10l
    01037c0d
    01037c0dloc_1037c0d:
    01037c0dmov rax, r8
    01037c10syscall
    01037c12mov rcx, rax
    01037c15neg rcx
    01037c18cmp rax, -4095
    01037c1ecmovb rcx, r10
    01037c22cmp rcx, 4
    01037c26jne 0x1037c4e
    01037c28test r9, r9
    01037c2bje 0x1037c0d
    01037c2dmov rax, [r9+8]
    01037c31
    01037c31loc_1037c31:
    01037c31mov rcx, rax
    01037c34or rcx, 2
    01037c38lock cmpxchg [r9+8], rcx
    01037c3ejne 0x1037c31
    01037c40and eax, 7
    01037c43cmp eax, 5
    01037c46jne 0x1037c0d
    01037c48mov ax, 17
    01037c4cjmp 0x1037c5f
    01037c4e
    01037c4eloc_1037c4e:
    01037c4etest ecx, ecx
    01037c50jne 0x1037c6c
    01037c52test r9, r9
    01037c55je 0x1037c5d
    01037c57lock xor [r9+8], 3
    01037c5d
    01037c5dloc_1037c5d:
    01037c5dxor eax, eax
    01037c5f
    01037c5floc_1037c5f:
    01037c5fadd rsp, 16
    01037c63pop rbx
    01037c64pop r12
    01037c66pop r14
    01037c68pop r15
    01037c6apop rbp
    01037c6bret
    01037c6c
    01037c6cloc_1037c6c:
    01037c6ctest r9, r9
    01037c6fje 0x1037c77
    01037c71lock xor [r9+8], 3
    01037c77
    01037c77loc_1037c77:
    01037c77cmp cx, 1
    01037c7bje 0x1037ccd
    01037c7dmovzx eax, cx
    01037c80cmp eax, 2
    01037c83je 0x1037ca9
    01037c85cmp eax, 40
    01037c88je 0x1037cc7
    01037c8acmp eax, 12
    01037c8dje 0x1037cc1
    01037c8fcmp eax, 13
    01037c92je 0x1037caf
    01037c94cmp eax, 20
    01037c97je 0x1037ca9
    01037c99cmp eax, 30
    01037c9cje 0x1037cb5
    01037c9ecmp eax, 5
    01037ca1jne 0x1037cbb
    01037ca3mov ax, 7
    01037ca7jmp 0x1037c5f
    01037ca9
    01037ca9loc_1037ca9:
    01037ca9mov ax, 52
    01037cadjmp 0x1037c5f
    01037caf
    01037cafloc_1037caf:
    01037cafmov ax, 10
    01037cb3jmp 0x1037c5f
    01037cb5
    01037cb5loc_1037cb5:
    01037cb5mov ax, 54
    01037cb9jmp 0x1037c5f
    01037cbb
    01037cbbloc_1037cbb:
    01037cbbmov ax, 4
    01037cbfjmp 0x1037c5f
    01037cc1
    01037cc1loc_1037cc1:
    01037cc1mov ax, 2
    01037cc5jmp 0x1037c5f
    01037cc7
    01037cc7loc_1037cc7:
    01037cc7mov ax, 50
    01037ccbjmp 0x1037c5f
    01037ccd
    01037ccdloc_1037ccd:
    01037ccdmov ax, 1
    01037cd1jmp 0x1037c5f
    01037bcc
    01037cd3
    01037cd3Io.Threaded.fileSupportsAnsiEscapeCodes:
    01037cd3push rbp
    01037cd4mov rbp, rsp
    01037cd7push r14
    01037cd9push rbx
    01037cdasub rsp, 16
    01037cdemov rbx, rdi
    01037ce1lea r14, [rbp-20]
    01037ce5mov rdi, r14
    01037ce8call Io.Threaded.supportsAnsiEscapeCodes
    01037cedmov eax, [r14]
    01037cf0mov [rbx], eax
    01037cf2mov rax, rbx
    01037cf5add rsp, 16
    01037cf9pop rbx
    01037cfapop r14
    01037cfcpop rbp
    01037cfdret
    01037cd3
    01037cfe
    01037cfeIo.Threaded.fileEnableAnsiEscapeCodes:
    01037cfepush rbp
    01037cffmov rbp, rsp
    01037d02push rbx
    01037d03push rax
    01037d04mov rdx, rsi
    01037d07mov rsi, rdi
    01037d0alea rbx, [rbp-12]
    01037d0emov rdi, rbx
    01037d11call Io.Threaded.supportsAnsiEscapeCodes
    01037d16movzx ecx, [rbx]
    01037d19xor edx, edx
    01037d1btest [rbx+2], 1
    01037d1fpush 70
    01037d21pop rax
    01037d22cmovne eax, edx
    01037d25test cx, cx
    01037d28cmovne eax, ecx
    01037d2badd rsp, 8
    01037d2fpop rbx
    01037d30pop rbp
    01037d31ret
    01037cfe
    01037d32
    01037d32Io.Threaded.supportsAnsiEscapeCodes:
    01037d32push rbp
    01037d33mov rbp, rsp
    01037d36push r15
    01037d38push r14
    01037d3apush r12
    01037d3cpush rbx
    01037d3dsub rsp, 16
    01037d41mov r14, rsi
    01037d44mov rbx, rdi
    01037d47mov r12l, [rdx]
    01037d4alea r15, [rbp-36]
    01037d4emov rdi, r15
    01037d51mov rsi, rdx
    01037d54call Io.Threaded.isTty
    01037d59movzx eax, [r15]
    01037d5dtest ax, ax
    01037d60jne 0x1037db8
    01037d62cmp [rbp-34], 1
    01037d66jne 0x1037d9d
    01037d68dec r12l
    01037d6bcmp r12l, 2
    01037d6fjae 0x1037da2
    01037d71mov rdi, r14
    01037d74call Io.Threaded.scanEnviron
    01037d79mov rdi, [r14+712]
    01037d80test rdi, rdi
    01037d83je 0x1037da2
    01037d85mov rsi, [r14+720]
    01037d8cpush 4
    01037d8epop rcx
    01037d8fmov edx, 0x1008ae8
    01037d94call mem.eql__func_22
    01037d99test al, 1
    01037d9bje 0x1037da2
    01037d9d
    01037d9dloc_1037d9d:
    01037d9dand [rbx], 0
    01037da0jmp 0x1037da8
    01037da2
    01037da2loc_1037da2:
    01037da2mov [rbx], 0x10000
    01037da8
    01037da8loc_1037da8:
    01037da8mov rax, rbx
    01037dabadd rsp, 16
    01037dafpop rbx
    01037db0pop r12
    01037db2pop r14
    01037db4pop r15
    01037db6pop rbp
    01037db7ret
    01037db8
    01037db8loc_1037db8:
    01037db8mov [rbx], ax
    01037dbbjmp 0x1037da8
    01037d32
    01037dbd
    01037dbdIo.Threaded.fileIsTty:
    01037dbdpush rbp
    01037dbemov rbp, rsp
    01037dc1push r14
    01037dc3push rbx
    01037dc4sub rsp, 16
    01037dc8mov rbx, rdi
    01037dcblea r14, [rbp-20]
    01037dcfmov rdi, r14
    01037dd2mov rsi, rdx
    01037dd5call Io.Threaded.isTty
    01037ddamov eax, [r14]
    01037dddmov [rbx], eax
    01037ddfmov rax, rbx
    01037de2add rsp, 16
    01037de6pop rbx
    01037de7pop r14
    01037de9pop rbp
    01037dearet
    01037dbd
    01037deb
    01037debIo.Threaded.isTty:
    01037debpush rbp
    01037decmov rbp, rsp
    01037defpush r15
    01037df1push r14
    01037df3push rbx
    01037df4sub rsp, 24
    01037df8mov rbx, rdi
    01037dfbmovsxd r14, [rsi]
    01037dfelea r15, [rbp-40]
    01037e02mov rdi, r15
    01037e05call Io.Threaded.Syscall.start
    01037e0amovzx eax, [r15+8]
    01037e0ftest ax, ax
    01037e12jne 0x1037ea4
    01037e18mov r9, [rbp-40]
    01037e1cpush 16
    01037e1epop r8
    01037e20lea rdx, [rbp-48]
    01037e24xor r10l, r10l
    01037e27mov esi, 21523
    01037e2c
    01037e2cloc_1037e2c:
    01037e2cmov rax, r8
    01037e2fmov rdi, r14
    01037e32syscall
    01037e34mov rcx, rax
    01037e37neg rcx
    01037e3acmp rax, -4095
    01037e40cmovb rcx, r10
    01037e44cmp rcx, 4
    01037e48jne 0x1037e71
    01037e4atest r9, r9
    01037e4dje 0x1037e2c
    01037e4fmov rax, [r9+8]
    01037e53
    01037e53loc_1037e53:
    01037e53mov rcx, rax
    01037e56or rcx, 2
    01037e5alock cmpxchg [r9+8], rcx
    01037e60jne 0x1037e53
    01037e62and eax, 7
    01037e65cmp eax, 5
    01037e68jne 0x1037e2c
    01037e6amov [rbx], 17
    01037e6fjmp 0x1037e96
    01037e71
    01037e71loc_1037e71:
    01037e71test ecx, ecx
    01037e73jne 0x1037e88
    01037e75test r9, r9
    01037e78je 0x1037e80
    01037e7alock xor [r9+8], 3
    01037e80
    01037e80loc_1037e80:
    01037e80mov [rbx], 0x10000
    01037e86jmp 0x1037e96
    01037e88
    01037e88loc_1037e88:
    01037e88test r9, r9
    01037e8bje 0x1037e93
    01037e8dlock xor [r9+8], 3
    01037e93
    01037e93loc_1037e93:
    01037e93and [rbx], 0
    01037e96
    01037e96loc_1037e96:
    01037e96mov rax, rbx
    01037e99add rsp, 24
    01037e9dpop rbx
    01037e9epop r14
    01037ea0pop r15
    01037ea2pop rbp
    01037ea3ret
    01037ea4
    01037ea4loc_1037ea4:
    01037ea4mov [rbx], ax
    01037ea7jmp 0x1037e96
    01037deb
    01037ea9
    01037ea9Io.Threaded.fileSyncPosix:
    01037ea9push rbp
    01037eaamov rbp, rsp
    01037eadpush r14
    01037eafpush rbx
    01037eb0sub rsp, 16
    01037eb4mov ebx, [rsi]
    01037eb6lea r14, [rbp-32]
    01037ebamov rdi, r14
    01037ebdcall Io.Threaded.Syscall.start
    01037ec2movzx eax, [r14+8]
    01037ec7test ax, ax
    01037ecajne 0x1037f2b
    01037eccmov rsi, [rbp-32]
    01037ed0push 74
    01037ed2pop rdx
    01037ed3xor r8l, r8l
    01037ed6
    01037ed6loc_1037ed6:
    01037ed6mov rax, rdx
    01037ed9mov rdi, rbx
    01037edcsyscall
    01037edemov rcx, rax
    01037ee1neg rcx
    01037ee4cmp rax, -4095
    01037eeacmovb rcx, r8
    01037eeecmp rcx, 4
    01037ef2jne 0x1037f1a
    01037ef4test rsi, rsi
    01037ef7je 0x1037ed6
    01037ef9mov rax, [rsi+8]
    01037efd
    01037efdloc_1037efd:
    01037efdmov rcx, rax
    01037f00or rcx, 2
    01037f04lock cmpxchg [rsi+8], rcx
    01037f0ajne 0x1037efd
    01037f0cand eax, 7
    01037f0fcmp eax, 5
    01037f12jne 0x1037ed6
    01037f14mov ax, 17
    01037f18jmp 0x1037f2b
    01037f1a
    01037f1aloc_1037f1a:
    01037f1atest ecx, ecx
    01037f1cjne 0x1037f34
    01037f1etest rsi, rsi
    01037f21je 0x1037f29
    01037f23lock xor [rsi+8], 3
    01037f29
    01037f29loc_1037f29:
    01037f29xor eax, eax
    01037f2b
    01037f2bloc_1037f2b:
    01037f2badd rsp, 16
    01037f2fpop rbx
    01037f30pop r14
    01037f32pop rbp
    01037f33ret
    01037f34
    01037f34loc_1037f34:
    01037f34test rsi, rsi
    01037f37je 0x1037f3f
    01037f39lock xor [rsi+8], 3
    01037f3f
    01037f3floc_1037f3f:
    01037f3fcmp cx, 5
    01037f43je 0x1037f5e
    01037f45movzx eax, cx
    01037f48cmp eax, 122
    01037f4bje 0x1037f58
    01037f4dcmp eax, 28
    01037f50jne 0x1037f64
    01037f52mov ax, 8
    01037f56jmp 0x1037f2b
    01037f58
    01037f58loc_1037f58:
    01037f58mov ax, 5
    01037f5cjmp 0x1037f2b
    01037f5e
    01037f5eloc_1037f5e:
    01037f5emov ax, 7
    01037f62jmp 0x1037f2b
    01037f64
    01037f64loc_1037f64:
    01037f64mov ax, 4
    01037f68jmp 0x1037f2b
    01037ea9
    01037f6a
    01037f6aIo.Threaded.fileSeekTo:
    01037f6apush rbp
    01037f6bmov rbp, rsp
    01037f6emov edi, [rsi]
    01037f70mov rsi, rdx
    01037f73pop rbp
    01037f74jmp 0x1037f76
    01037f6a
    01037f76
    01037f76Io.Threaded.posixSeekTo:
    01037f76push rbp
    01037f77mov rbp, rsp
    01037f7apush r15
    01037f7cpush r14
    01037f7epush rbx
    01037f7fsub rsp, 24
    01037f83mov rbx, rsi
    01037f86mov r14l, edi
    01037f89lea r15, [rbp-40]
    01037f8dmov rdi, r15
    01037f90call Io.Threaded.Syscall.start
    01037f95movzx eax, [r15+8]
    01037f9atest ax, ax
    01037f9djne 0x103803d
    01037fa3mov r9, [rbp-40]
    01037fa7mov edi, r14l
    01037faaxor r10l, r10l
    01037fadpush 8
    01037fafpop r8
    01037fb1
    01037fb1loc_1037fb1:
    01037fb1mov rax, r8
    01037fb4mov rsi, rbx
    01037fb7xor edx, edx
    01037fb9syscall
    01037fbbmov rcx, rax
    01037fbeneg rcx
    01037fc1cmp rax, -4095
    01037fc7cmovb rcx, r10
    01037fcbcmp rcx, 4
    01037fcfjne 0x1037ff7
    01037fd1test r9, r9
    01037fd4je 0x1037fb1
    01037fd6mov rax, [r9+8]
    01037fda
    01037fdaloc_1037fda:
    01037fdamov rcx, rax
    01037fddor rcx, 2
    01037fe1lock cmpxchg [r9+8], rcx
    01037fe7jne 0x1037fda
    01037fe9and eax, 7
    01037feccmp eax, 5
    01037fefjne 0x1037fb1
    01037ff1mov ax, 17
    01037ff5jmp 0x103803d
    01037ff7
    01037ff7loc_1037ff7:
    01037ff7test ecx, ecx
    01037ff9jne 0x103800a
    01037ffbtest r9, r9
    01037ffeje 0x1038006
    01038000lock xor [r9+8], 3
    01038006
    01038006loc_1038006:
    01038006xor eax, eax
    01038008jmp 0x103803d
    0103800a
    0103800aloc_103800a:
    0103800atest r9, r9
    0103800dje 0x1038015
    0103800flock xor [r9+8], 3
    01038015
    01038015loc_1038015:
    01038015movzx ecx, cx
    01038018mov ax, 22
    0103801clea edx, [rcx-22]
    0103801fcmp edx, 53
    01038022ja 0x1038034
    01038024mov rsi, 0x20000000000081
    0103802ebt rsi, rdx
    01038032jb 0x103803d
    01038034
    01038034loc_1038034:
    01038034cmp ecx, 6
    01038037je 0x103803d
    01038039mov ax, 4
    0103803d
    0103803dloc_103803d:
    0103803dadd rsp, 24
    01038041pop rbx
    01038042pop r14
    01038044pop r15
    01038046pop rbp
    01038047ret
    01037f76
    01038048
    01038048Io.Threaded.fileSeekBy:
    01038048push rbp
    01038049mov rbp, rsp
    0103804cpush r15
    0103804epush r14
    01038050push rbx
    01038051sub rsp, 24
    01038055mov rbx, rdx
    01038058mov r14l, [rsi]
    0103805blea r15, [rbp-40]
    0103805fmov rdi, r15
    01038062call Io.Threaded.Syscall.start
    01038067movzx eax, [r15+8]
    0103806ctest ax, ax
    0103806fjne 0x1038110
    01038075mov r9, [rbp-40]
    01038079push 8
    0103807bpop r8
    0103807dpush 1
    0103807fpop rdx
    01038080xor r10l, r10l
    01038083
    01038083loc_1038083:
    01038083mov rax, r8
    01038086mov rdi, r14
    01038089mov rsi, rbx
    0103808csyscall
    0103808emov rcx, rax
    01038091neg rcx
    01038094cmp rax, -4095
    0103809acmovb rcx, r10
    0103809ecmp rcx, 4
    010380a2jne 0x10380ca
    010380a4test r9, r9
    010380a7je 0x1038083
    010380a9mov rax, [r9+8]
    010380ad
    010380adloc_10380ad:
    010380admov rcx, rax
    010380b0or rcx, 2
    010380b4lock cmpxchg [r9+8], rcx
    010380bajne 0x10380ad
    010380bcand eax, 7
    010380bfcmp eax, 5
    010380c2jne 0x1038083
    010380c4mov ax, 17
    010380c8jmp 0x1038110
    010380ca
    010380caloc_10380ca:
    010380catest ecx, ecx
    010380ccjne 0x10380dd
    010380cetest r9, r9
    010380d1je 0x10380d9
    010380d3lock xor [r9+8], 3
    010380d9
    010380d9loc_10380d9:
    010380d9xor eax, eax
    010380dbjmp 0x1038110
    010380dd
    010380ddloc_10380dd:
    010380ddtest r9, r9
    010380e0je 0x10380e8
    010380e2lock xor [r9+8], 3
    010380e8
    010380e8loc_10380e8:
    010380e8movzx ecx, cx
    010380ebmov ax, 22
    010380eflea edx, [rcx-22]
    010380f2cmp edx, 53
    010380f5ja 0x1038107
    010380f7mov rsi, 0x20000000000081
    01038101bt rsi, rdx
    01038105jb 0x1038110
    01038107
    01038107loc_1038107:
    01038107cmp ecx, 6
    0103810aje 0x1038110
    0103810cmov ax, 4
    01038110
    01038110loc_1038110:
    01038110add rsp, 24
    01038114pop rbx
    01038115pop r14
    01038117pop r15
    01038119pop rbp
    0103811aret
    01038048
    0103811b
    0103811bIo.Threaded.fileReadPositional:
    0103811bpush rbp
    0103811cmov rbp, rsp
    0103811fpush r15
    01038121push r14
    01038123push r13
    01038125push r12
    01038127push rbx
    01038128sub rsp, 152
    0103812fmov r14, r9
    01038132mov rbx, rdi
    01038135mov r15l, [rdx]
    01038138add rcx, 8
    0103813cxor r12l, r12l
    0103813fpush 8
    01038141pop rax
    01038142
    01038142loc_1038142:
    01038142sub r8, 1
    01038146jb 0x103817a
    01038148cmp r12, 8
    0103814cje 0x1038191
    0103814emov rdx, [rcx]
    01038151test rdx, rdx
    01038154je 0x1038174
    01038156mov rsi, [rcx-8]
    0103815amov rdi, r12
    0103815dshl rdi, 4
    01038161mov [rbp+rdi-192], rsi
    01038169mov [rbp+rdi-184], rdx
    01038171inc r12
    01038174
    01038174loc_1038174:
    01038174add rcx, 16
    01038178jmp 0x1038142
    0103817a
    0103817aloc_103817a:
    0103817atest r12, r12
    0103817djne 0x1038194
    0103817fand [rbp-44], 0
    01038184and [rbp-48], 0
    01038188xor eax, eax
    0103818a
    0103818aloc_103818a:
    0103818axor ecx, ecx
    0103818cjmp 0x1038241
    01038191
    01038191loc_1038191:
    01038191mov r12, rax
    01038194
    01038194loc_1038194:
    01038194lea r13, [rbp-64]
    01038198mov rdi, r13
    0103819bcall Io.Threaded.Syscall.start
    010381a0movzx ecx, [r13+8]
    010381a5test cx, cx
    010381a8jne 0x1038241
    010381aemov r9, [rbp-64]
    010381b2xor r13l, r13l
    010381b5lea rsi, [rbp-192]
    010381bc
    010381bcloc_10381bc:
    010381bcmov eax, 295
    010381c1mov rdi, r15
    010381c4mov rdx, r12
    010381c7mov r10, r14
    010381caxor r8l, r8l
    010381cdsyscall
    010381cfmov rcx, rax
    010381d2neg rcx
    010381d5cmp rax, -4095
    010381dbcmovb rcx, r13
    010381dfcmp rcx, 29
    010381e3ja 0x10381ec
    010381e5jmp [8*rcx+0x10014c8]
    010381ec
    010381ecloc_10381ec:
    010381eclea eax, [rcx-104]
    010381efcmp eax, 6
    010381f2ja 0x1038227
    010381f4jmp [8*rax+0x10015b8]
    010381fbtest r9, r9
    010381feje 0x10381bc
    01038200mov rax, [r9+8]
    01038204
    01038204loc_1038204:
    01038204mov rcx, rax
    01038207or rcx, 2
    0103820block cmpxchg [r9+8], rcx
    01038211jne 0x1038204
    01038213and eax, 7
    01038216cmp eax, 5
    01038219jne 0x10381bc
    0103821bmov cx, 17
    0103821fjmp 0x1038241
    01038221mov cx, 2
    01038225jmp 0x1038236
    01038227
    01038227loc_1038227:
    01038227cmp ecx, 75
    0103822ajne 0x1038232
    0103822cmov cx, 22
    01038230jmp 0x1038236
    01038232
    01038232loc_1038232:
    01038232mov cx, 4
    01038236
    01038236loc_1038236:
    01038236test r9, r9
    01038239je 0x1038241
    0103823block xor [r9+8], 3
    01038241
    01038241loc_1038241:
    01038241mov [rbx], rax
    01038244mov [rbx+8], cx
    01038248mov eax, [rbp-48]
    0103824bmov [rbx+10], eax
    0103824emovzx eax, [rbp-44]
    01038252mov [rbx+14], ax
    01038256mov rax, rbx
    01038259add rsp, 152
    01038260pop rbx
    01038261pop r12
    01038263pop r13
    01038265pop r14
    01038267pop r15
    01038269pop rbp
    0103826aret
    0103826btest r9, r9
    0103826eje 0x1038276
    01038270lock xor [r9+8], 3
    01038276
    01038276loc_1038276:
    01038276and [rbp-44], 0
    0103827band [rbp-48], 0
    0103827fmov cx, 34
    01038283jmp 0x1038241
    01038285mov cx, 7
    01038289jmp 0x1038236
    0103828bmov cx, 32
    0103828fjmp 0x1038236
    01038291test r9, r9
    01038294je 0x103818a
    0103829alock xor [r9+8], 3
    010382a0jmp 0x103818a
    010382a5mov cx, 14
    010382a9jmp 0x1038236
    010382abmov cx, 10
    010382afjmp 0x1038236
    0103811b
    010382b1
    010382b1Io.Threaded.fileWriteFilePositional:
    010382b1push rbp
    010382b2mov rbp, rsp
    010382b5push r15
    010382b7push r14
    010382b9push r13
    010382bbpush r12
    010382bdpush rbx
    010382besub rsp, 152
    010382c5mov r14, r9
    010382c8mov r12, r8
    010382cbmov r15, rsi
    010382cemov rbx, rdi
    010382d1mov rax, [rbp+24]
    010382d5mov rsi, [rbp+16]
    010382d9mov r9, [r9+64]
    010382ddmov r10, [r14+72]
    010382e1mov rdi, [r14+48]
    010382e5add rdi, r9
    010382e8mov r8, r10
    010382ebsub r8, r9
    010382eecmp r8, rsi
    010382f1jae 0x1038322
    010382f3mov r13l, [rdx]
    010382f6mov r11l, [r14+80]
    010382famov [rbp-64], r11
    010382fetest [r14+32], 1
    01038303je 0x1038379
    01038305mov r11, [r14+24]
    01038309cmp r11, [r14+16]
    0103830djne 0x1038379
    0103830fcmp r10, r9
    01038312jne 0x1038410
    01038318
    01038318loc_1038318:
    01038318vmovups x0, [rip-0x30850]
    01038320jmp 0x103838e
    01038322
    01038322loc_1038322:
    01038322lea r9, [rbp-160]
    01038329mov [r9], rdi
    0103832cmov [r9+8], rsi
    01038330sub rsp, 8
    01038334push 1
    01038336pop rsi
    01038337lea r15, [rbp-88]
    0103833bmov rdi, r15
    0103833emov r8, r12
    01038341push rax
    01038342push rsi
    01038343push rsi
    01038344call Io.Threaded.fileWritePositional
    01038349add rsp, 32
    0103834dmovzx eax, [r15+8]
    01038352test ax, ax
    01038355jne 0x10385f0
    0103835bmov rax, [rbp-88]
    0103835f
    0103835floc_103835f:
    0103835fxor ecx, ecx
    01038361mov rdx, rax
    01038364sub rdx, r12
    01038367cmovae rcx, rdx
    0103836badd [r14+64], rcx
    0103836f
    0103836floc_103836f:
    0103836fmov [rbx], rax
    01038372and [rbx+8], 0
    01038377jmp 0x1038392
    01038379
    01038379loc_1038379:
    01038379mov r9b, [r15+874]
    01038380test r9b, 1
    01038384je 0x10383a7
    01038386vmovups x0, [rip-0x30c2e]
    0103838e
    0103838eloc_103838e:
    0103838evmovups [rbx], x0
    01038392
    01038392loc_1038392:
    01038392mov rax, rbx
    01038395add rsp, 152
    0103839cpop rbx
    0103839dpop r12
    0103839fpop r13
    010383a1pop r14
    010383a3pop r15
    010383a5pop rbp
    010383a6ret
    010383a7
    010383a7loc_10383a7:
    010383a7mov r9, r8
    010383aaor r9, r12
    010383adje 0x10383f1
    010383aflea r9, [rbp-192]
    010383b6mov [r9], rdi
    010383b9mov [r9+8], r8
    010383bdsub rsp, 8
    010383c1push 1
    010383c3pop rsi
    010383c4lea r15, [rbp-120]
    010383c8mov rdi, r15
    010383cbmov r8, r12
    010383cepush rax
    010383cfpush rsi
    010383d0push rsi
    010383d1call Io.Threaded.fileWritePositional
    010383d6add rsp, 32
    010383damovzx eax, [r15+8]
    010383dftest ax, ax
    010383e2jne 0x10385f0
    010383e8mov rax, [rbp-120]
    010383ecjmp 0x103835f
    010383f1
    010383f1loc_10383f1:
    010383f1mov r12, rax
    010383f4not r12
    010383f7cmp rsi, r12
    010383facmovb r12, rsi
    010383femovzx ecx, [r14+94]
    01038403jmp [8*rcx+0x10015f0]
    0103840amov [rbp-48], rcx
    0103840ejmp 0x1038478
    01038410
    01038410loc_1038410:
    01038410lea r9, [rbp-176]
    01038417mov [r9], rdi
    0103841amov [r9+8], r8
    0103841esub rsp, 8
    01038422push 1
    01038424pop rsi
    01038425lea r15, [rbp-104]
    01038429mov rdi, r15
    0103842cmov r8, r12
    0103842fpush rax
    01038430push rsi
    01038431push rsi
    01038432call Io.Threaded.fileWritePositional
    01038437add rsp, 32
    0103843bmovzx eax, [r15+8]
    01038440test ax, ax
    01038443jne 0x10385f0
    01038449mov rax, [rbp-104]
    0103844djmp 0x103835f
    01038452vmovups x0, [rip-0x30ada]
    0103845ajmp 0x103838e
    0103845fmov rcx, [r14+16]
    01038463lea rdx, [rbp-128]
    01038467mov [rbp-48], rdx
    0103846bmov [rdx], rcx
    0103846enot rcx
    01038471cmp r12, rcx
    01038474cmovae r12, rcx
    01038478
    01038478loc_1038478:
    01038478mov [rbp-56], r13
    0103847cmov [rbp-72], rax
    01038480lea r13, [rbp-144]
    01038487mov rdi, r13
    0103848acall Io.Threaded.Syscall.start
    0103848fmovzx eax, [r13+8]
    01038494test ax, ax
    01038497jne 0x10385f0
    0103849dmov r13, [rbp-144]
    010384a4lea r10, [rbp-72]
    010384a8mov rdi, [rbp-64]
    010384acmov rsi, [rbp-48]
    010384b0
    010384b0loc_10384b0:
    010384b0mov eax, 326
    010384b5mov rdx, [rbp-56]
    010384b9mov r8, r12
    010384bcxor r9l, r9l
    010384bfsyscall
    010384c1mov rcx, rax
    010384c4neg rcx
    010384c7cmp rax, -4095
    010384cdmov edx, 0
    010384d2cmovb rcx, rdx
    010384d6cmp rcx, 4
    010384dajne 0x1038507
    010384dctest r13, r13
    010384dfje 0x10384b0
    010384e1mov rax, [r13+8]
    010384e5
    010384e5loc_10384e5:
    010384e5mov rcx, rax
    010384e8or rcx, 2
    010384eclock cmpxchg [r13+8], rcx
    010384f2jne 0x10384e5
    010384f4and eax, 7
    010384f7cmp eax, 5
    010384fajne 0x10384b0
    010384fcmov [rbx+8], 17
    01038502jmp 0x1038392
    01038507
    01038507loc_1038507:
    01038507cmp ecx, 95
    0103850aje 0x103853a
    0103850ccmp ecx, 22
    0103850fje 0x103853a
    01038511cmp ecx, 38
    01038514je 0x103853a
    01038516test ecx, ecx
    01038518jne 0x1038556
    0103851atest r13, r13
    0103851dje 0x1038525
    0103851flock xor [r13+8], 3
    01038525
    01038525loc_1038525:
    01038525mov rcx, [r14+16]
    01038529test rax, rax
    0103852cje 0x10385a1
    0103852eadd rcx, rax
    01038531mov [r14+16], rcx
    01038535jmp 0x103836f
    0103853a
    0103853aloc_103853a:
    0103853atest r13, r13
    0103853dje 0x1038545
    0103853flock xor [r13+8], 3
    01038545
    01038545loc_1038545:
    01038545mov [r15+874], 1
    0103854dvxorps x0, x0, x0
    01038551jmp 0x103838e
    01038556
    01038556loc_1038556:
    01038556test r13, r13
    01038559je 0x1038561
    0103855block xor [r13+8], 3
    01038561
    01038561loc_1038561:
    01038561movzx eax, cx
    01038564lea ecx, [rax-18]
    01038567cmp ecx, 11
    0103856aja 0x1038580
    0103856cjmp [8*rcx+0x1001618]
    01038573vmovups x0, [rip-0x30dbb]
    0103857bjmp 0x103838e
    01038580
    01038580loc_1038580:
    01038580cmp eax, 1
    01038583je 0x10385e3
    01038585cmp eax, 5
    01038588je 0x10385d6
    0103858acmp eax, 6
    0103858dje 0x10385af
    0103858fcmp eax, 12
    01038592jne 0x1038545
    01038594vmovups x0, [rip-0x30dcc]
    0103859cjmp 0x103838e
    010385a1
    010385a1loc_10385a1:
    010385a1mov [r14+24], rcx
    010385a5mov [r14+32], 1
    010385aajmp 0x1038318
    010385af
    010385afloc_10385af:
    010385afvmovups x0, [rip-0x30e07]
    010385b7jmp 0x103838e
    010385bcvmovups x0, [rip-0x30c54]
    010385c4jmp 0x103838e
    010385c9vmovups x0, [rip-0x30d71]
    010385d1jmp 0x103838e
    010385d6
    010385d6loc_10385d6:
    010385d6vmovups x0, [rip-0x30c7e]
    010385dejmp 0x103838e
    010385e3
    010385e3loc_10385e3:
    010385e3vmovups x0, [rip-0x30d5b]
    010385ebjmp 0x103838e
    010385f0
    010385f0loc_10385f0:
    010385f0mov [rbx+8], ax
    010385f4jmp 0x1038392
    010382b1
    010385f9
    010385f9Io.Threaded.fileWriteFileStreaming:
    010385f9push rbp
    010385famov rbp, rsp
    010385fdpush r15
    010385ffpush r14
    01038601push r13
    01038603push r12
    01038605push rbx
    01038606sub rsp, 248
    0103860dmov r10, r8
    01038610mov rbx, rdx
    01038613mov r13, [rbp+16]
    01038617mov rax, [r9+64]
    0103861bmov r11, [r9+72]
    0103861fmov r15, [r9+48]
    01038623add r15, rax
    01038626mov r14, r11
    01038629sub r14, rax
    0103862ccmp r14, r13
    0103862fjae 0x1038667
    01038631mov r12l, [rbx]
    01038634mov r8l, [r9+80]
    01038638test [r9+32], 1
    0103863dje 0x10386d3
    01038643mov rdx, [r9+24]
    01038647cmp rdx, [r9+16]
    0103864bjne 0x10386d3
    01038651cmp r11, rax
    01038654jne 0x10387f3
    0103865avmovups x0, [rip-0x30b92]
    01038662jmp 0x10386ef
    01038667
    01038667loc_1038667:
    01038667mov r12, r9
    0103866amov r14, rdi
    0103866dlea r8, [rbp-232]
    01038674mov [r8], r15
    01038677mov [r8+8], r13
    0103867bmov [rsp], 1
    01038683lea r13, [rbp-120]
    01038687push 1
    01038689pop r9
    0103868bmov rdi, r13
    0103868emov rsi, rbx
    01038691mov rdx, rcx
    01038694mov rcx, r10
    01038697mov rbx, r10
    0103869acall Io.Threaded.fileWriteStreaming
    0103869fmovzx eax, [r13+8]
    010386a4test ax, ax
    010386a7jne 0x1038cc9
    010386admov rax, [rbp-120]
    010386b1xor ecx, ecx
    010386b3mov rdx, rax
    010386b6sub rdx, rbx
    010386b9cmovae rcx, rdx
    010386bdadd [r12+64], rcx
    010386c2mov rdx, r14
    010386c5mov [r14], rax
    010386c8and [r14+8], 0
    010386cejmp 0x1038861
    010386d3
    010386d3loc_10386d3:
    010386d3mov al, [rsi+876]
    010386d9test al, 1
    010386dbje 0x10386fb
    010386dd
    010386ddloc_10386dd:
    010386ddmov al, [rsi+874]
    010386e3test al, 1
    010386e5je 0x103875d
    010386e7vmovups x0, [rip-0x30f8f]
    010386ef
    010386efloc_10386ef:
    010386efvmovups [rdi], x0
    010386f3mov rax, rdi
    010386f6jmp 0x1038864
    010386fb
    010386fbloc_10386fb:
    010386fbmov rax, r14
    010386feor rax, r10
    01038701je 0x10387bf
    01038707mov r12, r9
    0103870amov [rbp-48], rdi
    0103870elea r8, [rbp-264]
    01038715mov [r8], r15
    01038718mov [r8+8], r14
    0103871cmov [rsp], 1
    01038724lea r13, [rbp-152]
    0103872bpush 1
    0103872dpop r9
    0103872fmov rdi, r13
    01038732mov rsi, rbx
    01038735mov rdx, rcx
    01038738mov rcx, r10
    0103873bmov rbx, r10
    0103873ecall Io.Threaded.fileWriteStreaming
    01038743movzx eax, [r13+8]
    01038748test ax, ax
    0103874bjne 0x1038cd6
    01038751mov rax, [rbp-152]
    01038758jmp 0x1038844
    0103875d
    0103875dloc_103875d:
    0103875dmov rax, r14
    01038760or rax, r10
    01038763je 0x1038876
    01038769mov r12, r9
    0103876cmov [rbp-48], rdi
    01038770lea r8, [rbp-280]
    01038777mov [r8], r15
    0103877amov [r8+8], r14
    0103877emov [rsp], 1
    01038786lea r13, [rbp-192]
    0103878dpush 1
    0103878fpop r9
    01038791mov rdi, r13
    01038794mov rsi, rbx
    01038797mov rdx, rcx
    0103879amov rcx, r10
    0103879dmov rbx, r10
    010387a0call Io.Threaded.fileWriteStreaming
    010387a5movzx eax, [r13+8]
    010387aatest ax, ax
    010387adjne 0x1038cd6
    010387b3mov rax, [rbp-192]
    010387bajmp 0x1038844
    010387bf
    010387bfloc_10387bf:
    010387bfmovzx eax, [r9+94]
    010387c4jmp [8*rax+0x1001678]
    010387cbmov [rbp-72], r8
    010387cfmov [rbp-80], r12
    010387d3mov [rbp-64], rsi
    010387d7mov [rbp-56], r9
    010387dbmov [rbp-48], rdi
    010387dfmov ebx, 0x7ffff000
    010387e4cmp r13, rbx
    010387e7cmovb rbx, r13
    010387ebxor r15l, r15l
    010387eejmp 0x1038915
    010387f3
    010387f3loc_10387f3:
    010387f3mov r12, r9
    010387f6mov [rbp-48], rdi
    010387falea r8, [rbp-248]
    01038801mov [r8], r15
    01038804mov [r8+8], r14
    01038808mov [rsp], 1
    01038810lea r13, [rbp-136]
    01038817push 1
    01038819pop r9
    0103881bmov rdi, r13
    0103881emov rsi, rbx
    01038821mov rdx, rcx
    01038824mov rcx, r10
    01038827mov rbx, r10
    0103882acall Io.Threaded.fileWriteStreaming
    0103882fmovzx eax, [r13+8]
    01038834test ax, ax
    01038837jne 0x1038cd6
    0103883dmov rax, [rbp-136]
    01038844
    01038844loc_1038844:
    01038844xor ecx, ecx
    01038846mov rdx, rax
    01038849sub rdx, rbx
    0103884ccmovae rcx, rdx
    01038850add [r12+64], rcx
    01038855
    01038855loc_1038855:
    01038855mov rdx, [rbp-48]
    01038859
    01038859loc_1038859:
    01038859mov [rdx], rax
    0103885cand [rdx+8], 0
    01038861
    01038861loc_1038861:
    01038861mov rax, rdx
    01038864
    01038864loc_1038864:
    01038864add rsp, 248
    0103886bpop rbx
    0103886cpop r12
    0103886epop r13
    01038870pop r14
    01038872pop r15
    01038874pop rbp
    01038875ret
    01038876
    01038876loc_1038876:
    01038876movzx ebx, [r9+94]
    0103887bjmp [8*rbx+0x10016e0]
    01038882mov [rbp-72], r8
    01038886mov [rbp-64], rsi
    0103888amov [rbp-56], r9
    0103888emov [rbp-48], rdi
    01038892jmp 0x1038a10
    01038897vmovups x0, [rip-0x30f1f]
    0103889fjmp 0x10386ef
    010388a4mov [rbp-88], rcx
    010388a8mov [rbp-56], r10
    010388acmov [rbp-72], r8
    010388b0mov [rbp-80], r12
    010388b4mov [rbp-64], rsi
    010388b8mov [rbp-48], rdi
    010388bclea rdi, [rbp-104]
    010388c0mov rsi, r9
    010388c3mov r12, r9
    010388c6call Io.File.Reader.getSize
    010388cblea rax, [rbp-104]
    010388cfmovzx eax, [rax+8]
    010388d3test eax, eax
    010388d5jne 0x1038ce3
    010388dbmov rcx, [r12+16]
    010388e0test rcx, rcx
    010388e3mov rax, [rbp-48]
    010388e7js 0x1038b08
    010388edmov [rbp-56], r12
    010388f1mov rbx, [rbp-104]
    010388f5lea r15, [rbp-160]
    010388fcmov [r15], rcx
    010388ffsub rbx, rcx
    01038902cmp r13, rbx
    01038905cmovb rbx, r13
    01038909mov eax, 0x7ffff000
    0103890ecmp rbx, rax
    01038911cmovae rbx, rax
    01038915
    01038915loc_1038915:
    01038915lea r12, [rbp-176]
    0103891cmov rdi, r12
    0103891fcall Io.Threaded.Syscall.start
    01038924movzx eax, [r12+8]
    0103892atest ax, ax
    0103892djne 0x1038cd6
    01038933mov r9, [rbp-176]
    0103893apush 40
    0103893cpop r8
    0103893exor r14l, r14l
    01038941mov rdi, [rbp-80]
    01038945mov rsi, [rbp-72]
    01038949
    01038949loc_1038949:
    01038949mov rax, r8
    0103894cmov rdx, r15
    0103894fmov r10, rbx
    01038952syscall
    01038954mov rcx, rax
    01038957neg rcx
    0103895acmp rax, -4095
    01038960cmovb rcx, r14
    01038964cmp rcx, 4
    01038968jne 0x103898f
    0103896atest r9, r9
    0103896dje 0x1038949
    0103896fmov rax, [r9+8]
    01038973
    01038973loc_1038973:
    01038973mov rcx, rax
    01038976or rcx, 2
    0103897alock cmpxchg [r9+8], rcx
    01038980jne 0x1038973
    01038982and eax, 7
    01038985cmp eax, 5
    01038988jne 0x1038949
    0103898ajmp 0x1038a89
    0103898f
    0103898floc_103898f:
    0103898fcmp ecx, 38
    01038992je 0x10389cd
    01038994cmp ecx, 22
    01038997je 0x10389cd
    01038999test ecx, ecx
    0103899bmov rsi, [rbp-64]
    0103899fjne 0x1038b19
    010389a5test r9, r9
    010389a8je 0x10389b0
    010389aalock xor [r9+8], 3
    010389b0
    010389b0loc_10389b0:
    010389b0mov rdx, [rbp-56]
    010389b4mov rcx, [rdx+16]
    010389b8test rax, rax
    010389bbje 0x1038bdc
    010389c1add rcx, rax
    010389c4mov [rdx+16], rcx
    010389c8jmp 0x1038855
    010389cd
    010389cdloc_10389cd:
    010389cdtest r9, r9
    010389d0mov rax, [rbp-64]
    010389d4je 0x10389dc
    010389d6lock xor [r9+8], 3
    010389dc
    010389dcloc_10389dc:
    010389dcmov [rax+876], 1
    010389e3jmp 0x1038af7
    010389e8mov [rbp-72], r8
    010389ecmov [rbp-64], rsi
    010389f0mov [rbp-48], rdi
    010389f4mov [rbp-56], r9
    010389f8mov rax, [r9+16]
    010389fclea rbx, [rbp-200]
    01038a03mov [rbx], rax
    01038a06not rax
    01038a09cmp r13, rax
    01038a0ccmovae r13, rax
    01038a10
    01038a10loc_1038a10:
    01038a10lea r15, [rbp-216]
    01038a17mov rdi, r15
    01038a1acall Io.Threaded.Syscall.start
    01038a1fmovzx eax, [r15+8]
    01038a24test ax, ax
    01038a27jne 0x1038cd6
    01038a2dmov r15, [rbp-216]
    01038a34mov rdi, [rbp-72]
    01038a38
    01038a38loc_1038a38:
    01038a38mov eax, 326
    01038a3dmov rsi, rbx
    01038a40mov rdx, r12
    01038a43xor r10l, r10l
    01038a46mov r8, r13
    01038a49xor r9l, r9l
    01038a4csyscall
    01038a4emov rcx, rax
    01038a51neg rcx
    01038a54cmp rax, -4095
    01038a5amov edx, 0
    01038a5fcmovb rcx, rdx
    01038a63cmp rcx, 4
    01038a67jne 0x1038a98
    01038a69test r15, r15
    01038a6cje 0x1038a38
    01038a6emov rax, [r15+8]
    01038a72
    01038a72loc_1038a72:
    01038a72mov rcx, rax
    01038a75or rcx, 2
    01038a79lock cmpxchg [r15+8], rcx
    01038a7fjne 0x1038a72
    01038a81and eax, 7
    01038a84cmp eax, 5
    01038a87jne 0x1038a38
    01038a89
    01038a89loc_1038a89:
    01038a89mov rdx, [rbp-48]
    01038a8dmov [rdx+8], 17
    01038a93jmp 0x1038861
    01038a98
    01038a98loc_1038a98:
    01038a98cmp ecx, 95
    01038a9bje 0x1038adf
    01038a9dcmp ecx, 22
    01038aa0je 0x1038adf
    01038aa2cmp ecx, 38
    01038aa5je 0x1038adf
    01038aa7test ecx, ecx
    01038aa9mov r12, [rbp-64]
    01038aadjne 0x1038b4c
    01038ab3test r15, r15
    01038ab6mov rdx, [rbp-48]
    01038abaje 0x1038ac2
    01038abclock xor [r15+8], 3
    01038ac2
    01038ac2loc_1038ac2:
    01038ac2mov rsi, [rbp-56]
    01038ac6mov rcx, [rsi+16]
    01038acatest rax, rax
    01038acdje 0x1038c2e
    01038ad3add rcx, rax
    01038ad6mov [rsi+16], rcx
    01038adajmp 0x1038859
    01038adf
    01038adfloc_1038adf:
    01038adftest r15, r15
    01038ae2mov r12, [rbp-64]
    01038ae6je 0x1038aee
    01038ae8lock xor [r15+8], 3
    01038aee
    01038aeeloc_1038aee:
    01038aeemov [r12+874], 1
    01038af7
    01038af7loc_1038af7:
    01038af7vxorps x0, x0, x0
    01038afb
    01038afbloc_1038afb:
    01038afbmov rdx, [rbp-48]
    01038aff
    01038affloc_1038aff:
    01038affvmovups [rdx], x0
    01038b03jmp 0x1038861
    01038b08
    01038b08loc_1038b08:
    01038b08vmovups x0, [rip-0x31190]
    01038b10vmovups [rax], x0
    01038b14jmp 0x1038864
    01038b19
    01038b19loc_1038b19:
    01038b19test r9, r9
    01038b1cje 0x1038b24
    01038b1elock xor [r9+8], 3
    01038b24
    01038b24loc_1038b24:
    01038b24movzx eax, cx
    01038b27lea ecx, [rax-5]
    01038b2acmp ecx, 7
    01038b2dja 0x1038bb4
    01038b33mov rdx, [rbp-48]
    01038b37mov r14, [rbp-56]
    01038b3bjmp [8*rcx+0x10016a0]
    01038b42vmovups x0, [rip-0x3121a]
    01038b4ajmp 0x1038aff
    01038b4c
    01038b4cloc_1038b4c:
    01038b4ctest r15, r15
    01038b4fmov rdx, [rbp-48]
    01038b53je 0x1038b5b
    01038b55lock xor [r15+8], 3
    01038b5b
    01038b5bloc_1038b5b:
    01038b5bcmp cx, 1
    01038b5fje 0x1038cbc
    01038b65movzx eax, cx
    01038b68cmp eax, 5
    01038b6bje 0x1038c43
    01038b71cmp eax, 12
    01038b74je 0x1038c50
    01038b7acmp eax, 16
    01038b7dje 0x1038caf
    01038b83cmp eax, 18
    01038b86je 0x1038c76
    01038b8ccmp eax, 26
    01038b8fje 0x1038c90
    01038b95cmp eax, 27
    01038b98je 0x1038c83
    01038b9ecmp eax, 28
    01038ba1jne 0x1038c9d
    01038ba7vmovups x0, [rip-0x3134f]
    01038bafjmp 0x1038aff
    01038bb4
    01038bb4loc_1038bb4:
    01038bb4cmp eax, 29
    01038bb7mov rdx, [rbp-48]
    01038bbbmov r14, [rbp-56]
    01038bbfje 0x1038bf1
    01038bc1cmp eax, 32
    01038bc4je 0x1038bcf
    01038bc6cmp eax, 107
    01038bc9jne 0x1038c5d
    01038bcf
    01038bcfloc_1038bcf:
    01038bcfvmovups x0, [rip-0x313a7]
    01038bd7jmp 0x1038aff
    01038bdc
    01038bdcloc_1038bdc:
    01038bdcmov [rdx+24], rcx
    01038be0mov [rdx+32], 1
    01038be4vmovups x0, [rip-0x3111c]
    01038becjmp 0x1038afb
    01038bf1
    01038bf1loc_1038bf1:
    01038bf1mov rbx, rdx
    01038bf4movzx edi, [r14+94]
    01038bf9call Io.File.Reader.Mode.toStreaming
    01038bfeand al, 7
    01038c00mov [r14+94], al
    01038c04mov rsi, [r14+16]
    01038c08test rsi, rsi
    01038c0bje 0x1038c66
    01038c0dmov rdi, r14
    01038c10and [r14+16], 0
    01038c15call Io.File.Reader.seekBy
    01038c1atest ax, ax
    01038c1dje 0x1038c66
    01038c1fmov [r14+94], 4
    01038c24vmovups x0, [rip-0x312ac]
    01038c2cjmp 0x1038c6a
    01038c2e
    01038c2eloc_1038c2e:
    01038c2emov [rsi+24], rcx
    01038c32mov [rsi+32], 1
    01038c36vmovups x0, [rip-0x3116e]
    01038c3ejmp 0x1038aff
    01038c43
    01038c43loc_1038c43:
    01038c43vmovups x0, [rip-0x312eb]
    01038c4bjmp 0x1038aff
    01038c50
    01038c50loc_1038c50:
    01038c50vmovups x0, [rip-0x31488]
    01038c58jmp 0x1038aff
    01038c5d
    01038c5dloc_1038c5d:
    01038c5dmov [rsi+876], 1
    01038c64jmp 0x1038ca6
    01038c66
    01038c66loc_1038c66:
    01038c66vxorps x0, x0, x0
    01038c6a
    01038c6aloc_1038c6a:
    01038c6amov rdx, rbx
    01038c6dvmovups [rbx], x0
    01038c71jmp 0x1038861
    01038c76
    01038c76loc_1038c76:
    01038c76vmovups x0, [rip-0x3151e]
    01038c7ejmp 0x1038aff
    01038c83
    01038c83loc_1038c83:
    01038c83vmovups x0, [rip-0x3131b]
    01038c8bjmp 0x1038aff
    01038c90
    01038c90loc_1038c90:
    01038c90vmovups x0, [rip-0x314d8]
    01038c98jmp 0x1038aff
    01038c9d
    01038c9dloc_1038c9d:
    01038c9dmov [r12+874], 1
    01038ca6
    01038ca6loc_1038ca6:
    01038ca6vxorps x0, x0, x0
    01038caajmp 0x1038aff
    01038caf
    01038cafloc_1038caf:
    01038cafvmovups x0, [rip-0x31247]
    01038cb7jmp 0x1038aff
    01038cbc
    01038cbcloc_1038cbc:
    01038cbcvmovups x0, [rip-0x31434]
    01038cc4jmp 0x1038aff
    01038cc9
    01038cc9loc_1038cc9:
    01038cc9mov rdx, r14
    01038cccmov [r14+8], ax
    01038cd1jmp 0x1038861
    01038cd6
    01038cd6loc_1038cd6:
    01038cd6mov rdx, [rbp-48]
    01038cdamov [rdx+8], ax
    01038cdejmp 0x1038861
    01038ce3
    01038ce3loc_1038ce3:
    01038ce3cmp eax, 17
    01038ce6mov rdi, [rbp-48]
    01038ceamov r9, r12
    01038cedmov rsi, [rbp-64]
    01038cf1mov r12, [rbp-80]
    01038cf5mov r8, [rbp-72]
    01038cf9mov r10, [rbp-56]
    01038cfdmov rcx, [rbp-88]
    01038d01jne 0x10386dd
    01038d07vmovups x0, [rip-0x3151f]
    01038d0fjmp 0x10386ef
    010385f9
    01038d14
    01038d14Io.Threaded.fileWritePositional:
    01038d14push rbp
    01038d15mov rbp, rsp
    01038d18push r15
    01038d1apush r14
    01038d1cpush r13
    01038d1epush r12
    01038d20push rbx
    01038d21sub rsp, 232
    01038d28mov [rbp-48], rdi
    01038d2cmov rax, [rbp+16]
    01038d30mov edx, [rdx]
    01038d32test r8, r8
    01038d35mov [rbp-64], rdx
    01038d39je 0x1038d4f
    01038d3bmov [rbp-208], rcx
    01038d42mov [rbp-200], r8
    01038d49push 1
    01038d4bpop r12
    01038d4djmp 0x1038d52
    01038d4f
    01038d4floc_1038d4f:
    01038d4fxor r12l, r12l
    01038d52
    01038d52loc_1038d52:
    01038d52mov r14, [rbp+32]
    01038d56mov r15, [rbp+24]
    01038d5adec rax
    01038d5dlea rcx, [r9+8]
    01038d61push 8
    01038d63pop rdx
    01038d64mov rsi, rax
    01038d67
    01038d67loc_1038d67:
    01038d67sub rsi, 1
    01038d6bjb 0x1038da8
    01038d6dmov rdi, [rcx]
    01038d70test rdi, rdi
    01038d73je 0x1038d9c
    01038d75mov r8, rdx
    01038d78cmp r12, 8
    01038d7cje 0x1038d9f
    01038d7emov r8, [rcx-8]
    01038d82mov r10, r12
    01038d85shl r10, 4
    01038d89mov [rbp+r10-208], r8
    01038d91mov [rbp+r10-200], rdi
    01038d99inc r12
    01038d9c
    01038d9cloc_1038d9c:
    01038d9cmov r8, r12
    01038d9f
    01038d9floc_1038d9f:
    01038d9fadd rcx, 16
    01038da3mov r12, r8
    01038da6jmp 0x1038d67
    01038da8
    01038da8loc_1038da8:
    01038da8mov rdx, r12
    01038dabpush 8
    01038dadpop rbx
    01038daesub rdx, 8
    01038db2je 0x1038eea
    01038db8test r15, r15
    01038dbbje 0x1038ede
    01038dc1shl rax, 4
    01038dc5mov rcx, [r9+rax]
    01038dc9mov rax, [r9+rax+8]
    01038dcecmp r15, 1
    01038dd2jne 0x1038dff
    01038dd4test rax, rax
    01038dd7je 0x1038ede
    01038dddmov rdx, r12
    01038de0shl rdx, 4
    01038de4mov [rbp+rdx-208], rcx
    01038decmov [rbp+rdx-200], rax
    01038df4inc r12
    01038df7
    01038df7loc_1038df7:
    01038df7mov rbx, r12
    01038dfajmp 0x1038eea
    01038dff
    01038dffloc_1038dff:
    01038dfftest rax, rax
    01038e02je 0x1038ede
    01038e08cmp rax, 1
    01038e0cjne 0x1038ea0
    01038e12cmp r15, 64
    01038e16push 64
    01038e18pop rdx
    01038e19cmovb rdx, r15
    01038e1dmov [rbp-56], rdx
    01038e21movzx esi, [rcx]
    01038e24lea r13, [rbp-272]
    01038e2bmov rdi, r13
    01038e2ecall compiler_rt.smallMemset
    01038e33mov rax, r12
    01038e36shl rax, 4
    01038e3aadd rax, rbp
    01038e3dadd rax, -184
    01038e43mov [rax-24], r13
    01038e47mov rcx, [rbp-56]
    01038e4bmov [rax-16], rcx
    01038e4fsub r15, rcx
    01038e52add r12, 2
    01038e56
    01038e56loc_1038e56:
    01038e56cmp r15, 65
    01038e5ajb 0x1038e7a
    01038e5ccmp r12, 9
    01038e60je 0x1038e7a
    01038e62mov [rax-8], r13
    01038e66mov [rax], 64
    01038e6dadd r15, -64
    01038e71inc r12
    01038e74add rax, 16
    01038e78jmp 0x1038e56
    01038e7a
    01038e7aloc_1038e7a:
    01038e7acmp r15, 64
    01038e7epush 64
    01038e80pop rcx
    01038e81cmovb rcx, r15
    01038e85test r15, r15
    01038e88je 0x10390ec
    01038e8ecmp r12, 9
    01038e92je 0x1038eea
    01038e94mov [rax-8], r13
    01038e98mov [rax], rcx
    01038e9bjmp 0x1038df7
    01038ea0
    01038ea0loc_1038ea0:
    01038ea0neg rdx
    01038ea3cmp r15, rdx
    01038ea6cmovb rdx, r15
    01038eaapush 8
    01038eacpop rsi
    01038ead
    01038eadloc_1038ead:
    01038eadsub rdx, 1
    01038eb1jb 0x1038ede
    01038eb3mov rdi, rsi
    01038eb6cmp r12, 8
    01038ebaje 0x1038ed9
    01038ebcmov rdi, r12
    01038ebfshl rdi, 4
    01038ec3mov [rbp+rdi-208], rcx
    01038ecbmov [rbp+rdi-200], rax
    01038ed3inc r12
    01038ed6mov rdi, r12
    01038ed9
    01038ed9loc_1038ed9:
    01038ed9mov r12, rdi
    01038edcjmp 0x1038ead
    01038ede
    01038edeloc_1038ede:
    01038edemov rbx, r12
    01038ee1test r12, r12
    01038ee4je 0x1038fd4
    01038eea
    01038eealoc_1038eea:
    01038eealea r15, [rbp-80]
    01038eeemov rdi, r15
    01038ef1call Io.Threaded.Syscall.start
    01038ef6movzx eax, [r15+8]
    01038efbtest ax, ax
    01038efejne 0x10390f4
    01038f04mov r9, [rbp-80]
    01038f08xor r15l, r15l
    01038f0blea rsi, [rbp-208]
    01038f12mov r10, r14
    01038f15mov rdi, [rbp-64]
    01038f19
    01038f19loc_1038f19:
    01038f19mov eax, 296
    01038f1emov rdx, rbx
    01038f21xor r8l, r8l
    01038f24syscall
    01038f26mov rcx, rax
    01038f29neg rcx
    01038f2ccmp rax, -4095
    01038f32cmovb rcx, r15
    01038f36cmp rcx, 32
    01038f3aja 0x1038f72
    01038f3cjmp [8*rcx+0x1001708]
    01038f43test r9, r9
    01038f46je 0x1038f19
    01038f48mov rax, [r9+8]
    01038f4c
    01038f4cloc_1038f4c:
    01038f4cmov rcx, rax
    01038f4for rcx, 2
    01038f53lock cmpxchg [r9+8], rcx
    01038f59jne 0x1038f4c
    01038f5band eax, 7
    01038f5ecmp eax, 5
    01038f61jne 0x1038f19
    01038f63mov rcx, [rbp-48]
    01038f67mov [rcx+8], 17
    01038f6djmp 0x10390d7
    01038f72
    01038f72loc_1038f72:
    01038f72cmp ecx, 75
    01038f75je 0x1038fba
    01038f77cmp ecx, 89
    01038f7aje 0x1038fa0
    01038f7ccmp ecx, 104
    01038f7fje 0x1038fa0
    01038f81cmp ecx, 122
    01038f84jne 0x1038fa0
    01038f86test r9, r9
    01038f89je 0x1038f91
    01038f8block xor [r9+8], 3
    01038f91
    01038f91loc_1038f91:
    01038f91mov rcx, [rbp-48]
    01038f95mov [rcx+8], 5
    01038f9bjmp 0x10390d7
    01038fa0
    01038fa0loc_1038fa0:
    01038fa0test r9, r9
    01038fa3je 0x1038fab
    01038fa5lock xor [r9+8], 3
    01038fab
    01038fabloc_1038fab:
    01038fabmov rcx, [rbp-48]
    01038fafmov [rcx+8], 4
    01038fb5jmp 0x10390d7
    01038fba
    01038fbaloc_1038fba:
    01038fbatest r9, r9
    01038fbdje 0x1038fc5
    01038fbflock xor [r9+8], 3
    01038fc5
    01038fc5loc_1038fc5:
    01038fc5mov rcx, [rbp-48]
    01038fc9mov [rcx+8], 22
    01038fcfjmp 0x10390d7
    01038fd4
    01038fd4loc_1038fd4:
    01038fd4vxorps x0, x0, x0
    01038fd8mov rax, [rbp-48]
    01038fdcvmovups [rax], x0
    01038fe0jmp 0x10390da
    01038fe5test r9, r9
    01038fe8je 0x1038ff0
    01038fealock xor [r9+8], 3
    01038ff0
    01038ff0loc_1038ff0:
    01038ff0mov rcx, [rbp-48]
    01038ff4mov [rcx+8], 6
    01038ffajmp 0x10390d7
    01038ffftest r9, r9
    01039002je 0x103900a
    01039004lock xor [r9+8], 3
    0103900a
    0103900aloc_103900a:
    0103900amov rcx, [rbp-48]
    0103900emov [rcx+8], 12
    01039014jmp 0x10390d7
    01039019test r9, r9
    0103901cje 0x1039024
    0103901elock xor [r9+8], 3
    01039024
    01039024loc_1039024:
    01039024mov rcx, [rbp-48]
    01039028mov [rcx+8], 1
    0103902ejmp 0x10390d7
    01039033test r9, r9
    01039036je 0x103903e
    01039038lock xor [r9+8], 3
    0103903e
    0103903eloc_103903e:
    0103903emov rcx, [rbp-48]
    01039042mov [rcx+8], 7
    01039048jmp 0x10390d7
    0103904dtest r9, r9
    01039050je 0x1039058
    01039052lock xor [r9+8], 3
    01039058
    01039058loc_1039058:
    01039058mov rcx, [rbp-48]
    0103905cmov [rcx+8], 14
    01039062jmp 0x10390d7
    01039064test r9, r9
    01039067je 0x103906f
    01039069lock xor [r9+8], 3
    0103906f
    0103906floc_103906f:
    0103906fmov rcx, [rbp-48]
    01039073mov [rcx+8], 9
    01039079jmp 0x10390d7
    0103907btest r9, r9
    0103907eje 0x1039086
    01039080lock xor [r9+8], 3
    01039086
    01039086loc_1039086:
    01039086mov rcx, [rbp-48]
    0103908amov [rcx+8], 11
    01039090jmp 0x10390d7
    01039092test r9, r9
    01039095je 0x103909d
    01039097lock xor [r9+8], 3
    0103909d
    0103909dloc_103909d:
    0103909dmov rcx, [rbp-48]
    010390a1mov [rcx], rax
    010390a4and [rcx+8], 0
    010390a9jmp 0x10390d7
    010390abtest r9, r9
    010390aeje 0x10390b6
    010390b0lock xor [r9+8], 3
    010390b6
    010390b6loc_10390b6:
    010390b6mov rcx, [rbp-48]
    010390bamov [rcx+8], 8
    010390c0jmp 0x10390d7
    010390c2test r9, r9
    010390c5je 0x10390cd
    010390c7lock xor [r9+8], 3
    010390cd
    010390cdloc_10390cd:
    010390cdmov rcx, [rbp-48]
    010390d1mov [rcx+8], 16
    010390d7
    010390d7loc_10390d7:
    010390d7mov rax, rcx
    010390da
    010390daloc_10390da:
    010390daadd rsp, 232
    010390e1pop rbx
    010390e2pop r12
    010390e4pop r13
    010390e6pop r14
    010390e8pop r15
    010390eapop rbp
    010390ebret
    010390ec
    010390ecloc_10390ec:
    010390ecdec r12
    010390efjmp 0x1038df7
    010390f4
    010390f4loc_10390f4:
    010390f4mov rcx, [rbp-48]
    010390f8mov [rcx+8], ax
    010390fcjmp 0x10390d7
    01038d14