File hevea_f46f610a6b0078f4aa208dda361f21de574cc56ad64b32889301afc466d33979.elf
Function:
    001e94c0
    001e94c0Stdlib.Scanf.fun:
    001e94c0lea r10, [rsp-336]
    001e94c8cmp r10, [r14+40]
    001e94ccjb 0x1e9555
    001e94d2
    001e94d2loc_1e94d2:
    001e94d2sub rsp, 16
    001e94d6mov [rsp], rax
    001e94damov rax, [rbx+16]
    001e94demov [rsp+8], rax
    001e94e3mov eax, 2049
    001e94e8call Stdlib.Buffer.create
    001e94edsub r15, 80
    001e94f1cmp r15, [r14]
    001e94f4jb 0x1e954e
    001e94f6
    001e94f6loc_1e94f6:
    001e94f6lea rbx, [r15+8]
    001e94famov [rbx-8], 9216
    001e9502mov [rbx], 1
    001e9509mov [rbx+8], 1
    001e9511mov [rbx+16], 1
    001e9519mov [rbx+24], 1
    001e9521mov [rbx+32], 1
    001e9529mov [rbx+40], 1
    001e9531mov rdi, [rsp]
    001e9535mov [rbx+48], rdi
    001e9539mov [rbx+56], rax
    001e953dmov rax, [rsp+8]
    001e9542mov [rbx+64], rax
    001e9546mov rax, rbx
    001e9549add rsp, 16
    001e954dret
    001e954e
    001e954eloc_1e954e:
    001e954ecall caml_call_gc
    001e9553jmp 0x1e94f6
    001e9555
    001e9555loc_1e9555:
    001e9555push 35
    001e9557call caml_call_realloc_stack
    001e955cpop r10
    001e955ejmp 0x1e94d2
    001e94c0
    001e9563
    001e9563 // align 0x10
    001e9570
    001e9570Stdlib.Scanf.scan_close_at_end:
    001e9570mov rdi, rax
    001e9573lea rax, [rip+0x264d6]
    001e957acall caml_c_call
    001e957flea rax, [rip+0x144092]
    001e9586mov rax, [rax+88]
    001e958acall caml_raise_exn
    001e9570
    001e958f
    001e958f // align 0x10
    001e9590
    001e9590Stdlib.Scanf.scan_raise_at_end:
    001e9590lea rax, [rip+0x144081]
    001e9597mov rax, [rax+88]
    001e959bcall caml_raise_exn
    001e9590
    001e95a0
    001e95a0Stdlib.Scanf.from_ic:
    001e95a0lea r10, [rsp-360]
    001e95a8cmp r10, [r14+40]
    001e95acjb 0x1e9703
    001e95b2
    001e95b2loc_1e95b2:
    001e95b2sub rsp, 40
    001e95b6mov [rsp], rax
    001e95bamov [rsp+32], rbx
    001e95bfmov [rsp+8], rdi
    001e95c4lea rax, [rip+0x183bb5]
    001e95cbmov rax, [rax+864]
    001e95d2mov rdi, [rax]
    001e95d5mov [rsp+16], rdi
    001e95dalea rax, [rip+0x37a4f]
    001e95e1call caml_c_call
    001e95e6sub r15, 128
    001e95edcmp r15, [r14]
    001e95f0jb 0x1e96f9
    001e95f6
    001e95f6loc_1e95f6:
    001e95f6lea rbx, [r15+8]
    001e95faadd rbx, 112
    001e95femov [rbx-8], 1024
    001e9606mov [rbx], 1
    001e960dlea rdi, [rbx-16]
    001e9611mov [rdi-8], 1024
    001e9619mov [rdi], 1
    001e9620lea rsi, [rdi-16]
    001e9624mov [rsi-8], 1024
    001e962cmov [rsi], 1
    001e9633lea rdx, [rsi-80]
    001e9637mov [rsp+24], rdx
    001e963cmov [rdx-8], 9463
    001e9644lea rcx, [rip+213]
    001e964bmov [rdx], rcx
    001e964emov rcx, 0x100000000000005
    001e9658mov [rdx+8], rcx
    001e965cmov rcx, [rsp]
    001e9660mov [rdx+16], rcx
    001e9664mov rcx, [rsp+8]
    001e9669mov [rdx+24], rcx
    001e966dmov rcx, [rsp+16]
    001e9672mov [rdx+32], rcx
    001e9676mov [rdx+40], rax
    001e967amov [rdx+48], rbx
    001e967emov [rdx+56], rdi
    001e9682mov [rdx+64], rsi
    001e9686mov eax, 2049
    001e968bcall Stdlib.Buffer.create
    001e9690sub r15, 80
    001e9694cmp r15, [r14]
    001e9697jb 0x1e96f2
    001e9699
    001e9699loc_1e9699:
    001e9699lea rbx, [r15+8]
    001e969dmov [rbx-8], 9216
    001e96a5mov [rbx], 1
    001e96acmov [rbx+8], 1
    001e96b4mov [rbx+16], 1
    001e96bcmov [rbx+24], 1
    001e96c4mov [rbx+32], 1
    001e96ccmov [rbx+40], 1
    001e96d4mov rdi, [rsp+24]
    001e96d9mov [rbx+48], rdi
    001e96ddmov [rbx+56], rax
    001e96e1mov rax, [rsp+32]
    001e96e6mov [rbx+64], rax
    001e96eamov rax, rbx
    001e96edadd rsp, 40
    001e96f1ret
    001e96f2
    001e96f2loc_1e96f2:
    001e96f2call caml_call_gc
    001e96f7jmp 0x1e9699
    001e96f9
    001e96f9loc_1e96f9:
    001e96f9call caml_call_gc
    001e96fejmp 0x1e95f6
    001e9703
    001e9703loc_1e9703:
    001e9703push 38
    001e9705call caml_call_realloc_stack
    001e970apop r10
    001e970cjmp 0x1e95b2
    001e95a0
    001e9711
    001e9711 // align 0x10
    001e9720
    001e9720Stdlib.Scanf.next:
    001e9720lea r10, [rsp-328]
    001e9728cmp r10, [r14+40]
    001e972cjb 0x1e984f
    001e9732
    001e9732loc_1e9732:
    001e9732sub rsp, 8
    001e9736cmp r15, [r14]
    001e9739jbe 0x1e983b
    001e973f
    001e973floc_1e973f:
    001e973fmov rax, [rbx+56]
    001e9743mov rax, [rax]
    001e9746mov rdi, [rbx+48]
    001e974amov rsi, [rdi]
    001e974dcmp rsi, rax
    001e9750jge 0x1e9790
    001e9752sar rsi, 1
    001e9755mov rax, [rbx+40]
    001e9759mov rbx, [rax-8]
    001e975dshr rbx, 10
    001e9761lea rbx, [8*rbx-1]
    001e9769movzx rdx, [rax+rbx]
    001e976esub rbx, rdx
    001e9771cmp rbx, rsi
    001e9774jbe 0x1e984a
    001e977amovzx rax, [rax+rsi]
    001e977flea rax, [rax+rax+1]
    001e9784add [rdi], 2
    001e9788add rsp, 8
    001e978cret
    001e978dnop [rax]
    001e9790
    001e9790loc_1e9790:
    001e9790mov rax, [rbx+64]
    001e9794mov rax, [rax]
    001e9797cmp rax, 1
    001e979bje 0x1e97b0
    001e979dlea rax, [rip+0x143e74]
    001e97a4mov rax, [rax+88]
    001e97a8call caml_raise_exn
    001e97adnop [rax]
    001e97b0
    001e97b0loc_1e97b0:
    001e97b0mov [rsp], rbx
    001e97b4mov rsi, [rbx+32]
    001e97b8mov edi, 1
    001e97bdmov rdx, [rbx+40]
    001e97c1mov rax, [rbx+24]
    001e97c5mov rbx, rdx
    001e97c8call camlStdlib.input_302
    001e97cdmov rdi, [rsp]
    001e97d1mov rbx, [rdi+56]
    001e97d5mov [rbx], rax
    001e97d8mov rax, [rbx]
    001e97dbcmp rax, 1
    001e97dfjne 0x1e9800
    001e97e1mov rax, [rdi+64]
    001e97e5mov [rax], 3
    001e97ecmov rbx, [rdi+16]
    001e97f0mov rax, [rdi+24]
    001e97f4mov rdi, [rbx]
    001e97f7add rsp, 8
    001e97fbjmp rdi
    001e97fdnop [rax]
    001e9800
    001e9800loc_1e9800:
    001e9800mov rax, [rdi+48]
    001e9804mov [rax], 3
    001e980bmov rax, [rdi+40]
    001e980fmov rbx, [rax-8]
    001e9813shr rbx, 10
    001e9817lea rbx, [8*rbx-1]
    001e981fmovzx rdi, [rax+rbx]
    001e9824sub rbx, rdi
    001e9827cmp rbx, 0
    001e982bjbe 0x1e9845
    001e982dmovzx rax, [rax]
    001e9831lea rax, [rax+rax+1]
    001e9836add rsp, 8
    001e983aret
    001e983b
    001e983bloc_1e983b:
    001e983bcall caml_call_gc
    001e9840jmp 0x1e973f
    001e9845
    001e9845loc_1e9845:
    001e9845call caml_ml_array_bound_error
    001e984a
    001e984aloc_1e984a:
    001e984acall caml_ml_array_bound_error
    001e984f
    001e984floc_1e984f:
    001e984fpush 34
    001e9851call caml_call_realloc_stack
    001e9856pop r10
    001e9858jmp 0x1e9732
    001e9720
    001e985d
    001e985d // align 0x10
    001e9860
    001e9860Stdlib.Scanf.fun:
    001e9860mov rsi, rax
    001e9863mov rdx, rbx
    001e9866mov rax, [rdi+24]
    001e986amov rbx, rsi
    001e986dmov rdi, rdx
    001e9870jmp 0x1e95a0
    001e9860
    001e9875
    001e9875 // align 0x10
    001e9880
    001e9880Stdlib.Scanf.fun:
    001e9880mov rsi, rax
    001e9883mov rdx, rbx
    001e9886mov rax, [rdi+24]
    001e988amov rbx, rsi
    001e988dmov rdi, rdx
    001e9890jmp 0x1e95a0
    001e9880
    001e9895
    001e9895 // align 0x10
    001e98a0
    001e98a0Stdlib.Scanf.open_in_file:
    001e98a0lea r10, [rsp-328]
    001e98a8cmp r10, [r14+40]
    001e98acjb 0x1e9949
    001e98b2
    001e98b2loc_1e98b2:
    001e98b2sub rsp, 8
    001e98b6mov rdi, rax
    001e98b9mov rax, rbx
    001e98bcmov rbx, [rax-8]
    001e98c0shr rbx, 10
    001e98c4cmp rbx, 2
    001e98c8jl 0x1e98d0
    001e98camov [rsp], rax
    001e98cejmp 0x1e98fc
    001e98d0
    001e98d0loc_1e98d0:
    001e98d0mov rbx, [rax]
    001e98d3mov rsi, 0x60000000000002d
    001e98ddcmp rbx, rsi
    001e98e0jne 0x1e98f8
    001e98e2lea rax, [rip+0x183897]
    001e98e9mov rax, [rax+912]
    001e98f0add rsp, 8
    001e98f4ret
    001e98f5
    001e98f5 0f 1f 00 ...
    001e98f8
    001e98f8loc_1e98f8:
    001e98f8mov [rsp], rax
    001e98fc
    001e98fcloc_1e98fc:
    001e98fcmov rsi, [rdi]
    001e98ffmov rbx, rdi
    001e9902call rsi
    001e9904mov rdi, rax
    001e9907sub r15, 24
    001e990bcmp r15, [r14]
    001e990ejb 0x1e9942
    001e9910
    001e9910loc_1e9910:
    001e9910lea rbx, [r15+8]
    001e9914mov [rbx-8], 2049
    001e991cmov rax, [rsp]
    001e9920mov [rbx], rax
    001e9923mov [rbx+8], rdi
    001e9927lea rax, [rip+0x183852]
    001e992emov rax, [rax+896]
    001e9935mov rax, [rax+24]
    001e9939add rsp, 8
    001e993djmp 0x1e95a0
    001e9942
    001e9942loc_1e9942:
    001e9942call caml_call_gc
    001e9947jmp 0x1e9910
    001e9949
    001e9949loc_1e9949:
    001e9949push 34
    001e994bcall caml_call_realloc_stack
    001e9950pop r10
    001e9952jmp 0x1e98b2
    001e98a0
    001e9957
    001e9957 // align 0x10
    001e9960
    001e9960Stdlib.Scanf.fun:
    001e9960lea r10, [rsp-328]
    001e9968cmp r10, [r14+40]
    001e996cjb 0x1e9a06
    001e9972
    001e9972loc_1e9972:
    001e9972sub rsp, 8
    001e9976mov rbx, [rbx+16]
    001e997amov rdi, [rax-8]
    001e997eshr rdi, 10
    001e9982cmp rdi, 2
    001e9986jl 0x1e9990
    001e9988mov [rsp], rax
    001e998cjmp 0x1e99bc
    001e998e
    001e998e 66 90 f.
    001e9990
    001e9990loc_1e9990:
    001e9990mov rdi, [rax]
    001e9993mov rsi, 0x60000000000002d
    001e999dcmp rdi, rsi
    001e99a0jne 0x1e99b8
    001e99a2lea rax, [rip+0x1837d7]
    001e99a9mov rax, [rax+912]
    001e99b0add rsp, 8
    001e99b4ret
    001e99b5
    001e99b5 0f 1f 00 ...
    001e99b8
    001e99b8loc_1e99b8:
    001e99b8mov [rsp], rax
    001e99bc
    001e99bcloc_1e99bc:
    001e99bcmov rdi, [rbx]
    001e99bfcall rdi
    001e99c1mov rdi, rax
    001e99c4sub r15, 24
    001e99c8cmp r15, [r14]
    001e99cbjb 0x1e99ff
    001e99cd
    001e99cdloc_1e99cd:
    001e99cdlea rbx, [r15+8]
    001e99d1mov [rbx-8], 2049
    001e99d9mov rax, [rsp]
    001e99ddmov [rbx], rax
    001e99e0mov [rbx+8], rdi
    001e99e4lea rax, [rip+0x183795]
    001e99ebmov rax, [rax+896]
    001e99f2mov rax, [rax+24]
    001e99f6add rsp, 8
    001e99fajmp 0x1e95a0
    001e99ff
    001e99ffloc_1e99ff:
    001e99ffcall caml_call_gc
    001e9a04jmp 0x1e99cd
    001e9a06
    001e9a06loc_1e9a06:
    001e9a06push 34
    001e9a08call caml_call_realloc_stack
    001e9a0dpop r10
    001e9a0fjmp 0x1e9972
    001e9960
    001e9a14
    001e9a14 // align 0x10
    001e9a20
    001e9a20Stdlib.Scanf.fun:
    001e9a20lea r10, [rsp-328]
    001e9a28cmp r10, [r14+40]
    001e9a2cjb 0x1e9ac6
    001e9a32
    001e9a32loc_1e9a32:
    001e9a32sub rsp, 8
    001e9a36mov rbx, [rbx+16]
    001e9a3amov rdi, [rax-8]
    001e9a3eshr rdi, 10
    001e9a42cmp rdi, 2
    001e9a46jl 0x1e9a50
    001e9a48mov [rsp], rax
    001e9a4cjmp 0x1e9a7c
    001e9a4e
    001e9a4e 66 90 f.
    001e9a50
    001e9a50loc_1e9a50:
    001e9a50mov rdi, [rax]
    001e9a53mov rsi, 0x60000000000002d
    001e9a5dcmp rdi, rsi
    001e9a60jne 0x1e9a78
    001e9a62lea rax, [rip+0x183717]
    001e9a69mov rax, [rax+912]
    001e9a70add rsp, 8
    001e9a74ret
    001e9a75
    001e9a75 0f 1f 00 ...
    001e9a78
    001e9a78loc_1e9a78:
    001e9a78mov [rsp], rax
    001e9a7c
    001e9a7cloc_1e9a7c:
    001e9a7cmov rdi, [rbx]
    001e9a7fcall rdi
    001e9a81mov rdi, rax
    001e9a84sub r15, 24
    001e9a88cmp r15, [r14]
    001e9a8bjb 0x1e9abf
    001e9a8d
    001e9a8dloc_1e9a8d:
    001e9a8dlea rbx, [r15+8]
    001e9a91mov [rbx-8], 2049
    001e9a99mov rax, [rsp]
    001e9a9dmov [rbx], rax
    001e9aa0mov [rbx+8], rdi
    001e9aa4lea rax, [rip+0x1836d5]
    001e9aabmov rax, [rax+896]
    001e9ab2mov rax, [rax+24]
    001e9ab6add rsp, 8
    001e9abajmp 0x1e95a0
    001e9abf
    001e9abfloc_1e9abf:
    001e9abfcall caml_call_gc
    001e9ac4jmp 0x1e9a8d
    001e9ac6
    001e9ac6loc_1e9ac6:
    001e9ac6push 34
    001e9ac8call caml_call_realloc_stack
    001e9acdpop r10
    001e9acfjmp 0x1e9a32
    001e9a20
    001e9ad4
    001e9ad4 // align 0x10
    001e9ae0
    001e9ae0Stdlib.Scanf.from_channel:
    001e9ae0mov rdi, rax
    001e9ae3sub r15, 16
    001e9ae7cmp r15, [r14]
    001e9aeajb 0x1e9b12
    001e9aec
    001e9aecloc_1e9aec:
    001e9aeclea rbx, [r15+8]
    001e9af0mov [rbx-8], 1024
    001e9af8mov [rbx], rdi
    001e9afblea rax, [rip+0x18367e]
    001e9b02mov rax, [rax+904]
    001e9b09mov rax, [rax+24]
    001e9b0djmp 0x1e95a0
    001e9b12
    001e9b12loc_1e9b12:
    001e9b12call caml_call_gc
    001e9b17jmp 0x1e9aec
    001e9ae0
    001e9b19
    001e9b19 // align 0x10
    001e9b20
    001e9b20Stdlib.Scanf.close_in:
    001e9b20mov rax, [rax+64]
    001e9b24test al, 1
    001e9b26jne 0x1e9b54
    001e9b28movzx rbx, [rax-8]
    001e9b2dtest rbx, rbx
    001e9b30je 0x1e9b44
    001e9b32mov rdi, [rax+8]
    001e9b36lea rax, [rip+0x25f13]
    001e9b3dcall caml_c_call
    001e9b42ret
    001e9b43
    001e9b43 90 .
    001e9b44
    001e9b44loc_1e9b44:
    001e9b44mov rdi, [rax]
    001e9b47lea rax, [rip+0x25f02]
    001e9b4ecall caml_c_call
    001e9b53ret
    001e9b54
    001e9b54loc_1e9b54:
    001e9b54mov eax, 1
    001e9b59ret
    001e9b20
    001e9b5a
    001e9b5a // align 0x10
    001e9b60
    001e9b60Stdlib.Scanf.bad_input:
    001e9b60sub r15, 24
    001e9b64cmp r15, [r14]
    001e9b67jb 0x1e9b8f
    001e9b69
    001e9b69loc_1e9b69:
    001e9b69lea rbx, [r15+8]
    001e9b6dmov [rbx-8], 2048
    001e9b75lea rdi, [rip+0x183604]
    001e9b7cmov rdi, [rdi+8]
    001e9b80mov [rbx], rdi
    001e9b83mov [rbx+8], rax
    001e9b87mov rax, rbx
    001e9b8acall caml_raise_exn
    001e9b8f
    001e9b8floc_1e9b8f:
    001e9b8fcall caml_call_gc
    001e9b94jmp 0x1e9b69
    001e9b60
    001e9b96
    001e9b96 // align 0x10
    001e9ba0
    001e9ba0Stdlib.Scanf.bad_input_escape:
    001e9ba0lea r10, [rsp-328]
    001e9ba8cmp r10, [r14+40]
    001e9bacjb 0x1e9c04
    001e9bae
    001e9baeloc_1e9bae:
    001e9baesub rsp, 8
    001e9bb2mov [rsp], rax
    001e9bb6lea rax, [rip+0x184653]
    001e9bbdcall Stdlib.Printf.sprintf
    001e9bc2mov rbx, rax
    001e9bc5mov rdi, [rbx]
    001e9bc8mov rax, [rsp]
    001e9bcccall rdi
    001e9bcesub r15, 24
    001e9bd2cmp r15, [r14]
    001e9bd5jb 0x1e9bfd
    001e9bd7
    001e9bd7loc_1e9bd7:
    001e9bd7lea rbx, [r15+8]
    001e9bdbmov [rbx-8], 2048
    001e9be3lea rdi, [rip+0x183596]
    001e9beamov rdi, [rdi+8]
    001e9beemov [rbx], rdi
    001e9bf1mov [rbx+8], rax
    001e9bf5mov rax, rbx
    001e9bf8call caml_raise_exn
    001e9bfd
    001e9bfdloc_1e9bfd:
    001e9bfdcall caml_call_gc
    001e9c02jmp 0x1e9bd7
    001e9c04
    001e9c04loc_1e9c04:
    001e9c04push 34
    001e9c06call caml_call_realloc_stack
    001e9c0bpop r10
    001e9c0djmp 0x1e9bae
    001e9ba0
    001e9c0f
    001e9c0f // align 0x10
    001e9c10
    001e9c10Stdlib.Scanf.bad_token_length:
    001e9c10lea r10, [rsp-328]
    001e9c18cmp r10, [r14+40]
    001e9c1cjb 0x1e9c74
    001e9c1e
    001e9c1eloc_1e9c1e:
    001e9c1esub rsp, 8
    001e9c22mov [rsp], rax
    001e9c26lea rax, [rip+0x18431b]
    001e9c2dcall Stdlib.Printf.sprintf
    001e9c32mov rbx, rax
    001e9c35mov rdi, [rbx]
    001e9c38mov rax, [rsp]
    001e9c3ccall rdi
    001e9c3esub r15, 24
    001e9c42cmp r15, [r14]
    001e9c45jb 0x1e9c6d
    001e9c47
    001e9c47loc_1e9c47:
    001e9c47lea rbx, [r15+8]
    001e9c4bmov [rbx-8], 2048
    001e9c53lea rdi, [rip+0x183526]
    001e9c5amov rdi, [rdi+8]
    001e9c5emov [rbx], rdi
    001e9c61mov [rbx+8], rax
    001e9c65mov rax, rbx
    001e9c68call caml_raise_exn
    001e9c6d
    001e9c6dloc_1e9c6d:
    001e9c6dcall caml_call_gc
    001e9c72jmp 0x1e9c47
    001e9c74
    001e9c74loc_1e9c74:
    001e9c74push 34
    001e9c76call caml_call_realloc_stack
    001e9c7bpop r10
    001e9c7djmp 0x1e9c1e
    001e9c10
    001e9c7f
    001e9c7f // align 0x10
    001e9c80
    001e9c80Stdlib.Scanf.bad_end_of_input:
    001e9c80lea r10, [rsp-328]
    001e9c88cmp r10, [r14+40]
    001e9c8cjb 0x1e9ce4
    001e9c8e
    001e9c8eloc_1e9c8e:
    001e9c8esub rsp, 8
    001e9c92mov [rsp], rax
    001e9c96lea rax, [rip+0x184183]
    001e9c9dcall Stdlib.Printf.sprintf
    001e9ca2mov rbx, rax
    001e9ca5mov rdi, [rbx]
    001e9ca8mov rax, [rsp]
    001e9caccall rdi
    001e9caesub r15, 24
    001e9cb2cmp r15, [r14]
    001e9cb5jb 0x1e9cdd
    001e9cb7
    001e9cb7loc_1e9cb7:
    001e9cb7lea rbx, [r15+8]
    001e9cbbmov [rbx-8], 2048
    001e9cc3lea rdi, [rip+0x1834b6]
    001e9ccamov rdi, [rdi+8]
    001e9ccemov [rbx], rdi
    001e9cd1mov [rbx+8], rax
    001e9cd5mov rax, rbx
    001e9cd8call caml_raise_exn
    001e9cdd
    001e9cddloc_1e9cdd:
    001e9cddcall caml_call_gc
    001e9ce2jmp 0x1e9cb7
    001e9ce4
    001e9ce4loc_1e9ce4:
    001e9ce4push 34
    001e9ce6call caml_call_realloc_stack
    001e9cebpop r10
    001e9cedjmp 0x1e9c8e
    001e9c80
    001e9cef
    001e9cef // align 0x10
    001e9cf0
    001e9cf0Stdlib.Scanf.bad_float:
    001e9cf0sub r15, 24
    001e9cf4cmp r15, [r14]
    001e9cf7jb 0x1e9d23
    001e9cf9
    001e9cf9loc_1e9cf9:
    001e9cf9lea rax, [r15+8]
    001e9cfdmov [rax-8], 2048
    001e9d05lea rbx, [rip+0x183474]
    001e9d0cmov rbx, [rbx+8]
    001e9d10mov [rax], rbx
    001e9d13lea rbx, [rip+0x1840ce]
    001e9d1amov [rax+8], rbx
    001e9d1ecall caml_raise_exn
    001e9d23
    001e9d23loc_1e9d23:
    001e9d23call caml_call_gc
    001e9d28jmp 0x1e9cf9
    001e9cf0
    001e9d2a
    001e9d2a // align 0x10
    001e9d30
    001e9d30Stdlib.Scanf.bad_hex_float:
    001e9d30sub r15, 24
    001e9d34cmp r15, [r14]
    001e9d37jb 0x1e9d63
    001e9d39
    001e9d39loc_1e9d39:
    001e9d39lea rax, [r15+8]
    001e9d3dmov [rax-8], 2048
    001e9d45lea rbx, [rip+0x183434]
    001e9d4cmov rbx, [rbx+8]
    001e9d50mov [rax], rbx
    001e9d53lea rbx, [rip+0x184056]
    001e9d5amov [rax+8], rbx
    001e9d5ecall caml_raise_exn
    001e9d63
    001e9d63loc_1e9d63:
    001e9d63call caml_call_gc
    001e9d68jmp 0x1e9d39
    001e9d30
    001e9d6a
    001e9d6a // align 0x10
    001e9d70
    001e9d70Stdlib.Scanf.character_mismatch_err:
    001e9d70lea r10, [rsp-336]
    001e9d78cmp r10, [r14+40]
    001e9d7cjb 0x1e9db8
    001e9d7e
    001e9d7eloc_1e9d7e:
    001e9d7esub rsp, 16
    001e9d82cmp r15, [r14]
    001e9d85jbe 0x1e9db1
    001e9d87
    001e9d87loc_1e9d87:
    001e9d87mov [rsp+8], rbx
    001e9d8cmov [rsp], rax
    001e9d90lea rax, [rip+0x183f41]
    001e9d97call Stdlib.Printf.sprintf
    001e9d9cmov rdi, rax
    001e9d9fmov rax, [rsp]
    001e9da3mov rbx, [rsp+8]
    001e9da8add rsp, 16
    001e9dacjmp 0xf73e0
    001e9db1
    001e9db1loc_1e9db1:
    001e9db1call caml_call_gc
    001e9db6jmp 0x1e9d87
    001e9db8
    001e9db8loc_1e9db8:
    001e9db8push 35
    001e9dbacall caml_call_realloc_stack
    001e9dbfpop r10
    001e9dc1jmp 0x1e9d7e
    001e9d70
    001e9dc3
    001e9dc3 // align 0x10
    001e9dd0
    001e9dd0Stdlib.Scanf.character_mismatch:
    001e9dd0lea r10, [rsp-336]
    001e9dd8cmp r10, [r14+40]
    001e9ddcjb 0x1e9e3e
    001e9dde
    001e9ddeloc_1e9dde:
    001e9ddesub rsp, 16
    001e9de2mov [rsp+8], rbx
    001e9de7mov [rsp], rax
    001e9deblea rax, [rip+0x183ee6]
    001e9df2call Stdlib.Printf.sprintf
    001e9df7mov rdi, rax
    001e9dfamov rax, [rsp]
    001e9dfemov rbx, [rsp+8]
    001e9e03call caml_apply2
    001e9e08sub r15, 24
    001e9e0ccmp r15, [r14]
    001e9e0fjb 0x1e9e37
    001e9e11
    001e9e11loc_1e9e11:
    001e9e11lea rbx, [r15+8]
    001e9e15mov [rbx-8], 2048
    001e9e1dlea rdi, [rip+0x18335c]
    001e9e24mov rdi, [rdi+8]
    001e9e28mov [rbx], rdi
    001e9e2bmov [rbx+8], rax
    001e9e2fmov rax, rbx
    001e9e32call caml_raise_exn
    001e9e37
    001e9e37loc_1e9e37:
    001e9e37call caml_call_gc
    001e9e3cjmp 0x1e9e11
    001e9e3e
    001e9e3eloc_1e9e3e:
    001e9e3epush 35
    001e9e40call caml_call_realloc_stack
    001e9e45pop r10
    001e9e47jmp 0x1e9dde
    001e9dd0
    001e9e49
    001e9e49 // align 0x10
    001e9e50
    001e9e50Stdlib.Scanf.skip_whites:
    001e9e50lea r10, [rsp-344]
    001e9e58cmp r10, [r14+40]
    001e9e5cjb 0x1e9f76
    001e9e62
    001e9e62loc_1e9e62:
    001e9e62sub rsp, 8
    001e9e66
    001e9e66loc_1e9e66:
    001e9e66mov rbx, rax
    001e9e69cmp r15, [r14]
    001e9e6cjbe 0x1e9f6c
    001e9e72
    001e9e72loc_1e9e72:
    001e9e72mov rax, [rbx+16]
    001e9e76cmp rax, 1
    001e9e7aje 0x1e9e88
    001e9e7cmov rax, [rbx+8]
    001e9e80jmp 0x1e9f20
    001e9e85
    001e9e85 0f 1f 00 ...
    001e9e88
    001e9e88loc_1e9e88:
    001e9e88mov [rsp], rbx
    001e9e8clea r11, [rip+81]
    001e9e93push r11
    001e9e95push [r14+48]
    001e9e99mov [r14+48], rsp
    001e9e9dmov rbx, [rbx+48]
    001e9ea1mov eax, 1
    001e9ea6mov rdi, [rbx]
    001e9ea9call rdi
    001e9eabmov rbx, [rsp+16]
    001e9eb0mov [rbx+8], rax
    001e9eb4mov [rbx+16], 3
    001e9ebcmov rdi, [rbx+24]
    001e9ec0add rdi, 2
    001e9ec4mov [rbx+24], rdi
    001e9ec8cmp rax, 21
    001e9eccjne 0x1e9eda
    001e9ecemov rdi, [rbx+32]
    001e9ed2add rdi, 2
    001e9ed6mov [rbx+32], rdi
    001e9eda
    001e9edaloc_1e9eda:
    001e9edapop [r14+48]
    001e9edeadd rsp, 8
    001e9ee2jmp 0x1e9f20
    001e9ee4lea rbx, [rip+0x14372d]
    001e9eebmov rbx, [rbx+88]
    001e9eefcmp rax, rbx
    001e9ef2jne 0x1e9f18
    001e9ef4mov rbx, [rsp]
    001e9ef8mov [rbx+8], 1
    001e9f00mov [rbx+16], 1
    001e9f08mov [rbx], 3
    001e9f0fmov eax, 1
    001e9f14jmp 0x1e9f20
    001e9f16
    001e9f16 66 90 f.
    001e9f18
    001e9f18loc_1e9f18:
    001e9f18call caml_reraise_exn
    001e9f1dnop [rax]
    001e9f20
    001e9f20loc_1e9f20:
    001e9f20mov rdi, [rbx]
    001e9f23cmp rdi, 1
    001e9f27je 0x1e9f34
    001e9f29mov eax, 1
    001e9f2eadd rsp, 8
    001e9f32ret
    001e9f33
    001e9f33 90 .
    001e9f34
    001e9f34loc_1e9f34:
    001e9f34add rax, -18
    001e9f38cmp rax, 9
    001e9f3cjbe 0x1e9f48
    001e9f3ecmp rax, 47
    001e9f42je 0x1e9f5c
    001e9f44jmp 0x1e9f52
    001e9f46
    001e9f46 66 90 f.
    001e9f48
    001e9f48loc_1e9f48:
    001e9f48add rax, -4
    001e9f4ccmp rax, 3
    001e9f50ja 0x1e9f5c
    001e9f52
    001e9f52loc_1e9f52:
    001e9f52mov eax, 1
    001e9f57add rsp, 8
    001e9f5bret
    001e9f5c
    001e9f5cloc_1e9f5c:
    001e9f5cmov [rbx+16], 1
    001e9f64mov rax, rbx
    001e9f67jmp 0x1e9e66
    001e9f6c
    001e9f6cloc_1e9f6c:
    001e9f6ccall caml_call_gc
    001e9f71jmp 0x1e9e72
    001e9f76
    001e9f76loc_1e9f76:
    001e9f76push 36
    001e9f78call caml_call_realloc_stack
    001e9f7dpop r10
    001e9f7fjmp 0x1e9e62
    001e9e50
    001e9f84
    001e9f84 // align 0x10
    001e9f90
    001e9f90Stdlib.Scanf.check_char:
    001e9f90cmp r15, [r14]
    001e9f93jbe 0x1e9fb5
    001e9f95
    001e9f95loc_1e9f95:
    001e9f95cmp rbx, 21
    001e9f99je 0x1e9fb0
    001e9f9bcmp rbx, 65
    001e9f9fje 0x1e9fa8
    001e9fa1jmp 0x1e9fc0
    001e9fa6
    001e9fa6 66 90 f.
    001e9fa8
    001e9fa8loc_1e9fa8:
    001e9fa8jmp 0x1e9e50
    001e9fad
    001e9fad 0f 1f 00 ...
    001e9fb0
    001e9fb0loc_1e9fb0:
    001e9fb0jmp 0x1ea130
    001e9fb5
    001e9fb5loc_1e9fb5:
    001e9fb5call caml_call_gc
    001e9fbajmp 0x1e9f95
    001e9f90
    001e9fbc
    001e9fbc // align 0x10
    001e9fc0
    001e9fc0Stdlib.Scanf.check_this_char:
    001e9fc0lea r10, [rsp-352]
    001e9fc8cmp r10, [r14+40]
    001e9fccjb 0x1ea120
    001e9fd2
    001e9fd2loc_1e9fd2:
    001e9fd2sub rsp, 16
    001e9fd6mov rdi, rax
    001e9fd9mov [rsp], rbx
    001e9fddmov rax, [rdi+16]
    001e9fe1cmp rax, 1
    001e9fe5je 0x1e9ff0
    001e9fe7mov rax, [rdi+8]
    001e9febjmp 0x1ea08c
    001e9ff0
    001e9ff0loc_1e9ff0:
    001e9ff0mov [rsp+8], rdi
    001e9ff5lea r11, [rip+84]
    001e9ffcpush r11
    001e9ffepush [r14+48]
    001ea002mov [r14+48], rsp
    001ea006mov rbx, [rdi+48]
    001ea00amov eax, 1
    001ea00fmov rdi, [rbx]
    001ea012call rdi
    001ea014mov rdi, [rsp+24]
    001ea019mov [rdi+8], rax
    001ea01dmov [rdi+16], 3
    001ea025mov rbx, [rdi+24]
    001ea029add rbx, 2
    001ea02dmov [rdi+24], rbx
    001ea031cmp rax, 21
    001ea035jne 0x1ea043
    001ea037mov rbx, [rdi+32]
    001ea03badd rbx, 2
    001ea03fmov [rdi+32], rbx
    001ea043
    001ea043loc_1ea043:
    001ea043pop [r14+48]
    001ea047add rsp, 8
    001ea04bjmp 0x1ea08c
    001ea04d
    001ea04d 0f 1f 00 ...
    001ea050lea rbx, [rip+0x1435c1]
    001ea057mov rbx, [rbx+88]
    001ea05bcmp rax, rbx
    001ea05ejne 0x1ea084
    001ea060mov rdi, [rsp+8]
    001ea065mov [rdi+8], 1
    001ea06dmov [rdi+16], 1
    001ea075mov [rdi], 3
    001ea07cmov eax, 1
    001ea081jmp 0x1ea08c
    001ea083
    001ea083 90 .
    001ea084
    001ea084loc_1ea084:
    001ea084call caml_reraise_exn
    001ea089nop [rax]
    001ea08c
    001ea08cloc_1ea08c:
    001ea08cmov rbx, [rdi]
    001ea08fcmp rbx, 1
    001ea093je 0x1ea0a8
    001ea095lea rax, [rip+0x14357c]
    001ea09cmov rax, [rax+88]
    001ea0a0call caml_raise_exn
    001ea0a5nop [rax]
    001ea0a8
    001ea0a8loc_1ea0a8:
    001ea0a8mov rbx, [rsp]
    001ea0accmp rax, rbx
    001ea0afjne 0x1ea0c4
    001ea0b1mov [rdi+16], 1
    001ea0b9mov eax, 1
    001ea0beadd rsp, 16
    001ea0c2ret
    001ea0c3
    001ea0c3 90 .
    001ea0c4
    001ea0c4loc_1ea0c4:
    001ea0c4mov [rsp+8], rax
    001ea0c9mov [rsp], rbx
    001ea0cdlea rax, [rip+0x183c04]
    001ea0d4call Stdlib.Printf.sprintf
    001ea0d9mov rdi, rax
    001ea0dcmov rax, [rsp]
    001ea0e0mov rbx, [rsp+8]
    001ea0e5call caml_apply2
    001ea0easub r15, 24
    001ea0eecmp r15, [r14]
    001ea0f1jb 0x1ea119
    001ea0f3
    001ea0f3loc_1ea0f3:
    001ea0f3lea rbx, [r15+8]
    001ea0f7mov [rbx-8], 2048
    001ea0fflea rdi, [rip+0x18307a]
    001ea106mov rdi, [rdi+8]
    001ea10amov [rbx], rdi
    001ea10dmov [rbx+8], rax
    001ea111mov rax, rbx
    001ea114call caml_raise_exn
    001ea119
    001ea119loc_1ea119:
    001ea119call caml_call_gc
    001ea11ejmp 0x1ea0f3
    001ea120
    001ea120loc_1ea120:
    001ea120push 37
    001ea122call caml_call_realloc_stack
    001ea127pop r10
    001ea129jmp 0x1e9fd2
    001e9fc0
    001ea12e
    001ea12e // align 0x10
    001ea130
    001ea130Stdlib.Scanf.check_newline:
    001ea130lea r10, [rsp-352]
    001ea138cmp r10, [r14+40]
    001ea13cjb 0x1ea2ad
    001ea142
    001ea142loc_1ea142:
    001ea142sub rsp, 16
    001ea146mov rdi, rax
    001ea149mov rax, [rdi+16]
    001ea14dcmp rax, 1
    001ea151je 0x1ea15c
    001ea153mov rax, [rdi+8]
    001ea157jmp 0x1ea1f4
    001ea15c
    001ea15cloc_1ea15c:
    001ea15cmov [rsp], rdi
    001ea160lea r11, [rip+81]
    001ea167push r11
    001ea169push [r14+48]
    001ea16dmov [r14+48], rsp
    001ea171mov rbx, [rdi+48]
    001ea175mov eax, 1
    001ea17amov rdi, [rbx]
    001ea17dcall rdi
    001ea17fmov rdi, [rsp+16]
    001ea184mov [rdi+8], rax
    001ea188mov [rdi+16], 3
    001ea190mov rbx, [rdi+24]
    001ea194add rbx, 2
    001ea198mov [rdi+24], rbx
    001ea19ccmp rax, 21
    001ea1a0jne 0x1ea1ae
    001ea1a2mov rbx, [rdi+32]
    001ea1a6add rbx, 2
    001ea1aamov [rdi+32], rbx
    001ea1ae
    001ea1aeloc_1ea1ae:
    001ea1aepop [r14+48]
    001ea1b2add rsp, 8
    001ea1b6jmp 0x1ea1f4
    001ea1b8lea rbx, [rip+0x143459]
    001ea1bfmov rbx, [rbx+88]
    001ea1c3cmp rax, rbx
    001ea1c6jne 0x1ea1ec
    001ea1c8mov rdi, [rsp]
    001ea1ccmov [rdi+8], 1
    001ea1d4mov [rdi+16], 1
    001ea1dcmov [rdi], 3
    001ea1e3mov eax, 1
    001ea1e8jmp 0x1ea1f4
    001ea1ea
    001ea1ea 66 90 f.
    001ea1ec
    001ea1ecloc_1ea1ec:
    001ea1eccall caml_reraise_exn
    001ea1f1nop [rax]
    001ea1f4
    001ea1f4loc_1ea1f4:
    001ea1f4mov rbx, [rdi]
    001ea1f7cmp rbx, 1
    001ea1fbje 0x1ea210
    001ea1fdlea rax, [rip+0x143414]
    001ea204mov rax, [rax+88]
    001ea208call caml_raise_exn
    001ea20dnop [rax]
    001ea210
    001ea210loc_1ea210:
    001ea210cmp rax, 21
    001ea214je 0x1ea294
    001ea216cmp rax, 27
    001ea21aje 0x1ea278
    001ea21cmov [rsp+8], rax
    001ea221mov eax, 21
    001ea226mov [rsp], rax
    001ea22alea rax, [rip+0x183aa7]
    001ea231call Stdlib.Printf.sprintf
    001ea236mov rdi, rax
    001ea239mov rax, [rsp]
    001ea23dmov rbx, [rsp+8]
    001ea242call caml_apply2
    001ea247sub r15, 24
    001ea24bcmp r15, [r14]
    001ea24ejb 0x1ea2a6
    001ea250
    001ea250loc_1ea250:
    001ea250lea rbx, [r15+8]
    001ea254mov [rbx-8], 2048
    001ea25clea rdi, [rip+0x182f1d]
    001ea263mov rdi, [rdi+8]
    001ea267mov [rbx], rdi
    001ea26amov [rbx+8], rax
    001ea26emov rax, rbx
    001ea271call caml_raise_exn
    001ea276nop
    001ea278
    001ea278loc_1ea278:
    001ea278mov [rdi+16], 1
    001ea280mov ebx, 21
    001ea285mov rax, rdi
    001ea288add rsp, 16
    001ea28cjmp 0x1e9fc0
    001ea291
    001ea291 0f 1f 00 ...
    001ea294
    001ea294loc_1ea294:
    001ea294mov [rdi+16], 1
    001ea29cmov eax, 1
    001ea2a1add rsp, 16
    001ea2a5ret
    001ea2a6
    001ea2a6loc_1ea2a6:
    001ea2a6call caml_call_gc
    001ea2abjmp 0x1ea250
    001ea2ad
    001ea2adloc_1ea2ad:
    001ea2adpush 37
    001ea2afcall caml_call_realloc_stack
    001ea2b4pop r10
    001ea2b6jmp 0x1ea142
    001ea130
    001ea2bb
    001ea2bb // align 0x10
    001ea2c0
    001ea2c0Stdlib.Scanf.token_char:
    001ea2c0lea r10, [rsp-336]
    001ea2c8cmp r10, [r14+40]
    001ea2ccjb 0x1ea342
    001ea2ce
    001ea2celoc_1ea2ce:
    001ea2cesub rsp, 16
    001ea2d2mov [rsp+8], rax
    001ea2d7mov rax, [rax+56]
    001ea2dbmov [rsp], rax
    001ea2dfmov rdi, [rax+8]
    001ea2e3mov rax, [rax]
    001ea2e6mov rax, [rax]
    001ea2e9mov ebx, 1
    001ea2eecall Stdlib.Bytes.sub
    001ea2f3mov rbx, [rsp]
    001ea2f7mov [rbx+8], 1
    001ea2ffmov rdi, [rsp+8]
    001ea304mov rbx, [rdi+40]
    001ea308add rbx, 2
    001ea30cmov [rdi+40], rbx
    001ea310mov rbx, [rax-8]
    001ea314shr rbx, 10
    001ea318lea rbx, [8*rbx-1]
    001ea320movzx rdi, [rax+rbx]
    001ea325sub rbx, rdi
    001ea328cmp rbx, 0
    001ea32cjbe 0x1ea33d
    001ea32emovzx rax, [rax]
    001ea332shl rax, 1
    001ea335inc rax
    001ea338add rsp, 16
    001ea33cret
    001ea33d
    001ea33dloc_1ea33d:
    001ea33dcall caml_ml_array_bound_error
    001ea342
    001ea342loc_1ea342:
    001ea342push 35
    001ea344call caml_call_realloc_stack
    001ea349pop r10
    001ea34bjmp 0x1ea2ce
    001ea2c0
    001ea34d
    001ea34d // align 0x10
    001ea350
    001ea350Stdlib.Scanf.token_bool:
    001ea350lea r10, [rsp-336]
    001ea358cmp r10, [r14+40]
    001ea35cjb 0x1ea43e
    001ea362
    001ea362loc_1ea362:
    001ea362sub rsp, 16
    001ea366mov [rsp+8], rax
    001ea36bmov rax, [rax+56]
    001ea36fmov [rsp], rax
    001ea373mov rdi, [rax+8]
    001ea377mov rax, [rax]
    001ea37amov rax, [rax]
    001ea37dmov ebx, 1
    001ea382call Stdlib.Bytes.sub
    001ea387mov rbx, [rsp]
    001ea38bmov [rbx+8], 1
    001ea393mov rdi, [rsp+8]
    001ea398mov rbx, [rdi+40]
    001ea39cadd rbx, 2
    001ea3a0mov [rdi+40], rbx
    001ea3a4mov rbx, [rax-8]
    001ea3a8shr rbx, 10
    001ea3accmp rbx, 2
    001ea3b0jge 0x1ea3ec
    001ea3b2mov rbx, [rax]
    001ea3b5mov rdi, 0x2000065736c6166
    001ea3bfcmp rbx, rdi
    001ea3c2jne 0x1ea3d0
    001ea3c4mov eax, 1
    001ea3c9add rsp, 16
    001ea3cdret
    001ea3ce
    001ea3ce 66 90 f.
    001ea3d0
    001ea3d0loc_1ea3d0:
    001ea3d0mov rdi, 0x300000065757274
    001ea3dacmp rbx, rdi
    001ea3ddjne 0x1ea3ec
    001ea3dfmov eax, 3
    001ea3e4add rsp, 16
    001ea3e8ret
    001ea3e9
    001ea3e9 0f 1f 00 ...
    001ea3ec
    001ea3ecloc_1ea3ec:
    001ea3ecmov [rsp], rax
    001ea3f0lea rax, [rip+0x183841]
    001ea3f7call Stdlib.Printf.sprintf
    001ea3fcmov rbx, rax
    001ea3ffmov rdi, [rbx]
    001ea402mov rax, [rsp]
    001ea406call rdi
    001ea408sub r15, 24
    001ea40ccmp r15, [r14]
    001ea40fjb 0x1ea437
    001ea411
    001ea411loc_1ea411:
    001ea411lea rbx, [r15+8]
    001ea415mov [rbx-8], 2048
    001ea41dlea rdi, [rip+0x182d5c]
    001ea424mov rdi, [rdi+8]
    001ea428mov [rbx], rdi
    001ea42bmov [rbx+8], rax
    001ea42fmov rax, rbx
    001ea432call caml_raise_exn
    001ea437
    001ea437loc_1ea437:
    001ea437call caml_call_gc
    001ea43cjmp 0x1ea411
    001ea43e
    001ea43eloc_1ea43e:
    001ea43epush 35
    001ea440call caml_call_realloc_stack
    001ea445pop r10
    001ea447jmp 0x1ea362
    001ea350
    001ea44c
    001ea44c // align 0x10
    001ea450
    001ea450Stdlib.Scanf.integer_conversion_of_char:
    001ea450add rax, -176
    001ea456cmp rax, 65
    001ea45aja 0x1ea498
    001ea45csar rax, 1
    001ea45flea rdx, [rip+0x4432a]
    001ea466movsxd rax, [rdx+4*rax]
    001ea46aadd rdx, rax
    001ea46djmp rdx
    001ea46fnop
    001ea470mov eax, 1
    001ea475ret
    001ea476nop
    001ea478mov eax, 3
    001ea47dret
    001ea47enop
    001ea480mov eax, 5
    001ea485ret
    001ea486nop
    001ea488mov eax, 7
    001ea48dret
    001ea48enop
    001ea490mov eax, 9
    001ea495ret
    001ea496nop
    001ea498
    001ea498loc_1ea498:
    001ea498sub r15, 24
    001ea49ccmp r15, [r14]
    001ea49fjb 0x1ea4ce
    001ea4a1
    001ea4a1loc_1ea4a1:
    001ea4a1lea rax, [r15+8]
    001ea4a5mov [rax-8], 2048
    001ea4adlea rbx, [rip+0x8bd54]
    001ea4b4mov [rax], rbx
    001ea4b7lea rbx, [rip+0x183732]
    001ea4bemov [rax+8], rbx
    001ea4c2call caml_raise_exn
    001ea4c7nop
    001ea4c8mov eax, 11
    001ea4cdret
    001ea4ce
    001ea4celoc_1ea4ce:
    001ea4cecall caml_call_gc
    001ea4d3jmp 0x1ea4a1
    001ea450
    001ea4d5
    001ea4d5 // align 0x10
    001ea4e0
    001ea4e0Stdlib.Scanf.token_int_literal:
    001ea4e0lea r10, [rsp-336]
    001ea4e8cmp r10, [r14+40]
    001ea4ecjb 0x1ea6da
    001ea4f2
    001ea4f2loc_1ea4f2:
    001ea4f2sub rsp, 16
    001ea4f6mov [rsp+8], rbx
    001ea4fbsar rax, 1
    001ea4felea rdx, [rip+0x4430f]
    001ea505movsxd rax, [rdx+4*rax]
    001ea509add rdx, rax
    001ea50cjmp rdx
    001ea50enop
    001ea510mov rax, [rbx+56]
    001ea514mov [rsp], rax
    001ea518mov rdi, [rax+8]
    001ea51cmov rax, [rax]
    001ea51fmov rax, [rax]
    001ea522mov ebx, 1
    001ea527call Stdlib.Bytes.sub
    001ea52cmov rbx, rax
    001ea52fmov rax, [rsp]
    001ea533mov [rax+8], 1
    001ea53bmov rdi, [rsp+8]
    001ea540mov rax, [rdi+40]
    001ea544add rax, 2
    001ea548mov [rdi+40], rax
    001ea54clea rax, [rip+0x18368d]
    001ea553call camlStdlib.$5e_139
    001ea558jmp 0x1ea685
    001ea55dnop [rax]
    001ea560mov rax, [rbx+56]
    001ea564mov [rsp], rax
    001ea568mov rdi, [rax+8]
    001ea56cmov rax, [rax]
    001ea56fmov rax, [rax]
    001ea572mov ebx, 1
    001ea577call Stdlib.Bytes.sub
    001ea57cmov rbx, rax
    001ea57fmov rax, [rsp]
    001ea583mov [rax+8], 1
    001ea58bmov rdi, [rsp+8]
    001ea590mov rax, [rdi+40]
    001ea594add rax, 2
    001ea598mov [rdi+40], rax
    001ea59clea rax, [rip+0x18362d]
    001ea5a3call camlStdlib.$5e_139
    001ea5a8jmp 0x1ea685
    001ea5adnop [rax]
    001ea5b0mov rax, [rbx+56]
    001ea5b4mov [rsp], rax
    001ea5b8mov rdi, [rax+8]
    001ea5bcmov rax, [rax]
    001ea5bfmov rax, [rax]
    001ea5c2mov ebx, 1
    001ea5c7call Stdlib.Bytes.sub
    001ea5ccmov rbx, rax
    001ea5cfmov rax, [rsp]
    001ea5d3mov [rax+8], 1
    001ea5dbmov rdi, [rsp+8]
    001ea5e0mov rax, [rdi+40]
    001ea5e4add rax, 2
    001ea5e8mov [rdi+40], rax
    001ea5eclea rax, [rip+0x1835cd]
    001ea5f3call camlStdlib.$5e_139
    001ea5f8jmp 0x1ea685
    001ea5fdnop [rax]
    001ea600mov rax, [rbx+56]
    001ea604mov [rsp], rax
    001ea608mov rdi, [rax+8]
    001ea60cmov rax, [rax]
    001ea60fmov rax, [rax]
    001ea612mov ebx, 1
    001ea617call Stdlib.Bytes.sub
    001ea61cmov rbx, rax
    001ea61fmov rax, [rsp]
    001ea623mov [rax+8], 1
    001ea62bmov rdi, [rsp+8]
    001ea630mov rax, [rdi+40]
    001ea634add rax, 2
    001ea638mov [rdi+40], rax
    001ea63clea rax, [rip+0x18356d]
    001ea643call camlStdlib.$5e_139
    001ea648jmp 0x1ea685
    001ea64anop
    001ea64cmov rax, [rbx+56]
    001ea650mov [rsp], rax
    001ea654mov rdi, [rax+8]
    001ea658mov rax, [rax]
    001ea65bmov rax, [rax]
    001ea65emov ebx, 1
    001ea663call Stdlib.Bytes.sub
    001ea668mov rbx, [rsp]
    001ea66cmov [rbx+8], 1
    001ea674mov rdi, [rsp+8]
    001ea679mov rbx, [rdi+40]
    001ea67dadd rbx, 2
    001ea681mov [rdi+40], rbx
    001ea685
    001ea685loc_1ea685:
    001ea685mov rbx, [rax-8]
    001ea689shr rbx, 10
    001ea68dlea rbx, [8*rbx-1]
    001ea695movzx rdi, [rax+rbx]
    001ea69asub rbx, rdi
    001ea69dlea rdi, [rbx+rbx+1]
    001ea6a2cmp rdi, 1
    001ea6a6je 0x1ea6d0
    001ea6a8cmp rbx, 0
    001ea6acjbe 0x1ea6d5
    001ea6aemovzx rbx, [rax]
    001ea6b2lea rbx, [rbx+rbx+1]
    001ea6b7cmp rbx, 87
    001ea6bbjne 0x1ea6d0
    001ea6bdadd rdi, -2
    001ea6c1mov ebx, 3
    001ea6c6call Stdlib.Bytes.sub
    001ea6cbadd rsp, 16
    001ea6cfret
    001ea6d0
    001ea6d0loc_1ea6d0:
    001ea6d0add rsp, 16
    001ea6d4ret
    001ea6d5
    001ea6d5loc_1ea6d5:
    001ea6d5call caml_ml_array_bound_error
    001ea6da
    001ea6daloc_1ea6da:
    001ea6dapush 35
    001ea6dccall caml_call_realloc_stack
    001ea6e1pop r10
    001ea6e3jmp 0x1ea4f2
    001ea4e0
    001ea6e8
    001ea6e8 // align 0x10
    001ea6f0
    001ea6f0Stdlib.Scanf.token_int:
    001ea6f0lea r10, [rsp-320]
    001ea6f8cmp r10, [r14+40]
    001ea6fcjb 0x1ea713
    001ea6fe
    001ea6feloc_1ea6fe:
    001ea6fecall Stdlib.Scanf.token_int_literal
    001ea703mov rdi, rax
    001ea706lea rax, [rip+0x22cd3]
    001ea70dcall caml_c_call
    001ea712ret
    001ea713
    001ea713loc_1ea713:
    001ea713push 33
    001ea715call caml_call_realloc_stack
    001ea71apop r10
    001ea71cjmp 0x1ea6fe
    001ea6f0
    001ea71e
    001ea71e // align 0x10
    001ea720
    001ea720Stdlib.Scanf.token_float:
    001ea720lea r10, [rsp-336]
    001ea728cmp r10, [r14+40]
    001ea72cjb 0x1ea784
    001ea72e
    001ea72eloc_1ea72e:
    001ea72esub rsp, 16
    001ea732mov [rsp+8], rax
    001ea737mov rax, [rax+56]
    001ea73bmov [rsp], rax
    001ea73fmov rdi, [rax+8]
    001ea743mov rax, [rax]
    001ea746mov rax, [rax]
    001ea749mov ebx, 1
    001ea74ecall Stdlib.Bytes.sub
    001ea753mov rbx, [rsp]
    001ea757mov [rbx+8], 1
    001ea75fmov rdi, [rsp+8]
    001ea764mov rbx, [rdi+40]
    001ea768add rbx, 2
    001ea76cmov [rdi+40], rbx
    001ea770mov rdi, rax
    001ea773lea rax, [rip+0x1d2e6]
    001ea77acall caml_c_call
    001ea77fadd rsp, 16
    001ea783ret
    001ea784
    001ea784loc_1ea784:
    001ea784push 35
    001ea786call caml_call_realloc_stack
    001ea78bpop r10
    001ea78djmp 0x1ea72e
    001ea720
    001ea78f
    001ea78f // align 0x10
    001ea790
    001ea790Stdlib.Scanf.token_nativeint:
    001ea790lea r10, [rsp-320]
    001ea798cmp r10, [r14+40]
    001ea79cjb 0x1ea7b3
    001ea79e
    001ea79eloc_1ea79e:
    001ea79ecall Stdlib.Scanf.token_int_literal
    001ea7a3mov rdi, rax
    001ea7a6lea rax, [rip+0x23e53]
    001ea7adcall caml_c_call
    001ea7b2ret
    001ea7b3
    001ea7b3loc_1ea7b3:
    001ea7b3push 33
    001ea7b5call caml_call_realloc_stack
    001ea7bapop r10
    001ea7bcjmp 0x1ea79e
    001ea790
    001ea7be
    001ea7be // align 0x10
    001ea7c0
    001ea7c0Stdlib.Scanf.token_int32:
    001ea7c0lea r10, [rsp-320]
    001ea7c8cmp r10, [r14+40]
    001ea7ccjb 0x1ea7e3
    001ea7ce
    001ea7celoc_1ea7ce:
    001ea7cecall Stdlib.Scanf.token_int_literal
    001ea7d3mov rdi, rax
    001ea7d6lea rax, [rip+0x23123]
    001ea7ddcall caml_c_call
    001ea7e2ret
    001ea7e3
    001ea7e3loc_1ea7e3:
    001ea7e3push 33
    001ea7e5call caml_call_realloc_stack
    001ea7eapop r10
    001ea7ecjmp 0x1ea7ce
    001ea7c0
    001ea7ee
    001ea7ee // align 0x10
    001ea7f0
    001ea7f0Stdlib.Scanf.token_int64:
    001ea7f0lea r10, [rsp-320]
    001ea7f8cmp r10, [r14+40]
    001ea7fcjb 0x1ea813
    001ea7fe
    001ea7feloc_1ea7fe:
    001ea7fecall Stdlib.Scanf.token_int_literal
    001ea803mov rdi, rax
    001ea806lea rax, [rip+0x23723]
    001ea80dcall caml_c_call
    001ea812ret
    001ea813
    001ea813loc_1ea813:
    001ea813push 33
    001ea815call caml_call_realloc_stack
    001ea81apop r10
    001ea81cjmp 0x1ea7fe
    001ea7f0
    001ea81e
    001ea81e // align 0x10
    001ea820
    001ea820Stdlib.Scanf.scan_decimal_digit_star:
    001ea820lea r10, [rsp-352]
    001ea828cmp r10, [r14+40]
    001ea82cjb 0x1ea987
    001ea832
    001ea832loc_1ea832:
    001ea832sub rsp, 16
    001ea836
    001ea836loc_1ea836:
    001ea836mov rdi, rbx
    001ea839cmp r15, [r14]
    001ea83cjbe 0x1ea97d
    001ea842
    001ea842loc_1ea842:
    001ea842cmp rax, 1
    001ea846jne 0x1ea850
    001ea848add rsp, 16
    001ea84cret
    001ea84d
    001ea84d 0f 1f 00 ...
    001ea850
    001ea850loc_1ea850:
    001ea850mov [rsp], rax
    001ea854mov rax, [rdi+16]
    001ea858cmp rax, 1
    001ea85cje 0x1ea868
    001ea85emov rbx, [rdi+8]
    001ea862jmp 0x1ea907
    001ea867
    001ea867 90 .
    001ea868
    001ea868loc_1ea868:
    001ea868mov [rsp+8], rdi
    001ea86dlea r11, [rip+84]
    001ea874push r11
    001ea876push [r14+48]
    001ea87amov [r14+48], rsp
    001ea87emov rbx, [rdi+48]
    001ea882mov eax, 1
    001ea887mov rdi, [rbx]
    001ea88acall rdi
    001ea88cmov rdi, [rsp+24]
    001ea891mov [rdi+8], rax
    001ea895mov [rdi+16], 3
    001ea89dmov rbx, [rdi+24]
    001ea8a1add rbx, 2
    001ea8a5mov [rdi+24], rbx
    001ea8a9cmp rax, 21
    001ea8adjne 0x1ea8bb
    001ea8afmov rbx, [rdi+32]
    001ea8b3add rbx, 2
    001ea8b7mov [rdi+32], rbx
    001ea8bb
    001ea8bbloc_1ea8bb:
    001ea8bbpop [r14+48]
    001ea8bfadd rsp, 8
    001ea8c3jmp 0x1ea904
    001ea8c5
    001ea8c5 0f 1f 00 ...
    001ea8c8lea rbx, [rip+0x142d49]
    001ea8cfmov rbx, [rbx+88]
    001ea8d3cmp rax, rbx
    001ea8d6jne 0x1ea8fc
    001ea8d8mov rdi, [rsp+8]
    001ea8ddmov [rdi+8], 1
    001ea8e5mov [rdi+16], 1
    001ea8edmov [rdi], 3
    001ea8f4mov eax, 1
    001ea8f9jmp 0x1ea904
    001ea8fb
    001ea8fb 90 .
    001ea8fc
    001ea8fcloc_1ea8fc:
    001ea8fccall caml_reraise_exn
    001ea901nop [rax]
    001ea904
    001ea904loc_1ea904:
    001ea904mov rbx, rax
    001ea907
    001ea907loc_1ea907:
    001ea907mov rax, [rdi]
    001ea90acmp rax, 1
    001ea90eje 0x1ea91c
    001ea910mov rax, [rsp]
    001ea914add rsp, 16
    001ea918ret
    001ea919
    001ea919 0f 1f 00 ...
    001ea91c
    001ea91cloc_1ea91c:
    001ea91ccmp rbx, 117
    001ea920jl 0x1ea944
    001ea922cmp rbx, 191
    001ea929jne 0x1ea974
    001ea92bmov rax, [rsp]
    001ea92fadd rax, -2
    001ea933mov [rdi+16], 1
    001ea93bmov rbx, rdi
    001ea93ejmp 0x1ea836
    001ea943
    001ea943 90 .
    001ea944
    001ea944loc_1ea944:
    001ea944cmp rbx, 97
    001ea948jl 0x1ea974
    001ea94amov [rsp+8], rdi
    001ea94fmov rax, [rdi+56]
    001ea953call Stdlib.Buffer.add_char
    001ea958mov rax, [rsp]
    001ea95cadd rax, -2
    001ea960mov rbx, [rsp+8]
    001ea965mov [rbx+16], 1
    001ea96djmp 0x1ea836
    001ea972
    001ea972 66 90 f.
    001ea974
    001ea974loc_1ea974:
    001ea974mov rax, [rsp]
    001ea978add rsp, 16
    001ea97cret
    001ea97d
    001ea97dloc_1ea97d:
    001ea97dcall caml_call_gc
    001ea982jmp 0x1ea842
    001ea987
    001ea987loc_1ea987:
    001ea987push 37
    001ea989call caml_call_realloc_stack
    001ea98epop r10
    001ea990jmp 0x1ea832
    001ea820
    001ea995
    001ea995 // align 0x10
    001ea9a0
    001ea9a0Stdlib.Scanf.scan_decimal_digit_plus:
    001ea9a0lea r10, [rsp-352]
    001ea9a8cmp r10, [r14+40]
    001ea9acjb 0x1eab7d
    001ea9b2
    001ea9b2loc_1ea9b2:
    001ea9b2sub rsp, 16
    001ea9b6mov rdi, rbx
    001ea9b9cmp rax, 1
    001ea9bdjne 0x1eaa18
    001ea9bflea rax, [rip+0x1831d2]
    001ea9c6mov [rsp], rax
    001ea9calea rax, [rip+0x183577]
    001ea9d1call Stdlib.Printf.sprintf
    001ea9d6mov rbx, rax
    001ea9d9mov rdi, [rbx]
    001ea9dcmov rax, [rsp]
    001ea9e0call rdi
    001ea9e2sub r15, 24
    001ea9e6cmp r15, [r14]
    001ea9e9jb 0x1eab73
    001ea9ef
    001ea9efloc_1ea9ef:
    001ea9eflea rbx, [r15+8]
    001ea9f3mov [rbx-8], 2048
    001ea9fblea rdi, [rip+0x18277e]
    001eaa02mov rdi, [rdi+8]
    001eaa06mov [rbx], rdi
    001eaa09mov [rbx+8], rax
    001eaa0dmov rax, rbx
    001eaa10call caml_raise_exn
    001eaa15nop [rax]
    001eaa18
    001eaa18loc_1eaa18:
    001eaa18mov [rsp], rax
    001eaa1cmov rax, [rdi+16]
    001eaa20cmp rax, 1
    001eaa24je 0x1eaa30
    001eaa26mov rbx, [rdi+8]
    001eaa2ajmp 0x1eaacf
    001eaa2f
    001eaa2f 90 .
    001eaa30
    001eaa30loc_1eaa30:
    001eaa30mov [rsp+8], rdi
    001eaa35lea r11, [rip+84]
    001eaa3cpush r11
    001eaa3epush [r14+48]
    001eaa42mov [r14+48], rsp
    001eaa46mov rbx, [rdi+48]
    001eaa4amov eax, 1
    001eaa4fmov rdi, [rbx]
    001eaa52call rdi
    001eaa54mov rdi, [rsp+24]
    001eaa59mov [rdi+8], rax
    001eaa5dmov [rdi+16], 3
    001eaa65mov rbx, [rdi+24]
    001eaa69add rbx, 2
    001eaa6dmov [rdi+24], rbx
    001eaa71cmp rax, 21
    001eaa75jne 0x1eaa83
    001eaa77mov rbx, [rdi+32]
    001eaa7badd rbx, 2
    001eaa7fmov [rdi+32], rbx
    001eaa83
    001eaa83loc_1eaa83:
    001eaa83pop [r14+48]
    001eaa87add rsp, 8
    001eaa8bjmp 0x1eaacc
    001eaa8d
    001eaa8d 0f 1f 00 ...
    001eaa90lea rbx, [rip+0x142b81]
    001eaa97mov rbx, [rbx+88]
    001eaa9bcmp rax, rbx
    001eaa9ejne 0x1eaac4
    001eaaa0mov rdi, [rsp+8]
    001eaaa5mov [rdi+8], 1
    001eaaadmov [rdi+16], 1
    001eaab5mov [rdi], 3
    001eaabcmov eax, 1
    001eaac1jmp 0x1eaacc
    001eaac3
    001eaac3 90 .
    001eaac4
    001eaac4loc_1eaac4:
    001eaac4call caml_reraise_exn
    001eaac9nop [rax]
    001eaacc
    001eaaccloc_1eaacc:
    001eaaccmov rbx, rax
    001eaacf
    001eaacfloc_1eaacf:
    001eaacfmov rax, [rdi]
    001eaad2cmp rax, 1
    001eaad6je 0x1eaae8
    001eaad8lea rax, [rip+0x142b39]
    001eaadfmov rax, [rax+88]
    001eaae3call caml_raise_exn
    001eaae8
    001eaae8loc_1eaae8:
    001eaae8mov rax, rbx
    001eaaebadd rax, -96
    001eaaefcmp rax, 19
    001eaaf3jbe 0x1eab40
    001eaaf5mov [rsp], rbx
    001eaaf9lea rax, [rip+0x182fb0]
    001eab00call Stdlib.Printf.sprintf
    001eab05mov rbx, rax
    001eab08mov rdi, [rbx]
    001eab0bmov rax, [rsp]
    001eab0fcall rdi
    001eab11sub r15, 24
    001eab15cmp r15, [r14]
    001eab18jb 0x1eab6c
    001eab1a
    001eab1aloc_1eab1a:
    001eab1alea rbx, [r15+8]
    001eab1emov [rbx-8], 2048
    001eab26lea rdi, [rip+0x182653]
    001eab2dmov rdi, [rdi+8]
    001eab31mov [rbx], rdi
    001eab34mov [rbx+8], rax
    001eab38mov rax, rbx
    001eab3bcall caml_raise_exn
    001eab40
    001eab40loc_1eab40:
    001eab40mov [rsp+8], rdi
    001eab45mov rax, [rdi+56]
    001eab49call Stdlib.Buffer.add_char
    001eab4emov rax, [rsp]
    001eab52add rax, -2
    001eab56mov rbx, [rsp+8]
    001eab5bmov [rbx+16], 1
    001eab63add rsp, 16
    001eab67jmp 0x1ea820
    001eab6c
    001eab6cloc_1eab6c:
    001eab6ccall caml_call_gc
    001eab71jmp 0x1eab1a
    001eab73
    001eab73loc_1eab73:
    001eab73call caml_call_gc
    001eab78jmp 0x1ea9ef
    001eab7d
    001eab7dloc_1eab7d:
    001eab7dpush 37
    001eab7fcall caml_call_realloc_stack
    001eab84pop r10
    001eab86jmp 0x1ea9b2
    001ea9a0
    001eab8b
    001eab8b // align 0x10
    001eab90
    001eab90Stdlib.Scanf.scan_digit_star:
    001eab90sub r15, 48
    001eab94cmp r15, [r14]
    001eab97jb 0x1eabe2
    001eab99
    001eab99loc_1eab99:
    001eab99lea rdx, [r15+8]
    001eab9dmov [rdx-8], 5367
    001eaba5lea rcx, [rip-0xf3b8c]
    001eabacmov [rdx], rcx
    001eabafmov rcx, 0x200000000000007
    001eabb9mov [rdx+8], rcx
    001eabbdlea rcx, [rip+44]
    001eabc4mov [rdx+16], rcx
    001eabc8mov rsi, [rsi+24]
    001eabccmov [rdx+24], rsi
    001eabd0mov [rdx+32], rax
    001eabd4mov rax, rbx
    001eabd7mov rbx, rdi
    001eabdamov rdi, rdx
    001eabddjmp 0x1eabf0
    001eabe2
    001eabe2loc_1eabe2:
    001eabe2call caml_call_gc
    001eabe7jmp 0x1eab99
    001eab90
    001eabe9
    001eabe9 // align 0x10
    001eabf0
    001eabf0Stdlib.Scanf.scan_digits:
    001eabf0lea r10, [rsp-368]
    001eabf8cmp r10, [r14+40]
    001eabfcjb 0x1ead7e
    001eac02
    001eac02loc_1eac02:
    001eac02sub rsp, 32
    001eac06
    001eac06loc_1eac06:
    001eac06cmp r15, [r14]
    001eac09jbe 0x1ead74
    001eac0f
    001eac0floc_1eac0f:
    001eac0fcmp rax, 1
    001eac13jne 0x1eac1c
    001eac15add rsp, 32
    001eac19ret
    001eac1a
    001eac1a 66 90 f.
    001eac1c
    001eac1cloc_1eac1c:
    001eac1cmov [rsp+8], rdi
    001eac21mov [rsp+16], rax
    001eac26mov rax, [rbx+16]
    001eac2acmp rax, 1
    001eac2eje 0x1eac3c
    001eac30mov rax, [rbx+8]
    001eac34jmp 0x1eacd8
    001eac39
    001eac39 0f 1f 00 ...
    001eac3c
    001eac3cloc_1eac3c:
    001eac3cmov [rsp+24], rbx
    001eac41lea r11, [rip+84]
    001eac48push r11
    001eac4apush [r14+48]
    001eac4emov [r14+48], rsp
    001eac52mov rbx, [rbx+48]
    001eac56mov eax, 1
    001eac5bmov rdi, [rbx]
    001eac5ecall rdi
    001eac60mov rbx, [rsp+40]
    001eac65mov [rbx+8], rax
    001eac69mov [rbx+16], 3
    001eac71mov rdi, [rbx+24]
    001eac75add rdi, 2
    001eac79mov [rbx+24], rdi
    001eac7dcmp rax, 21
    001eac81jne 0x1eac8f
    001eac83mov rdi, [rbx+32]
    001eac87add rdi, 2
    001eac8bmov [rbx+32], rdi
    001eac8f
    001eac8floc_1eac8f:
    001eac8fpop [r14+48]
    001eac93add rsp, 8
    001eac97jmp 0x1eacd8
    001eac99
    001eac99 0f 1f 00 ...
    001eac9clea rbx, [rip+0x142975]
    001eaca3mov rbx, [rbx+88]
    001eaca7cmp rax, rbx
    001eacaajne 0x1eacd0
    001eacacmov rbx, [rsp+24]
    001eacb1mov [rbx+8], 1
    001eacb9mov [rbx+16], 1
    001eacc1mov [rbx], 3
    001eacc8mov eax, 1
    001eaccdjmp 0x1eacd8
    001eaccf
    001eaccf 90 .
    001eacd0
    001eacd0loc_1eacd0:
    001eacd0call caml_reraise_exn
    001eacd5nop [rax]
    001eacd8
    001eacd8loc_1eacd8:
    001eacd8mov rdi, [rbx]
    001eacdbcmp rdi, 1
    001eacdfje 0x1eacec
    001eace1mov rax, [rsp+16]
    001eace6add rsp, 32
    001eacearet
    001eaceb
    001eaceb 90 .
    001eacec
    001eacecloc_1eacec:
    001eacecmov [rsp], rax
    001eacf0mov [rsp+24], rbx
    001eacf5mov rbx, [rsp+8]
    001eacfamov rbx, [rbx+32]
    001eacfemov rdi, [rbx]
    001ead01call rdi
    001ead03cmp rax, 1
    001ead07je 0x1ead3c
    001ead09mov rax, [rsp+24]
    001ead0emov rax, [rax+56]
    001ead12mov rbx, [rsp]
    001ead16call Stdlib.Buffer.add_char
    001ead1bmov rax, [rsp+16]
    001ead20add rax, -2
    001ead24mov rbx, [rsp+24]
    001ead29mov [rbx+16], 1
    001ead31mov rdi, [rsp+8]
    001ead36jmp 0x1eac06
    001ead3b
    001ead3b 90 .
    001ead3c
    001ead3cloc_1ead3c:
    001ead3cmov rax, [rsp]
    001ead40cmp rax, 191
    001ead46je 0x1ead54
    001ead48mov rax, [rsp+16]
    001ead4dadd rsp, 32
    001ead51ret
    001ead52
    001ead52 66 90 f.
    001ead54
    001ead54loc_1ead54:
    001ead54mov rax, [rsp+16]
    001ead59add rax, -2
    001ead5dmov rbx, [rsp+24]
    001ead62mov [rbx+16], 1
    001ead6amov rdi, [rsp+8]
    001ead6fjmp 0x1eac06
    001ead74
    001ead74loc_1ead74:
    001ead74call caml_call_gc
    001ead79jmp 0x1eac0f
    001ead7e
    001ead7eloc_1ead7e:
    001ead7epush 39
    001ead80call caml_call_realloc_stack
    001ead85pop r10
    001ead87jmp 0x1eac02
    001eabf0
    001ead8c
    001ead8c // align 0x10
    001ead90
    001ead90Stdlib.Scanf.scan_digit_plus:
    001ead90lea r10, [rsp-376]
    001ead98cmp r10, [r14+40]
    001ead9cjb 0x1eafaf
    001eada2
    001eada2loc_1eada2:
    001eada2sub rsp, 40
    001eada6cmp rdi, 1
    001eadaajne 0x1eae04
    001eadaclea rax, [rip+0x182ced]
    001eadb3mov [rsp], rax
    001eadb7lea rax, [rip+0x18318a]
    001eadbecall Stdlib.Printf.sprintf
    001eadc3mov rbx, rax
    001eadc6mov rdi, [rbx]
    001eadc9mov rax, [rsp]
    001eadcdcall rdi
    001eadcfsub r15, 24
    001eadd3cmp r15, [r14]
    001eadd6jb 0x1eafa5
    001eaddc
    001eaddcloc_1eaddc:
    001eaddclea rbx, [r15+8]
    001eade0mov [rbx-8], 2048
    001eade8lea rdi, [rip+0x182391]
    001eadefmov rdi, [rdi+8]
    001eadf3mov [rbx], rdi
    001eadf6mov [rbx+8], rax
    001eadfamov rax, rbx
    001eadfdcall caml_raise_exn
    001eae02nop
    001eae04
    001eae04loc_1eae04:
    001eae04mov [rsp+8], rdi
    001eae09mov [rsp+24], rbx
    001eae0emov [rsp], rax
    001eae12mov rax, [rsi+16]
    001eae16cmp rax, 1
    001eae1aje 0x1eae28
    001eae1cmov rax, [rsi+8]
    001eae20jmp 0x1eaec4
    001eae25
    001eae25 0f 1f 00 ...
    001eae28
    001eae28loc_1eae28:
    001eae28mov [rsp+32], rsi
    001eae2dlea r11, [rip+84]
    001eae34push r11
    001eae36push [r14+48]
    001eae3amov [r14+48], rsp
    001eae3emov rbx, [rsi+48]
    001eae42mov eax, 1
    001eae47mov rdi, [rbx]
    001eae4acall rdi
    001eae4cmov rsi, [rsp+48]
    001eae51mov [rsi+8], rax
    001eae55mov [rsi+16], 3
    001eae5dmov rbx, [rsi+24]
    001eae61add rbx, 2
    001eae65mov [rsi+24], rbx
    001eae69cmp rax, 21
    001eae6djne 0x1eae7b
    001eae6fmov rbx, [rsi+32]
    001eae73add rbx, 2
    001eae77mov [rsi+32], rbx
    001eae7b
    001eae7bloc_1eae7b:
    001eae7bpop [r14+48]
    001eae7fadd rsp, 8
    001eae83jmp 0x1eaec4
    001eae85
    001eae85 0f 1f 00 ...
    001eae88lea rbx, [rip+0x142789]
    001eae8fmov rbx, [rbx+88]
    001eae93cmp rax, rbx
    001eae96jne 0x1eaebc
    001eae98mov rsi, [rsp+32]
    001eae9dmov [rsi+8], 1
    001eaea5mov [rsi+16], 1
    001eaeadmov [rsi], 3
    001eaeb4mov eax, 1
    001eaeb9jmp 0x1eaec4
    001eaebb
    001eaebb 90 .
    001eaebc
    001eaebcloc_1eaebc:
    001eaebccall caml_reraise_exn
    001eaec1nop [rax]
    001eaec4
    001eaec4loc_1eaec4:
    001eaec4mov rbx, [rsi]
    001eaec7cmp rbx, 1
    001eaecbje 0x1eaee0
    001eaecdlea rax, [rip+0x142744]
    001eaed4mov rax, [rax+88]
    001eaed8call caml_raise_exn
    001eaeddnop [rax]
    001eaee0
    001eaee0loc_1eaee0:
    001eaee0mov [rsp+32], rsi
    001eaee5mov [rsp+16], rax
    001eaeeamov rbx, [rsp+24]
    001eaeefmov rdi, [rbx]
    001eaef2call rdi
    001eaef4cmp rax, 1
    001eaef8je 0x1eaf40
    001eaefamov rax, [rsp+32]
    001eaeffmov rax, [rax+56]
    001eaf03mov rbx, [rsp+16]
    001eaf08call Stdlib.Buffer.add_char
    001eaf0dmov rbx, [rsp+8]
    001eaf12add rbx, -2
    001eaf16mov rdi, [rsp+32]
    001eaf1bmov [rdi+16], 1
    001eaf23lea rax, [rip+0x182256]
    001eaf2amov rsi, [rax+304]
    001eaf31mov rax, [rsp+24]
    001eaf36add rsp, 40
    001eaf3ajmp 0x1eab90
    001eaf3f
    001eaf3f 90 .
    001eaf40
    001eaf40loc_1eaf40:
    001eaf40mov rax, [rsp]
    001eaf44mov [rsp+8], rax
    001eaf49mov rax, [rsp+16]
    001eaf4emov [rsp], rax
    001eaf52lea rax, [rip+0x182a37]
    001eaf59call Stdlib.Printf.sprintf
    001eaf5emov rdi, rax
    001eaf61mov rax, [rsp]
    001eaf65mov rbx, [rsp+8]
    001eaf6acall caml_apply2
    001eaf6fsub r15, 24
    001eaf73cmp r15, [r14]
    001eaf76jb 0x1eaf9e
    001eaf78
    001eaf78loc_1eaf78:
    001eaf78lea rbx, [r15+8]
    001eaf7cmov [rbx-8], 2048
    001eaf84lea rdi, [rip+0x1821f5]
    001eaf8bmov rdi, [rdi+8]
    001eaf8fmov [rbx], rdi
    001eaf92mov [rbx+8], rax
    001eaf96mov rax, rbx
    001eaf99call caml_raise_exn
    001eaf9e
    001eaf9eloc_1eaf9e:
    001eaf9ecall caml_call_gc
    001eafa3jmp 0x1eaf78
    001eafa5
    001eafa5loc_1eafa5:
    001eafa5call caml_call_gc
    001eafaajmp 0x1eaddc
    001eafaf
    001eafafloc_1eafaf:
    001eafafpush 40
    001eafb1call caml_call_realloc_stack
    001eafb6pop r10
    001eafb8jmp 0x1eada2
    001ead90
    001eafbd
    001eafbd // align 0x10
    001eafc0
    001eafc0Stdlib.Scanf.is_binary_digit:
    001eafc0add rax, -96
    001eafc4cmp rax, 3
    001eafc8setbe al
    001eafcbmovzx rax, al
    001eafcflea rax, [rax+rax+1]
    001eafd4ret
    001eafc0
    001eafd5
    001eafd5 // align 0x10
    001eafe0
    001eafe0Stdlib.Scanf.fun:
    001eafe0mov rdx, rax
    001eafe3mov rsi, rbx
    001eafe6mov rbx, [rdi+32]
    001eafeamov rax, [rdi+24]
    001eafeemov rdi, rdx
    001eaff1jmp 0x1ead90
    001eafe0
    001eaff6
    001eaff6 // align 0x10
    001eb000
    001eb000Stdlib.Scanf.is_octal_digit:
    001eb000add rax, -96
    001eb004cmp rax, 15
    001eb008setbe al
    001eb00bmovzx rax, al
    001eb00flea rax, [rax+rax+1]
    001eb014ret
    001eb000
    001eb015
    001eb015 // align 0x10
    001eb020
    001eb020Stdlib.Scanf.fun:
    001eb020mov rdx, rax
    001eb023mov rsi, rbx
    001eb026mov rbx, [rdi+32]
    001eb02amov rax, [rdi+24]
    001eb02emov rdi, rdx
    001eb031jmp 0x1ead90
    001eb020
    001eb036
    001eb036 // align 0x10
    001eb040
    001eb040Stdlib.Scanf.is_hexa_digit:
    001eb040add rax, -96
    001eb044cmp rax, 45
    001eb048jbe 0x1eb058
    001eb04aadd rax, -98
    001eb04ecmp rax, 11
    001eb052jbe 0x1eb068
    001eb054jmp 0x1eb062
    001eb056
    001eb056 66 90 f.
    001eb058
    001eb058loc_1eb058:
    001eb058add rax, -20
    001eb05ccmp rax, 13
    001eb060ja 0x1eb068
    001eb062
    001eb062loc_1eb062:
    001eb062mov eax, 1
    001eb067ret
    001eb068
    001eb068loc_1eb068:
    001eb068mov eax, 3
    001eb06dret
    001eb040
    001eb06e
    001eb06e // align 0x10
    001eb070
    001eb070Stdlib.Scanf.fun:
    001eb070mov rdx, rax
    001eb073mov rsi, rbx
    001eb076mov rbx, [rdi+32]
    001eb07amov rax, [rdi+24]
    001eb07emov rdi, rdx
    001eb081jmp 0x1ead90
    001eb070
    001eb086
    001eb086 // align 0x10
    001eb090
    001eb090Stdlib.Scanf.scan_sign:
    001eb090lea r10, [rsp-352]
    001eb098cmp r10, [r14+40]
    001eb09cjb 0x1eb1c0
    001eb0a2
    001eb0a2loc_1eb0a2:
    001eb0a2sub rsp, 16
    001eb0a6mov [rsp], rax
    001eb0aamov rdi, rbx
    001eb0admov rax, [rdi+16]
    001eb0b1cmp rax, 1
    001eb0b5je 0x1eb0c0
    001eb0b7mov rbx, [rdi+8]
    001eb0bbjmp 0x1eb15f
    001eb0c0
    001eb0c0loc_1eb0c0:
    001eb0c0mov [rsp+8], rdi
    001eb0c5lea r11, [rip+84]
    001eb0ccpush r11
    001eb0cepush [r14+48]
    001eb0d2mov [r14+48], rsp
    001eb0d6mov rbx, [rdi+48]
    001eb0damov eax, 1
    001eb0dfmov rdi, [rbx]
    001eb0e2call rdi
    001eb0e4mov rdi, [rsp+24]
    001eb0e9mov [rdi+8], rax
    001eb0edmov [rdi+16], 3
    001eb0f5mov rbx, [rdi+24]
    001eb0f9add rbx, 2
    001eb0fdmov [rdi+24], rbx
    001eb101cmp rax, 21
    001eb105jne 0x1eb113
    001eb107mov rbx, [rdi+32]
    001eb10badd rbx, 2
    001eb10fmov [rdi+32], rbx
    001eb113
    001eb113loc_1eb113:
    001eb113pop [r14+48]
    001eb117add rsp, 8
    001eb11bjmp 0x1eb15c
    001eb11d
    001eb11d 0f 1f 00 ...
    001eb120lea rbx, [rip+0x1424f1]
    001eb127mov rbx, [rbx+88]
    001eb12bcmp rax, rbx
    001eb12ejne 0x1eb154
    001eb130mov rdi, [rsp+8]
    001eb135mov [rdi+8], 1
    001eb13dmov [rdi+16], 1
    001eb145mov [rdi], 3
    001eb14cmov eax, 1
    001eb151jmp 0x1eb15c
    001eb153
    001eb153 90 .
    001eb154
    001eb154loc_1eb154:
    001eb154call caml_reraise_exn
    001eb159nop [rax]
    001eb15c
    001eb15cloc_1eb15c:
    001eb15cmov rbx, rax
    001eb15f
    001eb15floc_1eb15f:
    001eb15fmov rax, [rdi]
    001eb162cmp rax, 1
    001eb166je 0x1eb178
    001eb168lea rax, [rip+0x1424a9]
    001eb16fmov rax, [rax+88]
    001eb173call caml_raise_exn
    001eb178
    001eb178loc_1eb178:
    001eb178cmp rbx, 87
    001eb17cje 0x1eb198
    001eb17ecmp rbx, 91
    001eb182je 0x1eb190
    001eb184mov rax, [rsp]
    001eb188add rsp, 16
    001eb18cret
    001eb18d
    001eb18d 0f 1f 00 ...
    001eb190
    001eb190loc_1eb190:
    001eb190mov [rsp+8], rdi
    001eb195jmp 0x1eb19d
    001eb197
    001eb197 90 .
    001eb198
    001eb198loc_1eb198:
    001eb198mov [rsp+8], rdi
    001eb19d
    001eb19dloc_1eb19d:
    001eb19dmov rax, [rdi+56]
    001eb1a1call Stdlib.Buffer.add_char
    001eb1a6mov rax, [rsp]
    001eb1aaadd rax, -2
    001eb1aemov rbx, [rsp+8]
    001eb1b3mov [rbx+16], 1
    001eb1bbadd rsp, 16
    001eb1bfret
    001eb1c0
    001eb1c0loc_1eb1c0:
    001eb1c0push 37
    001eb1c2call caml_call_realloc_stack
    001eb1c7pop r10
    001eb1c9jmp 0x1eb0a2
    001eb090
    001eb1ce
    001eb1ce // align 0x10
    001eb1d0
    001eb1d0Stdlib.Scanf.scan_optionally_signed_decimal_int:
    001eb1d0lea r10, [rsp-328]
    001eb1d8cmp r10, [r14+40]
    001eb1dcjb 0x1eb1f8
    001eb1de
    001eb1deloc_1eb1de:
    001eb1desub rsp, 8
    001eb1e2mov [rsp], rbx
    001eb1e6call Stdlib.Scanf.scan_sign
    001eb1ebmov rbx, [rsp]
    001eb1efadd rsp, 8
    001eb1f3jmp 0x1ea9a0
    001eb1f8
    001eb1f8loc_1eb1f8:
    001eb1f8push 34
    001eb1facall caml_call_realloc_stack
    001eb1ffpop r10
    001eb201jmp 0x1eb1de
    001eb1d0
    001eb203
    001eb203 // align 0x10
    001eb210
    001eb210Stdlib.Scanf.scan_unsigned_int:
    001eb210lea r10, [rsp-352]
    001eb218cmp r10, [r14+40]
    001eb21cjb 0x1eb525
    001eb222
    001eb222loc_1eb222:
    001eb222sub rsp, 16
    001eb226mov [rsp], rax
    001eb22amov rdi, rbx
    001eb22dmov rax, [rdi+16]
    001eb231cmp rax, 1
    001eb235je 0x1eb240
    001eb237mov rbx, [rdi+8]
    001eb23bjmp 0x1eb2df
    001eb240
    001eb240loc_1eb240:
    001eb240mov [rsp+8], rdi
    001eb245lea r11, [rip+84]
    001eb24cpush r11
    001eb24epush [r14+48]
    001eb252mov [r14+48], rsp
    001eb256mov rbx, [rdi+48]
    001eb25amov eax, 1
    001eb25fmov rdi, [rbx]
    001eb262call rdi
    001eb264mov rdi, [rsp+24]
    001eb269mov [rdi+8], rax
    001eb26dmov [rdi+16], 3
    001eb275mov rbx, [rdi+24]
    001eb279add rbx, 2
    001eb27dmov [rdi+24], rbx
    001eb281cmp rax, 21
    001eb285jne 0x1eb293
    001eb287mov rbx, [rdi+32]
    001eb28badd rbx, 2
    001eb28fmov [rdi+32], rbx
    001eb293
    001eb293loc_1eb293:
    001eb293pop [r14+48]
    001eb297add rsp, 8
    001eb29bjmp 0x1eb2dc
    001eb29d
    001eb29d 0f 1f 00 ...
    001eb2a0lea rbx, [rip+0x142371]
    001eb2a7mov rbx, [rbx+88]
    001eb2abcmp rax, rbx
    001eb2aejne 0x1eb2d4
    001eb2b0mov rdi, [rsp+8]
    001eb2b5mov [rdi+8], 1
    001eb2bdmov [rdi+16], 1
    001eb2c5mov [rdi], 3
    001eb2ccmov eax, 1
    001eb2d1jmp 0x1eb2dc
    001eb2d3
    001eb2d3 90 .
    001eb2d4
    001eb2d4loc_1eb2d4:
    001eb2d4call caml_reraise_exn
    001eb2d9nop [rax]
    001eb2dc
    001eb2dcloc_1eb2dc:
    001eb2dcmov rbx, rax
    001eb2df
    001eb2dfloc_1eb2df:
    001eb2dfmov rax, [rdi]
    001eb2e2cmp rax, 1
    001eb2e6je 0x1eb2f8
    001eb2e8lea rax, [rip+0x142329]
    001eb2efmov rax, [rax+88]
    001eb2f3call caml_raise_exn
    001eb2f8
    001eb2f8loc_1eb2f8:
    001eb2f8cmp rbx, 97
    001eb2fcje 0x1eb310
    001eb2femov rax, [rsp]
    001eb302mov rbx, rdi
    001eb305add rsp, 16
    001eb309jmp 0x1ea9a0
    001eb30e
    001eb30e 66 90 f.
    001eb310
    001eb310loc_1eb310:
    001eb310mov [rsp+8], rdi
    001eb315mov rax, [rdi+56]
    001eb319call Stdlib.Buffer.add_char
    001eb31emov rax, [rsp]
    001eb322add rax, -2
    001eb326mov rdi, [rsp+8]
    001eb32bmov [rdi+16], 1
    001eb333cmp rax, 1
    001eb337jne 0x1eb340
    001eb339add rsp, 16
    001eb33dret
    001eb33e
    001eb33e 66 90 f.
    001eb340
    001eb340loc_1eb340:
    001eb340mov [rsp], rax
    001eb344mov rax, [rdi+16]
    001eb348cmp rax, 1
    001eb34cje 0x1eb358
    001eb34emov rbx, [rdi+8]
    001eb352jmp 0x1eb3f7
    001eb357
    001eb357 90 .
    001eb358
    001eb358loc_1eb358:
    001eb358mov [rsp+8], rdi
    001eb35dlea r11, [rip+84]
    001eb364push r11
    001eb366push [r14+48]
    001eb36amov [r14+48], rsp
    001eb36emov rbx, [rdi+48]
    001eb372mov eax, 1
    001eb377mov rdi, [rbx]
    001eb37acall rdi
    001eb37cmov rdi, [rsp+24]
    001eb381mov [rdi+8], rax
    001eb385mov [rdi+16], 3
    001eb38dmov rbx, [rdi+24]
    001eb391add rbx, 2
    001eb395mov [rdi+24], rbx
    001eb399cmp rax, 21
    001eb39djne 0x1eb3ab
    001eb39fmov rbx, [rdi+32]
    001eb3a3add rbx, 2
    001eb3a7mov [rdi+32], rbx
    001eb3ab
    001eb3abloc_1eb3ab:
    001eb3abpop [r14+48]
    001eb3afadd rsp, 8
    001eb3b3jmp 0x1eb3f4
    001eb3b5
    001eb3b5 0f 1f 00 ...
    001eb3b8lea rbx, [rip+0x142259]
    001eb3bfmov rbx, [rbx+88]
    001eb3c3cmp rax, rbx
    001eb3c6jne 0x1eb3ec
    001eb3c8mov rdi, [rsp+8]
    001eb3cdmov [rdi+8], 1
    001eb3d5mov [rdi+16], 1
    001eb3ddmov [rdi], 3
    001eb3e4mov eax, 1
    001eb3e9jmp 0x1eb3f4
    001eb3eb
    001eb3eb 90 .
    001eb3ec
    001eb3ecloc_1eb3ec:
    001eb3eccall caml_reraise_exn
    001eb3f1nop [rax]
    001eb3f4
    001eb3f4loc_1eb3f4:
    001eb3f4mov rbx, rax
    001eb3f7
    001eb3f7loc_1eb3f7:
    001eb3f7mov rax, [rdi]
    001eb3facmp rax, 1
    001eb3feje 0x1eb40c
    001eb400mov rax, [rsp]
    001eb404add rsp, 16
    001eb408ret
    001eb409
    001eb409 0f 1f 00 ...
    001eb40c
    001eb40cloc_1eb40c:
    001eb40ccmp rbx, 199
    001eb413jl 0x1eb47c
    001eb415cmp rbx, 223
    001eb41cje 0x1eb438
    001eb41ecmp rbx, 241
    001eb425jne 0x1eb4d8
    001eb42bmov [rsp+8], rdi
    001eb430jmp 0x1eb4e8
    001eb435
    001eb435 0f 1f 00 ...
    001eb438
    001eb438loc_1eb438:
    001eb438mov [rsp+8], rdi
    001eb43dmov rax, [rdi+56]
    001eb441call Stdlib.Buffer.add_char
    001eb446mov rdi, [rsp]
    001eb44aadd rdi, -2
    001eb44emov rsi, [rsp+8]
    001eb453mov [rsi+16], 1
    001eb45blea rax, [rip+0x181d1e]
    001eb462mov rax, [rax+344]
    001eb469mov rbx, [rax+32]
    001eb46dmov rax, [rax+24]
    001eb471add rsp, 16
    001eb475jmp 0x1ead90
    001eb47a
    001eb47a 66 90 f.
    001eb47c
    001eb47cloc_1eb47c:
    001eb47ccmp rbx, 177
    001eb483je 0x1eb4d0
    001eb485cmp rbx, 197
    001eb48cjl 0x1eb4d8
    001eb48emov [rsp+8], rdi
    001eb493mov rax, [rdi+56]
    001eb497call Stdlib.Buffer.add_char
    001eb49cmov rdi, [rsp]
    001eb4a0add rdi, -2
    001eb4a4mov rsi, [rsp+8]
    001eb4a9mov [rsi+16], 1
    001eb4b1lea rax, [rip+0x181cc8]
    001eb4b8mov rax, [rax+328]
    001eb4bfmov rbx, [rax+32]
    001eb4c3mov rax, [rax+24]
    001eb4c7add rsp, 16
    001eb4cbjmp 0x1ead90
    001eb4d0
    001eb4d0loc_1eb4d0:
    001eb4d0mov [rsp+8], rdi
    001eb4d5jmp 0x1eb4e8
    001eb4d7
    001eb4d7 90 .
    001eb4d8
    001eb4d8loc_1eb4d8:
    001eb4d8mov rax, [rsp]
    001eb4dcmov rbx, rdi
    001eb4dfadd rsp, 16
    001eb4e3jmp 0x1ea820
    001eb4e8
    001eb4e8loc_1eb4e8:
    001eb4e8mov rax, [rdi+56]
    001eb4eccall Stdlib.Buffer.add_char
    001eb4f1mov rdi, [rsp]
    001eb4f5add rdi, -2
    001eb4f9mov rsi, [rsp+8]
    001eb4femov [rsi+16], 1
    001eb506lea rax, [rip+0x181c73]
    001eb50dmov rax, [rax+360]
    001eb514mov rbx, [rax+32]
    001eb518mov rax, [rax+24]
    001eb51cadd rsp, 16
    001eb520jmp 0x1ead90
    001eb525
    001eb525loc_1eb525:
    001eb525push 37
    001eb527call caml_call_realloc_stack
    001eb52cpop r10
    001eb52ejmp 0x1eb222
    001eb210