File hevea_f46f610a6b0078f4aa208dda361f21de574cc56ad64b32889301afc466d33979.elf
Function:
    001ed170
    001ed170Stdlib.Scanf.scan_caml_float:
    001ed170lea r10, [rsp-368]
    001ed178cmp r10, [r14+40]
    001ed17cjb 0x1edfd6
    001ed182
    001ed182loc_1ed182:
    001ed182sub rsp, 32
    001ed186cmp rax, 1
    001ed18aje 0x1ed24c
    001ed190mov [rsp+16], rbx
    001ed195mov [rsp], rax
    001ed199mov rax, [rdi+16]
    001ed19dcmp rax, 1
    001ed1a1jne 0x1ed23c
    001ed1a7mov [rsp+24], rdi
    001ed1aclea r11, [rip+81]
    001ed1b3push r11
    001ed1b5push [r14+48]
    001ed1b9mov [r14+48], rsp
    001ed1bdmov rbx, [rdi+48]
    001ed1c1mov eax, 1
    001ed1c6mov rdi, [rbx]
    001ed1c9call rdi
    001ed1cbmov rdi, [rsp+40]
    001ed1d0mov [rdi+8], rax
    001ed1d4mov [rdi+16], 3
    001ed1dcmov rbx, [rdi+24]
    001ed1e0add rbx, 2
    001ed1e4mov [rdi+24], rbx
    001ed1e8cmp rax, 21
    001ed1ecjne 0x1ed1fa
    001ed1eemov rax, [rdi+32]
    001ed1f2add rax, 2
    001ed1f6mov [rdi+32], rax
    001ed1fa
    001ed1faloc_1ed1fa:
    001ed1fapop [r14+48]
    001ed1feadd rsp, 8
    001ed202jmp 0x1ed23c
    001ed204lea rbx, [rip+0x14040d]
    001ed20bmov rbx, [rbx+88]
    001ed20fcmp rax, rbx
    001ed212jne 0x1ed234
    001ed214mov rdi, [rsp+24]
    001ed219mov [rdi+8], 1
    001ed221mov [rdi+16], 1
    001ed229mov [rdi], 3
    001ed230jmp 0x1ed23c
    001ed232
    001ed232 66 90 f.
    001ed234
    001ed234loc_1ed234:
    001ed234call caml_reraise_exn
    001ed239nop [rax]
    001ed23c
    001ed23cloc_1ed23c:
    001ed23cmov rax, [rdi]
    001ed23fcmp rax, 1
    001ed243jne 0x1ed24c
    001ed245mov [rsp+24], rdi
    001ed24ajmp 0x1ed284
    001ed24c
    001ed24cloc_1ed24c:
    001ed24csub r15, 24
    001ed250cmp r15, [r14]
    001ed253jb 0x1edfcc
    001ed259
    001ed259loc_1ed259:
    001ed259lea rax, [r15+8]
    001ed25dmov [rax-8], 2048
    001ed265lea rbx, [rip+0x17ff14]
    001ed26cmov rbx, [rbx+8]
    001ed270mov [rax], rbx
    001ed273lea rbx, [rip+0x180b6e]
    001ed27amov [rax+8], rbx
    001ed27ecall caml_raise_exn
    001ed283nop
    001ed284
    001ed284loc_1ed284:
    001ed284mov rax, [rsp]
    001ed288mov rbx, rdi
    001ed28bcall Stdlib.Scanf.scan_sign
    001ed290cmp rax, 1
    001ed294je 0x1ed351
    001ed29amov [rsp], rax
    001ed29emov rdi, [rsp+24]
    001ed2a3mov rax, [rdi+16]
    001ed2a7cmp rax, 1
    001ed2abjne 0x1ed348
    001ed2b1mov [rsp+24], rdi
    001ed2b6lea r11, [rip+83]
    001ed2bdpush r11
    001ed2bfpush [r14+48]
    001ed2c3mov [r14+48], rsp
    001ed2c7mov rbx, [rdi+48]
    001ed2cbmov eax, 1
    001ed2d0mov rdi, [rbx]
    001ed2d3call rdi
    001ed2d5mov rdi, [rsp+40]
    001ed2damov [rdi+8], rax
    001ed2demov [rdi+16], 3
    001ed2e6mov rbx, [rdi+24]
    001ed2eaadd rbx, 2
    001ed2eemov [rdi+24], rbx
    001ed2f2cmp rax, 21
    001ed2f6jne 0x1ed304
    001ed2f8mov rax, [rdi+32]
    001ed2fcadd rax, 2
    001ed300mov [rdi+32], rax
    001ed304
    001ed304loc_1ed304:
    001ed304pop [r14+48]
    001ed308add rsp, 8
    001ed30cjmp 0x1ed348
    001ed30e
    001ed30e 66 90 f.
    001ed310lea rbx, [rip+0x140301]
    001ed317mov rbx, [rbx+88]
    001ed31bcmp rax, rbx
    001ed31ejne 0x1ed340
    001ed320mov rdi, [rsp+24]
    001ed325mov [rdi+8], 1
    001ed32dmov [rdi+16], 1
    001ed335mov [rdi], 3
    001ed33cjmp 0x1ed348
    001ed33e
    001ed33e 66 90 f.
    001ed340
    001ed340loc_1ed340:
    001ed340call caml_reraise_exn
    001ed345nop [rax]
    001ed348
    001ed348loc_1ed348:
    001ed348mov rax, [rdi]
    001ed34bcmp rax, 1
    001ed34fje 0x1ed388
    001ed351
    001ed351loc_1ed351:
    001ed351sub r15, 24
    001ed355cmp r15, [r14]
    001ed358jb 0x1edfc2
    001ed35e
    001ed35eloc_1ed35e:
    001ed35elea rax, [r15+8]
    001ed362mov [rax-8], 2048
    001ed36alea rbx, [rip+0x17fe0f]
    001ed371mov rbx, [rbx+8]
    001ed375mov [rax], rbx
    001ed378lea rbx, [rip+0x180a69]
    001ed37fmov [rax+8], rbx
    001ed383call caml_raise_exn
    001ed388
    001ed388loc_1ed388:
    001ed388mov rax, [rdi+16]
    001ed38ccmp rax, 1
    001ed390je 0x1ed39c
    001ed392mov rbx, [rdi+8]
    001ed396jmp 0x1ed43b
    001ed39b
    001ed39b 90 .
    001ed39c
    001ed39cloc_1ed39c:
    001ed39cmov [rsp+24], rdi
    001ed3a1lea r11, [rip+84]
    001ed3a8push r11
    001ed3aapush [r14+48]
    001ed3aemov [r14+48], rsp
    001ed3b2mov rbx, [rdi+48]
    001ed3b6mov eax, 1
    001ed3bbmov rdi, [rbx]
    001ed3becall rdi
    001ed3c0mov rdi, [rsp+40]
    001ed3c5mov [rdi+8], rax
    001ed3c9mov [rdi+16], 3
    001ed3d1mov rbx, [rdi+24]
    001ed3d5add rbx, 2
    001ed3d9mov [rdi+24], rbx
    001ed3ddcmp rax, 21
    001ed3e1jne 0x1ed3ef
    001ed3e3mov rbx, [rdi+32]
    001ed3e7add rbx, 2
    001ed3ebmov [rdi+32], rbx
    001ed3ef
    001ed3efloc_1ed3ef:
    001ed3efpop [r14+48]
    001ed3f3add rsp, 8
    001ed3f7jmp 0x1ed438
    001ed3f9
    001ed3f9 0f 1f 00 ...
    001ed3fclea rbx, [rip+0x140215]
    001ed403mov rbx, [rbx+88]
    001ed407cmp rax, rbx
    001ed40ajne 0x1ed430
    001ed40cmov rdi, [rsp+24]
    001ed411mov [rdi+8], 1
    001ed419mov [rdi+16], 1
    001ed421mov [rdi], 3
    001ed428mov eax, 1
    001ed42djmp 0x1ed438
    001ed42f
    001ed42f 90 .
    001ed430
    001ed430loc_1ed430:
    001ed430call caml_reraise_exn
    001ed435nop [rax]
    001ed438
    001ed438loc_1ed438:
    001ed438mov rbx, rax
    001ed43b
    001ed43bloc_1ed43b:
    001ed43bcmp rbx, 99
    001ed43fjl 0x1ed578
    001ed445cmp rbx, 117
    001ed449jge 0x1edf4c
    001ed44fmov [rsp+24], rdi
    001ed454mov rax, [rdi+56]
    001ed458call Stdlib.Buffer.add_char
    001ed45dmov rax, [rsp]
    001ed461add rax, -2
    001ed465mov rdi, [rsp+24]
    001ed46amov [rdi+16], 1
    001ed472cmp rax, 1
    001ed476je 0x1ed52d
    001ed47cmov [rsp], rax
    001ed480mov rax, [rdi+16]
    001ed484cmp rax, 1
    001ed488jne 0x1ed524
    001ed48emov [rsp+24], rdi
    001ed493lea r11, [rip+82]
    001ed49apush r11
    001ed49cpush [r14+48]
    001ed4a0mov [r14+48], rsp
    001ed4a4mov rbx, [rdi+48]
    001ed4a8mov eax, 1
    001ed4admov rdi, [rbx]
    001ed4b0call rdi
    001ed4b2mov rdi, [rsp+40]
    001ed4b7mov [rdi+8], rax
    001ed4bbmov [rdi+16], 3
    001ed4c3mov rbx, [rdi+24]
    001ed4c7add rbx, 2
    001ed4cbmov [rdi+24], rbx
    001ed4cfcmp rax, 21
    001ed4d3jne 0x1ed4e1
    001ed4d5mov rax, [rdi+32]
    001ed4d9add rax, 2
    001ed4ddmov [rdi+32], rax
    001ed4e1
    001ed4e1loc_1ed4e1:
    001ed4e1pop [r14+48]
    001ed4e5add rsp, 8
    001ed4e9jmp 0x1ed524
    001ed4eb
    001ed4eb 90 .
    001ed4eclea rbx, [rip+0x140125]
    001ed4f3mov rbx, [rbx+88]
    001ed4f7cmp rax, rbx
    001ed4fajne 0x1ed51c
    001ed4fcmov rdi, [rsp+24]
    001ed501mov [rdi+8], 1
    001ed509mov [rdi+16], 1
    001ed511mov [rdi], 3
    001ed518jmp 0x1ed524
    001ed51a
    001ed51a 66 90 f.
    001ed51c
    001ed51cloc_1ed51c:
    001ed51ccall caml_reraise_exn
    001ed521nop [rax]
    001ed524
    001ed524loc_1ed524:
    001ed524mov rax, [rdi]
    001ed527cmp rax, 1
    001ed52bje 0x1ed564
    001ed52d
    001ed52dloc_1ed52d:
    001ed52dsub r15, 24
    001ed531cmp r15, [r14]
    001ed534jb 0x1edfb8
    001ed53a
    001ed53aloc_1ed53a:
    001ed53alea rax, [r15+8]
    001ed53emov [rax-8], 2048
    001ed546lea rbx, [rip+0x17fc33]
    001ed54dmov rbx, [rbx+8]
    001ed551mov [rax], rbx
    001ed554lea rbx, [rip+0x18088d]
    001ed55bmov [rax+8], rbx
    001ed55fcall caml_raise_exn
    001ed564
    001ed564loc_1ed564:
    001ed564mov rax, [rsp]
    001ed568mov rbx, [rsp+16]
    001ed56dadd rsp, 32
    001ed571jmp 0x1ecda0
    001ed576
    001ed576 66 90 f.
    001ed578
    001ed578loc_1ed578:
    001ed578cmp rbx, 97
    001ed57cjl 0x1edf4c
    001ed582mov [rsp+24], rdi
    001ed587mov rax, [rdi+56]
    001ed58bcall Stdlib.Buffer.add_char
    001ed590mov rax, [rsp]
    001ed594add rax, -2
    001ed598mov rdi, [rsp+24]
    001ed59dmov [rdi+16], 1
    001ed5a5cmp rax, 1
    001ed5a9je 0x1ed661
    001ed5afmov [rsp], rax
    001ed5b3mov rax, [rdi+16]
    001ed5b7cmp rax, 1
    001ed5bbjne 0x1ed658
    001ed5c1mov [rsp+24], rdi
    001ed5c6lea r11, [rip+83]
    001ed5cdpush r11
    001ed5cfpush [r14+48]
    001ed5d3mov [r14+48], rsp
    001ed5d7mov rbx, [rdi+48]
    001ed5dbmov eax, 1
    001ed5e0mov rdi, [rbx]
    001ed5e3call rdi
    001ed5e5mov rdi, [rsp+40]
    001ed5eamov [rdi+8], rax
    001ed5eemov [rdi+16], 3
    001ed5f6mov rbx, [rdi+24]
    001ed5faadd rbx, 2
    001ed5femov [rdi+24], rbx
    001ed602cmp rax, 21
    001ed606jne 0x1ed614
    001ed608mov rax, [rdi+32]
    001ed60cadd rax, 2
    001ed610mov [rdi+32], rax
    001ed614
    001ed614loc_1ed614:
    001ed614pop [r14+48]
    001ed618add rsp, 8
    001ed61cjmp 0x1ed658
    001ed61e
    001ed61e 66 90 f.
    001ed620lea rbx, [rip+0x13fff1]
    001ed627mov rbx, [rbx+88]
    001ed62bcmp rax, rbx
    001ed62ejne 0x1ed650
    001ed630mov rdi, [rsp+24]
    001ed635mov [rdi+8], 1
    001ed63dmov [rdi+16], 1
    001ed645mov [rdi], 3
    001ed64cjmp 0x1ed658
    001ed64e
    001ed64e 66 90 f.
    001ed650
    001ed650loc_1ed650:
    001ed650call caml_reraise_exn
    001ed655nop [rax]
    001ed658
    001ed658loc_1ed658:
    001ed658mov rax, [rdi]
    001ed65bcmp rax, 1
    001ed65fje 0x1ed698
    001ed661
    001ed661loc_1ed661:
    001ed661sub r15, 24
    001ed665cmp r15, [r14]
    001ed668jb 0x1edfae
    001ed66e
    001ed66eloc_1ed66e:
    001ed66elea rax, [r15+8]
    001ed672mov [rax-8], 2048
    001ed67alea rbx, [rip+0x17faff]
    001ed681mov rbx, [rbx+8]
    001ed685mov [rax], rbx
    001ed688lea rbx, [rip+0x180759]
    001ed68fmov [rax+8], rbx
    001ed693call caml_raise_exn
    001ed698
    001ed698loc_1ed698:
    001ed698mov rax, [rdi+16]
    001ed69ccmp rax, 1
    001ed6a0je 0x1ed6ac
    001ed6a2mov rbx, [rdi+8]
    001ed6a6jmp 0x1ed74b
    001ed6ab
    001ed6ab 90 .
    001ed6ac
    001ed6acloc_1ed6ac:
    001ed6acmov [rsp+24], rdi
    001ed6b1lea r11, [rip+84]
    001ed6b8push r11
    001ed6bapush [r14+48]
    001ed6bemov [r14+48], rsp
    001ed6c2mov rbx, [rdi+48]
    001ed6c6mov eax, 1
    001ed6cbmov rdi, [rbx]
    001ed6cecall rdi
    001ed6d0mov rdi, [rsp+40]
    001ed6d5mov [rdi+8], rax
    001ed6d9mov [rdi+16], 3
    001ed6e1mov rbx, [rdi+24]
    001ed6e5add rbx, 2
    001ed6e9mov [rdi+24], rbx
    001ed6edcmp rax, 21
    001ed6f1jne 0x1ed6ff
    001ed6f3mov rbx, [rdi+32]
    001ed6f7add rbx, 2
    001ed6fbmov [rdi+32], rbx
    001ed6ff
    001ed6ffloc_1ed6ff:
    001ed6ffpop [r14+48]
    001ed703add rsp, 8
    001ed707jmp 0x1ed748
    001ed709
    001ed709 0f 1f 00 ...
    001ed70clea rbx, [rip+0x13ff05]
    001ed713mov rbx, [rbx+88]
    001ed717cmp rax, rbx
    001ed71ajne 0x1ed740
    001ed71cmov rdi, [rsp+24]
    001ed721mov [rdi+8], 1
    001ed729mov [rdi+16], 1
    001ed731mov [rdi], 3
    001ed738mov eax, 1
    001ed73djmp 0x1ed748
    001ed73f
    001ed73f 90 .
    001ed740
    001ed740loc_1ed740:
    001ed740call caml_reraise_exn
    001ed745nop [rax]
    001ed748
    001ed748loc_1ed748:
    001ed748mov rbx, rax
    001ed74b
    001ed74bloc_1ed74b:
    001ed74bcmp rbx, 177
    001ed752je 0x1ed778
    001ed754cmp rbx, 241
    001ed75bje 0x1ed770
    001ed75dmov rax, [rsp]
    001ed761mov rbx, [rsp+16]
    001ed766add rsp, 32
    001ed76ajmp 0x1ecda0
    001ed76f
    001ed76f 90 .
    001ed770
    001ed770loc_1ed770:
    001ed770mov [rsp+24], rdi
    001ed775jmp 0x1ed77d
    001ed777
    001ed777 90 .
    001ed778
    001ed778loc_1ed778:
    001ed778mov [rsp+24], rdi
    001ed77d
    001ed77dloc_1ed77d:
    001ed77dmov rax, [rdi+56]
    001ed781call Stdlib.Buffer.add_char
    001ed786mov rax, [rsp]
    001ed78aadd rax, -2
    001ed78emov rsi, [rsp+24]
    001ed793mov [rsi+16], 1
    001ed79bmov [rsp], rax
    001ed79fcmp rax, 1
    001ed7a3je 0x1ed851
    001ed7a9mov rax, [rsi+16]
    001ed7adcmp rax, 1
    001ed7b1jne 0x1ed848
    001ed7b7lea r11, [rip+82]
    001ed7bepush r11
    001ed7c0push [r14+48]
    001ed7c4mov [r14+48], rsp
    001ed7c8mov rbx, [rsi+48]
    001ed7ccmov eax, 1
    001ed7d1mov rdi, [rbx]
    001ed7d4call rdi
    001ed7d6mov rsi, [rsp+40]
    001ed7dbmov [rsi+8], rax
    001ed7dfmov [rsi+16], 3
    001ed7e7mov rbx, [rsi+24]
    001ed7ebadd rbx, 2
    001ed7efmov [rsi+24], rbx
    001ed7f3cmp rax, 21
    001ed7f7jne 0x1ed805
    001ed7f9mov rax, [rsi+32]
    001ed7fdadd rax, 2
    001ed801mov [rsi+32], rax
    001ed805
    001ed805loc_1ed805:
    001ed805pop [r14+48]
    001ed809add rsp, 8
    001ed80djmp 0x1ed848
    001ed80f
    001ed80f 90 .
    001ed810lea rbx, [rip+0x13fe01]
    001ed817mov rbx, [rbx+88]
    001ed81bcmp rax, rbx
    001ed81ejne 0x1ed840
    001ed820mov rsi, [rsp+24]
    001ed825mov [rsi+8], 1
    001ed82dmov [rsi+16], 1
    001ed835mov [rsi], 3
    001ed83cjmp 0x1ed848
    001ed83e
    001ed83e 66 90 f.
    001ed840
    001ed840loc_1ed840:
    001ed840call caml_reraise_exn
    001ed845nop [rax]
    001ed848
    001ed848loc_1ed848:
    001ed848mov rax, [rsi]
    001ed84bcmp rax, 1
    001ed84fje 0x1ed888
    001ed851
    001ed851loc_1ed851:
    001ed851sub r15, 24
    001ed855cmp r15, [r14]
    001ed858jb 0x1edfa4
    001ed85e
    001ed85eloc_1ed85e:
    001ed85elea rax, [r15+8]
    001ed862mov [rax-8], 2048
    001ed86alea rbx, [rip+0x17f90f]
    001ed871mov rbx, [rbx+8]
    001ed875mov [rax], rbx
    001ed878lea rbx, [rip+0x180569]
    001ed87fmov [rax+8], rbx
    001ed883call caml_raise_exn
    001ed888
    001ed888loc_1ed888:
    001ed888lea rax, [rip+0x17f8f1]
    001ed88fmov rax, [rax+360]
    001ed896mov rbx, [rax+32]
    001ed89amov rax, [rax+24]
    001ed89emov rdi, [rsp]
    001ed8a2call Stdlib.Scanf.scan_digit_plus
    001ed8a7mov [rsp], rax
    001ed8abcmp rax, 1
    001ed8afje 0x1ed961
    001ed8b5mov rdi, [rsp+24]
    001ed8bamov rax, [rdi+16]
    001ed8becmp rax, 1
    001ed8c2jne 0x1ed958
    001ed8c8lea r11, [rip+81]
    001ed8cfpush r11
    001ed8d1push [r14+48]
    001ed8d5mov [r14+48], rsp
    001ed8d9mov rbx, [rdi+48]
    001ed8ddmov eax, 1
    001ed8e2mov rdi, [rbx]
    001ed8e5call rdi
    001ed8e7mov rdi, [rsp+40]
    001ed8ecmov [rdi+8], rax
    001ed8f0mov [rdi+16], 3
    001ed8f8mov rbx, [rdi+24]
    001ed8fcadd rbx, 2
    001ed900mov [rdi+24], rbx
    001ed904cmp rax, 21
    001ed908jne 0x1ed916
    001ed90amov rax, [rdi+32]
    001ed90eadd rax, 2
    001ed912mov [rdi+32], rax
    001ed916
    001ed916loc_1ed916:
    001ed916pop [r14+48]
    001ed91aadd rsp, 8
    001ed91ejmp 0x1ed958
    001ed920lea rbx, [rip+0x13fcf1]
    001ed927mov rbx, [rbx+88]
    001ed92bcmp rax, rbx
    001ed92ejne 0x1ed950
    001ed930mov rdi, [rsp+24]
    001ed935mov [rdi+8], 1
    001ed93dmov [rdi+16], 1
    001ed945mov [rdi], 3
    001ed94cjmp 0x1ed958
    001ed94e
    001ed94e 66 90 f.
    001ed950
    001ed950loc_1ed950:
    001ed950call caml_reraise_exn
    001ed955nop [rax]
    001ed958
    001ed958loc_1ed958:
    001ed958mov rax, [rdi]
    001ed95bcmp rax, 1
    001ed95fje 0x1ed998
    001ed961
    001ed961loc_1ed961:
    001ed961sub r15, 24
    001ed965cmp r15, [r14]
    001ed968jb 0x1edf9a
    001ed96e
    001ed96eloc_1ed96e:
    001ed96elea rax, [r15+8]
    001ed972mov [rax-8], 2048
    001ed97alea rbx, [rip+0x17f7ff]
    001ed981mov rbx, [rbx+8]
    001ed985mov [rax], rbx
    001ed988lea rbx, [rip+0x180459]
    001ed98fmov [rax+8], rbx
    001ed993call caml_raise_exn
    001ed998
    001ed998loc_1ed998:
    001ed998mov rax, [rdi+16]
    001ed99ccmp rax, 1
    001ed9a0je 0x1ed9ac
    001ed9a2mov rbx, [rdi+8]
    001ed9a6jmp 0x1eda43
    001ed9ab
    001ed9ab 90 .
    001ed9ac
    001ed9acloc_1ed9ac:
    001ed9aclea r11, [rip+81]
    001ed9b3push r11
    001ed9b5push [r14+48]
    001ed9b9mov [r14+48], rsp
    001ed9bdmov rbx, [rdi+48]
    001ed9c1mov eax, 1
    001ed9c6mov rdi, [rbx]
    001ed9c9call rdi
    001ed9cbmov rdi, [rsp+40]
    001ed9d0mov [rdi+8], rax
    001ed9d4mov [rdi+16], 3
    001ed9dcmov rbx, [rdi+24]
    001ed9e0add rbx, 2
    001ed9e4mov [rdi+24], rbx
    001ed9e8cmp rax, 21
    001ed9ecjne 0x1ed9fa
    001ed9eemov rbx, [rdi+32]
    001ed9f2add rbx, 2
    001ed9f6mov [rdi+32], rbx
    001ed9fa
    001ed9faloc_1ed9fa:
    001ed9fapop [r14+48]
    001ed9feadd rsp, 8
    001eda02jmp 0x1eda40
    001eda04lea rbx, [rip+0x13fc0d]
    001eda0bmov rbx, [rbx+88]
    001eda0fcmp rax, rbx
    001eda12jne 0x1eda38
    001eda14mov rdi, [rsp+24]
    001eda19mov [rdi+8], 1
    001eda21mov [rdi+16], 1
    001eda29mov [rdi], 3
    001eda30mov eax, 1
    001eda35jmp 0x1eda40
    001eda37
    001eda37 90 .
    001eda38
    001eda38loc_1eda38:
    001eda38call caml_reraise_exn
    001eda3dnop [rax]
    001eda40
    001eda40loc_1eda40:
    001eda40mov rbx, rax
    001eda43
    001eda43loc_1eda43:
    001eda43mov rax, rbx
    001eda46add rax, -160
    001eda4ccmp rax, 65
    001eda50jbe 0x1edc4c
    001eda56cmp rax, -67
    001eda5ajne 0x1edc60
    001eda60mov rax, [rdi+56]
    001eda64call Stdlib.Buffer.add_char
    001eda69mov rax, [rsp]
    001eda6dadd rax, -2
    001eda71mov rsi, [rsp+24]
    001eda76mov [rsi+16], 1
    001eda7emov [rsp+8], rax
    001eda83cmp rax, 1
    001eda87je 0x1edc44
    001eda8dmov rax, [rsi+16]
    001eda91cmp rax, 1
    001eda95jne 0x1edb2c
    001eda9blea r11, [rip+82]
    001edaa2push r11
    001edaa4push [r14+48]
    001edaa8mov [r14+48], rsp
    001edaacmov rbx, [rsi+48]
    001edab0mov eax, 1
    001edab5mov rdi, [rbx]
    001edab8call rdi
    001edabamov rsi, [rsp+40]
    001edabfmov [rsi+8], rax
    001edac3mov [rsi+16], 3
    001edacbmov rbx, [rsi+24]
    001edacfadd rbx, 2
    001edad3mov [rsi+24], rbx
    001edad7cmp rax, 21
    001edadbjne 0x1edae9
    001edaddmov rax, [rsi+32]
    001edae1add rax, 2
    001edae5mov [rsi+32], rax
    001edae9
    001edae9loc_1edae9:
    001edae9pop [r14+48]
    001edaedadd rsp, 8
    001edaf1jmp 0x1edb2c
    001edaf3
    001edaf3 90 .
    001edaf4lea rbx, [rip+0x13fb1d]
    001edafbmov rbx, [rbx+88]
    001edaffcmp rax, rbx
    001edb02jne 0x1edb24
    001edb04mov rsi, [rsp+24]
    001edb09mov [rsi+8], 1
    001edb11mov [rsi+16], 1
    001edb19mov [rsi], 3
    001edb20jmp 0x1edb2c
    001edb22
    001edb22 66 90 f.
    001edb24
    001edb24loc_1edb24:
    001edb24call caml_reraise_exn
    001edb29nop [rax]
    001edb2c
    001edb2cloc_1edb2c:
    001edb2cmov rax, [rsi]
    001edb2fcmp rax, 1
    001edb33jne 0x1edc44
    001edb39mov rax, [rsi+16]
    001edb3dcmp rax, 1
    001edb41je 0x1edb4c
    001edb43mov rax, [rsi+8]
    001edb47jmp 0x1edbe0
    001edb4c
    001edb4cloc_1edb4c:
    001edb4clea r11, [rip+81]
    001edb53push r11
    001edb55push [r14+48]
    001edb59mov [r14+48], rsp
    001edb5dmov rbx, [rsi+48]
    001edb61mov eax, 1
    001edb66mov rdi, [rbx]
    001edb69call rdi
    001edb6bmov rsi, [rsp+40]
    001edb70mov [rsi+8], rax
    001edb74mov [rsi+16], 3
    001edb7cmov rbx, [rsi+24]
    001edb80add rbx, 2
    001edb84mov [rsi+24], rbx
    001edb88cmp rax, 21
    001edb8cjne 0x1edb9a
    001edb8emov rbx, [rsi+32]
    001edb92add rbx, 2
    001edb96mov [rsi+32], rbx
    001edb9a
    001edb9aloc_1edb9a:
    001edb9apop [r14+48]
    001edb9eadd rsp, 8
    001edba2jmp 0x1edbe0
    001edba4lea rbx, [rip+0x13fa6d]
    001edbabmov rbx, [rbx+88]
    001edbafcmp rax, rbx
    001edbb2jne 0x1edbd8
    001edbb4mov rsi, [rsp+24]
    001edbb9mov [rsi+8], 1
    001edbc1mov [rsi+16], 1
    001edbc9mov [rsi], 3
    001edbd0mov eax, 1
    001edbd5jmp 0x1edbe0
    001edbd7
    001edbd7 90 .
    001edbd8
    001edbd8loc_1edbd8:
    001edbd8call caml_reraise_exn
    001edbddnop [rax]
    001edbe0
    001edbe0loc_1edbe0:
    001edbe0cmp rax, 161
    001edbe6je 0x1edc3c
    001edbe8cmp rax, 225
    001edbeeje 0x1edc3c
    001edbf0mov rdi, [rsp+8]
    001edbf5mov rax, [rsp+16]
    001edbfacmp rdi, rax
    001edbfdjg 0x1edc08
    001edbffmov [rsp], rdi
    001edc03jmp 0x1edc0f
    001edc05
    001edc05 0f 1f 00 ...
    001edc08
    001edc08loc_1edc08:
    001edc08mov rdi, rax
    001edc0bmov [rsp], rdi
    001edc0f
    001edc0floc_1edc0f:
    001edc0flea rax, [rip+0x17f56a]
    001edc16mov rax, [rax+360]
    001edc1dmov rbx, [rax+32]
    001edc21mov rax, [rax+24]
    001edc25call Stdlib.Scanf.scan_digit_plus
    001edc2amov rbx, [rsp]
    001edc2esub rbx, rax
    001edc31mov rax, [rsp+8]
    001edc36sub rax, rbx
    001edc39jmp 0x1edc5a
    001edc3b
    001edc3b 90 .
    001edc3c
    001edc3cloc_1edc3c:
    001edc3cmov rax, [rsp+8]
    001edc41jmp 0x1edc5a
    001edc43
    001edc43 90 .
    001edc44
    001edc44loc_1edc44:
    001edc44mov rax, [rsp+8]
    001edc49jmp 0x1edc5a
    001edc4b
    001edc4b 90 .
    001edc4c
    001edc4cloc_1edc4c:
    001edc4cadd rax, -2
    001edc50cmp rax, 61
    001edc54jbe 0x1edc60
    001edc56mov rax, [rsp]
    001edc5a
    001edc5aloc_1edc5a:
    001edc5amov [rsp], rax
    001edc5ejmp 0x1edc98
    001edc60
    001edc60loc_1edc60:
    001edc60sub r15, 24
    001edc64cmp r15, [r14]
    001edc67jb 0x1edf90
    001edc6d
    001edc6dloc_1edc6d:
    001edc6dlea rax, [r15+8]
    001edc71mov [rax-8], 2048
    001edc79lea rbx, [rip+0x17f500]
    001edc80mov rbx, [rbx+8]
    001edc84mov [rax], rbx
    001edc87lea rbx, [rip+0x18015a]
    001edc8emov [rax+8], rbx
    001edc92call caml_raise_exn
    001edc97nop
    001edc98
    001edc98loc_1edc98:
    001edc98cmp rax, 1
    001edc9cje 0x1edf40
    001edca2mov rdi, [rsp+24]
    001edca7mov rax, [rdi+16]
    001edcabcmp rax, 1
    001edcafjne 0x1edd48
    001edcb5lea r11, [rip+84]
    001edcbcpush r11
    001edcbepush [r14+48]
    001edcc2mov [r14+48], rsp
    001edcc6mov rbx, [rdi+48]
    001edccamov eax, 1
    001edccfmov rdi, [rbx]
    001edcd2call rdi
    001edcd4mov rdi, [rsp+40]
    001edcd9mov [rdi+8], rax
    001edcddmov [rdi+16], 3
    001edce5mov rbx, [rdi+24]
    001edce9add rbx, 2
    001edcedmov [rdi+24], rbx
    001edcf1cmp rax, 21
    001edcf5jne 0x1edd03
    001edcf7mov rax, [rdi+32]
    001edcfbadd rax, 2
    001edcffmov [rdi+32], rax
    001edd03
    001edd03loc_1edd03:
    001edd03pop [r14+48]
    001edd07add rsp, 8
    001edd0bjmp 0x1edd48
    001edd0d
    001edd0d 0f 1f 00 ...
    001edd10lea rbx, [rip+0x13f901]
    001edd17mov rbx, [rbx+88]
    001edd1bcmp rax, rbx
    001edd1ejne 0x1edd40
    001edd20mov rdi, [rsp+24]
    001edd25mov [rdi+8], 1
    001edd2dmov [rdi+16], 1
    001edd35mov [rdi], 3
    001edd3cjmp 0x1edd48
    001edd3e
    001edd3e 66 90 f.
    001edd40
    001edd40loc_1edd40:
    001edd40call caml_reraise_exn
    001edd45nop [rax]
    001edd48
    001edd48loc_1edd48:
    001edd48mov rax, [rdi]
    001edd4bcmp rax, 1
    001edd4fjne 0x1edf40
    001edd55mov rax, [rdi+16]
    001edd59cmp rax, 1
    001edd5dje 0x1edd68
    001edd5fmov rbx, [rdi+8]
    001edd63jmp 0x1eddff
    001edd68
    001edd68loc_1edd68:
    001edd68lea r11, [rip+81]
    001edd6fpush r11
    001edd71push [r14+48]
    001edd75mov [r14+48], rsp
    001edd79mov rbx, [rdi+48]
    001edd7dmov eax, 1
    001edd82mov rdi, [rbx]
    001edd85call rdi
    001edd87mov rdi, [rsp+40]
    001edd8cmov [rdi+8], rax
    001edd90mov [rdi+16], 3
    001edd98mov rbx, [rdi+24]
    001edd9cadd rbx, 2
    001edda0mov [rdi+24], rbx
    001edda4cmp rax, 21
    001edda8jne 0x1eddb6
    001eddaamov rbx, [rdi+32]
    001eddaeadd rbx, 2
    001eddb2mov [rdi+32], rbx
    001eddb6
    001eddb6loc_1eddb6:
    001eddb6pop [r14+48]
    001eddbaadd rsp, 8
    001eddbejmp 0x1eddfc
    001eddc0lea rbx, [rip+0x13f851]
    001eddc7mov rbx, [rbx+88]
    001eddcbcmp rax, rbx
    001eddcejne 0x1eddf4
    001eddd0mov rdi, [rsp+24]
    001eddd5mov [rdi+8], 1
    001eddddmov [rdi+16], 1
    001edde5mov [rdi], 3
    001eddecmov eax, 1
    001eddf1jmp 0x1eddfc
    001eddf3
    001eddf3 90 .
    001eddf4
    001eddf4loc_1eddf4:
    001eddf4call caml_reraise_exn
    001eddf9nop [rax]
    001eddfc
    001eddfcloc_1eddfc:
    001eddfcmov rbx, rax
    001eddff
    001eddffloc_1eddff:
    001eddffcmp rbx, 161
    001ede06je 0x1ede1c
    001ede08cmp rbx, 225
    001ede0fje 0x1ede1c
    001ede11mov rax, [rsp]
    001ede15add rsp, 32
    001ede19ret
    001ede1a
    001ede1a 66 90 f.
    001ede1c
    001ede1cloc_1ede1c:
    001ede1cmov rax, [rdi+56]
    001ede20call Stdlib.Buffer.add_char
    001ede25mov rax, [rsp]
    001ede29add rax, -2
    001ede2dmov rbx, [rsp+24]
    001ede32mov [rbx+16], 1
    001ede3amov [rsp], rax
    001ede3ecmp rax, 1
    001ede42je 0x1edef1
    001ede48mov rax, [rbx+16]
    001ede4ccmp rax, 1
    001ede50jne 0x1edee8
    001ede56lea r11, [rip+83]
    001ede5dpush r11
    001ede5fpush [r14+48]
    001ede63mov [r14+48], rsp
    001ede67mov rbx, [rbx+48]
    001ede6bmov eax, 1
    001ede70mov rdi, [rbx]
    001ede73call rdi
    001ede75mov rbx, [rsp+40]
    001ede7amov [rbx+8], rax
    001ede7emov [rbx+16], 3
    001ede86mov rdi, [rbx+24]
    001ede8aadd rdi, 2
    001ede8emov [rbx+24], rdi
    001ede92cmp rax, 21
    001ede96jne 0x1edea4
    001ede98mov rax, [rbx+32]
    001ede9cadd rax, 2
    001edea0mov [rbx+32], rax
    001edea4
    001edea4loc_1edea4:
    001edea4pop [r14+48]
    001edea8add rsp, 8
    001edeacjmp 0x1edee8
    001edeae
    001edeae 66 90 f.
    001edeb0lea rbx, [rip+0x13f761]
    001edeb7mov rbx, [rbx+88]
    001edebbcmp rax, rbx
    001edebejne 0x1edee0
    001edec0mov rbx, [rsp+24]
    001edec5mov [rbx+8], 1
    001edecdmov [rbx+16], 1
    001eded5mov [rbx], 3
    001ededcjmp 0x1edee8
    001edede
    001edede 66 90 f.
    001edee0
    001edee0loc_1edee0:
    001edee0call caml_reraise_exn
    001edee5nop [rax]
    001edee8
    001edee8loc_1edee8:
    001edee8mov rax, [rbx]
    001edeebcmp rax, 1
    001edeefje 0x1edf28
    001edef1
    001edef1loc_1edef1:
    001edef1sub r15, 24
    001edef5cmp r15, [r14]
    001edef8jb 0x1edf86
    001edefe
    001edefeloc_1edefe:
    001edefelea rax, [r15+8]
    001edf02mov [rax-8], 2048
    001edf0alea rbx, [rip+0x17f26f]
    001edf11mov rbx, [rbx+8]
    001edf15mov [rax], rbx
    001edf18lea rbx, [rip+0x17fe91]
    001edf1fmov [rax+8], rbx
    001edf23call caml_raise_exn
    001edf28
    001edf28loc_1edf28:
    001edf28mov rax, [rsp]
    001edf2ccall Stdlib.Scanf.scan_sign
    001edf31mov rbx, [rsp+24]
    001edf36add rsp, 32
    001edf3ajmp 0x1ea9a0
    001edf3f
    001edf3f 90 .
    001edf40
    001edf40loc_1edf40:
    001edf40mov rax, [rsp]
    001edf44add rsp, 32
    001edf48ret
    001edf49
    001edf49 0f 1f 00 ...
    001edf4c
    001edf4cloc_1edf4c:
    001edf4csub r15, 24
    001edf50cmp r15, [r14]
    001edf53jb 0x1edf7f
    001edf55
    001edf55loc_1edf55:
    001edf55lea rax, [r15+8]
    001edf59mov [rax-8], 2048
    001edf61lea rbx, [rip+0x17f218]
    001edf68mov rbx, [rbx+8]
    001edf6cmov [rax], rbx
    001edf6flea rbx, [rip+0x17fe72]
    001edf76mov [rax+8], rbx
    001edf7acall caml_raise_exn
    001edf7f
    001edf7floc_1edf7f:
    001edf7fcall caml_call_gc
    001edf84jmp 0x1edf55
    001edf86
    001edf86loc_1edf86:
    001edf86call caml_call_gc
    001edf8bjmp 0x1edefe
    001edf90
    001edf90loc_1edf90:
    001edf90call caml_call_gc
    001edf95jmp 0x1edc6d
    001edf9a
    001edf9aloc_1edf9a:
    001edf9acall caml_call_gc
    001edf9fjmp 0x1ed96e
    001edfa4
    001edfa4loc_1edfa4:
    001edfa4call caml_call_gc
    001edfa9jmp 0x1ed85e
    001edfae
    001edfaeloc_1edfae:
    001edfaecall caml_call_gc
    001edfb3jmp 0x1ed66e
    001edfb8
    001edfb8loc_1edfb8:
    001edfb8call caml_call_gc
    001edfbdjmp 0x1ed53a
    001edfc2
    001edfc2loc_1edfc2:
    001edfc2call caml_call_gc
    001edfc7jmp 0x1ed35e
    001edfcc
    001edfccloc_1edfcc:
    001edfcccall caml_call_gc
    001edfd1jmp 0x1ed259
    001edfd6
    001edfd6loc_1edfd6:
    001edfd6push 39
    001edfd8call caml_call_realloc_stack
    001edfddpop r10
    001edfdfjmp 0x1ed182
    001ed170
    001edfe4
    001edfe4 // align 0x10
    001edff0
    001edff0Stdlib.Scanf.scan_string:
    001edff0sub r15, 48
    001edff4cmp r15, [r14]
    001edff7jb 0x1ee038
    001edff9
    001edff9loc_1edff9:
    001edff9lea rdx, [r15+8]
    001edffdmov [rdx-8], 5367
    001ee005lea rcx, [rip+52]
    001ee00cmov [rdx], rcx
    001ee00fmov rcx, 0x100000000000005
    001ee019mov [rdx+8], rcx
    001ee01dmov rsi, [rsi+24]
    001ee021mov [rdx+16], rsi
    001ee025mov [rdx+24], rax
    001ee029mov [rdx+32], rdi
    001ee02dmov rax, rbx
    001ee030mov rbx, rdx
    001ee033jmp 0x1ee040
    001ee038
    001ee038loc_1ee038:
    001ee038call caml_call_gc
    001ee03djmp 0x1edff9
    001edff0
    001ee03f
    001ee03f // align 0x10
    001ee040
    001ee040Stdlib.Scanf.loop:
    001ee040lea r10, [rsp-360]
    001ee048cmp r10, [r14+40]
    001ee04cjb 0x1ee20f
    001ee052
    001ee052loc_1ee052:
    001ee052sub rsp, 24
    001ee056
    001ee056loc_1ee056:
    001ee056cmp r15, [r14]
    001ee059jbe 0x1ee205
    001ee05f
    001ee05floc_1ee05f:
    001ee05fcmp rax, 1
    001ee063jne 0x1ee06c
    001ee065add rsp, 24
    001ee069ret
    001ee06a
    001ee06a 66 90 f.
    001ee06c
    001ee06cloc_1ee06c:
    001ee06cmov [rsp+8], rbx
    001ee071mov [rsp+16], rax
    001ee076mov rax, [rbx+32]
    001ee07amov rbx, [rax+16]
    001ee07ecmp rbx, 1
    001ee082je 0x1ee090
    001ee084mov rbx, [rax+8]
    001ee088jmp 0x1ee12b
    001ee08d
    001ee08d 0f 1f 00 ...
    001ee090
    001ee090loc_1ee090:
    001ee090mov [rsp], rax
    001ee094lea r11, [rip+81]
    001ee09bpush r11
    001ee09dpush [r14+48]
    001ee0a1mov [r14+48], rsp
    001ee0a5mov rbx, [rax+48]
    001ee0a9mov eax, 1
    001ee0aemov rdi, [rbx]
    001ee0b1call rdi
    001ee0b3mov rdi, [rsp+16]
    001ee0b8mov [rdi+8], rax
    001ee0bcmov [rdi+16], 3
    001ee0c4mov rbx, [rdi+24]
    001ee0c8add rbx, 2
    001ee0ccmov [rdi+24], rbx
    001ee0d0cmp rax, 21
    001ee0d4jne 0x1ee0e2
    001ee0d6mov rbx, [rdi+32]
    001ee0daadd rbx, 2
    001ee0demov [rdi+32], rbx
    001ee0e2
    001ee0e2loc_1ee0e2:
    001ee0e2pop [r14+48]
    001ee0e6add rsp, 8
    001ee0eajmp 0x1ee128
    001ee0eclea rbx, [rip+0x13f525]
    001ee0f3mov rbx, [rbx+88]
    001ee0f7cmp rax, rbx
    001ee0fajne 0x1ee120
    001ee0fcmov rax, [rsp]
    001ee100mov [rax+8], 1
    001ee108mov [rax+16], 1
    001ee110mov [rax], 3
    001ee117mov eax, 1
    001ee11cjmp 0x1ee128
    001ee11e
    001ee11e 66 90 f.
    001ee120
    001ee120loc_1ee120:
    001ee120call caml_reraise_exn
    001ee125nop [rax]
    001ee128
    001ee128loc_1ee128:
    001ee128mov rbx, rax
    001ee12b
    001ee12bloc_1ee12b:
    001ee12bmov rsi, [rsp+8]
    001ee130mov rax, [rsi+32]
    001ee134mov rdi, [rax]
    001ee137cmp rdi, 1
    001ee13bje 0x1ee148
    001ee13dmov rax, [rsp+16]
    001ee142add rsp, 24
    001ee146ret
    001ee147
    001ee147 90 .
    001ee148
    001ee148loc_1ee148:
    001ee148mov rdi, [rsi+24]
    001ee14ctest dil, 1
    001ee150je 0x1ee1b8
    001ee152mov rax, rbx
    001ee155add rax, -18
    001ee159cmp rax, 9
    001ee15djbe 0x1ee16c
    001ee15fcmp rax, 47
    001ee163je 0x1ee1ac
    001ee165mov [rsp+8], rsi
    001ee16ajmp 0x1ee17b
    001ee16c
    001ee16cloc_1ee16c:
    001ee16cadd rax, -4
    001ee170cmp rax, 3
    001ee174ja 0x1ee1ac
    001ee176mov [rsp+8], rsi
    001ee17b
    001ee17bloc_1ee17b:
    001ee17bmov rax, [rsi+32]
    001ee17fmov [rsp], rax
    001ee183mov rax, [rax+56]
    001ee187call Stdlib.Buffer.add_char
    001ee18cmov rax, [rsp+16]
    001ee191add rax, -2
    001ee195mov rbx, [rsp]
    001ee199mov [rbx+16], 1
    001ee1a1mov rbx, [rsp+8]
    001ee1a6jmp 0x1ee056
    001ee1ab
    001ee1ab 90 .
    001ee1ac
    001ee1acloc_1ee1ac:
    001ee1acmov rax, [rsp+16]
    001ee1b1add rsp, 24
    001ee1b5ret
    001ee1b6
    001ee1b6 66 90 f.
    001ee1b8
    001ee1b8loc_1ee1b8:
    001ee1b8mov rdi, [rdi]
    001ee1bbcmp rbx, rdi
    001ee1bejne 0x1ee1d4
    001ee1c0mov [rax+16], 1
    001ee1c8mov rax, [rsp+16]
    001ee1cdadd rsp, 24
    001ee1d1ret
    001ee1d2
    001ee1d2 66 90 f.
    001ee1d4
    001ee1d4loc_1ee1d4:
    001ee1d4mov [rsp+8], rsi
    001ee1d9mov [rsp], rax
    001ee1ddmov rax, [rax+56]
    001ee1e1call Stdlib.Buffer.add_char
    001ee1e6mov rax, [rsp+16]
    001ee1ebadd rax, -2
    001ee1efmov rbx, [rsp]
    001ee1f3mov [rbx+16], 1
    001ee1fbmov rbx, [rsp+8]
    001ee200jmp 0x1ee056
    001ee205
    001ee205loc_1ee205:
    001ee205call caml_call_gc
    001ee20ajmp 0x1ee05f
    001ee20f
    001ee20floc_1ee20f:
    001ee20fpush 38
    001ee211call caml_call_realloc_stack
    001ee216pop r10
    001ee218jmp 0x1ee052
    001ee040
    001ee21d
    001ee21d // align 0x10
    001ee220
    001ee220Stdlib.Scanf.scan_char:
    001ee220lea r10, [rsp-352]
    001ee228cmp r10, [r14+40]
    001ee22cjb 0x1ee330
    001ee232
    001ee232loc_1ee232:
    001ee232sub rsp, 16
    001ee236mov [rsp], rax
    001ee23amov rdi, rbx
    001ee23dmov rax, [rdi+16]
    001ee241cmp rax, 1
    001ee245je 0x1ee250
    001ee247mov rbx, [rdi+8]
    001ee24bjmp 0x1ee2ef
    001ee250
    001ee250loc_1ee250:
    001ee250mov [rsp+8], rdi
    001ee255lea r11, [rip+84]
    001ee25cpush r11
    001ee25epush [r14+48]
    001ee262mov [r14+48], rsp
    001ee266mov rbx, [rdi+48]
    001ee26amov eax, 1
    001ee26fmov rdi, [rbx]
    001ee272call rdi
    001ee274mov rdi, [rsp+24]
    001ee279mov [rdi+8], rax
    001ee27dmov [rdi+16], 3
    001ee285mov rbx, [rdi+24]
    001ee289add rbx, 2
    001ee28dmov [rdi+24], rbx
    001ee291cmp rax, 21
    001ee295jne 0x1ee2a3
    001ee297mov rbx, [rdi+32]
    001ee29badd rbx, 2
    001ee29fmov [rdi+32], rbx
    001ee2a3
    001ee2a3loc_1ee2a3:
    001ee2a3pop [r14+48]
    001ee2a7add rsp, 8
    001ee2abjmp 0x1ee2ec
    001ee2ad
    001ee2ad 0f 1f 00 ...
    001ee2b0lea rbx, [rip+0x13f361]
    001ee2b7mov rbx, [rbx+88]
    001ee2bbcmp rax, rbx
    001ee2bejne 0x1ee2e4
    001ee2c0mov rdi, [rsp+8]
    001ee2c5mov [rdi+8], 1
    001ee2cdmov [rdi+16], 1
    001ee2d5mov [rdi], 3
    001ee2dcmov eax, 1
    001ee2e1jmp 0x1ee2ec
    001ee2e3
    001ee2e3 90 .
    001ee2e4
    001ee2e4loc_1ee2e4:
    001ee2e4call caml_reraise_exn
    001ee2e9nop [rax]
    001ee2ec
    001ee2ecloc_1ee2ec:
    001ee2ecmov rbx, rax
    001ee2ef
    001ee2efloc_1ee2ef:
    001ee2efmov rax, [rdi]
    001ee2f2cmp rax, 1
    001ee2f6je 0x1ee308
    001ee2f8lea rax, [rip+0x13f319]
    001ee2ffmov rax, [rax+88]
    001ee303call caml_raise_exn
    001ee308
    001ee308loc_1ee308:
    001ee308mov [rsp+8], rdi
    001ee30dmov rax, [rdi+56]
    001ee311call Stdlib.Buffer.add_char
    001ee316mov rax, [rsp]
    001ee31aadd rax, -2
    001ee31emov rbx, [rsp+8]
    001ee323mov [rbx+16], 1
    001ee32badd rsp, 16
    001ee32fret
    001ee330
    001ee330loc_1ee330:
    001ee330push 37
    001ee332call caml_call_realloc_stack
    001ee337pop r10
    001ee339jmp 0x1ee232
    001ee220
    001ee33e
    001ee33e // align 0x10
    001ee340
    001ee340Stdlib.Scanf.char_for_backslash:
    001ee340mov rbx, rax
    001ee343cmp rbx, 221
    001ee34ajl 0x1ee38c
    001ee34ccmp rbx, 235
    001ee353jge 0x1ee39c
    001ee355mov rax, rbx
    001ee358add rax, -220
    001ee35esar rax, 1
    001ee361lea rdx, [rip+0x404dc]
    001ee368movsxd rax, [rdx+4*rax]
    001ee36cadd rdx, rax
    001ee36fjmp rdx
    001ee371nop [rax]
    001ee374mov eax, 21
    001ee379ret
    001ee37anop
    001ee37cmov eax, 27
    001ee381ret
    001ee382nop
    001ee384mov eax, 19
    001ee389ret
    001ee38anop
    001ee38c
    001ee38cloc_1ee38c:
    001ee38ccmp rbx, 197
    001ee393jne 0x1ee39c
    001ee395mov eax, 17
    001ee39aret
    001ee39bnop
    001ee39c
    001ee39cloc_1ee39c:
    001ee39cmov rax, rbx
    001ee39fret
    001ee340
    001ee3a0
    001ee3a0Stdlib.Scanf.decimal_value_of_char:
    001ee3a0add rax, -96
    001ee3a4ret
    001ee3a0
    001ee3a5
    001ee3a5 // align 0x10
    001ee3b0
    001ee3b0Stdlib.Scanf.char_for_decimal_code:
    001ee3b0lea r10, [rsp-344]
    001ee3b8cmp r10, [r14+40]
    001ee3bcjb 0x1ee462
    001ee3c2
    001ee3c2loc_1ee3c2:
    001ee3c2sub rsp, 24
    001ee3c6mov rsi, rbx
    001ee3c9imul rsi, rsi, 10
    001ee3cdmov rdx, rax
    001ee3d0imul rdx, rdx, 100
    001ee3d4add rdx, rsi
    001ee3d7lea rsi, [rdx+rdi-10766]
    001ee3dfcmp rsi, 1
    001ee3e3jl 0x1ee3fc
    001ee3e5cmp rsi, 511
    001ee3ecjg 0x1ee3fc
    001ee3eemov rax, rsi
    001ee3f1add rsp, 24
    001ee3f5jmp 0x195c60
    001ee3fa
    001ee3fa 66 90 f.
    001ee3fc
    001ee3fcloc_1ee3fc:
    001ee3fcmov [rsp+16], rdi
    001ee401mov [rsp+8], rbx
    001ee406mov [rsp], rax
    001ee40alea rax, [rip+0x17f447]
    001ee411call Stdlib.Printf.sprintf
    001ee416mov rsi, rax
    001ee419mov rax, [rsp]
    001ee41dmov rbx, [rsp+8]
    001ee422mov rdi, [rsp+16]
    001ee427call caml_apply3
    001ee42csub r15, 24
    001ee430cmp r15, [r14]
    001ee433jb 0x1ee45b
    001ee435
    001ee435loc_1ee435:
    001ee435lea rbx, [r15+8]
    001ee439mov [rbx-8], 2048
    001ee441lea rdi, [rip+0x17ed38]
    001ee448mov rdi, [rdi+8]
    001ee44cmov [rbx], rdi
    001ee44fmov [rbx+8], rax
    001ee453mov rax, rbx
    001ee456call caml_raise_exn
    001ee45b
    001ee45bloc_1ee45b:
    001ee45bcall caml_call_gc
    001ee460jmp 0x1ee435
    001ee462
    001ee462loc_1ee462:
    001ee462push 36
    001ee464call caml_call_realloc_stack
    001ee469pop r10
    001ee46bjmp 0x1ee3c2
    001ee3b0
    001ee470
    001ee470Stdlib.Scanf.hexadecimal_value_of_char:
    001ee470cmp rax, 195
    001ee476jl 0x1ee480
    001ee478add rax, -174
    001ee47eret
    001ee47f
    001ee47f 90 .
    001ee480
    001ee480loc_1ee480:
    001ee480cmp rax, 131
    001ee486jl 0x1ee490
    001ee488add rax, -110
    001ee48cret
    001ee48d
    001ee48d 0f 1f 00 ...
    001ee490
    001ee490loc_1ee490:
    001ee490add rax, -96
    001ee494ret
    001ee470
    001ee495
    001ee495 // align 0x10
    001ee4a0
    001ee4a0Stdlib.Scanf.char_for_hexadecimal_code:
    001ee4a0lea r10, [rsp-336]
    001ee4a8cmp r10, [r14+40]
    001ee4acjb 0x1ee59c
    001ee4b2
    001ee4b2loc_1ee4b2:
    001ee4b2sub rsp, 16
    001ee4b6mov rdi, rax
    001ee4b9cmp rbx, 195
    001ee4c0jl 0x1ee4d0
    001ee4c2mov rsi, rbx
    001ee4c5add rsi, -174
    001ee4ccjmp 0x1ee4eb
    001ee4ce
    001ee4ce 66 90 f.
    001ee4d0
    001ee4d0loc_1ee4d0:
    001ee4d0cmp rbx, 131
    001ee4d7jl 0x1ee4e4
    001ee4d9mov rsi, rbx
    001ee4dcadd rsi, -110
    001ee4e0jmp 0x1ee4eb
    001ee4e2
    001ee4e2 66 90 f.
    001ee4e4
    001ee4e4loc_1ee4e4:
    001ee4e4mov rsi, rbx
    001ee4e7add rsi, -96
    001ee4eb
    001ee4ebloc_1ee4eb:
    001ee4ebcmp rdi, 195
    001ee4f2jl 0x1ee500
    001ee4f4mov rax, rdi
    001ee4f7add rax, -174
    001ee4fdjmp 0x1ee51b
    001ee4ff
    001ee4ff 90 .
    001ee500
    001ee500loc_1ee500:
    001ee500cmp rdi, 131
    001ee507jl 0x1ee514
    001ee509mov rax, rdi
    001ee50cadd rax, -110
    001ee510jmp 0x1ee51b
    001ee512
    001ee512 66 90 f.
    001ee514
    001ee514loc_1ee514:
    001ee514mov rax, rdi
    001ee517add rax, -96
    001ee51b
    001ee51bloc_1ee51b:
    001ee51bshl rax, 4
    001ee51fadd rax, rsi
    001ee522add rax, -16
    001ee526cmp rax, 1
    001ee52ajl 0x1ee540
    001ee52ccmp rax, 511
    001ee532jg 0x1ee540
    001ee534add rsp, 16
    001ee538jmp 0x195c60
    001ee53d
    001ee53d 0f 1f 00 ...
    001ee540
    001ee540loc_1ee540:
    001ee540mov [rsp+8], rbx
    001ee545mov [rsp], rdi
    001ee549lea rax, [rip+0x17f270]
    001ee550call Stdlib.Printf.sprintf
    001ee555mov rdi, rax
    001ee558mov rax, [rsp]
    001ee55cmov rbx, [rsp+8]
    001ee561call caml_apply2
    001ee566sub r15, 24
    001ee56acmp r15, [r14]
    001ee56djb 0x1ee595
    001ee56f
    001ee56floc_1ee56f:
    001ee56flea rbx, [r15+8]
    001ee573mov [rbx-8], 2048
    001ee57blea rdi, [rip+0x17ebfe]
    001ee582mov rdi, [rdi+8]
    001ee586mov [rbx], rdi
    001ee589mov [rbx+8], rax
    001ee58dmov rax, rbx
    001ee590call caml_raise_exn
    001ee595
    001ee595loc_1ee595:
    001ee595call caml_call_gc
    001ee59ajmp 0x1ee56f
    001ee59c
    001ee59cloc_1ee59c:
    001ee59cpush 35
    001ee59ecall caml_call_realloc_stack
    001ee5a3pop r10
    001ee5a5jmp 0x1ee4b2
    001ee4a0
    001ee5aa
    001ee5aa // align 0x10
    001ee5b0
    001ee5b0Stdlib.Scanf.check_next_char:
    001ee5b0lea r10, [rsp-352]
    001ee5b8cmp r10, [r14+40]
    001ee5bcjb 0x1ee73e
    001ee5c2
    001ee5c2loc_1ee5c2:
    001ee5c2sub rsp, 16
    001ee5c6cmp rbx, 1
    001ee5cajne 0x1ee61c
    001ee5ccmov [rsp], rax
    001ee5d0lea rax, [rip+0x17f971]
    001ee5d7call Stdlib.Printf.sprintf
    001ee5dcmov rbx, rax
    001ee5dfmov rdi, [rbx]
    001ee5e2mov rax, [rsp]
    001ee5e6call rdi
    001ee5e8sub r15, 24
    001ee5eccmp r15, [r14]
    001ee5efjb 0x1ee734
    001ee5f5
    001ee5f5loc_1ee5f5:
    001ee5f5lea rbx, [r15+8]
    001ee5f9mov [rbx-8], 2048
    001ee601lea rdi, [rip+0x17eb78]
    001ee608mov rdi, [rdi+8]
    001ee60cmov [rbx], rdi
    001ee60fmov [rbx+8], rax
    001ee613mov rax, rbx
    001ee616call caml_raise_exn
    001ee61bnop
    001ee61c
    001ee61cloc_1ee61c:
    001ee61cmov [rsp], rax
    001ee620mov rax, [rdi+16]
    001ee624cmp rax, 1
    001ee628je 0x1ee634
    001ee62amov rax, [rdi+8]
    001ee62ejmp 0x1ee6d0
    001ee633
    001ee633 90 .
    001ee634
    001ee634loc_1ee634:
    001ee634mov [rsp+8], rdi
    001ee639lea r11, [rip+84]
    001ee640push r11
    001ee642push [r14+48]
    001ee646mov [r14+48], rsp
    001ee64amov rbx, [rdi+48]
    001ee64emov eax, 1
    001ee653mov rdi, [rbx]
    001ee656call rdi
    001ee658mov rdi, [rsp+24]
    001ee65dmov [rdi+8], rax
    001ee661mov [rdi+16], 3
    001ee669mov rbx, [rdi+24]
    001ee66dadd rbx, 2
    001ee671mov [rdi+24], rbx
    001ee675cmp rax, 21
    001ee679jne 0x1ee687
    001ee67bmov rbx, [rdi+32]
    001ee67fadd rbx, 2
    001ee683mov [rdi+32], rbx
    001ee687
    001ee687loc_1ee687:
    001ee687pop [r14+48]
    001ee68badd rsp, 8
    001ee68fjmp 0x1ee6d0
    001ee691
    001ee691 0f 1f 00 ...
    001ee694lea rbx, [rip+0x13ef7d]
    001ee69bmov rbx, [rbx+88]
    001ee69fcmp rax, rbx
    001ee6a2jne 0x1ee6c8
    001ee6a4mov rdi, [rsp+8]
    001ee6a9mov [rdi+8], 1
    001ee6b1mov [rdi+16], 1
    001ee6b9mov [rdi], 3
    001ee6c0mov eax, 1
    001ee6c5jmp 0x1ee6d0
    001ee6c7
    001ee6c7 90 .
    001ee6c8
    001ee6c8loc_1ee6c8:
    001ee6c8call caml_reraise_exn
    001ee6cdnop [rax]
    001ee6d0
    001ee6d0loc_1ee6d0:
    001ee6d0mov rbx, [rdi]
    001ee6d3cmp rbx, 1
    001ee6d7je 0x1ee728
    001ee6d9mov rax, [rsp]
    001ee6ddmov [rsp], rax
    001ee6e1lea rax, [rip+0x17f738]
    001ee6e8call Stdlib.Printf.sprintf
    001ee6edmov rbx, rax
    001ee6f0mov rdi, [rbx]
    001ee6f3mov rax, [rsp]
    001ee6f7call rdi
    001ee6f9sub r15, 24
    001ee6fdcmp r15, [r14]
    001ee700jb 0x1ee72d
    001ee702
    001ee702loc_1ee702:
    001ee702lea rbx, [r15+8]
    001ee706mov [rbx-8], 2048
    001ee70elea rdi, [rip+0x17ea6b]
    001ee715mov rdi, [rdi+8]
    001ee719mov [rbx], rdi
    001ee71cmov [rbx+8], rax
    001ee720mov rax, rbx
    001ee723call caml_raise_exn
    001ee728
    001ee728loc_1ee728:
    001ee728add rsp, 16
    001ee72cret
    001ee72d
    001ee72dloc_1ee72d:
    001ee72dcall caml_call_gc
    001ee732jmp 0x1ee702
    001ee734
    001ee734loc_1ee734:
    001ee734call caml_call_gc
    001ee739jmp 0x1ee5f5
    001ee73e
    001ee73eloc_1ee73e:
    001ee73epush 37
    001ee740call caml_call_realloc_stack
    001ee745pop r10
    001ee747jmp 0x1ee5c2
    001ee5b0
    001ee74c
    001ee74c // align 0x10
    001ee750
    001ee750Stdlib.Scanf.fun:
    001ee750mov rsi, rax
    001ee753mov rdx, rbx
    001ee756mov rax, [rdi+24]
    001ee75amov rbx, rsi
    001ee75dmov rdi, rdx
    001ee760jmp 0x1ee5b0
    001ee750
    001ee765
    001ee765 // align 0x10
    001ee770
    001ee770Stdlib.Scanf.fun:
    001ee770mov rsi, rax
    001ee773mov rdx, rbx
    001ee776mov rax, [rdi+24]
    001ee77amov rbx, rsi
    001ee77dmov rdi, rdx
    001ee780jmp 0x1ee5b0
    001ee770
    001ee785
    001ee785 // align 0x10
    001ee790
    001ee790Stdlib.Scanf.scan_backslash_char:
    001ee790lea r10, [rsp-360]
    001ee798cmp r10, [r14+40]
    001ee79cjb 0x1eeb21
    001ee7a2
    001ee7a2loc_1ee7a2:
    001ee7a2sub rsp, 40
    001ee7a6mov rsi, rax
    001ee7a9mov [rsp+24], rsi
    001ee7aemov rdx, rbx
    001ee7b1mov [rsp+32], rdx
    001ee7b6mov [rsp+8], rdi
    001ee7bblea rax, [rip+0x17e9be]
    001ee7c2mov rax, [rax+544]
    001ee7c9mov rax, [rax+24]
    001ee7cdmov rbx, rsi
    001ee7d0mov rdi, rdx
    001ee7d3call Stdlib.Scanf.check_next_char
    001ee7d8mov rbx, rax
    001ee7dbcmp rbx, 81
    001ee7dfjl 0x1eea1c
    001ee7e5cmp rbx, 117
    001ee7e9jl 0x1ee8c8
    001ee7efmov rax, rbx
    001ee7f2add rax, -184
    001ee7f8cmp rax, 57
    001ee7fcja 0x1eea28
    001ee802sar rax, 1
    001ee805lea rdx, [rip+0x40054]
    001ee80cmovsxd rax, [rdx+4*rax]
    001ee810add rdx, rax
    001ee813jmp rdx
    001ee815nop [rax]
    001ee818sub r15, 40
    001ee81ccmp r15, [r14]
    001ee81fjb 0x1eeb17
    001ee825
    001ee825loc_1ee825:
    001ee825lea rbx, [r15+8]
    001ee829mov [rsp], rbx
    001ee82dmov [rbx-8], 4343
    001ee835lea rax, [rip+1060]
    001ee83cmov [rbx], rax
    001ee83fmov rax, 0x100000000000005
    001ee849mov [rbx+8], rax
    001ee84dmov rax, [rsp+8]
    001ee852mov rax, [rax+24]
    001ee856mov [rbx+16], rax
    001ee85amov rax, [rsp+32]
    001ee85fmov [rbx+24], rax
    001ee863mov eax, 1
    001ee868call Stdlib.Scanf.get_digit
    001ee86dmov [rsp+8], rax
    001ee872mov eax, 1
    001ee877mov rbx, [rsp]
    001ee87bcall Stdlib.Scanf.get_digit
    001ee880mov rbx, rax
    001ee883mov rax, [rsp+8]
    001ee888call Stdlib.Scanf.char_for_hexadecimal_code
    001ee88dmov rbx, rax
    001ee890mov rax, [rsp+24]
    001ee895add rax, -4
    001ee899mov [rsp], rax
    001ee89dmov rax, [rsp+32]
    001ee8a2mov rax, [rax+56]
    001ee8a6call Stdlib.Buffer.add_char
    001ee8abmov rax, [rsp]
    001ee8afadd rax, -2
    001ee8b3mov rbx, [rsp+32]
    001ee8b8mov [rbx+16], 1
    001ee8c0add rsp, 40
    001ee8c4ret
    001ee8c5nop [rax]
    001ee8c8
    001ee8c8loc_1ee8c8:
    001ee8c8cmp rbx, 97
    001ee8ccjl 0x1eea28
    001ee8d2mov [rsp+16], rbx
    001ee8d7sub r15, 40
    001ee8dbcmp r15, [r14]
    001ee8dejb 0x1eeb0d
    001ee8e4
    001ee8e4loc_1ee8e4:
    001ee8e4lea rbx, [r15+8]
    001ee8e8mov [rsp], rbx
    001ee8ecmov [rbx-8], 4343
    001ee8f4lea rax, [rip+565]
    001ee8fbmov [rbx], rax
    001ee8femov rax, 0x100000000000005
    001ee908mov [rbx+8], rax
    001ee90cmov rax, [rsp+8]
    001ee911mov rax, [rax+24]
    001ee915mov [rbx+16], rax
    001ee919mov rax, [rsp+32]
    001ee91emov [rbx+24], rax
    001ee922mov eax, 1
    001ee927call Stdlib.Scanf.get_digit
    001ee92cmov [rsp+8], rax
    001ee931mov eax, 1
    001ee936mov rbx, [rsp]
    001ee93acall Stdlib.Scanf.get_digit
    001ee93fmov rsi, [rsp+8]
    001ee944mov rbx, rsi
    001ee947imul rbx, rbx, 10
    001ee94bmov rdx, [rsp+16]
    001ee950mov rdi, rdx
    001ee953imul rdi, rdi, 100
    001ee957add rdi, rbx
    001ee95alea rbx, [rdi+rax-10766]
    001ee962cmp rbx, 1
    001ee966jl 0x1ee980
    001ee968cmp rbx, 511
    001ee96fjg 0x1ee980
    001ee971mov rax, rbx
    001ee974call camlStdlib.char_of_int_148
    001ee979mov rbx, rax
    001ee97cjmp 0x1ee9e4
    001ee97enop
    001ee980
    001ee980loc_1ee980:
    001ee980mov [rsp+16], rax
    001ee985mov [rsp+8], rsi
    001ee98amov [rsp], rdx
    001ee98elea rax, [rip+0x17eec3]
    001ee995call Stdlib.Printf.sprintf
    001ee99amov rsi, rax
    001ee99dmov rax, [rsp]
    001ee9a1mov rbx, [rsp+8]
    001ee9a6mov rdi, [rsp+16]
    001ee9abcall caml_apply3
    001ee9b0sub r15, 24
    001ee9b4cmp r15, [r14]
    001ee9b7jb 0x1eeb03
    001ee9bd
    001ee9bdloc_1ee9bd:
    001ee9bdlea rbx, [r15+8]
    001ee9c1mov [rbx-8], 2048
    001ee9c9lea rdi, [rip+0x17e7b0]
    001ee9d0mov rdi, [rdi+8]
    001ee9d4mov [rbx], rdi
    001ee9d7mov [rbx+8], rax
    001ee9dbmov rax, rbx
    001ee9decall caml_raise_exn
    001ee9e3nop
    001ee9e4
    001ee9e4loc_1ee9e4:
    001ee9e4mov rax, [rsp+24]
    001ee9e9add rax, -4
    001ee9edmov [rsp], rax
    001ee9f1mov rax, [rsp+32]
    001ee9f6mov rax, [rax+56]
    001ee9facall Stdlib.Buffer.add_char
    001ee9ffmov rax, [rsp]
    001eea03add rax, -2
    001eea07mov rbx, [rsp+32]
    001eea0cmov [rbx+16], 1
    001eea14add rsp, 40
    001eea18ret
    001eea19nop [rax]
    001eea1c
    001eea1cloc_1eea1c:
    001eea1ccmp rbx, 69
    001eea20je 0x1eea78
    001eea22cmp rbx, 79
    001eea26jge 0x1eea78
    001eea28
    001eea28loc_1eea28:
    001eea28mov [rsp], rbx
    001eea2clea rax, [rip+0x17f7dd]
    001eea33call Stdlib.Printf.sprintf
    001eea38mov rbx, rax
    001eea3bmov rdi, [rbx]
    001eea3emov rax, [rsp]
    001eea42call rdi
    001eea44sub r15, 24
    001eea48cmp r15, [r14]
    001eea4bjb 0x1eeaf9
    001eea51
    001eea51loc_1eea51:
    001eea51lea rbx, [r15+8]
    001eea55mov [rbx-8], 2048
    001eea5dlea rdi, [rip+0x17e71c]
    001eea64mov rdi, [rdi+8]
    001eea68mov [rbx], rdi
    001eea6bmov [rbx+8], rax
    001eea6fmov rax, rbx
    001eea72call caml_raise_exn
    001eea77nop
    001eea78
    001eea78loc_1eea78:
    001eea78cmp rbx, 221
    001eea7fjl 0x1eeac0
    001eea81cmp rbx, 235
    001eea88jge 0x1eead0
    001eea8amov rax, rbx
    001eea8dadd rax, -220
    001eea93sar rax, 1
    001eea96lea rdx, [rip+0x3fe37]
    001eea9dmovsxd rax, [rdx+4*rax]
    001eeaa1add rdx, rax
    001eeaa4jmp rdx
    001eeaa6nop
    001eeaa8mov ebx, 21
    001eeaadjmp 0x1eead0
    001eeaafnop
    001eeab0mov ebx, 27
    001eeab5jmp 0x1eead0
    001eeab7nop
    001eeab8mov ebx, 19
    001eeabdjmp 0x1eead0
    001eeabfnop
    001eeac0
    001eeac0loc_1eeac0:
    001eeac0cmp rbx, 197
    001eeac7jne 0x1eead0
    001eeac9mov ebx, 17
    001eeacejmp 0x1eead0
    001eead0
    001eead0loc_1eead0:
    001eead0mov rax, [rsp+32]
    001eead5mov rax, [rax+56]
    001eead9call Stdlib.Buffer.add_char
    001eeademov rax, [rsp+24]
    001eeae3add rax, -2
    001eeae7mov rbx, [rsp+32]
    001eeaecmov [rbx+16], 1
    001eeaf4add rsp, 40
    001eeaf8ret
    001eeaf9
    001eeaf9loc_1eeaf9:
    001eeaf9call caml_call_gc
    001eeafejmp 0x1eea51
    001eeb03
    001eeb03loc_1eeb03:
    001eeb03call caml_call_gc
    001eeb08jmp 0x1ee9bd
    001eeb0d
    001eeb0dloc_1eeb0d:
    001eeb0dcall caml_call_gc
    001eeb12jmp 0x1ee8e4
    001eeb17
    001eeb17loc_1eeb17:
    001eeb17call caml_call_gc
    001eeb1cjmp 0x1ee825
    001eeb21
    001eeb21loc_1eeb21:
    001eeb21push 38
    001eeb23call caml_call_realloc_stack
    001eeb28pop r10
    001eeb2ajmp 0x1ee7a2
    001ee790
    001eeb2f
    001eeb2f // align 0x10
    001eeb30
    001eeb30Stdlib.Scanf.get_digit:
    001eeb30lea r10, [rsp-344]
    001eeb38cmp r10, [r14+40]
    001eeb3cjb 0x1eec48
    001eeb42
    001eeb42loc_1eeb42:
    001eeb42sub rsp, 8
    001eeb46mov rax, [rbx+24]
    001eeb4amov [rsp], rax
    001eeb4elea r11, [rip+83]
    001eeb55push r11
    001eeb57push [r14+48]
    001eeb5bmov [r14+48], rsp
    001eeb5fmov rbx, [rax+48]
    001eeb63mov eax, 1
    001eeb68mov rdi, [rbx]
    001eeb6bcall rdi
    001eeb6dmov rdi, [rsp+16]
    001eeb72mov [rdi+8], rax
    001eeb76mov [rdi+16], 3
    001eeb7emov rbx, [rdi+24]
    001eeb82add rbx, 2
    001eeb86mov [rdi+24], rbx
    001eeb8acmp rax, 21
    001eeb8ejne 0x1eeb9c
    001eeb90mov rbx, [rdi+32]
    001eeb94add rbx, 2
    001eeb98mov [rdi+32], rbx
    001eeb9c
    001eeb9cloc_1eeb9c:
    001eeb9cpop [r14+48]
    001eeba0add rsp, 8
    001eeba4jmp 0x1eebe4
    001eeba6
    001eeba6 66 90 f.
    001eeba8lea rbx, [rip+0x13ea69]
    001eebafmov rbx, [rbx+88]
    001eebb3cmp rax, rbx
    001eebb6jne 0x1eebdc
    001eebb8mov rax, [rsp]
    001eebbcmov [rax+8], 1
    001eebc4mov [rax+16], 1
    001eebccmov [rax], 3
    001eebd3mov eax, 1
    001eebd8jmp 0x1eebe4
    001eebda
    001eebda 66 90 f.
    001eebdc
    001eebdcloc_1eebdc:
    001eebdccall caml_reraise_exn
    001eebe1nop [rax]
    001eebe4
    001eebe4loc_1eebe4:
    001eebe4mov rbx, rax
    001eebe7add rbx, -96
    001eebebcmp rbx, 19
    001eebefjbe 0x1eec3c
    001eebf1mov [rsp], rax
    001eebf5lea rax, [rip+0x17f614]
    001eebfccall Stdlib.Printf.sprintf
    001eec01mov rbx, rax
    001eec04mov rdi, [rbx]
    001eec07mov rax, [rsp]
    001eec0bcall rdi
    001eec0dsub r15, 24
    001eec11cmp r15, [r14]
    001eec14jb 0x1eec41
    001eec16
    001eec16loc_1eec16:
    001eec16lea rbx, [r15+8]
    001eec1amov [rbx-8], 2048
    001eec22lea rdi, [rip+0x17e557]
    001eec29mov rdi, [rdi+8]
    001eec2dmov [rbx], rdi
    001eec30mov [rbx+8], rax
    001eec34mov rax, rbx
    001eec37call caml_raise_exn
    001eec3c
    001eec3cloc_1eec3c:
    001eec3cadd rsp, 8
    001eec40ret
    001eec41
    001eec41loc_1eec41:
    001eec41call caml_call_gc
    001eec46jmp 0x1eec16
    001eec48
    001eec48loc_1eec48:
    001eec48push 36
    001eec4acall caml_call_realloc_stack
    001eec4fpop r10
    001eec51jmp 0x1eeb42
    001eeb30
    001eec56
    001eec56 // align 0x10
    001eec60
    001eec60Stdlib.Scanf.get_digit:
    001eec60lea r10, [rsp-344]
    001eec68cmp r10, [r14+40]
    001eec6cjb 0x1eed94
    001eec72
    001eec72loc_1eec72:
    001eec72sub rsp, 8
    001eec76mov rax, [rbx+24]
    001eec7amov [rsp], rax
    001eec7elea r11, [rip+83]
    001eec85push r11
    001eec87push [r14+48]
    001eec8bmov [r14+48], rsp
    001eec8fmov rbx, [rax+48]
    001eec93mov eax, 1
    001eec98mov rdi, [rbx]
    001eec9bcall rdi
    001eec9dmov rdi, [rsp+16]
    001eeca2mov [rdi+8], rax
    001eeca6mov [rdi+16], 3
    001eecaemov rbx, [rdi+24]
    001eecb2add rbx, 2
    001eecb6mov [rdi+24], rbx
    001eecbacmp rax, 21
    001eecbejne 0x1eeccc
    001eecc0mov rbx, [rdi+32]
    001eecc4add rbx, 2
    001eecc8mov [rdi+32], rbx
    001eeccc
    001eecccloc_1eeccc:
    001eecccpop [r14+48]
    001eecd0add rsp, 8
    001eecd4jmp 0x1eed14
    001eecd6
    001eecd6 66 90 f.
    001eecd8lea rbx, [rip+0x13e939]
    001eecdfmov rbx, [rbx+88]
    001eece3cmp rax, rbx
    001eece6jne 0x1eed0c
    001eece8mov rax, [rsp]
    001eececmov [rax+8], 1
    001eecf4mov [rax+16], 1
    001eecfcmov [rax], 3
    001eed03mov eax, 1
    001eed08jmp 0x1eed14
    001eed0a
    001eed0a 66 90 f.
    001eed0c
    001eed0cloc_1eed0c:
    001eed0ccall caml_reraise_exn
    001eed11nop [rax]
    001eed14
    001eed14loc_1eed14:
    001eed14mov rbx, rax
    001eed17add rbx, -96
    001eed1bcmp rbx, 45
    001eed1fjbe 0x1eed30
    001eed21add rbx, -98
    001eed25cmp rbx, 11
    001eed29jbe 0x1eed88
    001eed2bjmp 0x1eed3a
    001eed2d
    001eed2d 0f 1f 00 ...
    001eed30
    001eed30loc_1eed30:
    001eed30add rbx, -20
    001eed34cmp rbx, 13
    001eed38ja 0x1eed88
    001eed3a
    001eed3aloc_1eed3a:
    001eed3amov [rsp], rax
    001eed3elea rax, [rip+0x17f4cb]
    001eed45call Stdlib.Printf.sprintf
    001eed4amov rbx, rax
    001eed4dmov rdi, [rbx]
    001eed50mov rax, [rsp]
    001eed54call rdi
    001eed56sub r15, 24
    001eed5acmp r15, [r14]
    001eed5djb 0x1eed8d
    001eed5f
    001eed5floc_1eed5f:
    001eed5flea rbx, [r15+8]
    001eed63mov [rbx-8], 2048
    001eed6blea rdi, [rip+0x17e40e]
    001eed72mov rdi, [rdi+8]
    001eed76mov [rbx], rdi
    001eed79mov [rbx+8], rax
    001eed7dmov rax, rbx
    001eed80call caml_raise_exn
    001eed85nop [rax]
    001eed88
    001eed88loc_1eed88:
    001eed88add rsp, 8
    001eed8cret
    001eed8d
    001eed8dloc_1eed8d:
    001eed8dcall caml_call_gc
    001eed92jmp 0x1eed5f
    001eed94
    001eed94loc_1eed94:
    001eed94push 36
    001eed96call caml_call_realloc_stack
    001eed9bpop r10
    001eed9djmp 0x1eec72
    001eec60
    001eeda2
    001eeda2 // align 0x10
    001eedb0
    001eedb0Stdlib.Scanf.scan_caml_char:
    001eedb0sub r15, 88
    001eedb4cmp r15, [r14]
    001eedb7jb 0x1eee33
    001eedb9
    001eedb9loc_1eedb9:
    001eedb9lea rsi, [r15+8]
    001eedbdmov [rsi-8], 10487
    001eedc5lea rdx, [rip+116]
    001eedccmov [rsi], rdx
    001eedcfmov rdx, 0x100000000000011
    001eedd9mov [rsi+8], rdx
    001eedddmov [rsi+16], 3321
    001eede5lea rdx, [rip+500]
    001eedecmov [rsi+24], rdx
    001eedf0mov rdx, 0x10000000000000b
    001eedfamov [rsi+32], rdx
    001eedfemov [rsi+40], 6393
    001eee06lea rdx, [rip+707]
    001eee0dmov [rsi+48], rdx
    001eee11mov rdx, 0x100000000000005
    001eee1bmov [rsi+56], rdx
    001eee1fmov rdi, [rdi+24]
    001eee23mov [rsi+64], rdi
    001eee27mov [rsi+72], rbx
    001eee2bmov rbx, rsi
    001eee2ejmp 0x1eee40
    001eee33
    001eee33loc_1eee33:
    001eee33call caml_call_gc
    001eee38jmp 0x1eedb9
    001eedb0
    001eee3d
    001eee3d // align 0x10
    001eee40
    001eee40Stdlib.Scanf.find_start:
    001eee40lea r10, [rsp-360]
    001eee48cmp r10, [r14+40]
    001eee4cjb 0x1eefcf
    001eee52
    001eee52loc_1eee52:
    001eee52sub rsp, 24
    001eee56mov [rsp+8], rax
    001eee5bmov [rsp], rbx
    001eee5fcmp r15, [r14]
    001eee62jbe 0x1eefc5
    001eee68
    001eee68loc_1eee68:
    001eee68mov rbx, [rbx+72]
    001eee6cmov rax, [rbx+16]
    001eee70cmp rax, 1
    001eee74je 0x1eee80
    001eee76mov rax, [rbx+8]
    001eee7ajmp 0x1eef1c
    001eee7f
    001eee7f 90 .
    001eee80
    001eee80loc_1eee80:
    001eee80mov [rsp+16], rbx
    001eee85lea r11, [rip+84]
    001eee8cpush r11
    001eee8epush [r14+48]
    001eee92mov [r14+48], rsp
    001eee96mov rbx, [rbx+48]
    001eee9amov eax, 1
    001eee9fmov rdi, [rbx]
    001eeea2call rdi
    001eeea4mov rbx, [rsp+32]
    001eeea9mov [rbx+8], rax
    001eeeadmov [rbx+16], 3
    001eeeb5mov rdi, [rbx+24]
    001eeeb9add rdi, 2
    001eeebdmov [rbx+24], rdi
    001eeec1cmp rax, 21
    001eeec5jne 0x1eeed3
    001eeec7mov rdi, [rbx+32]
    001eeecbadd rdi, 2
    001eeecfmov [rbx+32], rdi
    001eeed3
    001eeed3loc_1eeed3:
    001eeed3pop [r14+48]
    001eeed7add rsp, 8
    001eeedbjmp 0x1eef1c
    001eeedd
    001eeedd 0f 1f 00 ...
    001eeee0lea rbx, [rip+0x13e731]
    001eeee7mov rbx, [rbx+88]
    001eeeebcmp rax, rbx
    001eeeeejne 0x1eef14
    001eeef0mov rbx, [rsp+16]
    001eeef5mov [rbx+8], 1
    001eeefdmov [rbx+16], 1
    001eef05mov [rbx], 3
    001eef0cmov eax, 1
    001eef11jmp 0x1eef1c
    001eef13
    001eef13 90 .
    001eef14
    001eef14loc_1eef14:
    001eef14call caml_reraise_exn
    001eef19nop [rax]
    001eef1c
    001eef1cloc_1eef1c:
    001eef1cmov rbx, [rbx]
    001eef1fcmp rbx, 1
    001eef23je 0x1eef38
    001eef25lea rax, [rip+0x13e6ec]
    001eef2cmov rax, [rax+88]
    001eef30call caml_raise_exn
    001eef35nop [rax]
    001eef38
    001eef38loc_1eef38:
    001eef38cmp rax, 79
    001eef3cje 0x1eef98
    001eef3emov [rsp+8], rax
    001eef43mov eax, 79
    001eef48mov [rsp], rax
    001eef4clea rax, [rip+0x17ed85]
    001eef53call Stdlib.Printf.sprintf
    001eef58mov rdi, rax
    001eef5bmov rax, [rsp]
    001eef5fmov rbx, [rsp+8]
    001eef64call caml_apply2
    001eef69sub r15, 24
    001eef6dcmp r15, [r14]
    001eef70jb 0x1eefbe
    001eef72
    001eef72loc_1eef72:
    001eef72lea rbx, [r15+8]
    001eef76mov [rbx-8], 2048
    001eef7elea rdi, [rip+0x17e1fb]
    001eef85mov rdi, [rdi+8]
    001eef89mov [rbx], rdi
    001eef8cmov [rbx+8], rax
    001eef90mov rax, rbx
    001eef93call caml_raise_exn
    001eef98
    001eef98loc_1eef98:
    001eef98mov rbx, [rsp]
    001eef9cmov rdi, [rbx+72]
    001eefa0mov rax, [rsp+8]
    001eefa5add rax, -2
    001eefa9mov [rdi+16], 1
    001eefb1add rbx, 24
    001eefb5add rsp, 24
    001eefb9jmp 0x1eefe0
    001eefbe
    001eefbeloc_1eefbe:
    001eefbecall caml_call_gc
    001eefc3jmp 0x1eef72
    001eefc5
    001eefc5loc_1eefc5:
    001eefc5call caml_call_gc
    001eefcajmp 0x1eee68
    001eefcf
    001eefcfloc_1eefcf:
    001eefcfpush 38
    001eefd1call caml_call_realloc_stack
    001eefd6pop r10
    001eefd8jmp 0x1eee52
    001eee40
    001eefdd
    001eefdd // align 0x10
    001eefe0
    001eefe0Stdlib.Scanf.find_char:
    001eefe0lea r10, [rsp-344]
    001eefe8cmp r10, [r14+40]
    001eefecjb 0x1ef0bc
    001eeff2
    001eeff2loc_1eeff2:
    001eeff2sub rsp, 24
    001eeff6mov rsi, rax
    001eeff9mov [rsp], rsi
    001eeffdmov [rsp+16], rbx
    001ef002cmp r15, [r14]
    001ef005jbe 0x1ef0b2
    001ef00b
    001ef00bloc_1ef00b:
    001ef00bmov rdi, [rbx+48]
    001ef00flea rax, [rip+0x17e16a]
    001ef016mov rax, [rax+544]
    001ef01dmov rax, [rax+24]
    001ef021mov rbx, rsi
    001ef024call Stdlib.Scanf.check_next_char
    001ef029mov rbx, rax
    001ef02ccmp rbx, 185
    001ef033je 0x1ef074
    001ef035mov rax, [rsp+16]
    001ef03amov rax, [rax+48]
    001ef03emov [rsp+8], rax
    001ef043mov rax, [rax+56]
    001ef047call Stdlib.Buffer.add_char
    001ef04cmov rax, [rsp]
    001ef050add rax, -2
    001ef054mov rbx, [rsp+8]
    001ef059mov [rbx+16], 1
    001ef061mov rbx, [rsp+16]
    001ef066add rbx, 24
    001ef06aadd rsp, 24
    001ef06ejmp 0x1ef0d0
    001ef073
    001ef073 90 .
    001ef074
    001ef074loc_1ef074:
    001ef074mov rax, [rsp+16]
    001ef079mov rbx, [rax+48]
    001ef07dmov rax, [rsp]
    001ef081add rax, -2
    001ef085mov [rbx+16], 1
    001ef08dlea rdi, [rip+0x17e0ec]
    001ef094mov rdi, [rdi+560]
    001ef09bcall Stdlib.Scanf.scan_backslash_char
    001ef0a0mov rbx, [rsp+16]
    001ef0a5add rbx, 24
    001ef0a9add rsp, 24
    001ef0adjmp 0x1ef0d0
    001ef0b2
    001ef0b2loc_1ef0b2:
    001ef0b2call caml_call_gc
    001ef0b7jmp 0x1ef00b
    001ef0bc
    001ef0bcloc_1ef0bc:
    001ef0bcpush 36
    001ef0becall caml_call_realloc_stack
    001ef0c3pop r10
    001ef0c5jmp 0x1eeff2
    001eefe0
    001ef0ca
    001ef0ca // align 0x10
    001ef0d0
    001ef0d0Stdlib.Scanf.find_stop:
    001ef0d0lea r10, [rsp-336]
    001ef0d8cmp r10, [r14+40]
    001ef0dcjb 0x1ef195
    001ef0e2
    001ef0e2loc_1ef0e2:
    001ef0e2sub rsp, 16
    001ef0e6mov rsi, rax
    001ef0e9mov [rsp+8], rsi
    001ef0eemov [rsp], rbx
    001ef0f2mov rdi, [rbx+24]
    001ef0f6lea rax, [rip+0x17e083]
    001ef0fdmov rax, [rax+544]
    001ef104mov rax, [rax+24]
    001ef108mov rbx, rsi
    001ef10bcall Stdlib.Scanf.check_next_char
    001ef110cmp rax, 79
    001ef114je 0x1ef170
    001ef116mov [rsp+8], rax
    001ef11bmov eax, 79
    001ef120mov [rsp], rax
    001ef124lea rax, [rip+0x17ebad]
    001ef12bcall Stdlib.Printf.sprintf
    001ef130mov rdi, rax
    001ef133mov rax, [rsp]
    001ef137mov rbx, [rsp+8]
    001ef13ccall caml_apply2
    001ef141sub r15, 24
    001ef145cmp r15, [r14]
    001ef148jb 0x1ef18e
    001ef14a
    001ef14aloc_1ef14a:
    001ef14alea rbx, [r15+8]
    001ef14emov [rbx-8], 2048
    001ef156lea rdi, [rip+0x17e023]
    001ef15dmov rdi, [rdi+8]
    001ef161mov [rbx], rdi
    001ef164mov [rbx+8], rax
    001ef168mov rax, rbx
    001ef16bcall caml_raise_exn
    001ef170
    001ef170loc_1ef170:
    001ef170mov rax, [rsp]
    001ef174mov rbx, [rax+24]
    001ef178mov rax, [rsp+8]
    001ef17dadd rax, -2
    001ef181mov [rbx+16], 1
    001ef189add rsp, 16
    001ef18dret
    001ef18e
    001ef18eloc_1ef18e:
    001ef18ecall caml_call_gc
    001ef193jmp 0x1ef14a
    001ef195
    001ef195loc_1ef195:
    001ef195push 35
    001ef197call caml_call_realloc_stack
    001ef19cpop r10
    001ef19ejmp 0x1ef0e2
    001ef0d0
    001ef1a3
    001ef1a3 // align 0x10
    001ef1b0
    001ef1b0Stdlib.Scanf.scan_caml_string:
    001ef1b0mov rsi, rbx
    001ef1b3sub r15, 136
    001ef1bacmp r15, [r14]
    001ef1bdjb 0x1ef27c
    001ef1c3
    001ef1c3loc_1ef1c3:
    001ef1c3lea rbx, [r15+8]
    001ef1c7mov [rbx-8], 16631
    001ef1cflea rdx, [rip+186]
    001ef1d6mov [rbx], rdx
    001ef1d9mov rdx, 0x10000000000001d
    001ef1e3mov [rbx+8], rdx
    001ef1e7mov [rbx+16], 3321
    001ef1eflea rdx, [rip+570]
    001ef1f6mov [rbx+24], rdx
    001ef1famov rdx, 0x100000000000017
    001ef204mov [rbx+32], rdx
    001ef208mov [rbx+40], 6393
    001ef210lea rdx, [rip+777]
    001ef217mov [rbx+48], rdx
    001ef21bmov rdx, 0x100000000000011
    001ef225mov [rbx+56], rdx
    001ef229mov [rbx+64], 9465
    001ef231lea rdx, [rip+1176]
    001ef238mov [rbx+72], rdx
    001ef23cmov rdx, 0x10000000000000b
    001ef246mov [rbx+80], rdx
    001ef24amov [rbx+88], 12537
    001ef252lea rdx, [rip+1543]
    001ef259mov [rbx+96], rdx
    001ef25dmov rdx, 0x100000000000005
    001ef267mov [rbx+104], rdx
    001ef26bmov rdi, [rdi+24]
    001ef26fmov [rbx+112], rdi
    001ef273mov [rbx+120], rsi
    001ef277jmp 0x1ef290
    001ef27c
    001ef27cloc_1ef27c:
    001ef27ccall caml_call_gc
    001ef281jmp 0x1ef1c3
    001ef1b0
    001ef286
    001ef286 // align 0x10
    001ef290
    001ef290Stdlib.Scanf.find_start:
    001ef290lea r10, [rsp-360]
    001ef298cmp r10, [r14+40]
    001ef29cjb 0x1ef41f
    001ef2a2
    001ef2a2loc_1ef2a2:
    001ef2a2sub rsp, 24
    001ef2a6mov [rsp+8], rax
    001ef2abmov [rsp], rbx
    001ef2afcmp r15, [r14]
    001ef2b2jbe 0x1ef415
    001ef2b8
    001ef2b8loc_1ef2b8:
    001ef2b8mov rbx, [rbx+120]
    001ef2bcmov rax, [rbx+16]
    001ef2c0cmp rax, 1
    001ef2c4je 0x1ef2d0
    001ef2c6mov rax, [rbx+8]
    001ef2cajmp 0x1ef36c
    001ef2cf
    001ef2cf 90 .
    001ef2d0
    001ef2d0loc_1ef2d0:
    001ef2d0mov [rsp+16], rbx
    001ef2d5lea r11, [rip+84]
    001ef2dcpush r11
    001ef2depush [r14+48]
    001ef2e2mov [r14+48], rsp
    001ef2e6mov rbx, [rbx+48]
    001ef2eamov eax, 1
    001ef2efmov rdi, [rbx]
    001ef2f2call rdi
    001ef2f4mov rbx, [rsp+32]
    001ef2f9mov [rbx+8], rax
    001ef2fdmov [rbx+16], 3
    001ef305mov rdi, [rbx+24]
    001ef309add rdi, 2
    001ef30dmov [rbx+24], rdi
    001ef311cmp rax, 21
    001ef315jne 0x1ef323
    001ef317mov rdi, [rbx+32]
    001ef31badd rdi, 2
    001ef31fmov [rbx+32], rdi
    001ef323
    001ef323loc_1ef323:
    001ef323pop [r14+48]
    001ef327add rsp, 8
    001ef32bjmp 0x1ef36c
    001ef32d
    001ef32d 0f 1f 00 ...
    001ef330lea rbx, [rip+0x13e2e1]
    001ef337mov rbx, [rbx+88]
    001ef33bcmp rax, rbx
    001ef33ejne 0x1ef364
    001ef340mov rbx, [rsp+16]
    001ef345mov [rbx+8], 1
    001ef34dmov [rbx+16], 1
    001ef355mov [rbx], 3
    001ef35cmov eax, 1
    001ef361jmp 0x1ef36c
    001ef363
    001ef363 90 .
    001ef364
    001ef364loc_1ef364:
    001ef364call caml_reraise_exn
    001ef369nop [rax]
    001ef36c
    001ef36cloc_1ef36c:
    001ef36cmov rbx, [rbx]
    001ef36fcmp rbx, 1
    001ef373je 0x1ef388
    001ef375lea rax, [rip+0x13e29c]
    001ef37cmov rax, [rax+88]
    001ef380call caml_raise_exn
    001ef385nop [rax]
    001ef388
    001ef388loc_1ef388:
    001ef388cmp rax, 69
    001ef38cje 0x1ef3e8
    001ef38emov [rsp+8], rax
    001ef393mov eax, 69
    001ef398mov [rsp], rax
    001ef39clea rax, [rip+0x17e935]
    001ef3a3call Stdlib.Printf.sprintf
    001ef3a8mov rdi, rax
    001ef3abmov rax, [rsp]
    001ef3afmov rbx, [rsp+8]
    001ef3b4call caml_apply2
    001ef3b9sub r15, 24
    001ef3bdcmp r15, [r14]
    001ef3c0jb 0x1ef40e
    001ef3c2
    001ef3c2loc_1ef3c2:
    001ef3c2lea rbx, [r15+8]
    001ef3c6mov [rbx-8], 2048
    001ef3celea rdi, [rip+0x17ddab]
    001ef3d5mov rdi, [rdi+8]
    001ef3d9mov [rbx], rdi
    001ef3dcmov [rbx+8], rax
    001ef3e0mov rax, rbx
    001ef3e3call caml_raise_exn
    001ef3e8
    001ef3e8loc_1ef3e8:
    001ef3e8mov rbx, [rsp]
    001ef3ecmov rdi, [rbx+120]
    001ef3f0mov rax, [rsp+8]
    001ef3f5add rax, -2
    001ef3f9mov [rdi+16], 1
    001ef401add rbx, 24
    001ef405add rsp, 24
    001ef409jmp 0x1ef430
    001ef40e
    001ef40eloc_1ef40e:
    001ef40ecall caml_call_gc
    001ef413jmp 0x1ef3c2
    001ef415
    001ef415loc_1ef415:
    001ef415call caml_call_gc
    001ef41ajmp 0x1ef2b8
    001ef41f
    001ef41floc_1ef41f:
    001ef41fpush 38
    001ef421call caml_call_realloc_stack
    001ef426pop r10
    001ef428jmp 0x1ef2a2
    001ef290
    001ef42d
    001ef42d // align 0x10
    001ef430
    001ef430Stdlib.Scanf.find_stop:
    001ef430lea r10, [rsp-344]
    001ef438cmp r10, [r14+40]
    001ef43cjb 0x1ef510
    001ef442
    001ef442loc_1ef442:
    001ef442sub rsp, 24
    001ef446
    001ef446loc_1ef446:
    001ef446mov rsi, rax
    001ef449mov [rsp], rsi
    001ef44dmov [rsp+16], rbx
    001ef452cmp r15, [r14]
    001ef455jbe 0x1ef506
    001ef45b
    001ef45bloc_1ef45b:
    001ef45bmov rdi, [rbx+96]
    001ef45flea rax, [rip+0x17dd1a]
    001ef466mov rax, [rax+552]
    001ef46dmov rax, [rax+24]
    001ef471mov rbx, rsi
    001ef474call Stdlib.Scanf.check_next_char
    001ef479mov rbx, rax
    001ef47ccmp rbx, 69
    001ef480je 0x1ef4e8
    001ef482cmp rbx, 185
    001ef489je 0x1ef4c0
    001ef48bmov rax, [rsp+16]
    001ef490mov rax, [rax+96]
    001ef494mov [rsp+8], rax
    001ef499mov rax, [rax+56]
    001ef49dcall Stdlib.Buffer.add_char
    001ef4a2mov rax, [rsp]
    001ef4a6add rax, -2
    001ef4aamov rbx, [rsp+8]
    001ef4afmov [rbx+16], 1
    001ef4b7mov rbx, [rsp+16]
    001ef4bcjmp 0x1ef446
    001ef4be
    001ef4be 66 90 f.
    001ef4c0
    001ef4c0loc_1ef4c0:
    001ef4c0mov rbx, [rsp+16]
    001ef4c5mov rdi, [rbx+96]
    001ef4c9mov rax, [rsp]
    001ef4cdadd rax, -2
    001ef4d1mov [rdi+16], 1
    001ef4d9add rbx, 24
    001ef4ddadd rsp, 24
    001ef4e1jmp 0x1ef520
    001ef4e6
    001ef4e6 66 90 f.
    001ef4e8
    001ef4e8loc_1ef4e8:
    001ef4e8mov rax, [rsp+16]
    001ef4edmov rbx, [rax+96]
    001ef4f1mov rax, [rsp]
    001ef4f5add rax, -2
    001ef4f9mov [rbx+16], 1
    001ef501add rsp, 24
    001ef505ret
    001ef506
    001ef506loc_1ef506:
    001ef506call caml_call_gc
    001ef50bjmp 0x1ef45b
    001ef510
    001ef510loc_1ef510:
    001ef510push 36
    001ef512call caml_call_realloc_stack
    001ef517pop r10
    001ef519jmp 0x1ef442
    001ef430
    001ef51e
    001ef51e // align 0x10
    001ef520
    001ef520Stdlib.Scanf.scan_backslash:
    001ef520lea r10, [rsp-344]
    001ef528cmp r10, [r14+40]
    001ef52cjb 0x1ef6b4
    001ef532
    001ef532loc_1ef532:
    001ef532sub rsp, 24
    001ef536
    001ef536loc_1ef536:
    001ef536mov rsi, rax
    001ef539mov [rsp], rsi
    001ef53dmov [rsp+16], rbx
    001ef542cmp r15, [r14]
    001ef545jbe 0x1ef6aa
    001ef54b
    001ef54bloc_1ef54b:
    001ef54bmov rdi, [rbx+72]
    001ef54flea rax, [rip+0x17dc2a]
    001ef556mov rax, [rax+552]
    001ef55dmov rax, [rax+24]
    001ef561mov rbx, rsi
    001ef564call Stdlib.Scanf.check_next_char
    001ef569cmp rax, 21
    001ef56dje 0x1ef684
    001ef573cmp rax, 27
    001ef577je 0x1ef65c
    001ef57dmov rax, [rsp+16]
    001ef582mov rbx, [rax+72]
    001ef586lea rax, [rip+0x17dbf3]
    001ef58dmov rdi, [rax+560]
    001ef594mov rax, [rsp]
    001ef598call Stdlib.Scanf.scan_backslash_char
    001ef59dmov rbx, rax
    001ef5a0mov [rsp], rbx
    001ef5a4mov rax, [rsp+16]
    001ef5a9mov rdi, [rax+72]
    001ef5adlea rax, [rip+0x17dbcc]
    001ef5b4mov rax, [rax+552]
    001ef5bbmov rax, [rax+24]
    001ef5bfcall Stdlib.Scanf.check_next_char
    001ef5c4mov rbx, rax
    001ef5c7cmp rbx, 69
    001ef5cbje 0x1ef63c
    001ef5cdcmp rbx, 185
    001ef5d4je 0x1ef614
    001ef5d6mov rax, [rsp+16]
    001ef5dbmov rax, [rax+72]
    001ef5dfmov [rsp+8], rax
    001ef5e4mov rax, [rax+56]
    001ef5e8call Stdlib.Buffer.add_char
    001ef5edmov rax, [rsp]
    001ef5f1add rax, -2
    001ef5f5mov rbx, [rsp+8]
    001ef5famov [rbx+16], 1
    001ef602mov rbx, [rsp+16]
    001ef607add rbx, -24
    001ef60badd rsp, 24
    001ef60fjmp 0x1ef430
    001ef614
    001ef614loc_1ef614:
    001ef614mov rbx, [rsp+16]
    001ef619mov rdi, [rbx+72]
    001ef61dmov rax, [rsp]
    001ef621add rax, -2
    001ef625mov [rdi+16], 1
    001ef62dadd rbx, -24
    001ef631add rbx, 24
    001ef635jmp 0x1ef536
    001ef63a
    001ef63a 66 90 f.
    001ef63c
    001ef63cloc_1ef63c:
    001ef63cmov rax, [rsp+16]
    001ef641mov rbx, [rax+72]
    001ef645mov rax, [rsp]
    001ef649add rax, -2
    001ef64dmov [rbx+16], 1
    001ef655add rsp, 24
    001ef659ret
    001ef65a
    001ef65a 66 90 f.
    001ef65c
    001ef65cloc_1ef65c:
    001ef65cmov rbx, [rsp+16]
    001ef661mov rdi, [rbx+72]
    001ef665mov rax, [rsp]
    001ef669add rax, -2
    001ef66dmov [rdi+16], 1
    001ef675add rbx, 24
    001ef679add rsp, 24
    001ef67djmp 0x1ef6d0
    001ef682
    001ef682 66 90 f.
    001ef684
    001ef684loc_1ef684:
    001ef684mov rbx, [rsp+16]
    001ef689mov rdi, [rbx+72]
    001ef68dmov rax, [rsp]
    001ef691add rax, -2
    001ef695mov [rdi+16], 1
    001ef69dadd rbx, 48
    001ef6a1add rsp, 24
    001ef6a5jmp 0x1ef860
    001ef6aa
    001ef6aaloc_1ef6aa:
    001ef6aacall caml_call_gc
    001ef6afjmp 0x1ef54b
    001ef6b4
    001ef6b4loc_1ef6b4:
    001ef6b4push 36
    001ef6b6call caml_call_realloc_stack
    001ef6bbpop r10
    001ef6bdjmp 0x1ef532
    001ef520
    001ef6c2
    001ef6c2 // align 0x10
    001ef6d0
    001ef6d0Stdlib.Scanf.skip_newline:
    001ef6d0lea r10, [rsp-344]
    001ef6d8cmp r10, [r14+40]
    001ef6dcjb 0x1ef844
    001ef6e2
    001ef6e2loc_1ef6e2:
    001ef6e2sub rsp, 24
    001ef6e6mov rsi, rax
    001ef6e9mov [rsp], rsi
    001ef6edmov [rsp+16], rbx
    001ef6f2cmp r15, [r14]
    001ef6f5jbe 0x1ef83a
    001ef6fb
    001ef6fbloc_1ef6fb:
    001ef6fbmov rdi, [rbx+48]
    001ef6fflea rax, [rip+0x17da7a]
    001ef706mov rax, [rax+552]
    001ef70dmov rax, [rax+24]
    001ef711mov rbx, rsi
    001ef714call Stdlib.Scanf.check_next_char
    001ef719cmp rax, 21
    001ef71dje 0x1ef814
    001ef723mov rax, [rsp+16]
    001ef728mov rax, [rax+48]
    001ef72cmov [rsp+8], rax
    001ef731mov ebx, 27
    001ef736mov rax, [rax+56]
    001ef73acall Stdlib.Buffer.add_char
    001ef73fmov rbx, [rsp]
    001ef743add rbx, -2
    001ef747mov rax, [rsp+8]
    001ef74cmov [rax+16], 1
    001ef754mov [rsp], rbx
    001ef758mov rax, [rsp+16]
    001ef75dmov rdi, [rax+48]
    001ef761lea rax, [rip+0x17da18]
    001ef768mov rax, [rax+552]
    001ef76fmov rax, [rax+24]
    001ef773call Stdlib.Scanf.check_next_char
    001ef778mov rbx, rax
    001ef77bcmp rbx, 69
    001ef77fje 0x1ef7f4
    001ef781cmp rbx, 185
    001ef788je 0x1ef7c8
    001ef78amov rax, [rsp+16]
    001ef78fmov rax, [rax+48]
    001ef793mov [rsp+8], rax
    001ef798mov rax, [rax+56]
    001ef79ccall Stdlib.Buffer.add_char
    001ef7a1mov rax, [rsp]
    001ef7a5add rax, -2
    001ef7a9mov rbx, [rsp+8]
    001ef7aemov [rbx+16], 1
    001ef7b6mov rbx, [rsp+16]
    001ef7bbadd rbx, -48
    001ef7bfadd rsp, 24
    001ef7c3jmp 0x1ef430
    001ef7c8
    001ef7c8loc_1ef7c8:
    001ef7c8mov rbx, [rsp+16]
    001ef7cdmov rdi, [rbx+48]
    001ef7d1mov rax, [rsp]
    001ef7d5add rax, -2
    001ef7d9mov [rdi+16], 1
    001ef7e1add rbx, -48
    001ef7e5add rbx, 24
    001ef7e9add rsp, 24
    001ef7edjmp 0x1ef520
    001ef7f2
    001ef7f2 66 90 f.
    001ef7f4
    001ef7f4loc_1ef7f4:
    001ef7f4mov rax, [rsp+16]
    001ef7f9mov rbx, [rax+48]
    001ef7fdmov rax, [rsp]
    001ef801add rax, -2
    001ef805mov [rbx+16], 1
    001ef80dadd rsp, 24
    001ef811ret
    001ef812
    001ef812 66 90 f.
    001ef814
    001ef814loc_1ef814:
    001ef814mov rbx, [rsp+16]
    001ef819mov rdi, [rbx+48]
    001ef81dmov rax, [rsp]
    001ef821add rax, -2
    001ef825mov [rdi+16], 1
    001ef82dadd rbx, 24
    001ef831add rsp, 24
    001ef835jmp 0x1ef860
    001ef83a
    001ef83aloc_1ef83a:
    001ef83acall caml_call_gc
    001ef83fjmp 0x1ef6fb
    001ef844
    001ef844loc_1ef844:
    001ef844push 36
    001ef846call caml_call_realloc_stack
    001ef84bpop r10
    001ef84djmp 0x1ef6e2
    001ef6d0
    001ef852
    001ef852 // align 0x10
    001ef860
    001ef860Stdlib.Scanf.skip_spaces:
    001ef860lea r10, [rsp-344]
    001ef868cmp r10, [r14+40]
    001ef86cjb 0x1ef99c
    001ef872
    001ef872loc_1ef872:
    001ef872sub rsp, 24
    001ef876
    001ef876loc_1ef876:
    001ef876mov rsi, rax
    001ef879mov [rsp], rsi
    001ef87dmov [rsp+16], rbx
    001ef882cmp r15, [r14]
    001ef885jbe 0x1ef992
    001ef88b
    001ef88bloc_1ef88b:
    001ef88bmov rdi, [rbx+24]
    001ef88flea rax, [rip+0x17d8ea]
    001ef896mov rax, [rax+552]
    001ef89dmov rax, [rax+24]
    001ef8a1mov rbx, rsi
    001ef8a4call Stdlib.Scanf.check_next_char
    001ef8a9cmp rax, 65
    001ef8adje 0x1ef974
    001ef8b3mov rax, [rsp+16]
    001ef8b8mov rdi, [rax+24]
    001ef8bclea rax, [rip+0x17d8bd]
    001ef8c3mov rax, [rax+552]
    001ef8camov rax, [rax+24]
    001ef8cemov rbx, [rsp]
    001ef8d2call Stdlib.Scanf.check_next_char
    001ef8d7mov rbx, rax
    001ef8dacmp rbx, 69
    001ef8deje 0x1ef954
    001ef8e0cmp rbx, 185
    001ef8e7je 0x1ef928
    001ef8e9mov rax, [rsp+16]
    001ef8eemov rax, [rax+24]
    001ef8f2mov [rsp+8], rax
    001ef8f7mov rax, [rax+56]
    001ef8fbcall Stdlib.Buffer.add_char
    001ef900mov rax, [rsp]
    001ef904add rax, -2
    001ef908mov rbx, [rsp+8]
    001ef90dmov [rbx+16], 1
    001ef915mov rbx, [rsp+16]
    001ef91aadd rbx, -72
    001ef91eadd rsp, 24
    001ef922jmp 0x1ef430
    001ef927
    001ef927 90 .
    001ef928
    001ef928loc_1ef928:
    001ef928mov rbx, [rsp+16]
    001ef92dmov rdi, [rbx+24]
    001ef931mov rax, [rsp]
    001ef935add rax, -2
    001ef939mov [rdi+16], 1
    001ef941add rbx, -72
    001ef945add rbx, 24
    001ef949add rsp, 24
    001ef94djmp 0x1ef520
    001ef952
    001ef952 66 90 f.
    001ef954
    001ef954loc_1ef954:
    001ef954mov rax, [rsp+16]
    001ef959mov rbx, [rax+24]
    001ef95dmov rax, [rsp]
    001ef961add rax, -2
    001ef965mov [rbx+16], 1
    001ef96dadd rsp, 24
    001ef971ret
    001ef972
    001ef972 66 90 f.
    001ef974
    001ef974loc_1ef974:
    001ef974mov rbx, [rsp+16]
    001ef979mov rdi, [rbx+24]
    001ef97dmov rax, [rsp]
    001ef981add rax, -2
    001ef985mov [rdi+16], 1
    001ef98djmp 0x1ef876
    001ef992
    001ef992loc_1ef992:
    001ef992call caml_call_gc
    001ef997jmp 0x1ef88b
    001ef99c
    001ef99cloc_1ef99c:
    001ef99cpush 36
    001ef99ecall caml_call_realloc_stack
    001ef9a3pop r10
    001ef9a5jmp 0x1ef872
    001ef860
    001ef9aa
    001ef9aa // align 0x10
    001ef9b0
    001ef9b0Stdlib.Scanf.scan_bool:
    001ef9b0lea r10, [rsp-344]
    001ef9b8cmp r10, [r14+40]
    001ef9bcjb 0x1efb1c
    001ef9c2
    001ef9c2loc_1ef9c2:
    001ef9c2sub rsp, 8
    001ef9c6mov rdi, rax
    001ef9c9mov rax, [rdi+16]
    001ef9cdcmp rax, 1
    001ef9d1je 0x1ef9dc
    001ef9d3mov rax, [rdi+8]
    001ef9d7jmp 0x1efa74
    001ef9dc
    001ef9dcloc_1ef9dc:
    001ef9dcmov [rsp], rdi
    001ef9e0lea r11, [rip+81]
    001ef9e7push r11
    001ef9e9push [r14+48]
    001ef9edmov [r14+48], rsp
    001ef9f1mov rbx, [rdi+48]
    001ef9f5mov eax, 1
    001ef9famov rdi, [rbx]
    001ef9fdcall rdi
    001ef9ffmov rdi, [rsp+16]
    001efa04mov [rdi+8], rax
    001efa08mov [rdi+16], 3
    001efa10mov rbx, [rdi+24]
    001efa14add rbx, 2
    001efa18mov [rdi+24], rbx
    001efa1ccmp rax, 21
    001efa20jne 0x1efa2e
    001efa22mov rbx, [rdi+32]
    001efa26add rbx, 2
    001efa2amov [rdi+32], rbx
    001efa2e
    001efa2eloc_1efa2e:
    001efa2epop [r14+48]
    001efa32add rsp, 8
    001efa36jmp 0x1efa74
    001efa38lea rbx, [rip+0x13dbd9]
    001efa3fmov rbx, [rbx+88]
    001efa43cmp rax, rbx
    001efa46jne 0x1efa6c
    001efa48mov rdi, [rsp]
    001efa4cmov [rdi+8], 1
    001efa54mov [rdi+16], 1
    001efa5cmov [rdi], 3
    001efa63mov eax, 1
    001efa68jmp 0x1efa74
    001efa6a
    001efa6a 66 90 f.
    001efa6c
    001efa6cloc_1efa6c:
    001efa6ccall caml_reraise_exn
    001efa71nop [rax]
    001efa74
    001efa74loc_1efa74:
    001efa74mov rbx, [rdi]
    001efa77cmp rbx, 1
    001efa7bje 0x1efa90
    001efa7dlea rax, [rip+0x13db94]
    001efa84mov rax, [rax+88]
    001efa88call caml_raise_exn
    001efa8dnop [rax]
    001efa90
    001efa90loc_1efa90:
    001efa90cmp rax, 205
    001efa96je 0x1efaf4
    001efa98cmp rax, 233
    001efa9eje 0x1efaec
    001efaa0mov [rsp], rax
    001efaa4lea rax, [rip+0x17dc15]
    001efaabcall Stdlib.Printf.sprintf
    001efab0mov rbx, rax
    001efab3mov rdi, [rbx]
    001efab6mov rax, [rsp]
    001efabacall rdi
    001efabcsub r15, 24
    001efac0cmp r15, [r14]
    001efac3jb 0x1efb15
    001efac5
    001efac5loc_1efac5:
    001efac5lea rbx, [r15+8]
    001efac9mov [rbx-8], 2048
    001efad1lea rdi, [rip+0x17d6a8]
    001efad8mov rdi, [rdi+8]
    001efadcmov [rbx], rdi
    001efadfmov [rbx+8], rax
    001efae3mov rax, rbx
    001efae6call caml_raise_exn
    001efaebnop
    001efaec
    001efaecloc_1efaec:
    001efaecmov ebx, 9
    001efaf1jmp 0x1efaf9
    001efaf3
    001efaf3 90 .
    001efaf4
    001efaf4loc_1efaf4:
    001efaf4mov ebx, 11
    001efaf9
    001efaf9loc_1efaf9:
    001efaf9lea rax, [rip+0x17d680]
    001efb00mov rsi, [rax+480]
    001efb07mov eax, 1
    001efb0cadd rsp, 8
    001efb10jmp 0x1edff0
    001efb15
    001efb15loc_1efb15:
    001efb15call caml_call_gc
    001efb1ajmp 0x1efac5
    001efb1c
    001efb1cloc_1efb1c:
    001efb1cpush 36
    001efb1ecall caml_call_realloc_stack
    001efb23pop r10
    001efb25jmp 0x1ef9c2
    001ef9b0
    001efb2a
    001efb2a // align 0x10
    001efb30
    001efb30Stdlib.Scanf.scan_chars_in_char_set:
    001efb30lea r10, [rsp-352]
    001efb38cmp r10, [r14+40]
    001efb3cjb 0x1efd0e
    001efb42
    001efb42loc_1efb42:
    001efb42sub rsp, 16
    001efb46mov rcx, rax
    001efb49mov rax, rdi
    001efb4csub r15, 56
    001efb50cmp r15, [r14]
    001efb53jb 0x1efd04
    001efb59
    001efb59loc_1efb59:
    001efb59lea rdi, [r15+8]
    001efb5dmov [rdi-8], 6391
    001efb65lea r8, [rip-0xf8b4c]
    001efb6cmov [rdi], r8
    001efb6fmov r8, 0x200000000000007
    001efb79mov [rdi+8], r8
    001efb7dlea r8, [rip+412]
    001efb84mov [rdi+16], r8
    001efb88mov rdx, [rdx+24]
    001efb8cmov [rdi+24], rdx
    001efb90mov [rdi+32], rcx
    001efb94mov [rdi+40], rsi
    001efb98test bl, 1
    001efb9bje 0x1efbb0
    001efb9dmov rbx, -1
    001efba4add rsp, 16
    001efba8jmp 0x1efd20
    001efbad
    001efbad 0f 1f 00 ...
    001efbb0
    001efbb0loc_1efbb0:
    001efbb0mov [rsp+8], rsi
    001efbb5mov rbx, [rbx]
    001efbb8mov [rsp], rbx
    001efbbccall Stdlib.Scanf.scan_chars
    001efbc1mov rdi, [rsp+8]
    001efbc6mov rax, [rdi]
    001efbc9cmp rax, 1
    001efbcdje 0x1efbdc
    001efbcfmov eax, 1
    001efbd4add rsp, 16
    001efbd8ret
    001efbd9
    001efbd9 0f 1f 00 ...
    001efbdc
    001efbdcloc_1efbdc:
    001efbdcmov rax, [rdi+16]
    001efbe0cmp rax, 1
    001efbe4je 0x1efbf0
    001efbe6mov rax, [rdi+8]
    001efbeajmp 0x1efc8c
    001efbef
    001efbef 90 .
    001efbf0
    001efbf0loc_1efbf0:
    001efbf0mov [rsp+8], rdi
    001efbf5lea r11, [rip+84]
    001efbfcpush r11
    001efbfepush [r14+48]
    001efc02mov [r14+48], rsp
    001efc06mov rbx, [rdi+48]
    001efc0amov eax, 1
    001efc0fmov rdi, [rbx]
    001efc12call rdi
    001efc14mov rdi, [rsp+24]
    001efc19mov [rdi+8], rax
    001efc1dmov [rdi+16], 3
    001efc25mov rbx, [rdi+24]
    001efc29add rbx, 2
    001efc2dmov [rdi+24], rbx
    001efc31cmp rax, 21
    001efc35jne 0x1efc43
    001efc37mov rbx, [rdi+32]
    001efc3badd rbx, 2
    001efc3fmov [rdi+32], rbx
    001efc43
    001efc43loc_1efc43:
    001efc43pop [r14+48]
    001efc47add rsp, 8
    001efc4bjmp 0x1efc8c
    001efc4d
    001efc4d 0f 1f 00 ...
    001efc50lea rbx, [rip+0x13d9c1]
    001efc57mov rbx, [rbx+88]
    001efc5bcmp rax, rbx
    001efc5ejne 0x1efc84
    001efc60mov rdi, [rsp+8]
    001efc65mov [rdi+8], 1
    001efc6dmov [rdi+16], 1
    001efc75mov [rdi], 3
    001efc7cmov eax, 1
    001efc81jmp 0x1efc8c
    001efc83
    001efc83 90 .
    001efc84
    001efc84loc_1efc84:
    001efc84call caml_reraise_exn
    001efc89nop [rax]
    001efc8c
    001efc8cloc_1efc8c:
    001efc8cmov rbx, [rsp]
    001efc90cmp rbx, rax
    001efc93jne 0x1efca8
    001efc95mov [rdi+16], 1
    001efc9dmov eax, 1
    001efca2add rsp, 16
    001efca6ret
    001efca7
    001efca7 90 .
    001efca8
    001efca8loc_1efca8:
    001efca8mov [rsp+8], rax
    001efcadmov [rsp], rbx
    001efcb1lea rax, [rip+0x17e020]
    001efcb8call Stdlib.Printf.sprintf
    001efcbdmov rdi, rax
    001efcc0mov rax, [rsp]
    001efcc4mov rbx, [rsp+8]
    001efcc9call caml_apply2
    001efccesub r15, 24
    001efcd2cmp r15, [r14]
    001efcd5jb 0x1efcfd
    001efcd7
    001efcd7loc_1efcd7:
    001efcd7lea rbx, [r15+8]
    001efcdbmov [rbx-8], 2048
    001efce3lea rdi, [rip+0x17d496]
    001efceamov rdi, [rdi+8]
    001efceemov [rbx], rdi
    001efcf1mov [rbx+8], rax
    001efcf5mov rax, rbx
    001efcf8call caml_raise_exn
    001efcfd
    001efcfdloc_1efcfd:
    001efcfdcall caml_call_gc
    001efd02jmp 0x1efcd7
    001efd04
    001efd04loc_1efd04:
    001efd04call caml_call_gc
    001efd09jmp 0x1efb59
    001efd0e
    001efd0eloc_1efd0e:
    001efd0epush 37
    001efd10call caml_call_realloc_stack
    001efd15pop r10
    001efd17jmp 0x1efb42
    001efb30
    001efd1c
    001efd1c // align 0x10
    001efd20
    001efd20Stdlib.Scanf.scan_chars:
    001efd20lea r10, [rsp-368]
    001efd28cmp r10, [r14+40]
    001efd2cjb 0x1efea0
    001efd32
    001efd32loc_1efd32:
    001efd32sub rsp, 32
    001efd36
    001efd36loc_1efd36:
    001efd36mov [rsp+8], rax
    001efd3bmov [rsp+16], rbx
    001efd40mov [rsp+24], rdi
    001efd45cmp r15, [r14]
    001efd48jbe 0x1efe96
    001efd4e
    001efd4eloc_1efd4e:
    001efd4emov rax, [rdi+40]
    001efd52mov rbx, [rax+16]
    001efd56cmp rbx, 1
    001efd5aje 0x1efd68
    001efd5cmov rbx, [rax+8]
    001efd60jmp 0x1efe03
    001efd65
    001efd65 0f 1f 00 ...
    001efd68
    001efd68loc_1efd68:
    001efd68mov [rsp], rax
    001efd6clea r11, [rip+81]
    001efd73push r11
    001efd75push [r14+48]
    001efd79mov [r14+48], rsp
    001efd7dmov rbx, [rax+48]
    001efd81mov eax, 1
    001efd86mov rdi, [rbx]
    001efd89call rdi
    001efd8bmov rdi, [rsp+16]
    001efd90mov [rdi+8], rax
    001efd94mov [rdi+16], 3
    001efd9cmov rbx, [rdi+24]
    001efda0add rbx, 2
    001efda4mov [rdi+24], rbx
    001efda8cmp rax, 21
    001efdacjne 0x1efdba
    001efdaemov rbx, [rdi+32]
    001efdb2add rbx, 2
    001efdb6mov [rdi+32], rbx
    001efdba
    001efdbaloc_1efdba:
    001efdbapop [r14+48]
    001efdbeadd rsp, 8
    001efdc2jmp 0x1efe00
    001efdc4lea rbx, [rip+0x13d84d]
    001efdcbmov rbx, [rbx+88]
    001efdcfcmp rax, rbx
    001efdd2jne 0x1efdf8
    001efdd4mov rax, [rsp]
    001efdd8mov [rax+8], 1
    001efde0mov [rax+16], 1
    001efde8mov [rax], 3
    001efdefmov eax, 1
    001efdf4jmp 0x1efe00
    001efdf6
    001efdf6 66 90 f.
    001efdf8
    001efdf8loc_1efdf8:
    001efdf8call caml_reraise_exn
    001efdfdnop [rax]
    001efe00
    001efe00loc_1efe00:
    001efe00mov rbx, rax
    001efe03
    001efe03loc_1efe03:
    001efe03mov rdi, [rsp+8]
    001efe08cmp rdi, 1
    001efe0cjle 0x1efe8c
    001efe0emov rsi, [rsp+24]
    001efe13mov rax, [rsi+40]
    001efe17mov rax, [rax]
    001efe1acmp rax, 1
    001efe1ejne 0x1efe8c
    001efe20mov [rsp], rbx
    001efe24mov [rsp+24], rsi
    001efe29mov [rsp+8], rdi
    001efe2emov rax, [rsi+32]
    001efe32call camlCamlinternalFormat.is_in_char_set_478
    001efe37cmp rax, 1
    001efe3bje 0x1efe8c
    001efe3dmov rbx, [rsp]
    001efe41mov rax, [rsp+16]
    001efe46cmp rbx, rax
    001efe49je 0x1efe8c
    001efe4bmov [rsp+16], rax
    001efe50mov rax, [rsp+24]
    001efe55mov rax, [rax+40]
    001efe59mov [rsp], rax
    001efe5dmov rax, [rax+56]
    001efe61call Stdlib.Buffer.add_char
    001efe66mov rax, [rsp]
    001efe6amov [rax+16], 1
    001efe72mov rax, [rsp+8]
    001efe77add rax, -2
    001efe7bmov rbx, [rsp+16]
    001efe80mov rdi, [rsp+24]
    001efe85jmp 0x1efd36
    001efe8a
    001efe8a 66 90 f.
    001efe8c
    001efe8cloc_1efe8c:
    001efe8cmov eax, 1
    001efe91add rsp, 32
    001efe95ret
    001efe96
    001efe96loc_1efe96:
    001efe96call caml_call_gc
    001efe9bjmp 0x1efd4e
    001efea0
    001efea0loc_1efea0:
    001efea0push 39
    001efea2call caml_call_realloc_stack
    001efea7pop r10
    001efea9jmp 0x1efd32
    001efd20
    001efeae
    001efeae // align 0x10
    001efeb0
    001efeb0Stdlib.Scanf.scanf_bad_input:
    001efeb0lea r10, [rsp-336]
    001efeb8cmp r10, [r14+40]
    001efebcjb 0x1eff74
    001efec2
    001efec2loc_1efec2:
    001efec2sub rsp, 16
    001efec6lea rdi, [rip+0x17d2b3]
    001efecdmov rdi, [rdi+8]
    001efed1mov rsi, [rbx]
    001efed4cmp rsi, rdi
    001efed7jne 0x1efee0
    001efed9mov rbx, [rbx+8]
    001efeddjmp 0x1eff00
    001efedf
    001efedf 90 .
    001efee0
    001efee0loc_1efee0:
    001efee0lea rdi, [rip+0x13d731]
    001efee7mov rdi, [rdi+48]
    001efeebcmp rsi, rdi
    001efeeejne 0x1efef8
    001efef0mov rbx, [rbx+8]
    001efef4jmp 0x1eff00
    001efef6
    001efef6 66 90 f.
    001efef8
    001efef8loc_1efef8:
    001efef8mov rax, rbx
    001efefbcall caml_raise_exn
    001eff00
    001eff00loc_1eff00:
    001eff00mov rdi, [rax+16]
    001eff04cmp rdi, 1
    001eff08je 0x1eff14
    001eff0amov rax, [rax+24]
    001eff0eadd rax, -2
    001eff12jmp 0x1eff18
    001eff14
    001eff14loc_1eff14:
    001eff14mov rax, [rax+24]
    001eff18
    001eff18loc_1eff18:
    001eff18mov [rsp+8], rbx
    001eff1dmov [rsp], rax
    001eff21lea rax, [rip+0x17d678]
    001eff28call Stdlib.Printf.sprintf
    001eff2dmov rdi, rax
    001eff30mov rax, [rsp]
    001eff34mov rbx, [rsp+8]
    001eff39call caml_apply2
    001eff3esub r15, 24
    001eff42cmp r15, [r14]
    001eff45jb 0x1eff6d
    001eff47
    001eff47loc_1eff47:
    001eff47lea rbx, [r15+8]
    001eff4bmov [rbx-8], 2048
    001eff53lea rdi, [rip+0x17d226]
    001eff5amov rdi, [rdi+8]
    001eff5emov [rbx], rdi
    001eff61mov [rbx+8], rax
    001eff65mov rax, rbx
    001eff68call caml_raise_exn
    001eff6d
    001eff6dloc_1eff6d:
    001eff6dcall caml_call_gc
    001eff72jmp 0x1eff47
    001eff74
    001eff74loc_1eff74:
    001eff74push 35
    001eff76call caml_call_realloc_stack
    001eff7bpop r10
    001eff7djmp 0x1efec2
    001efeb0