File hevea_f46f610a6b0078f4aa208dda361f21de574cc56ad64b32889301afc466d33979.elf
Function:
    001a6cd0
    001a6cd0Stdlib.Bytes.trim:
    001a6cd0lea r10, [rsp-344]
    001a6cd8cmp r10, [r14+40]
    001a6cdcjb 0x1a6de1
    001a6ce2
    001a6ce2loc_1a6ce2:
    001a6ce2sub rsp, 24
    001a6ce6mov [rsp+8], rax
    001a6cebmov rbx, [rax-8]
    001a6cefshr rbx, 10
    001a6cf3lea rbx, [8*rbx-1]
    001a6cfbmovzx rax, [rax+rbx]
    001a6d00sub rbx, rax
    001a6d03lea rax, [rbx+rbx+1]
    001a6d08mov [rsp], rax
    001a6d0cmov eax, 1
    001a6d11mov [rsp+16], rax
    001a6d16
    001a6d16loc_1a6d16:
    001a6d16mov rbx, [rsp]
    001a6d1acmp rax, rbx
    001a6d1djge 0x1a6d54
    001a6d1fsar rax, 1
    001a6d22mov rbx, [rsp+8]
    001a6d27movzx rax, [rbx+rax]
    001a6d2clea rax, [rax+rax+1]
    001a6d31call Stdlib.Bytes.is_space
    001a6d36cmp rax, 1
    001a6d3aje 0x1a6d54
    001a6d3cmov rax, [rsp+16]
    001a6d41add rax, 2
    001a6d45mov [rsp+16], rax
    001a6d4acmp r15, [r14]
    001a6d4dja 0x1a6d16
    001a6d4fjmp 0x1a6dd7
    001a6d54
    001a6d54loc_1a6d54:
    001a6d54mov rax, [rsp]
    001a6d58add rax, -2
    001a6d5cmov [rsp], rax
    001a6d60
    001a6d60loc_1a6d60:
    001a6d60mov rbx, [rsp+16]
    001a6d65cmp rax, rbx
    001a6d68jl 0x1a6d9a
    001a6d6asar rax, 1
    001a6d6dmov rbx, [rsp+8]
    001a6d72movzx rax, [rbx+rax]
    001a6d77lea rax, [rax+rax+1]
    001a6d7ccall Stdlib.Bytes.is_space
    001a6d81cmp rax, 1
    001a6d85je 0x1a6d9a
    001a6d87mov rax, [rsp]
    001a6d8badd rax, -2
    001a6d8fmov [rsp], rax
    001a6d93cmp r15, [r14]
    001a6d96ja 0x1a6d60
    001a6d98jmp 0x1a6dd0
    001a6d9a
    001a6d9aloc_1a6d9a:
    001a6d9amov rdi, [rsp]
    001a6d9emov rbx, [rsp+16]
    001a6da3cmp rdi, rbx
    001a6da6jl 0x1a6dc0
    001a6da8sub rdi, rbx
    001a6dabadd rdi, 3
    001a6dafmov rax, [rsp+8]
    001a6db4add rsp, 24
    001a6db8jmp 0x1a63e0
    001a6dbd
    001a6dbd 0f 1f 00 ...
    001a6dc0
    001a6dc0loc_1a6dc0:
    001a6dc0lea rax, [rip+0x192f71]
    001a6dc7mov rax, [rax+16]
    001a6dcbadd rsp, 24
    001a6dcfret
    001a6dd0
    001a6dd0loc_1a6dd0:
    001a6dd0call caml_call_gc
    001a6dd5jmp 0x1a6d60
    001a6dd7
    001a6dd7loc_1a6dd7:
    001a6dd7call caml_call_gc
    001a6ddcjmp 0x1a6d16
    001a6de1
    001a6de1loc_1a6de1:
    001a6de1push 36
    001a6de3call caml_call_realloc_stack
    001a6de8pop r10
    001a6deajmp 0x1a6ce2
    001a6cd0
    001a6def
    001a6def // align 0x10
    001a6df0
    001a6df0Stdlib.Bytes.unsafe_escape:
    001a6df0sub rsp, 8
    001a6df4mov edi, 1
    001a6df9mov ebx, 1
    001a6dfemov rsi, [rax-8]
    001a6e02shr rsi, 10
    001a6e06lea rsi, [8*rsi-1]
    001a6e0emovzx rdx, [rax+rsi]
    001a6e13sub rsi, rdx
    001a6e16lea rsi, [rsi+rsi-1]
    001a6e1bcmp rbx, rsi
    001a6e1ejg 0x1a6ea5
    001a6e24
    001a6e24loc_1a6e24:
    001a6e24mov rdx, rbx
    001a6e27sar rdx, 1
    001a6e2amovzx rdx, [rax+rdx]
    001a6e2flea rdx, [rdx+rdx+1]
    001a6e34cmp rdx, 65
    001a6e38jl 0x1a6e5c
    001a6e3aadd rdx, -68
    001a6e3ecmp rdx, 117
    001a6e42jbe 0x1a6e50
    001a6e44cmp rdx, 187
    001a6e4bjl 0x1a6e84
    001a6e4djmp 0x1a6e72
    001a6e4fnop
    001a6e50
    001a6e50loc_1a6e50:
    001a6e50add rdx, -2
    001a6e54cmp rdx, 113
    001a6e58ja 0x1a6e7c
    001a6e5ajmp 0x1a6e84
    001a6e5c
    001a6e5cloc_1a6e5c:
    001a6e5ccmp rdx, 23
    001a6e60jl 0x1a6e6c
    001a6e62cmp rdx, 27
    001a6e66je 0x1a6e7c
    001a6e68jmp 0x1a6e72
    001a6e6anop
    001a6e6c
    001a6e6cloc_1a6e6c:
    001a6e6ccmp rdx, 17
    001a6e70jge 0x1a6e7c
    001a6e72
    001a6e72loc_1a6e72:
    001a6e72mov edx, 9
    001a6e77jmp 0x1a6e89
    001a6e79nop [rax]
    001a6e7c
    001a6e7cloc_1a6e7c:
    001a6e7cmov edx, 5
    001a6e81jmp 0x1a6e89
    001a6e83nop
    001a6e84
    001a6e84loc_1a6e84:
    001a6e84mov edx, 3
    001a6e89
    001a6e89loc_1a6e89:
    001a6e89add rdi, rdx
    001a6e8cdec rdi
    001a6e8fmov rdx, rbx
    001a6e92add rbx, 2
    001a6e96cmp rdx, rsi
    001a6e99je 0x1a6ea5
    001a6e9bcmp r15, [r14]
    001a6e9eja 0x1a6e24
    001a6ea0jmp 0x1a714f
    001a6ea5
    001a6ea5loc_1a6ea5:
    001a6ea5mov rbx, [rax-8]
    001a6ea9shr rbx, 10
    001a6eadlea rbx, [8*rbx-1]
    001a6eb5movzx rsi, [rax+rbx]
    001a6ebasub rbx, rsi
    001a6ebdlea rbx, [rbx+rbx+1]
    001a6ec2cmp rdi, rbx
    001a6ec5jne 0x1a6ecc
    001a6ec7add rsp, 8
    001a6ecbret
    001a6ecc
    001a6eccloc_1a6ecc:
    001a6eccmov [rsp], rax
    001a6ed0lea rax, [rip+0x7a159]
    001a6ed7call caml_c_call
    001a6edcmov r9, rax
    001a6edfmov edi, 1
    001a6ee4mov r13l, 1
    001a6eeamov rbp, [rsp]
    001a6eeemov rax, [rbp-8]
    001a6ef2shr rax, 10
    001a6ef6lea rax, [8*rax-1]
    001a6efemovzx rbx, [rbp+rax]
    001a6f04sub rax, rbx
    001a6f07lea rax, [rax+rax-1]
    001a6f0cmov [rsp], rax
    001a6f10cmp r13, [rsp]
    001a6f14jg 0x1a713d
    001a6f1a
    001a6f1aloc_1a6f1a:
    001a6f1amov rax, r13
    001a6f1dsar rax, 1
    001a6f20movzx rax, [rbp+rax]
    001a6f26lea rbx, [rax+rax+1]
    001a6f2bcmp rbx, 71
    001a6f2fjl 0x1a6f50
    001a6f31cmp rbx, 185
    001a6f38je 0x1a70f0
    001a6f3ecmp rbx, 255
    001a6f45jl 0x1a7114
    001a6f4bjmp 0x1a7028
    001a6f50
    001a6f50loc_1a6f50:
    001a6f50cmp rbx, 65
    001a6f54jl 0x1a6f68
    001a6f56cmp rbx, 69
    001a6f5ajge 0x1a70f0
    001a6f60jmp 0x1a7114
    001a6f65nop [rax]
    001a6f68
    001a6f68loc_1a6f68:
    001a6f68cmp rbx, 29
    001a6f6cjge 0x1a7028
    001a6f72mov rax, rbx
    001a6f75sar rax, 1
    001a6f78lea rdx, [rip+0x868e9]
    001a6f7fmovsxd rax, [rdx+4*rax]
    001a6f83add rdx, rax
    001a6f86jmp rdx
    001a6f88mov rax, rdi
    001a6f8bsar rax, 1
    001a6f8emov ebx, 92
    001a6f93mov [r9+rax], bl
    001a6f97add rdi, 2
    001a6f9bmov rax, rdi
    001a6f9esar rax, 1
    001a6fa1mov ebx, 98
    001a6fa6mov [r9+rax], bl
    001a6faajmp 0x1a7121
    001a6fafnop
    001a6fb0mov rax, rdi
    001a6fb3sar rax, 1
    001a6fb6mov ebx, 92
    001a6fbbmov [r9+rax], bl
    001a6fbfadd rdi, 2
    001a6fc3mov rax, rdi
    001a6fc6sar rax, 1
    001a6fc9mov ebx, 116
    001a6fcemov [r9+rax], bl
    001a6fd2jmp 0x1a7121
    001a6fd7nop
    001a6fd8mov rax, rdi
    001a6fdbsar rax, 1
    001a6fdemov ebx, 92
    001a6fe3mov [r9+rax], bl
    001a6fe7add rdi, 2
    001a6febmov rax, rdi
    001a6feesar rax, 1
    001a6ff1mov ebx, 110
    001a6ff6mov [r9+rax], bl
    001a6ffajmp 0x1a7121
    001a6fffnop
    001a7000mov rax, rdi
    001a7003sar rax, 1
    001a7006mov ebx, 92
    001a700bmov [r9+rax], bl
    001a700fadd rdi, 2
    001a7013mov rax, rdi
    001a7016sar rax, 1
    001a7019mov ebx, 114
    001a701emov [r9+rax], bl
    001a7022jmp 0x1a7121
    001a7027nop
    001a7028
    001a7028loc_1a7028:
    001a7028mov rax, rdi
    001a702bsar rax, 1
    001a702emov esi, 92
    001a7033mov [r9+rax], sil
    001a7037add rdi, 2
    001a703bmov rcx, rdi
    001a703esar rcx, 1
    001a7041sar rbx, 1
    001a7044mov rsi, rbx
    001a7047shr rsi, 63
    001a704bmov rdx, 0xa3d70a3d70a3d70b
    001a7055mov rax, rbx
    001a7058imul rdx
    001a705badd rdx, rbx
    001a705esar rdx, 6
    001a7062add rdx, rsi
    001a7065lea rax, [rdx+rdx+97]
    001a706asar rax, 1
    001a706dmov [r9+rcx], al
    001a7071add rdi, 2
    001a7075mov r12, rdi
    001a7078sar r12, 1
    001a707bmov rdx, 0x6666666666666667
    001a7085mov rax, rbx
    001a7088imul rdx
    001a708bsar rdx, 2
    001a708fmov r8, rdx
    001a7092add r8, rsi
    001a7095mov rsi, r8
    001a7098shl rsi, 1
    001a709bsar rsi, 1
    001a709emov rcx, rsi
    001a70a1shr rcx, 63
    001a70a5mov rdx, 0x6666666666666667
    001a70afmov rax, rsi
    001a70b2imul rdx
    001a70b5sar rdx, 2
    001a70b9add rdx, rcx
    001a70bcimul rdx, rdx, 10
    001a70c0sub rsi, rdx
    001a70c3lea rax, [rsi+rsi+97]
    001a70c8sar rax, 1
    001a70cbmov [r9+r12], al
    001a70cfadd rdi, 2
    001a70d3mov rax, rdi
    001a70d6sar rax, 1
    001a70d9imul r8, r8, 10
    001a70ddsub rbx, r8
    001a70e0lea rbx, [rbx+rbx+97]
    001a70e5sar rbx, 1
    001a70e8mov [r9+rax], bl
    001a70ecjmp 0x1a7121
    001a70eenop
    001a70f0
    001a70f0loc_1a70f0:
    001a70f0mov rax, rdi
    001a70f3sar rax, 1
    001a70f6mov esi, 92
    001a70fbmov [r9+rax], sil
    001a70ffadd rdi, 2
    001a7103mov rax, rdi
    001a7106sar rax, 1
    001a7109sar rbx, 1
    001a710cmov [r9+rax], bl
    001a7110jmp 0x1a7121
    001a7112nop
    001a7114
    001a7114loc_1a7114:
    001a7114mov rax, rdi
    001a7117sar rax, 1
    001a711asar rbx, 1
    001a711dmov [r9+rax], bl
    001a7121
    001a7121loc_1a7121:
    001a7121add rdi, 2
    001a7125mov rax, r13
    001a7128add r13, 2
    001a712ccmp rax, [rsp]
    001a7130je 0x1a713d
    001a7132cmp r15, [r14]
    001a7135ja 0x1a6f1a
    001a713bjmp 0x1a7145
    001a713d
    001a713dloc_1a713d:
    001a713dmov rax, r9
    001a7140add rsp, 8
    001a7144ret
    001a7145
    001a7145loc_1a7145:
    001a7145call caml_call_gc
    001a714ajmp 0x1a6f1a
    001a714f
    001a714floc_1a714f:
    001a714fcall caml_call_gc
    001a7154jmp 0x1a6e24
    001a6df0
    001a7159
    001a7159 // align 0x10
    001a7160
    001a7160Stdlib.Bytes.escaped:
    001a7160lea r10, [rsp-320]
    001a7168cmp r10, [r14+40]
    001a716cjb 0x1a7178
    001a716e
    001a716eloc_1a716e:
    001a716ecall Stdlib.Bytes.copy
    001a7173jmp 0x1a6df0
    001a7178
    001a7178loc_1a7178:
    001a7178push 33
    001a717acall caml_call_realloc_stack
    001a717fpop r10
    001a7181jmp 0x1a716e
    001a7160
    001a7183
    001a7183 // align 0x10
    001a7190
    001a7190Stdlib.Bytes.map:
    001a7190lea r10, [rsp-360]
    001a7198cmp r10, [r14+40]
    001a719cjb 0x1a7270
    001a71a2
    001a71a2loc_1a71a2:
    001a71a2sub rsp, 40
    001a71a6mov rdi, [rbx-8]
    001a71aashr rdi, 10
    001a71aelea rdi, [8*rdi-1]
    001a71b6movzx rsi, [rbx+rdi]
    001a71bbsub rdi, rsi
    001a71belea rdi, [rdi+rdi+1]
    001a71c3cmp rdi, 1
    001a71c7jne 0x1a71d4
    001a71c9mov rax, rbx
    001a71ccadd rsp, 40
    001a71d0ret
    001a71d1
    001a71d1 0f 1f 00 ...
    001a71d4
    001a71d4loc_1a71d4:
    001a71d4mov [rsp], rdi
    001a71d8mov [rsp+8], rbx
    001a71ddmov [rsp+16], rax
    001a71e2lea rax, [rip+0x79e47]
    001a71e9call caml_c_call
    001a71eemov rbx, rax
    001a71f1mov eax, 1
    001a71f6mov rdi, rax
    001a71f9mov rax, [rsp]
    001a71fdadd rax, -2
    001a7201cmp rdi, rax
    001a7204jg 0x1a7261
    001a7206mov [rsp+32], rax
    001a720bmov [rsp], rdi
    001a720fmov [rsp+24], rbx
    001a7214
    001a7214loc_1a7214:
    001a7214sar rdi, 1
    001a7217mov rax, [rsp+8]
    001a721cmovzx rax, [rax+rdi]
    001a7221lea rax, [rax+rax+1]
    001a7226mov rbx, [rsp+16]
    001a722bmov rdi, [rbx]
    001a722ecall rdi
    001a7230sar rax, 1
    001a7233mov rdi, [rsp]
    001a7237mov rsi, rdi
    001a723asar rsi, 1
    001a723dmov rbx, [rsp+24]
    001a7242mov [rbx+rsi], al
    001a7245mov rax, rdi
    001a7248add rdi, 2
    001a724cmov [rsp], rdi
    001a7250mov rsi, [rsp+32]
    001a7255cmp rax, rsi
    001a7258je 0x1a7261
    001a725acmp r15, [r14]
    001a725dja 0x1a7214
    001a725fjmp 0x1a7269
    001a7261
    001a7261loc_1a7261:
    001a7261mov rax, rbx
    001a7264add rsp, 40
    001a7268ret
    001a7269
    001a7269loc_1a7269:
    001a7269call caml_call_gc
    001a726ejmp 0x1a7214
    001a7270
    001a7270loc_1a7270:
    001a7270push 38
    001a7272call caml_call_realloc_stack
    001a7277pop r10
    001a7279jmp 0x1a71a2
    001a7190
    001a727e
    001a727e // align 0x10
    001a7280
    001a7280Stdlib.Bytes.mapi:
    001a7280lea r10, [rsp-360]
    001a7288cmp r10, [r14+40]
    001a728cjb 0x1a7363
    001a7292
    001a7292loc_1a7292:
    001a7292sub rsp, 40
    001a7296mov rdi, [rbx-8]
    001a729ashr rdi, 10
    001a729elea rdi, [8*rdi-1]
    001a72a6movzx rsi, [rbx+rdi]
    001a72absub rdi, rsi
    001a72aelea rdi, [rdi+rdi+1]
    001a72b3cmp rdi, 1
    001a72b7jne 0x1a72c4
    001a72b9mov rax, rbx
    001a72bcadd rsp, 40
    001a72c0ret
    001a72c1
    001a72c1 0f 1f 00 ...
    001a72c4
    001a72c4loc_1a72c4:
    001a72c4mov [rsp], rdi
    001a72c8mov [rsp+8], rbx
    001a72cdmov [rsp+16], rax
    001a72d2lea rax, [rip+0x79d57]
    001a72d9call caml_c_call
    001a72demov rbx, rax
    001a72e1mov edi, 1
    001a72e6mov rax, [rsp]
    001a72eaadd rax, -2
    001a72eecmp rdi, rax
    001a72f1jg 0x1a7354
    001a72f3mov [rsp+32], rax
    001a72f8mov [rsp], rdi
    001a72fcmov [rsp+24], rbx
    001a7301
    001a7301loc_1a7301:
    001a7301mov rax, rdi
    001a7304sar rax, 1
    001a7307mov rbx, [rsp+8]
    001a730cmovzx rax, [rbx+rax]
    001a7311lea rbx, [rax+rax+1]
    001a7316mov rax, rdi
    001a7319mov rdi, [rsp+16]
    001a731ecall caml_apply2
    001a7323sar rax, 1
    001a7326mov rdi, [rsp]
    001a732amov rsi, rdi
    001a732dsar rsi, 1
    001a7330mov rbx, [rsp+24]
    001a7335mov [rbx+rsi], al
    001a7338mov rax, rdi
    001a733badd rdi, 2
    001a733fmov [rsp], rdi
    001a7343mov rsi, [rsp+32]
    001a7348cmp rax, rsi
    001a734bje 0x1a7354
    001a734dcmp r15, [r14]
    001a7350ja 0x1a7301
    001a7352jmp 0x1a735c
    001a7354
    001a7354loc_1a7354:
    001a7354mov rax, rbx
    001a7357add rsp, 40
    001a735bret
    001a735c
    001a735cloc_1a735c:
    001a735ccall caml_call_gc
    001a7361jmp 0x1a7301
    001a7363
    001a7363loc_1a7363:
    001a7363push 38
    001a7365call caml_call_realloc_stack
    001a736apop r10
    001a736cjmp 0x1a7292
    001a7280
    001a7371
    001a7371 // align 0x10
    001a7380
    001a7380Stdlib.Bytes.fold_left:
    001a7380lea r10, [rsp-352]
    001a7388cmp r10, [r14+40]
    001a738cjb 0x1a741f
    001a7392
    001a7392loc_1a7392:
    001a7392sub rsp, 32
    001a7396mov rdx, rax
    001a7399mov rax, rbx
    001a739cmov esi, 1
    001a73a1mov rbx, [rdi-8]
    001a73a5shr rbx, 10
    001a73a9lea rbx, [8*rbx-1]
    001a73b1movzx rcx, [rdi+rbx]
    001a73b6sub rbx, rcx
    001a73b9lea rbx, [rbx+rbx-1]
    001a73becmp rsi, rbx
    001a73c1jg 0x1a7413
    001a73c3mov [rsp+24], rbx
    001a73c8mov [rsp+16], rsi
    001a73cdmov [rsp], rdi
    001a73d1mov [rsp+8], rdx
    001a73d6
    001a73d6loc_1a73d6:
    001a73d6sar rsi, 1
    001a73d9mov rbx, [rsp]
    001a73ddmovzx rbx, [rbx+rsi]
    001a73e2lea rbx, [rbx+rbx+1]
    001a73e7mov rdi, [rsp+8]
    001a73eccall caml_apply2
    001a73f1mov rsi, [rsp+16]
    001a73f6mov rbx, rsi
    001a73f9add rsi, 2
    001a73fdmov [rsp+16], rsi
    001a7402mov rdi, [rsp+24]
    001a7407cmp rbx, rdi
    001a740aje 0x1a7413
    001a740ccmp r15, [r14]
    001a740fja 0x1a73d6
    001a7411jmp 0x1a7418
    001a7413
    001a7413loc_1a7413:
    001a7413add rsp, 32
    001a7417ret
    001a7418
    001a7418loc_1a7418:
    001a7418call caml_call_gc
    001a741djmp 0x1a73d6
    001a741f
    001a741floc_1a741f:
    001a741fpush 37
    001a7421call caml_call_realloc_stack
    001a7426pop r10
    001a7428jmp 0x1a7392
    001a7380
    001a742d
    001a742d // align 0x10
    001a7430
    001a7430Stdlib.Bytes.fold_right:
    001a7430lea r10, [rsp-344]
    001a7438cmp r10, [r14+40]
    001a743cjb 0x1a74c8
    001a7442
    001a7442loc_1a7442:
    001a7442sub rsp, 24
    001a7446mov rsi, rbx
    001a7449mov rbx, rdi
    001a744cmov rdi, [rsi-8]
    001a7450shr rdi, 10
    001a7454lea rdi, [8*rdi-1]
    001a745cmovzx rdx, [rsi+rdi]
    001a7461sub rdi, rdx
    001a7464lea rdi, [rdi+rdi-1]
    001a7469cmp rdi, 1
    001a746djl 0x1a74b9
    001a746fmov [rsp+16], rdi
    001a7474mov [rsp], rsi
    001a7478mov [rsp+8], rax
    001a747d
    001a747dloc_1a747d:
    001a747dsar rdi, 1
    001a7480mov rax, [rsp]
    001a7484movzx rax, [rax+rdi]
    001a7489lea rax, [rax+rax+1]
    001a748emov rdi, [rsp+8]
    001a7493call caml_apply2
    001a7498mov rbx, rax
    001a749bmov rdi, [rsp+16]
    001a74a0mov rax, rdi
    001a74a3sub rdi, 2
    001a74a7mov [rsp+16], rdi
    001a74accmp rax, 1
    001a74b0je 0x1a74b9
    001a74b2cmp r15, [r14]
    001a74b5ja 0x1a747d
    001a74b7jmp 0x1a74c1
    001a74b9
    001a74b9loc_1a74b9:
    001a74b9mov rax, rbx
    001a74bcadd rsp, 24
    001a74c0ret
    001a74c1
    001a74c1loc_1a74c1:
    001a74c1call caml_call_gc
    001a74c6jmp 0x1a747d
    001a74c8
    001a74c8loc_1a74c8:
    001a74c8push 36
    001a74cacall caml_call_realloc_stack
    001a74cfpop r10
    001a74d1jmp 0x1a7442
    001a7430
    001a74d6
    001a74d6 // align 0x10
    001a74e0
    001a74e0Stdlib.Bytes.exists:
    001a74e0mov rdi, [rbx-8]
    001a74e4shr rdi, 10
    001a74e8lea rdi, [8*rdi-1]
    001a74f0movzx rsi, [rbx+rdi]
    001a74f5sub rdi, rsi
    001a74f8lea rdi, [rdi+rdi+1]
    001a74fdsub r15, 48
    001a7501cmp r15, [r14]
    001a7504jb 0x1a7543
    001a7506
    001a7506loc_1a7506:
    001a7506lea rsi, [r15+8]
    001a750amov [rsi-8], 5367
    001a7512lea rdx, [rip+55]
    001a7519mov [rsi], rdx
    001a751cmov rdx, 0x100000000000005
    001a7526mov [rsi+8], rdx
    001a752amov [rsi+16], rax
    001a752emov [rsi+24], rbx
    001a7532mov [rsi+32], rdi
    001a7536mov eax, 1
    001a753bmov rbx, rsi
    001a753ejmp 0x1a7550
    001a7543
    001a7543loc_1a7543:
    001a7543call caml_call_gc
    001a7548jmp 0x1a7506
    001a74e0
    001a754a
    001a754a // align 0x10
    001a7550
    001a7550Stdlib.Bytes.loop:
    001a7550lea r10, [rsp-336]
    001a7558cmp r10, [r14+40]
    001a755cjb 0x1a75ca
    001a755e
    001a755eloc_1a755e:
    001a755esub rsp, 16
    001a7562
    001a7562loc_1a7562:
    001a7562cmp r15, [r14]
    001a7565jbe 0x1a75c3
    001a7567
    001a7567loc_1a7567:
    001a7567mov rdi, [rbx+32]
    001a756bcmp rax, rdi
    001a756ejne 0x1a757c
    001a7570mov eax, 1
    001a7575add rsp, 16
    001a7579ret
    001a757a
    001a757a 66 90 f.
    001a757c
    001a757cloc_1a757c:
    001a757cmov [rsp+8], rbx
    001a7581mov [rsp], rax
    001a7585mov rdi, [rbx+16]
    001a7589sar rax, 1
    001a758cmov rbx, [rbx+24]
    001a7590movzx rax, [rbx+rax]
    001a7595lea rax, [rax+rax+1]
    001a759amov rsi, [rdi]
    001a759dmov rbx, rdi
    001a75a0call rsi
    001a75a2cmp rax, 1
    001a75a6je 0x1a75b4
    001a75a8mov eax, 3
    001a75adadd rsp, 16
    001a75b1ret
    001a75b2
    001a75b2 66 90 f.
    001a75b4
    001a75b4loc_1a75b4:
    001a75b4mov rax, [rsp]
    001a75b8add rax, 2
    001a75bcmov rbx, [rsp+8]
    001a75c1jmp 0x1a7562
    001a75c3
    001a75c3loc_1a75c3:
    001a75c3call caml_call_gc
    001a75c8jmp 0x1a7567
    001a75ca
    001a75caloc_1a75ca:
    001a75capush 35
    001a75cccall caml_call_realloc_stack
    001a75d1pop r10
    001a75d3jmp 0x1a755e
    001a7550
    001a75d5
    001a75d5 // align 0x10
    001a75e0
    001a75e0Stdlib.Bytes.for_all:
    001a75e0mov rdi, [rbx-8]
    001a75e4shr rdi, 10
    001a75e8lea rdi, [8*rdi-1]
    001a75f0movzx rsi, [rbx+rdi]
    001a75f5sub rdi, rsi
    001a75f8lea rdi, [rdi+rdi+1]
    001a75fdsub r15, 48
    001a7601cmp r15, [r14]
    001a7604jb 0x1a7643
    001a7606
    001a7606loc_1a7606:
    001a7606lea rsi, [r15+8]
    001a760amov [rsi-8], 5367
    001a7612lea rdx, [rip+55]
    001a7619mov [rsi], rdx
    001a761cmov rdx, 0x100000000000005
    001a7626mov [rsi+8], rdx
    001a762amov [rsi+16], rax
    001a762emov [rsi+24], rbx
    001a7632mov [rsi+32], rdi
    001a7636mov eax, 1
    001a763bmov rbx, rsi
    001a763ejmp 0x1a7650
    001a7643
    001a7643loc_1a7643:
    001a7643call caml_call_gc
    001a7648jmp 0x1a7606
    001a75e0
    001a764a
    001a764a // align 0x10
    001a7650
    001a7650Stdlib.Bytes.loop:
    001a7650lea r10, [rsp-336]
    001a7658cmp r10, [r14+40]
    001a765cjb 0x1a76c9
    001a765e
    001a765eloc_1a765e:
    001a765esub rsp, 16
    001a7662
    001a7662loc_1a7662:
    001a7662cmp r15, [r14]
    001a7665jbe 0x1a76c2
    001a7667
    001a7667loc_1a7667:
    001a7667mov rdi, [rbx+32]
    001a766bcmp rax, rdi
    001a766ejne 0x1a767c
    001a7670mov eax, 3
    001a7675add rsp, 16
    001a7679ret
    001a767a
    001a767a 66 90 f.
    001a767c
    001a767cloc_1a767c:
    001a767cmov [rsp+8], rbx
    001a7681mov [rsp], rax
    001a7685mov rdi, [rbx+16]
    001a7689sar rax, 1
    001a768cmov rbx, [rbx+24]
    001a7690movzx rax, [rbx+rax]
    001a7695lea rax, [rax+rax+1]
    001a769amov rsi, [rdi]
    001a769dmov rbx, rdi
    001a76a0call rsi
    001a76a2cmp rax, 1
    001a76a6je 0x1a76b8
    001a76a8mov rax, [rsp]
    001a76acadd rax, 2
    001a76b0mov rbx, [rsp+8]
    001a76b5jmp 0x1a7662
    001a76b7
    001a76b7 90 .
    001a76b8
    001a76b8loc_1a76b8:
    001a76b8mov eax, 1
    001a76bdadd rsp, 16
    001a76c1ret
    001a76c2
    001a76c2loc_1a76c2:
    001a76c2call caml_call_gc
    001a76c7jmp 0x1a7667
    001a76c9
    001a76c9loc_1a76c9:
    001a76c9push 35
    001a76cbcall caml_call_realloc_stack
    001a76d0pop r10
    001a76d2jmp 0x1a765e
    001a7650
    001a76d4
    001a76d4 // align 0x10
    001a76e0
    001a76e0Stdlib.Bytes.uppercase_ascii:
    001a76e0mov rbx, rax
    001a76e3lea rax, [rip+0x18c896]
    001a76eamov rax, [rax+24]
    001a76eejmp 0x1a7190
    001a76e0
    001a76f3
    001a76f3 // align 0x10
    001a7700
    001a7700Stdlib.Bytes.lowercase_ascii:
    001a7700mov rbx, rax
    001a7703lea rax, [rip+0x18c876]
    001a770amov rax, [rax+16]
    001a770ejmp 0x1a7190
    001a7700
    001a7713
    001a7713 // align 0x10
    001a7720
    001a7720Stdlib.Bytes.apply1:
    001a7720lea r10, [rsp-344]
    001a7728cmp r10, [r14+40]
    001a772cjb 0x1a779f
    001a772e
    001a772eloc_1a772e:
    001a772esub rsp, 24
    001a7732mov rdi, [rbx-8]
    001a7736shr rdi, 10
    001a773alea rdi, [8*rdi-1]
    001a7742movzx rsi, [rbx+rdi]
    001a7747sub rdi, rsi
    001a774alea rdi, [rdi+rdi+1]
    001a774fcmp rdi, 1
    001a7753jne 0x1a7760
    001a7755mov rax, rbx
    001a7758add rsp, 24
    001a775cret
    001a775d
    001a775d 0f 1f 00 ...
    001a7760
    001a7760loc_1a7760:
    001a7760mov [rsp], rbx
    001a7764mov [rsp+8], rax
    001a7769mov rax, rbx
    001a776ccall Stdlib.Bytes.copy
    001a7771mov [rsp+16], rax
    001a7776mov rax, [rsp]
    001a777amovzx rax, [rax]
    001a777elea rax, [rax+rax+1]
    001a7783mov rbx, [rsp+8]
    001a7788mov rdi, [rbx]
    001a778bcall rdi
    001a778dsar rax, 1
    001a7790mov rbx, [rsp+16]
    001a7795mov [rbx], al
    001a7797mov rax, rbx
    001a779aadd rsp, 24
    001a779eret
    001a779f
    001a779floc_1a779f:
    001a779fpush 36
    001a77a1call caml_call_realloc_stack
    001a77a6pop r10
    001a77a8jmp 0x1a772e
    001a7720
    001a77aa
    001a77aa // align 0x10
    001a77b0
    001a77b0Stdlib.Bytes.capitalize_ascii:
    001a77b0mov rbx, rax
    001a77b3lea rax, [rip+0x18c7c6]
    001a77bamov rax, [rax+24]
    001a77bejmp 0x1a7720
    001a77b0
    001a77c3
    001a77c3 // align 0x10
    001a77d0
    001a77d0Stdlib.Bytes.uncapitalize_ascii:
    001a77d0mov rbx, rax
    001a77d3lea rax, [rip+0x18c7a6]
    001a77damov rax, [rax+16]
    001a77dejmp 0x1a7720
    001a77d0
    001a77e3
    001a77e3 // align 0x10
    001a77f0
    001a77f0Stdlib.Bytes.starts_with:
    001a77f0mov rdi, [rbx-8]
    001a77f4shr rdi, 10
    001a77f8lea rdi, [8*rdi-1]
    001a7800movzx rsi, [rbx+rdi]
    001a7805sub rdi, rsi
    001a7808lea rdi, [rdi+rdi+1]
    001a780dmov rsi, [rax-8]
    001a7811shr rsi, 10
    001a7815lea rsi, [8*rsi-1]
    001a781dmovzx rdx, [rax+rsi]
    001a7822sub rsi, rdx
    001a7825lea rsi, [rsi+rsi+1]
    001a782asub r15, 48
    001a782ecmp r15, [r14]
    001a7831jb 0x1a787e
    001a7833
    001a7833loc_1a7833:
    001a7833lea rdx, [r15+8]
    001a7837mov [rdx-8], 5367
    001a783flea rcx, [rip+74]
    001a7846mov [rdx], rcx
    001a7849mov rcx, 0x100000000000005
    001a7853mov [rdx+8], rcx
    001a7857mov [rdx+16], rax
    001a785bmov [rdx+24], rbx
    001a785fmov [rdx+32], rsi
    001a7863cmp rdi, rsi
    001a7866jl 0x1a7878
    001a7868mov eax, 1
    001a786dmov rbx, rdx
    001a7870jmp 0x1a7890
    001a7875
    001a7875 0f 1f 00 ...
    001a7878
    001a7878loc_1a7878:
    001a7878mov eax, 1
    001a787dret
    001a787e
    001a787eloc_1a787e:
    001a787ecall caml_call_gc
    001a7883jmp 0x1a7833
    001a77f0
    001a7885
    001a7885 // align 0x10
    001a7890
    001a7890Stdlib.Bytes.aux:
    001a7890cmp r15, [r14]
    001a7893jbe 0x1a78da
    001a7895
    001a7895loc_1a7895:
    001a7895mov rdi, [rbx+32]
    001a7899cmp rax, rdi
    001a789cjne 0x1a78a4
    001a789emov eax, 3
    001a78a3ret
    001a78a4
    001a78a4loc_1a78a4:
    001a78a4mov rdi, rax
    001a78a7sar rdi, 1
    001a78aamov rsi, [rbx+16]
    001a78aemovzx rsi, [rsi+rdi]
    001a78b3lea rsi, [rsi+rsi+1]
    001a78b8mov rdx, [rbx+24]
    001a78bcmovzx rdi, [rdx+rdi]
    001a78c1lea rdi, [rdi+rdi+1]
    001a78c6cmp rdi, rsi
    001a78c9je 0x1a78d4
    001a78cbmov eax, 1
    001a78d0ret
    001a78d1
    001a78d1 0f 1f 00 ...
    001a78d4
    001a78d4loc_1a78d4:
    001a78d4add rax, 2
    001a78d8jmp 0x1a7890
    001a78da
    001a78daloc_1a78da:
    001a78dacall caml_call_gc
    001a78dfjmp 0x1a7895
    001a7890
    001a78e1
    001a78e1 // align 0x10
    001a78f0
    001a78f0Stdlib.Bytes.ends_with:
    001a78f0mov rdi, [rbx-8]
    001a78f4shr rdi, 10
    001a78f8lea rdi, [8*rdi-1]
    001a7900movzx rsi, [rbx+rdi]
    001a7905sub rdi, rsi
    001a7908lea rdi, [rdi+rdi+1]
    001a790dmov rsi, [rax-8]
    001a7911shr rsi, 10
    001a7915lea rsi, [8*rsi-1]
    001a791dmovzx rdx, [rax+rsi]
    001a7922sub rsi, rdx
    001a7925lea rsi, [rsi+rsi+1]
    001a792asub rdi, rsi
    001a792dinc rdi
    001a7930sub r15, 56
    001a7934cmp r15, [r14]
    001a7937jb 0x1a7986
    001a7939
    001a7939loc_1a7939:
    001a7939lea rdx, [r15+8]
    001a793dmov [rdx-8], 6391
    001a7945lea rcx, [rip+68]
    001a794cmov [rdx], rcx
    001a794fmov rcx, 0x100000000000005
    001a7959mov [rdx+8], rcx
    001a795dmov [rdx+16], rax
    001a7961mov [rdx+24], rbx
    001a7965mov [rdx+32], rsi
    001a7969mov [rdx+40], rdi
    001a796dcmp rdi, 1
    001a7971jl 0x1a7980
    001a7973mov eax, 1
    001a7978mov rbx, rdx
    001a797bjmp 0x1a7990
    001a7980
    001a7980loc_1a7980:
    001a7980mov eax, 1
    001a7985ret
    001a7986
    001a7986loc_1a7986:
    001a7986call caml_call_gc
    001a798bjmp 0x1a7939
    001a78f0
    001a798d
    001a798d // align 0x10
    001a7990
    001a7990Stdlib.Bytes.aux:
    001a7990cmp r15, [r14]
    001a7993jbe 0x1a79e6
    001a7995
    001a7995loc_1a7995:
    001a7995mov rdi, [rbx+32]
    001a7999cmp rax, rdi
    001a799cjne 0x1a79a4
    001a799emov eax, 3
    001a79a3ret
    001a79a4
    001a79a4loc_1a79a4:
    001a79a4mov rdi, rax
    001a79a7sar rdi, 1
    001a79aamov rsi, [rbx+16]
    001a79aemovzx rdi, [rsi+rdi]
    001a79b3lea rdi, [rdi+rdi+1]
    001a79b8mov rsi, [rbx+40]
    001a79bclea rsi, [rsi+rax-1]
    001a79c1sar rsi, 1
    001a79c4mov rdx, [rbx+24]
    001a79c8movzx rsi, [rdx+rsi]
    001a79cdlea rsi, [rsi+rsi+1]
    001a79d2cmp rsi, rdi
    001a79d5je 0x1a79e0
    001a79d7mov eax, 1
    001a79dcret
    001a79dd
    001a79dd 0f 1f 00 ...
    001a79e0
    001a79e0loc_1a79e0:
    001a79e0add rax, 2
    001a79e4jmp 0x1a7990
    001a79e6
    001a79e6loc_1a79e6:
    001a79e6call caml_call_gc
    001a79ebjmp 0x1a7995
    001a7990
    001a79ed
    001a79ed // align 0x10
    001a79f0
    001a79f0Stdlib.Bytes.index_rec:
    001a79f0mov rdx, rax
    001a79f3cmp r15, [r14]
    001a79f6jbe 0x1a7a35
    001a79f8
    001a79f8loc_1a79f8:
    001a79f8cmp rdi, rbx
    001a79fbjl 0x1a7a10
    001a79fdlea rax, [rip+0x185c14]
    001a7a04mov rax, [rax+56]
    001a7a08call caml_raise_exn
    001a7a0dnop [rax]
    001a7a10
    001a7a10loc_1a7a10:
    001a7a10mov rax, rdi
    001a7a13sar rax, 1
    001a7a16movzx rax, [rdx+rax]
    001a7a1blea rax, [rax+rax+1]
    001a7a20cmp rax, rsi
    001a7a23jne 0x1a7a2c
    001a7a25mov rax, rdi
    001a7a28ret
    001a7a29
    001a7a29 0f 1f 00 ...
    001a7a2c
    001a7a2cloc_1a7a2c:
    001a7a2cadd rdi, 2
    001a7a30mov rax, rdx
    001a7a33jmp 0x1a79f0
    001a7a35
    001a7a35loc_1a7a35:
    001a7a35call caml_call_gc
    001a7a3ajmp 0x1a79f8
    001a79f0
    001a7a3c
    001a7a3c // align 0x10
    001a7a40
    001a7a40Stdlib.Bytes.index:
    001a7a40mov rsi, rbx
    001a7a43mov edi, 1
    001a7a48mov rbx, [rax-8]
    001a7a4cshr rbx, 10
    001a7a50lea rbx, [8*rbx-1]
    001a7a58movzx rdx, [rax+rbx]
    001a7a5dsub rbx, rdx
    001a7a60lea rbx, [rbx+rbx+1]
    001a7a65jmp 0x1a79f0
    001a7a40
    001a7a6a
    001a7a6a // align 0x10
    001a7a70
    001a7a70Stdlib.Bytes.index_rec_opt:
    001a7a70cmp r15, [r14]
    001a7a73jbe 0x1a7abd
    001a7a75
    001a7a75loc_1a7a75:
    001a7a75cmp rdi, rbx
    001a7a78jl 0x1a7a80
    001a7a7amov eax, 1
    001a7a7fret
    001a7a80
    001a7a80loc_1a7a80:
    001a7a80mov rdx, rdi
    001a7a83sar rdx, 1
    001a7a86movzx rdx, [rax+rdx]
    001a7a8blea rdx, [rdx+rdx+1]
    001a7a90cmp rdx, rsi
    001a7a93jne 0x1a7ab0
    001a7a95sub r15, 16
    001a7a99cmp r15, [r14]
    001a7a9cjb 0x1a7ab6
    001a7a9e
    001a7a9eloc_1a7a9e:
    001a7a9elea rax, [r15+8]
    001a7aa2mov [rax-8], 1024
    001a7aaamov [rax], rdi
    001a7aadret
    001a7aae
    001a7aae 66 90 f.
    001a7ab0
    001a7ab0loc_1a7ab0:
    001a7ab0add rdi, 2
    001a7ab4jmp 0x1a7a70
    001a7ab6
    001a7ab6loc_1a7ab6:
    001a7ab6call caml_call_gc
    001a7abbjmp 0x1a7a9e
    001a7abd
    001a7abdloc_1a7abd:
    001a7abdcall caml_call_gc
    001a7ac2jmp 0x1a7a75
    001a7a70
    001a7ac4
    001a7ac4 // align 0x10
    001a7ad0
    001a7ad0Stdlib.Bytes.index_opt:
    001a7ad0mov rsi, rbx
    001a7ad3mov edi, 1
    001a7ad8mov rbx, [rax-8]
    001a7adcshr rbx, 10
    001a7ae0lea rbx, [8*rbx-1]
    001a7ae8movzx rdx, [rax+rbx]
    001a7aedsub rbx, rdx
    001a7af0lea rbx, [rbx+rbx+1]
    001a7af5jmp 0x1a7a70
    001a7ad0
    001a7afa
    001a7afa // align 0x10
    001a7b00
    001a7b00Stdlib.Bytes.index_from:
    001a7b00mov rdx, rbx
    001a7b03mov rsi, rdi
    001a7b06mov rbx, [rax-8]
    001a7b0ashr rbx, 10
    001a7b0elea rbx, [8*rbx-1]
    001a7b16movzx rdi, [rax+rbx]
    001a7b1bsub rbx, rdi
    001a7b1elea rbx, [rbx+rbx+1]
    001a7b23cmp rdx, 1
    001a7b27jl 0x1a7b38
    001a7b29cmp rdx, rbx
    001a7b2cjg 0x1a7b38
    001a7b2emov rdi, rdx
    001a7b31jmp 0x1a79f0
    001a7b36
    001a7b36 66 90 f.
    001a7b38
    001a7b38loc_1a7b38:
    001a7b38lea rax, [rip+0x1925f1]
    001a7b3fjmp 0x195ab0
    001a7b00
    001a7b44
    001a7b44 // align 0x10
    001a7b50
    001a7b50Stdlib.Bytes.index_from_opt:
    001a7b50mov rdx, rbx
    001a7b53mov rsi, rdi
    001a7b56mov rbx, [rax-8]
    001a7b5ashr rbx, 10
    001a7b5elea rbx, [8*rbx-1]
    001a7b66movzx rdi, [rax+rbx]
    001a7b6bsub rbx, rdi
    001a7b6elea rbx, [rbx+rbx+1]
    001a7b73cmp rdx, 1
    001a7b77jl 0x1a7b88
    001a7b79cmp rdx, rbx
    001a7b7cjg 0x1a7b88
    001a7b7emov rdi, rdx
    001a7b81jmp 0x1a7a70
    001a7b86
    001a7b86 66 90 f.
    001a7b88
    001a7b88loc_1a7b88:
    001a7b88lea rax, [rip+0x192569]
    001a7b8fjmp 0x195ab0
    001a7b50
    001a7b94
    001a7b94 // align 0x10
    001a7ba0
    001a7ba0Stdlib.Bytes.rindex_rec:
    001a7ba0mov rsi, rax
    001a7ba3cmp r15, [r14]
    001a7ba6jbe 0x1a7be5
    001a7ba8
    001a7ba8loc_1a7ba8:
    001a7ba8cmp rbx, 1
    001a7bacjge 0x1a7bc0
    001a7baelea rax, [rip+0x185a63]
    001a7bb5mov rax, [rax+56]
    001a7bb9call caml_raise_exn
    001a7bbenop
    001a7bc0
    001a7bc0loc_1a7bc0:
    001a7bc0mov rax, rbx
    001a7bc3sar rax, 1
    001a7bc6movzx rax, [rsi+rax]
    001a7bcblea rax, [rax+rax+1]
    001a7bd0cmp rax, rdi
    001a7bd3jne 0x1a7bdc
    001a7bd5mov rax, rbx
    001a7bd8ret
    001a7bd9
    001a7bd9 0f 1f 00 ...
    001a7bdc
    001a7bdcloc_1a7bdc:
    001a7bdcadd rbx, -2
    001a7be0mov rax, rsi
    001a7be3jmp 0x1a7ba0
    001a7be5
    001a7be5loc_1a7be5:
    001a7be5call caml_call_gc
    001a7beajmp 0x1a7ba8
    001a7ba0
    001a7bec
    001a7bec // align 0x10
    001a7bf0
    001a7bf0Stdlib.Bytes.rindex:
    001a7bf0mov rdi, rbx
    001a7bf3mov rbx, [rax-8]
    001a7bf7shr rbx, 10
    001a7bfblea rbx, [8*rbx-1]
    001a7c03movzx rsi, [rax+rbx]
    001a7c08sub rbx, rsi
    001a7c0blea rbx, [rbx+rbx-1]
    001a7c10jmp 0x1a7ba0
    001a7bf0
    001a7c15
    001a7c15 // align 0x10
    001a7c20
    001a7c20Stdlib.Bytes.rindex_from:
    001a7c20cmp rbx, -1
    001a7c24jl 0x1a7c50
    001a7c26mov rsi, [rax-8]
    001a7c2ashr rsi, 10
    001a7c2elea rsi, [8*rsi-1]
    001a7c36movzx rdx, [rax+rsi]
    001a7c3bsub rsi, rdx
    001a7c3elea rsi, [rsi+rsi+1]
    001a7c43cmp rbx, rsi
    001a7c46jge 0x1a7c50
    001a7c48jmp 0x1a7ba0
    001a7c4d
    001a7c4d 0f 1f 00 ...
    001a7c50
    001a7c50loc_1a7c50:
    001a7c50lea rax, [rip+0x192471]
    001a7c57jmp 0x195ab0
    001a7c20
    001a7c5c
    001a7c5c // align 0x10
    001a7c60
    001a7c60Stdlib.Bytes.rindex_rec_opt:
    001a7c60cmp r15, [r14]
    001a7c63jbe 0x1a7cb1
    001a7c65
    001a7c65loc_1a7c65:
    001a7c65cmp rbx, 1
    001a7c69jge 0x1a7c74
    001a7c6bmov eax, 1
    001a7c70ret
    001a7c71
    001a7c71 0f 1f 00 ...
    001a7c74
    001a7c74loc_1a7c74:
    001a7c74mov rsi, rbx
    001a7c77sar rsi, 1
    001a7c7amovzx rsi, [rax+rsi]
    001a7c7flea rsi, [rsi+rsi+1]
    001a7c84cmp rsi, rdi
    001a7c87jne 0x1a7ca4
    001a7c89sub r15, 16
    001a7c8dcmp r15, [r14]
    001a7c90jb 0x1a7caa
    001a7c92
    001a7c92loc_1a7c92:
    001a7c92lea rax, [r15+8]
    001a7c96mov [rax-8], 1024
    001a7c9emov [rax], rbx
    001a7ca1ret
    001a7ca2
    001a7ca2 66 90 f.
    001a7ca4
    001a7ca4loc_1a7ca4:
    001a7ca4add rbx, -2
    001a7ca8jmp 0x1a7c60
    001a7caa
    001a7caaloc_1a7caa:
    001a7caacall caml_call_gc
    001a7cafjmp 0x1a7c92
    001a7cb1
    001a7cb1loc_1a7cb1:
    001a7cb1call caml_call_gc
    001a7cb6jmp 0x1a7c65
    001a7c60
    001a7cb8
    001a7cb8 // align 0x10
    001a7cc0
    001a7cc0Stdlib.Bytes.rindex_opt:
    001a7cc0mov rdi, rbx
    001a7cc3mov rbx, [rax-8]
    001a7cc7shr rbx, 10
    001a7ccblea rbx, [8*rbx-1]
    001a7cd3movzx rsi, [rax+rbx]
    001a7cd8sub rbx, rsi
    001a7cdblea rbx, [rbx+rbx-1]
    001a7ce0jmp 0x1a7c60
    001a7cc0
    001a7ce5
    001a7ce5 // align 0x10
    001a7cf0
    001a7cf0Stdlib.Bytes.rindex_from_opt:
    001a7cf0cmp rbx, -1
    001a7cf4jl 0x1a7d20
    001a7cf6mov rsi, [rax-8]
    001a7cfashr rsi, 10
    001a7cfelea rsi, [8*rsi-1]
    001a7d06movzx rdx, [rax+rsi]
    001a7d0bsub rsi, rdx
    001a7d0elea rsi, [rsi+rsi+1]
    001a7d13cmp rbx, rsi
    001a7d16jge 0x1a7d20
    001a7d18jmp 0x1a7c60
    001a7d1d
    001a7d1d 0f 1f 00 ...
    001a7d20
    001a7d20loc_1a7d20:
    001a7d20lea rax, [rip+0x192661]
    001a7d27jmp 0x195ab0
    001a7cf0
    001a7d2c
    001a7d2c // align 0x10
    001a7d30
    001a7d30Stdlib.Bytes.contains_from:
    001a7d30lea r10, [rsp-336]
    001a7d38cmp r10, [r14+40]
    001a7d3cjb 0x1a7dc8
    001a7d42
    001a7d42loc_1a7d42:
    001a7d42mov rdx, rbx
    001a7d45mov rsi, rdi
    001a7d48mov rbx, [rax-8]
    001a7d4cshr rbx, 10
    001a7d50lea rbx, [8*rbx-1]
    001a7d58movzx rdi, [rax+rbx]
    001a7d5dsub rbx, rdi
    001a7d60lea rbx, [rbx+rbx+1]
    001a7d65cmp rdx, 1
    001a7d69jl 0x1a7dbc
    001a7d6bcmp rdx, rbx
    001a7d6ejg 0x1a7dbc
    001a7d70lea r11, [rip+33]
    001a7d77push r11
    001a7d79push [r14+48]
    001a7d7dmov [r14+48], rsp
    001a7d81mov rdi, rdx
    001a7d84call Stdlib.Bytes.index_rec
    001a7d89mov eax, 3
    001a7d8epop [r14+48]
    001a7d92add rsp, 8
    001a7d96jmp 0x1a7db8
    001a7d98lea rbx, [rip+0x185879]
    001a7d9fmov rbx, [rbx+56]
    001a7da3cmp rax, rbx
    001a7da6jne 0x1a7db0
    001a7da8mov eax, 1
    001a7dadret
    001a7dae
    001a7dae 66 90 f.
    001a7db0
    001a7db0loc_1a7db0:
    001a7db0call caml_reraise_exn
    001a7db5nop [rax]
    001a7db8
    001a7db8loc_1a7db8:
    001a7db8ret
    001a7db9
    001a7db9 0f 1f 00 ...
    001a7dbc
    001a7dbcloc_1a7dbc:
    001a7dbclea rax, [rip+0x19258d]
    001a7dc3jmp 0x195ab0
    001a7dc8
    001a7dc8loc_1a7dc8:
    001a7dc8push 35
    001a7dcacall caml_call_realloc_stack
    001a7dcfpop r10
    001a7dd1jmp 0x1a7d42
    001a7d30
    001a7dd6
    001a7dd6 // align 0x10
    001a7de0
    001a7de0Stdlib.Bytes.contains:
    001a7de0mov rdi, rbx
    001a7de3mov ebx, 1
    001a7de8jmp 0x1a7d30
    001a7de0
    001a7ded
    001a7ded // align 0x10
    001a7df0
    001a7df0Stdlib.Bytes.rcontains_from:
    001a7df0lea r10, [rsp-336]
    001a7df8cmp r10, [r14+40]
    001a7dfcjb 0x1a7e7c
    001a7dfe
    001a7dfeloc_1a7dfe:
    001a7dfecmp rbx, 1
    001a7e02jl 0x1a7e70
    001a7e04mov rsi, [rax-8]
    001a7e08shr rsi, 10
    001a7e0clea rsi, [8*rsi-1]
    001a7e14movzx rdx, [rax+rsi]
    001a7e19sub rsi, rdx
    001a7e1clea rsi, [rsi+rsi+1]
    001a7e21cmp rbx, rsi
    001a7e24jge 0x1a7e70
    001a7e26lea r11, [rip+31]
    001a7e2dpush r11
    001a7e2fpush [r14+48]
    001a7e33mov [r14+48], rsp
    001a7e37call Stdlib.Bytes.rindex_rec
    001a7e3cmov eax, 3
    001a7e41pop [r14+48]
    001a7e45add rsp, 8
    001a7e49jmp 0x1a7e6c
    001a7e4b
    001a7e4b 90 .
    001a7e4clea rbx, [rip+0x1857c5]
    001a7e53mov rbx, [rbx+56]
    001a7e57cmp rax, rbx
    001a7e5ajne 0x1a7e64
    001a7e5cmov eax, 1
    001a7e61ret
    001a7e62
    001a7e62 66 90 f.
    001a7e64
    001a7e64loc_1a7e64:
    001a7e64call caml_reraise_exn
    001a7e69nop [rax]
    001a7e6c
    001a7e6cloc_1a7e6c:
    001a7e6cret
    001a7e6d
    001a7e6d 0f 1f 00 ...
    001a7e70
    001a7e70loc_1a7e70:
    001a7e70lea rax, [rip+0x1924a1]
    001a7e77jmp 0x195ab0
    001a7e7c
    001a7e7cloc_1a7e7c:
    001a7e7cpush 35
    001a7e7ecall caml_call_realloc_stack
    001a7e83pop r10
    001a7e85jmp 0x1a7dfe
    001a7df0
    001a7e8a
    001a7e8a // align 0x10
    001a7e90
    001a7e90Stdlib.Bytes.compare:
    001a7e90mov rdi, rax
    001a7e93mov rsi, rbx
    001a7e96mov rbx, rsp
    001a7e99mov rsp, [r14+64]
    001a7e9dcall caml_bytes_compare
    001a7ea2mov rsp, rbx
    001a7ea5ret
    001a7e90
    001a7ea6
    001a7ea6 // align 0x10
    001a7eb0
    001a7eb0Stdlib.Bytes.split_on_char:
    001a7eb0lea r10, [rsp-352]
    001a7eb8cmp r10, [r14+40]
    001a7ebcjb 0x1a7fd7
    001a7ec2
    001a7ec2loc_1a7ec2:
    001a7ec2sub rsp, 32
    001a7ec6mov [rsp], rbx
    001a7ecamov edi, 1
    001a7ecfmov [rsp+16], rdi
    001a7ed4mov rdi, [rbx-8]
    001a7ed8shr rdi, 10
    001a7edclea rsi, [8*rdi-1]
    001a7ee4movzx rbx, [rbx+rsi]
    001a7ee9sub rsi, rbx
    001a7eeclea rdi, [rsi+rsi+1]
    001a7ef1lea rbx, [rsi+rsi-1]
    001a7ef6cmp rbx, 1
    001a7efajl 0x1a7f85
    001a7f00mov [rsp+24], rbx
    001a7f05mov [rsp+8], rax
    001a7f0a
    001a7f0aloc_1a7f0a:
    001a7f0amov rsi, rbx
    001a7f0dsar rsi, 1
    001a7f10mov rax, [rsp]
    001a7f14movzx rsi, [rax+rsi]
    001a7f19lea rsi, [rsi+rsi+1]
    001a7f1emov rdx, [rsp+8]
    001a7f23cmp rsi, rdx
    001a7f26jne 0x1a7f6c
    001a7f28sub rdi, rbx
    001a7f2bdec rdi
    001a7f2eadd rbx, 2
    001a7f32call Stdlib.Bytes.sub
    001a7f37sub r15, 24
    001a7f3bcmp r15, [r14]
    001a7f3ejb 0x1a7fcd
    001a7f44
    001a7f44loc_1a7f44:
    001a7f44lea rbx, [r15+8]
    001a7f48mov [rbx-8], 2048
    001a7f50mov [rbx], rax
    001a7f53mov rax, [rsp+16]
    001a7f58mov [rbx+8], rax
    001a7f5cmov rax, rbx
    001a7f5fmov [rsp+16], rax
    001a7f64mov rbx, [rsp+24]
    001a7f69mov rdi, rbx
    001a7f6c
    001a7f6cloc_1a7f6c:
    001a7f6cmov rax, rbx
    001a7f6fsub rbx, 2
    001a7f73mov [rsp+24], rbx
    001a7f78cmp rax, 1
    001a7f7cje 0x1a7f85
    001a7f7ecmp r15, [r14]
    001a7f81ja 0x1a7f0a
    001a7f83jmp 0x1a7fc3
    001a7f85
    001a7f85loc_1a7f85:
    001a7f85mov ebx, 1
    001a7f8amov rax, [rsp]
    001a7f8ecall Stdlib.Bytes.sub
    001a7f93sub r15, 24
    001a7f97cmp r15, [r14]
    001a7f9ajb 0x1a7fbc
    001a7f9c
    001a7f9cloc_1a7f9c:
    001a7f9clea rbx, [r15+8]
    001a7fa0mov [rbx-8], 2048
    001a7fa8mov [rbx], rax
    001a7fabmov rax, [rsp+16]
    001a7fb0mov [rbx+8], rax
    001a7fb4mov rax, rbx
    001a7fb7add rsp, 32
    001a7fbbret
    001a7fbc
    001a7fbcloc_1a7fbc:
    001a7fbccall caml_call_gc
    001a7fc1jmp 0x1a7f9c
    001a7fc3
    001a7fc3loc_1a7fc3:
    001a7fc3call caml_call_gc
    001a7fc8jmp 0x1a7f0a
    001a7fcd
    001a7fcdloc_1a7fcd:
    001a7fcdcall caml_call_gc
    001a7fd2jmp 0x1a7f44
    001a7fd7
    001a7fd7loc_1a7fd7:
    001a7fd7push 37
    001a7fd9call caml_call_realloc_stack
    001a7fdepop r10
    001a7fe0jmp 0x1a7ec2
    001a7eb0
    001a7fe5
    001a7fe5 // align 0x10
    001a7ff0
    001a7ff0Stdlib.Bytes.to_seq:
    001a7ff0sub r15, 80
    001a7ff4cmp r15, [r14]
    001a7ff7jb 0x1a8062
    001a7ff9
    001a7ff9loc_1a7ff9:
    001a7ff9lea rbx, [r15+8]
    001a7ffdadd rbx, 40
    001a8001mov [rbx-8], 4343
    001a8009lea rdi, [rip-0xb0ff0]
    001a8010mov [rbx], rdi
    001a8013mov rdi, 0x200000000000007
    001a801dmov [rbx+8], rdi
    001a8021lea rdi, [rip+72]
    001a8028mov [rbx+16], rdi
    001a802cmov [rbx+24], rax
    001a8030mov edi, 1
    001a8035lea rax, [rbx-40]
    001a8039mov [rax-8], 4343
    001a8041lea rsi, [rip+232]
    001a8048mov [rax], rsi
    001a804bmov rsi, 0x100000000000005
    001a8055mov [rax+8], rsi
    001a8059mov [rax+16], rdi
    001a805dmov [rax+24], rbx
    001a8061ret
    001a8062
    001a8062loc_1a8062:
    001a8062call caml_call_gc
    001a8067jmp 0x1a7ff9
    001a7ff0
    001a8069
    001a8069 // align 0x10
    001a8070
    001a8070Stdlib.Bytes.aux:
    001a8070mov rbx, [rdi+24]
    001a8074mov rsi, [rbx-8]
    001a8078shr rsi, 10
    001a807clea rsi, [8*rsi-1]
    001a8084movzx rdx, [rbx+rsi]
    001a8089sub rsi, rdx
    001a808clea rdx, [rsi+rsi+1]
    001a8091cmp rax, rdx
    001a8094jne 0x1a809c
    001a8096mov eax, 1
    001a809bret
    001a809c
    001a809cloc_1a809c:
    001a809cmov rdx, rax
    001a809fsar rdx, 1
    001a80a2cmp rsi, rdx
    001a80a5jbe 0x1a8109
    001a80a7movzx rbx, [rbx+rdx]
    001a80aclea rbx, [rbx+rbx+1]
    001a80b1add rax, 2
    001a80b5sub r15, 64
    001a80b9cmp r15, [r14]
    001a80bcjb 0x1a8102
    001a80be
    001a80beloc_1a80be:
    001a80belea rsi, [r15+8]
    001a80c2add rsi, 24
    001a80c6mov [rsi-8], 4343
    001a80celea rdx, [rip+59]
    001a80d5mov [rsi], rdx
    001a80d8mov rdx, 0x100000000000005
    001a80e2mov [rsi+8], rdx
    001a80e6mov [rsi+16], rax
    001a80eamov [rsi+24], rdi
    001a80eelea rax, [rsi-24]
    001a80f2mov [rax-8], 2048
    001a80famov [rax], rbx
    001a80fdmov [rax+8], rsi
    001a8101ret
    001a8102
    001a8102loc_1a8102:
    001a8102call caml_call_gc
    001a8107jmp 0x1a80be
    001a8109
    001a8109loc_1a8109:
    001a8109call caml_ml_array_bound_error
    001a8070
    001a810e
    001a810e // align 0x10
    001a8110
    001a8110Stdlib.Bytes.fun:
    001a8110mov rsi, rax
    001a8113mov rax, [rbx+16]
    001a8117mov rdi, [rbx+24]
    001a811bmov rbx, rsi
    001a811ejmp 0x1a8070
    001a8110
    001a8123
    001a8123 // align 0x10
    001a8130
    001a8130Stdlib.Bytes.fun:
    001a8130mov rsi, rax
    001a8133mov rax, [rbx+16]
    001a8137mov rdi, [rbx+24]
    001a813bmov rbx, rsi
    001a813ejmp 0x1a8070
    001a8130
    001a8143
    001a8143 // align 0x10
    001a8150
    001a8150Stdlib.Bytes.to_seqi:
    001a8150sub r15, 80
    001a8154cmp r15, [r14]
    001a8157jb 0x1a81c2
    001a8159
    001a8159loc_1a8159:
    001a8159lea rbx, [r15+8]
    001a815dadd rbx, 40
    001a8161mov [rbx-8], 4343
    001a8169lea rdi, [rip-0xb1150]
    001a8170mov [rbx], rdi
    001a8173mov rdi, 0x200000000000007
    001a817dmov [rbx+8], rdi
    001a8181lea rdi, [rip+72]
    001a8188mov [rbx+16], rdi
    001a818cmov [rbx+24], rax
    001a8190mov edi, 1
    001a8195lea rax, [rbx-40]
    001a8199mov [rax-8], 4343
    001a81a1lea rsi, [rip+264]
    001a81a8mov [rax], rsi
    001a81abmov rsi, 0x100000000000005
    001a81b5mov [rax+8], rsi
    001a81b9mov [rax+16], rdi
    001a81bdmov [rax+24], rbx
    001a81c1ret
    001a81c2
    001a81c2loc_1a81c2:
    001a81c2call caml_call_gc
    001a81c7jmp 0x1a8159
    001a8150
    001a81c9
    001a81c9 // align 0x10
    001a81d0
    001a81d0Stdlib.Bytes.aux:
    001a81d0mov rbx, [rdi+24]
    001a81d4mov rsi, [rbx-8]
    001a81d8shr rsi, 10
    001a81dclea rsi, [8*rsi-1]
    001a81e4movzx rdx, [rbx+rsi]
    001a81e9sub rsi, rdx
    001a81eclea rdx, [rsi+rsi+1]
    001a81f1cmp rax, rdx
    001a81f4jne 0x1a81fc
    001a81f6mov eax, 1
    001a81fbret
    001a81fc
    001a81fcloc_1a81fc:
    001a81fcmov rdx, rax
    001a81ffsar rdx, 1
    001a8202cmp rsi, rdx
    001a8205jbe 0x1a827f
    001a8207movzx rbx, [rbx+rdx]
    001a820clea rbx, [rbx+rbx+1]
    001a8211mov rsi, rax
    001a8214add rsi, 2
    001a8218sub r15, 88
    001a821ccmp r15, [r14]
    001a821fjb 0x1a8278
    001a8221
    001a8221loc_1a8221:
    001a8221lea rdx, [r15+8]
    001a8225add rdx, 48
    001a8229mov [rdx-8], 4343
    001a8231lea rcx, [rip+88]
    001a8238mov [rdx], rcx
    001a823bmov rcx, 0x100000000000005
    001a8245mov [rdx+8], rcx
    001a8249mov [rdx+16], rsi
    001a824dmov [rdx+24], rdi
    001a8251lea rdi, [rdx-24]
    001a8255mov [rdi-8], 2048
    001a825dmov [rdi], rax
    001a8260mov [rdi+8], rbx
    001a8264lea rax, [rdi-24]
    001a8268mov [rax-8], 2048
    001a8270mov [rax], rdi
    001a8273mov [rax+8], rdx
    001a8277ret
    001a8278
    001a8278loc_1a8278:
    001a8278call caml_call_gc
    001a827djmp 0x1a8221
    001a827f
    001a827floc_1a827f:
    001a827fcall caml_ml_array_bound_error
    001a81d0
    001a8284
    001a8284 // align 0x10
    001a8290
    001a8290Stdlib.Bytes.fun:
    001a8290mov rsi, rax
    001a8293mov rax, [rbx+16]
    001a8297mov rdi, [rbx+24]
    001a829bmov rbx, rsi
    001a829ejmp 0x1a81d0
    001a8290
    001a82a3
    001a82a3 // align 0x10
    001a82b0
    001a82b0Stdlib.Bytes.fun:
    001a82b0mov rsi, rax
    001a82b3mov rax, [rbx+16]
    001a82b7mov rdi, [rbx+24]
    001a82bbmov rbx, rsi
    001a82bejmp 0x1a81d0
    001a82b0
    001a82c3
    001a82c3 // align 0x10
    001a82d0
    001a82d0Stdlib.Bytes.of_seq:
    001a82d0lea r10, [rsp-344]
    001a82d8cmp r10, [r14+40]
    001a82dcjb 0x1a83df
    001a82e2
    001a82e2loc_1a82e2:
    001a82e2sub rsp, 24
    001a82e6mov [rsp], rax
    001a82easub r15, 16
    001a82eecmp r15, [r14]
    001a82f1jb 0x1a83d5
    001a82f7
    001a82f7loc_1a82f7:
    001a82f7lea rax, [r15+8]
    001a82fbmov [rsp+8], rax
    001a8300mov [rax-8], 1024
    001a8308mov [rax], 1
    001a830fmov ebx, 1
    001a8314mov eax, 513
    001a8319call Stdlib.Bytes.make
    001a831esub r15, 104
    001a8322cmp r15, [r14]
    001a8325jb 0x1a83cb
    001a832b
    001a832bloc_1a832b:
    001a832blea rbx, [r15+8]
    001a832fadd rbx, 88
    001a8333mov [rsp+16], rbx
    001a8338mov [rbx-8], 1024
    001a8340mov [rbx], rax
    001a8343lea rdi, [rbx-40]
    001a8347mov [rdi-8], 4343
    001a834flea rax, [rip+154]
    001a8356mov [rdi], rax
    001a8359mov rax, 0x100000000000005
    001a8363mov [rdi+8], rax
    001a8367mov rdx, [rsp+8]
    001a836cmov [rdi+16], rdx
    001a8370mov [rdi+24], rbx
    001a8374lea rax, [rdi-48]
    001a8378mov [rax-8], 5367
    001a8380lea rsi, [rip+377]
    001a8387mov [rax], rsi
    001a838amov rsi, 0x100000000000005
    001a8394mov [rax+8], rsi
    001a8398mov [rax+16], rdx
    001a839cmov [rax+24], rbx
    001a83a0mov [rax+32], rdi
    001a83a4mov rbx, [rsp]
    001a83a8call Stdlib.Seq.iter
    001a83admov rax, [rsp+8]
    001a83b2mov rdi, [rax]
    001a83b5mov ebx, 1
    001a83bamov rax, [rsp+16]
    001a83bfmov rax, [rax]
    001a83c2add rsp, 24
    001a83c6jmp 0x1a63e0
    001a83cb
    001a83cbloc_1a83cb:
    001a83cbcall caml_call_gc
    001a83d0jmp 0x1a832b
    001a83d5
    001a83d5loc_1a83d5:
    001a83d5call caml_call_gc
    001a83dajmp 0x1a82f7
    001a83df
    001a83dfloc_1a83df:
    001a83dfpush 36
    001a83e1call caml_call_realloc_stack
    001a83e6pop r10
    001a83e8jmp 0x1a82e2
    001a82d0
    001a83ed
    001a83ed // align 0x10
    001a83f0
    001a83f0Stdlib.Bytes.resize:
    001a83f0lea r10, [rsp-336]
    001a83f8cmp r10, [r14+40]
    001a83fcjb 0x1a84e8
    001a8402
    001a8402loc_1a8402:
    001a8402sub rsp, 16
    001a8406mov [rsp+8], rbx
    001a840bmov rax, [rbx+24]
    001a840fmov rax, [rax]
    001a8412mov rdi, [rax-8]
    001a8416shr rdi, 10
    001a841alea rdi, [8*rdi-1]
    001a8422movzx rax, [rax+rdi]
    001a8427sub rdi, rax
    001a842alea rax, [4*rdi+1]
    001a8432mov rdi, 0x3ffffffffffffef
    001a843ccmp rax, rdi
    001a843fjg 0x1a8448
    001a8441mov [rsp], rax
    001a8445jmp 0x1a8456
    001a8447
    001a8447 90 .
    001a8448
    001a8448loc_1a8448:
    001a8448mov rax, 0x3ffffffffffffef
    001a8452mov [rsp], rax
    001a8456
    001a8456loc_1a8456:
    001a8456mov rbx, [rbx+24]
    001a845amov rbx, [rbx]
    001a845dmov rdi, [rbx-8]
    001a8461shr rdi, 10
    001a8465lea rdi, [8*rdi-1]
    001a846dmovzx rbx, [rbx+rdi]
    001a8472sub rdi, rbx
    001a8475lea rbx, [rdi+rdi+1]
    001a847acmp rbx, rax
    001a847djne 0x1a848b
    001a847flea rax, [rip+0x191e6a]
    001a8486call camlStdlib.failwith_7
    001a848b
    001a848bloc_1a848b:
    001a848bmov ebx, 1
    001a8490mov rax, [rsp]
    001a8494call Stdlib.Bytes.make
    001a8499mov rdi, rax
    001a849cmov [rsp], rdi
    001a84a0mov rcx, [rsp+8]
    001a84a5mov rax, [rcx+16]
    001a84a9mov rdx, [rax]
    001a84acmov esi, 1
    001a84b1mov ebx, 1
    001a84b6mov rax, [rcx+24]
    001a84bamov rax, [rax]
    001a84bdcall Stdlib.Bytes.blit
    001a84c2mov rax, [rsp+8]
    001a84c7mov rdi, [rax+24]
    001a84cbmov rsi, [rsp]
    001a84cfmov rbx, rsp
    001a84d2mov rsp, [r14+64]
    001a84d6call caml_modify
    001a84dbmov rsp, rbx
    001a84demov eax, 1
    001a84e3add rsp, 16
    001a84e7ret
    001a84e8
    001a84e8loc_1a84e8:
    001a84e8push 35
    001a84eacall caml_call_realloc_stack
    001a84efpop r10
    001a84f1jmp 0x1a8402
    001a83f0
    001a84f6
    001a84f6 // align 0x10
    001a8500
    001a8500Stdlib.Bytes.fun:
    001a8500lea r10, [rsp-336]
    001a8508cmp r10, [r14+40]
    001a850cjb 0x1a85ad
    001a8512
    001a8512loc_1a8512:
    001a8512sub rsp, 16
    001a8516mov [rsp], rax
    001a851amov [rsp+8], rbx
    001a851fmov rax, [rbx+24]
    001a8523mov rax, [rax]
    001a8526mov rdi, [rax-8]
    001a852ashr rdi, 10
    001a852elea rdi, [8*rdi-1]
    001a8536movzx rax, [rax+rdi]
    001a853bsub rdi, rax
    001a853elea rax, [rdi+rdi+1]
    001a8543mov rdi, [rbx+16]
    001a8547mov rdi, [rdi]
    001a854acmp rdi, rax
    001a854djne 0x1a855d
    001a854fmov rbx, [rbx+32]
    001a8553mov eax, 1
    001a8558call Stdlib.Bytes.resize
    001a855d
    001a855dloc_1a855d:
    001a855dmov rax, [rsp]
    001a8561sar rax, 1
    001a8564mov rsi, [rsp+8]
    001a8569mov rbx, [rsi+16]
    001a856dmov rdi, [rbx]
    001a8570sar rdi, 1
    001a8573mov rsi, [rsi+24]
    001a8577mov rsi, [rsi]
    001a857amov rdx, [rsi-8]
    001a857eshr rdx, 10
    001a8582lea rdx, [8*rdx-1]
    001a858amovzx rcx, [rsi+rdx]
    001a858fsub rdx, rcx
    001a8592cmp rdx, rdi
    001a8595jbe 0x1a85a8
    001a8597mov [rsi+rdi], al
    001a859aadd [rbx], 2
    001a859emov eax, 1
    001a85a3add rsp, 16
    001a85a7ret
    001a85a8
    001a85a8loc_1a85a8:
    001a85a8call caml_ml_array_bound_error
    001a85ad
    001a85adloc_1a85ad:
    001a85adpush 35
    001a85afcall caml_call_realloc_stack
    001a85b4pop r10
    001a85b6jmp 0x1a8512
    001a8500
    001a85bb
    001a85bb // align 0x10
    001a85c0
    001a85c0Stdlib.Bytes.unsafe_get_uint16_le:
    001a85c0sar rbx, 1
    001a85c3movzx rax, [rax+rbx]
    001a85c8lea rax, [rax+rax+1]
    001a85cdret
    001a85c0
    001a85ce
    001a85ce // align 0x10
    001a85d0
    001a85d0Stdlib.Bytes.unsafe_get_uint16_be:
    001a85d0sar rbx, 1
    001a85d3movzx rax, [rax+rbx]
    001a85d8xchg al, ah
    001a85damovzx rax, ax
    001a85delea rax, [rax+rax+1]
    001a85e3ret
    001a85d0
    001a85e4
    001a85e4 // align 0x10
    001a85f0
    001a85f0Stdlib.Bytes.get_int8:
    001a85f0sar rbx, 1
    001a85f3mov rdi, [rax-8]
    001a85f7shr rdi, 10
    001a85fblea rdi, [8*rdi-1]
    001a8603movzx rsi, [rax+rdi]
    001a8608sub rdi, rsi
    001a860bcmp rdi, rbx
    001a860ejbe 0x1a8622
    001a8610movzx rax, [rax+rbx]
    001a8615shl rax, 56
    001a8619sar rax, 55
    001a861dor rax, 1
    001a8621ret
    001a8622
    001a8622loc_1a8622:
    001a8622call caml_ml_array_bound_error
    001a85f0
    001a8627
    001a8627 // align 0x10
    001a8630
    001a8630Stdlib.Bytes.get_uint16_le:
    001a8630sar rbx, 1
    001a8633mov rdi, [rax-8]
    001a8637shr rdi, 10
    001a863blea rdi, [8*rdi-1]
    001a8643movzx rsi, [rax+rdi]
    001a8648sub rdi, rsi
    001a864bdec rdi
    001a864emov rsi, rdi
    001a8651sar rsi, 63
    001a8655xor rsi, -1
    001a8659and rsi, rdi
    001a865ccmp rsi, rbx
    001a865fjbe 0x1a866c
    001a8661movzx rax, [rax+rbx]
    001a8666lea rax, [rax+rax+1]
    001a866bret
    001a866c
    001a866cloc_1a866c:
    001a866ccall caml_ml_array_bound_error
    001a8630
    001a8671
    001a8671 // align 0x10
    001a8680
    001a8680Stdlib.Bytes.get_uint16_be:
    001a8680sar rbx, 1
    001a8683mov rdi, [rax-8]
    001a8687shr rdi, 10
    001a868blea rdi, [8*rdi-1]
    001a8693movzx rsi, [rax+rdi]
    001a8698sub rdi, rsi
    001a869bdec rdi
    001a869emov rsi, rdi
    001a86a1sar rsi, 63
    001a86a5xor rsi, -1
    001a86a9and rsi, rdi
    001a86accmp rsi, rbx
    001a86afjbe 0x1a86c2
    001a86b1movzx rax, [rax+rbx]
    001a86b6xchg al, ah
    001a86b8movzx rax, ax
    001a86bclea rax, [rax+rax+1]
    001a86c1ret
    001a86c2
    001a86c2loc_1a86c2:
    001a86c2call caml_ml_array_bound_error
    001a8680
    001a86c7
    001a86c7 // align 0x10
    001a86d0
    001a86d0Stdlib.Bytes.get_int16_ne:
    001a86d0sar rbx, 1
    001a86d3mov rdi, [rax-8]
    001a86d7shr rdi, 10
    001a86dblea rdi, [8*rdi-1]
    001a86e3movzx rsi, [rax+rdi]
    001a86e8sub rdi, rsi
    001a86ebdec rdi
    001a86eemov rsi, rdi
    001a86f1sar rsi, 63
    001a86f5xor rsi, -1
    001a86f9and rsi, rdi
    001a86fccmp rsi, rbx
    001a86ffjbe 0x1a8713
    001a8701movzx rax, [rax+rbx]
    001a8706shl rax, 48
    001a870asar rax, 47
    001a870eor rax, 1
    001a8712ret
    001a8713
    001a8713loc_1a8713:
    001a8713call caml_ml_array_bound_error
    001a86d0
    001a8718
    001a8718 // align 0x10
    001a8720
    001a8720Stdlib.Bytes.get_int16_le:
    001a8720sar rbx, 1
    001a8723mov rdi, [rax-8]
    001a8727shr rdi, 10
    001a872blea rdi, [8*rdi-1]
    001a8733movzx rsi, [rax+rdi]
    001a8738sub rdi, rsi
    001a873bdec rdi
    001a873emov rsi, rdi
    001a8741sar rsi, 63
    001a8745xor rsi, -1
    001a8749and rsi, rdi
    001a874ccmp rsi, rbx
    001a874fjbe 0x1a8763
    001a8751movzx rax, [rax+rbx]
    001a8756shl rax, 48
    001a875asar rax, 47
    001a875eor rax, 1
    001a8762ret
    001a8763
    001a8763loc_1a8763:
    001a8763call caml_ml_array_bound_error
    001a8720
    001a8768
    001a8768 // align 0x10
    001a8770
    001a8770Stdlib.Bytes.get_int16_be:
    001a8770sar rbx, 1
    001a8773mov rdi, [rax-8]
    001a8777shr rdi, 10
    001a877blea rdi, [8*rdi-1]
    001a8783movzx rsi, [rax+rdi]
    001a8788sub rdi, rsi
    001a878bdec rdi
    001a878emov rsi, rdi
    001a8791sar rsi, 63
    001a8795xor rsi, -1
    001a8799and rsi, rdi
    001a879ccmp rsi, rbx
    001a879fjbe 0x1a87b9
    001a87a1movzx rax, [rax+rbx]
    001a87a6xchg al, ah
    001a87a8movzx rax, ax
    001a87acshl rax, 48
    001a87b0sar rax, 47
    001a87b4or rax, 1
    001a87b8ret
    001a87b9
    001a87b9loc_1a87b9:
    001a87b9call caml_ml_array_bound_error
    001a8770
    001a87be
    001a87be // align 0x10
    001a87c0
    001a87c0Stdlib.Bytes.get_int32_le:
    001a87c0mov rdi, rax
    001a87c3sub r15, 24
    001a87c7cmp r15, [r14]
    001a87cajb 0x1a881f
    001a87cc
    001a87ccloc_1a87cc:
    001a87cclea rax, [r15+8]
    001a87d0mov [rax-8], 2303
    001a87d8lea rsi, [rip+0xcd0e1]
    001a87dfmov [rax], rsi
    001a87e2sar rbx, 1
    001a87e5mov rsi, [rdi-8]
    001a87e9shr rsi, 10
    001a87edlea rsi, [8*rsi-1]
    001a87f5movzx rdx, [rdi+rsi]
    001a87fasub rsi, rdx
    001a87fdadd rsi, -3
    001a8801mov rdx, rsi
    001a8804sar rdx, 63
    001a8808xor rdx, -1
    001a880cand rdx, rsi
    001a880fcmp rdx, rbx
    001a8812jbe 0x1a8826
    001a8814mov ebx, [rdi+rbx]
    001a8817movsxd rbx, ebx
    001a881amov [rax+8], rbx
    001a881eret
    001a881f
    001a881floc_1a881f:
    001a881fcall caml_call_gc
    001a8824jmp 0x1a87cc
    001a8826
    001a8826loc_1a8826:
    001a8826call caml_ml_array_bound_error
    001a87c0
    001a882b
    001a882b // align 0x10
    001a8830
    001a8830Stdlib.Bytes.get_int32_be:
    001a8830mov rdi, rax
    001a8833sub r15, 24
    001a8837cmp r15, [r14]
    001a883ajb 0x1a8897
    001a883c
    001a883cloc_1a883c:
    001a883clea rax, [r15+8]
    001a8840mov [rax-8], 2303
    001a8848lea rsi, [rip+0xcd071]
    001a884fmov [rax], rsi
    001a8852sar rbx, 1
    001a8855mov rsi, [rdi-8]
    001a8859shr rsi, 10
    001a885dlea rsi, [8*rsi-1]
    001a8865movzx rdx, [rdi+rsi]
    001a886asub rsi, rdx
    001a886dadd rsi, -3
    001a8871mov rdx, rsi
    001a8874sar rdx, 63
    001a8878xor rdx, -1
    001a887cand rdx, rsi
    001a887fcmp rdx, rbx
    001a8882jbe 0x1a889e
    001a8884mov ebx, [rdi+rbx]
    001a8887movsxd rbx, ebx
    001a888abswap ebx
    001a888cmovsxd rbx, ebx
    001a888fmovsxd rbx, ebx
    001a8892mov [rax+8], rbx
    001a8896ret
    001a8897
    001a8897loc_1a8897:
    001a8897call caml_call_gc
    001a889cjmp 0x1a883c
    001a889e
    001a889eloc_1a889e:
    001a889ecall caml_ml_array_bound_error
    001a8830
    001a88a3
    001a88a3 // align 0x10
    001a88b0
    001a88b0Stdlib.Bytes.get_int64_le:
    001a88b0mov rdi, rax
    001a88b3sub r15, 24
    001a88b7cmp r15, [r14]
    001a88bajb 0x1a890d
    001a88bc
    001a88bcloc_1a88bc:
    001a88bclea rax, [r15+8]
    001a88c0mov [rax-8], 2303
    001a88c8lea rsi, [rip+0xccfb1]
    001a88cfmov [rax], rsi
    001a88d2sar rbx, 1
    001a88d5mov rsi, [rdi-8]
    001a88d9shr rsi, 10
    001a88ddlea rsi, [8*rsi-1]
    001a88e5movzx rdx, [rdi+rsi]
    001a88easub rsi, rdx
    001a88edadd rsi, -7
    001a88f1mov rdx, rsi
    001a88f4sar rdx, 63
    001a88f8xor rdx, -1
    001a88fcand rdx, rsi
    001a88ffcmp rdx, rbx
    001a8902jbe 0x1a8914
    001a8904mov rbx, [rdi+rbx]
    001a8908mov [rax+8], rbx
    001a890cret
    001a890d
    001a890dloc_1a890d:
    001a890dcall caml_call_gc
    001a8912jmp 0x1a88bc
    001a8914
    001a8914loc_1a8914:
    001a8914call caml_ml_array_bound_error
    001a88b0
    001a8919
    001a8919 // align 0x10
    001a8920
    001a8920Stdlib.Bytes.get_int64_be:
    001a8920mov rdi, rax
    001a8923sub r15, 24
    001a8927cmp r15, [r14]
    001a892ajb 0x1a8980
    001a892c
    001a892cloc_1a892c:
    001a892clea rax, [r15+8]
    001a8930mov [rax-8], 2303
    001a8938lea rsi, [rip+0xccf41]
    001a893fmov [rax], rsi
    001a8942sar rbx, 1
    001a8945mov rsi, [rdi-8]
    001a8949shr rsi, 10
    001a894dlea rsi, [8*rsi-1]
    001a8955movzx rdx, [rdi+rsi]
    001a895asub rsi, rdx
    001a895dadd rsi, -7
    001a8961mov rdx, rsi
    001a8964sar rdx, 63
    001a8968xor rdx, -1
    001a896cand rdx, rsi
    001a896fcmp rdx, rbx
    001a8972jbe 0x1a8987
    001a8974mov rbx, [rdi+rbx]
    001a8978bswap rbx
    001a897bmov [rax+8], rbx
    001a897fret
    001a8980
    001a8980loc_1a8980:
    001a8980call caml_call_gc
    001a8985jmp 0x1a892c
    001a8987
    001a8987loc_1a8987:
    001a8987call caml_ml_array_bound_error
    001a8920
    001a898c
    001a898c // align 0x10
    001a8990
    001a8990Stdlib.Bytes.unsafe_set_uint16_le:
    001a8990sar rdi, 1
    001a8993sar rbx, 1
    001a8996mov [rax+rbx], di
    001a899amov eax, 1
    001a899fret
    001a8990
    001a89a0
    001a89a0Stdlib.Bytes.unsafe_set_uint16_be:
    001a89a0mov rsi, rax
    001a89a3mov rax, rdi
    001a89a6sar rax, 1
    001a89a9xchg al, ah
    001a89abmovzx rax, ax
    001a89afsar rbx, 1
    001a89b2mov [rsi+rbx], ax
    001a89b6mov eax, 1
    001a89bbret
    001a89a0
    001a89bc
    001a89bc // align 0x10
    001a89c0
    001a89c0Stdlib.Bytes.set_int16_le:
    001a89c0sar rdi, 1
    001a89c3sar rbx, 1
    001a89c6mov rsi, [rax-8]
    001a89cashr rsi, 10
    001a89celea rsi, [8*rsi-1]
    001a89d6movzx rdx, [rax+rsi]
    001a89dbsub rsi, rdx
    001a89dedec rsi
    001a89e1mov rdx, rsi
    001a89e4sar rdx, 63
    001a89e8xor rdx, -1
    001a89ecand rdx, rsi
    001a89efcmp rdx, rbx
    001a89f2jbe 0x1a89fe
    001a89f4mov [rax+rbx], di
    001a89f8mov eax, 1
    001a89fdret
    001a89fe
    001a89feloc_1a89fe:
    001a89fecall caml_ml_array_bound_error
    001a89c0
    001a8a03
    001a8a03 // align 0x10
    001a8a10
    001a8a10Stdlib.Bytes.set_int16_be:
    001a8a10mov rsi, rax
    001a8a13mov rax, rdi
    001a8a16sar rax, 1
    001a8a19xchg al, ah
    001a8a1bmovzx rax, ax
    001a8a1fsar rbx, 1
    001a8a22mov rdi, [rsi-8]
    001a8a26shr rdi, 10
    001a8a2alea rdi, [8*rdi-1]
    001a8a32movzx rdx, [rsi+rdi]
    001a8a37sub rdi, rdx
    001a8a3adec rdi
    001a8a3dmov rdx, rdi
    001a8a40sar rdx, 63
    001a8a44xor rdx, -1
    001a8a48and rdx, rdi
    001a8a4bcmp rdx, rbx
    001a8a4ejbe 0x1a8a5a
    001a8a50mov [rsi+rbx], ax
    001a8a54mov eax, 1
    001a8a59ret
    001a8a5a
    001a8a5aloc_1a8a5a:
    001a8a5acall caml_ml_array_bound_error
    001a8a10
    001a8a5f
    001a8a5f // align 0x10
    001a8a60
    001a8a60Stdlib.Bytes.set_int32_le:
    001a8a60movsxd rdi, [rdi+8]
    001a8a64sar rbx, 1
    001a8a67mov rsi, [rax-8]
    001a8a6bshr rsi, 10
    001a8a6flea rsi, [8*rsi-1]
    001a8a77movzx rdx, [rax+rsi]
    001a8a7csub rsi, rdx
    001a8a7fadd rsi, -3
    001a8a83mov rdx, rsi
    001a8a86sar rdx, 63
    001a8a8axor rdx, -1
    001a8a8eand rdx, rsi
    001a8a91cmp rdx, rbx
    001a8a94jbe 0x1a8a9f
    001a8a96mov [rax+rbx], edi
    001a8a99mov eax, 1
    001a8a9eret
    001a8a9f
    001a8a9floc_1a8a9f:
    001a8a9fcall caml_ml_array_bound_error
    001a8a60
    001a8aa4
    001a8aa4 // align 0x10
    001a8ab0
    001a8ab0Stdlib.Bytes.set_int32_be:
    001a8ab0movsxd rdi, [rdi+8]
    001a8ab4bswap edi
    001a8ab6movsxd rdi, edi
    001a8ab9movsxd rdi, edi
    001a8abcsar rbx, 1
    001a8abfmov rsi, [rax-8]
    001a8ac3shr rsi, 10
    001a8ac7lea rsi, [8*rsi-1]
    001a8acfmovzx rdx, [rax+rsi]
    001a8ad4sub rsi, rdx
    001a8ad7add rsi, -3
    001a8adbmov rdx, rsi
    001a8adesar rdx, 63
    001a8ae2xor rdx, -1
    001a8ae6and rdx, rsi
    001a8ae9cmp rdx, rbx
    001a8aecjbe 0x1a8af7
    001a8aeemov [rax+rbx], edi
    001a8af1mov eax, 1
    001a8af6ret
    001a8af7
    001a8af7loc_1a8af7:
    001a8af7call caml_ml_array_bound_error
    001a8ab0
    001a8afc
    001a8afc // align 0x10
    001a8b00
    001a8b00Stdlib.Bytes.set_int64_le:
    001a8b00mov rdi, [rdi+8]
    001a8b04sar rbx, 1
    001a8b07mov rsi, [rax-8]
    001a8b0bshr rsi, 10
    001a8b0flea rsi, [8*rsi-1]
    001a8b17movzx rdx, [rax+rsi]
    001a8b1csub rsi, rdx
    001a8b1fadd rsi, -7
    001a8b23mov rdx, rsi
    001a8b26sar rdx, 63
    001a8b2axor rdx, -1
    001a8b2eand rdx, rsi
    001a8b31cmp rdx, rbx
    001a8b34jbe 0x1a8b40
    001a8b36mov [rax+rbx], rdi
    001a8b3amov eax, 1
    001a8b3fret
    001a8b40
    001a8b40loc_1a8b40:
    001a8b40call caml_ml_array_bound_error
    001a8b00
    001a8b45
    001a8b45 // align 0x10
    001a8b50
    001a8b50Stdlib.Bytes.set_int64_be:
    001a8b50mov rdi, [rdi+8]
    001a8b54bswap rdi
    001a8b57sar rbx, 1
    001a8b5amov rsi, [rax-8]
    001a8b5eshr rsi, 10
    001a8b62lea rsi, [8*rsi-1]
    001a8b6amovzx rdx, [rax+rsi]
    001a8b6fsub rsi, rdx
    001a8b72add rsi, -7
    001a8b76mov rdx, rsi
    001a8b79sar rdx, 63
    001a8b7dxor rdx, -1
    001a8b81and rdx, rsi
    001a8b84cmp rdx, rbx
    001a8b87jbe 0x1a8b93
    001a8b89mov [rax+rbx], rdi
    001a8b8dmov eax, 1
    001a8b92ret
    001a8b93
    001a8b93loc_1a8b93:
    001a8b93call caml_ml_array_bound_error
    001a8b50
    001a8b98
    001a8b98 // align 0x10
    001a8ba0
    001a8ba0Stdlib.Bytes.set_uint8:
    001a8ba0sar rdi, 1
    001a8ba3sar rbx, 1
    001a8ba6mov rsi, [rax-8]
    001a8baashr rsi, 10
    001a8baelea rsi, [8*rsi-1]
    001a8bb6movzx rdx, [rax+rsi]
    001a8bbbsub rsi, rdx
    001a8bbecmp rsi, rbx
    001a8bc1jbe 0x1a8bcd
    001a8bc3mov [rax+rbx], dil
    001a8bc7mov eax, 1
    001a8bccret
    001a8bcd
    001a8bcdloc_1a8bcd:
    001a8bcdcall caml_ml_array_bound_error
    001a8ba0
    001a8bd2
    001a8bd2 // align 0x10
    001a8be0
    001a8be0Stdlib.Bytes.set_uint16_ne:
    001a8be0sar rdi, 1
    001a8be3sar rbx, 1
    001a8be6mov rsi, [rax-8]
    001a8beashr rsi, 10
    001a8beelea rsi, [8*rsi-1]
    001a8bf6movzx rdx, [rax+rsi]
    001a8bfbsub rsi, rdx
    001a8bfedec rsi
    001a8c01mov rdx, rsi
    001a8c04sar rdx, 63
    001a8c08xor rdx, -1
    001a8c0cand rdx, rsi
    001a8c0fcmp rdx, rbx
    001a8c12jbe 0x1a8c1e
    001a8c14mov [rax+rbx], di
    001a8c18mov eax, 1
    001a8c1dret
    001a8c1e
    001a8c1eloc_1a8c1e:
    001a8c1ecall caml_ml_array_bound_error
    001a8be0
    001a8c23
    001a8c23 // align 0x10
    001a8c30
    001a8c30Stdlib.Bytes.dec_ret:
    001a8c30or rax, 17
    001a8c34shl rax, 24
    001a8c38add rax, 0xffffffffff000001
    001a8c3eor rax, rbx
    001a8c41ret
    001a8c30
    001a8c42
    001a8c42 // align 0x10
    001a8c50
    001a8c50Stdlib.Bytes.not_in_x80_to_xBF:
    001a8c50shr rax, 6
    001a8c54or rax, 1
    001a8c58cmp rax, 5
    001a8c5csetne al
    001a8c5fmovzx rax, al
    001a8c63lea rax, [rax+rax+1]
    001a8c68ret
    001a8c50
    001a8c69
    001a8c69 // align 0x10
    001a8c70
    001a8c70Stdlib.Bytes.not_in_xA0_to_xBF:
    001a8c70shr rax, 5
    001a8c74or rax, 1
    001a8c78cmp rax, 11
    001a8c7csetne al
    001a8c7fmovzx rax, al
    001a8c83lea rax, [rax+rax+1]
    001a8c88ret
    001a8c70
    001a8c89
    001a8c89 // align 0x10
    001a8c90
    001a8c90Stdlib.Bytes.not_in_x80_to_x9F:
    001a8c90shr rax, 5
    001a8c94or rax, 1
    001a8c98cmp rax, 9
    001a8c9csetne al
    001a8c9fmovzx rax, al
    001a8ca3lea rax, [rax+rax+1]
    001a8ca8ret
    001a8c90
    001a8ca9
    001a8ca9 // align 0x10
    001a8cb0
    001a8cb0Stdlib.Bytes.not_in_x90_to_xBF:
    001a8cb0cmp rax, 289
    001a8cb6jl 0x1a8ccc
    001a8cb8cmp rax, 383
    001a8cbesetg al
    001a8cc1movzx rax, al
    001a8cc5lea rax, [rax+rax+1]
    001a8ccaret
    001a8ccb
    001a8ccb 90 .
    001a8ccc
    001a8cccloc_1a8ccc:
    001a8cccmov eax, 3
    001a8cd1ret
    001a8cb0
    001a8cd2
    001a8cd2 // align 0x10
    001a8ce0
    001a8ce0Stdlib.Bytes.not_in_x80_to_x8F:
    001a8ce0shr rax, 4
    001a8ce4or rax, 1
    001a8ce8cmp rax, 17
    001a8cecsetne al
    001a8cefmovzx rax, al
    001a8cf3lea rax, [rax+rax+1]
    001a8cf8ret
    001a8ce0
    001a8cf9
    001a8cf9 // align 0x10
    001a8d00
    001a8d00Stdlib.Bytes.utf_8_uchar_2:
    001a8d00and rbx, 127
    001a8d04and rax, 63
    001a8d08shl rax, 6
    001a8d0cadd rax, -63
    001a8d10or rax, rbx
    001a8d13ret
    001a8d00
    001a8d14
    001a8d14 // align 0x10
    001a8d20
    001a8d20Stdlib.Bytes.utf_8_uchar_3:
    001a8d20and rdi, 127
    001a8d24and rbx, 127
    001a8d28shl rbx, 6
    001a8d2cadd rbx, -63
    001a8d30and rax, 31
    001a8d34shl rax, 12
    001a8d38add rax, -4095
    001a8d3eor rax, rbx
    001a8d41or rax, rdi
    001a8d44ret
    001a8d20