File hevea_f46f610a6b0078f4aa208dda361f21de574cc56ad64b32889301afc466d33979.elf
Function:
    001ebe30
    001ebe30Stdlib.Scanf.scan_hex_float:
    001ebe30lea r10, [rsp-368]
    001ebe38cmp r10, [r14+40]
    001ebe3cjb 0x1ecd89
    001ebe42
    001ebe42loc_1ebe42:
    001ebe42sub rsp, 32
    001ebe46cmp rax, 1
    001ebe4aje 0x1ebf0c
    001ebe50mov [rsp+8], rbx
    001ebe55mov [rsp], rax
    001ebe59mov rax, [rdi+16]
    001ebe5dcmp rax, 1
    001ebe61jne 0x1ebefc
    001ebe67mov [rsp+24], rdi
    001ebe6clea r11, [rip+81]
    001ebe73push r11
    001ebe75push [r14+48]
    001ebe79mov [r14+48], rsp
    001ebe7dmov rbx, [rdi+48]
    001ebe81mov eax, 1
    001ebe86mov rdi, [rbx]
    001ebe89call rdi
    001ebe8bmov rdi, [rsp+40]
    001ebe90mov [rdi+8], rax
    001ebe94mov [rdi+16], 3
    001ebe9cmov rbx, [rdi+24]
    001ebea0add rbx, 2
    001ebea4mov [rdi+24], rbx
    001ebea8cmp rax, 21
    001ebeacjne 0x1ebeba
    001ebeaemov rax, [rdi+32]
    001ebeb2add rax, 2
    001ebeb6mov [rdi+32], rax
    001ebeba
    001ebebaloc_1ebeba:
    001ebebapop [r14+48]
    001ebebeadd rsp, 8
    001ebec2jmp 0x1ebefc
    001ebec4lea rbx, [rip+0x14174d]
    001ebecbmov rbx, [rbx+88]
    001ebecfcmp rax, rbx
    001ebed2jne 0x1ebef4
    001ebed4mov rdi, [rsp+24]
    001ebed9mov [rdi+8], 1
    001ebee1mov [rdi+16], 1
    001ebee9mov [rdi], 3
    001ebef0jmp 0x1ebefc
    001ebef2
    001ebef2 66 90 f.
    001ebef4
    001ebef4loc_1ebef4:
    001ebef4call caml_reraise_exn
    001ebef9nop [rax]
    001ebefc
    001ebefcloc_1ebefc:
    001ebefcmov rax, [rdi]
    001ebeffcmp rax, 1
    001ebf03jne 0x1ebf0c
    001ebf05mov [rsp+24], rdi
    001ebf0ajmp 0x1ebf44
    001ebf0c
    001ebf0cloc_1ebf0c:
    001ebf0csub r15, 24
    001ebf10cmp r15, [r14]
    001ebf13jb 0x1ecd7f
    001ebf19
    001ebf19loc_1ebf19:
    001ebf19lea rax, [r15+8]
    001ebf1dmov [rax-8], 2048
    001ebf25lea rbx, [rip+0x181254]
    001ebf2cmov rbx, [rbx+8]
    001ebf30mov [rax], rbx
    001ebf33lea rbx, [rip+0x181e76]
    001ebf3amov [rax+8], rbx
    001ebf3ecall caml_raise_exn
    001ebf43nop
    001ebf44
    001ebf44loc_1ebf44:
    001ebf44mov rax, [rsp]
    001ebf48mov rbx, rdi
    001ebf4bcall Stdlib.Scanf.scan_sign
    001ebf50cmp rax, 1
    001ebf54je 0x1ec011
    001ebf5amov [rsp], rax
    001ebf5emov rdi, [rsp+24]
    001ebf63mov rax, [rdi+16]
    001ebf67cmp rax, 1
    001ebf6bjne 0x1ec008
    001ebf71mov [rsp+24], rdi
    001ebf76lea r11, [rip+83]
    001ebf7dpush r11
    001ebf7fpush [r14+48]
    001ebf83mov [r14+48], rsp
    001ebf87mov rbx, [rdi+48]
    001ebf8bmov eax, 1
    001ebf90mov rdi, [rbx]
    001ebf93call rdi
    001ebf95mov rdi, [rsp+40]
    001ebf9amov [rdi+8], rax
    001ebf9emov [rdi+16], 3
    001ebfa6mov rbx, [rdi+24]
    001ebfaaadd rbx, 2
    001ebfaemov [rdi+24], rbx
    001ebfb2cmp rax, 21
    001ebfb6jne 0x1ebfc4
    001ebfb8mov rax, [rdi+32]
    001ebfbcadd rax, 2
    001ebfc0mov [rdi+32], rax
    001ebfc4
    001ebfc4loc_1ebfc4:
    001ebfc4pop [r14+48]
    001ebfc8add rsp, 8
    001ebfccjmp 0x1ec008
    001ebfce
    001ebfce 66 90 f.
    001ebfd0lea rbx, [rip+0x141641]
    001ebfd7mov rbx, [rbx+88]
    001ebfdbcmp rax, rbx
    001ebfdejne 0x1ec000
    001ebfe0mov rdi, [rsp+24]
    001ebfe5mov [rdi+8], 1
    001ebfedmov [rdi+16], 1
    001ebff5mov [rdi], 3
    001ebffcjmp 0x1ec008
    001ebffe
    001ebffe 66 90 f.
    001ec000
    001ec000loc_1ec000:
    001ec000call caml_reraise_exn
    001ec005nop [rax]
    001ec008
    001ec008loc_1ec008:
    001ec008mov rax, [rdi]
    001ec00bcmp rax, 1
    001ec00fje 0x1ec048
    001ec011
    001ec011loc_1ec011:
    001ec011sub r15, 24
    001ec015cmp r15, [r14]
    001ec018jb 0x1ecd75
    001ec01e
    001ec01eloc_1ec01e:
    001ec01elea rax, [r15+8]
    001ec022mov [rax-8], 2048
    001ec02alea rbx, [rip+0x18114f]
    001ec031mov rbx, [rbx+8]
    001ec035mov [rax], rbx
    001ec038lea rbx, [rip+0x181d71]
    001ec03fmov [rax+8], rbx
    001ec043call caml_raise_exn
    001ec048
    001ec048loc_1ec048:
    001ec048mov rax, [rdi+16]
    001ec04ccmp rax, 1
    001ec050je 0x1ec05c
    001ec052mov rbx, [rdi+8]
    001ec056jmp 0x1ec0fb
    001ec05b
    001ec05b 90 .
    001ec05c
    001ec05cloc_1ec05c:
    001ec05cmov [rsp+24], rdi
    001ec061lea r11, [rip+84]
    001ec068push r11
    001ec06apush [r14+48]
    001ec06emov [r14+48], rsp
    001ec072mov rbx, [rdi+48]
    001ec076mov eax, 1
    001ec07bmov rdi, [rbx]
    001ec07ecall rdi
    001ec080mov rdi, [rsp+40]
    001ec085mov [rdi+8], rax
    001ec089mov [rdi+16], 3
    001ec091mov rbx, [rdi+24]
    001ec095add rbx, 2
    001ec099mov [rdi+24], rbx
    001ec09dcmp rax, 21
    001ec0a1jne 0x1ec0af
    001ec0a3mov rbx, [rdi+32]
    001ec0a7add rbx, 2
    001ec0abmov [rdi+32], rbx
    001ec0af
    001ec0afloc_1ec0af:
    001ec0afpop [r14+48]
    001ec0b3add rsp, 8
    001ec0b7jmp 0x1ec0f8
    001ec0b9
    001ec0b9 0f 1f 00 ...
    001ec0bclea rbx, [rip+0x141555]
    001ec0c3mov rbx, [rbx+88]
    001ec0c7cmp rax, rbx
    001ec0cajne 0x1ec0f0
    001ec0ccmov rdi, [rsp+24]
    001ec0d1mov [rdi+8], 1
    001ec0d9mov [rdi+16], 1
    001ec0e1mov [rdi], 3
    001ec0e8mov eax, 1
    001ec0edjmp 0x1ec0f8
    001ec0ef
    001ec0ef 90 .
    001ec0f0
    001ec0f0loc_1ec0f0:
    001ec0f0call caml_reraise_exn
    001ec0f5nop [rax]
    001ec0f8
    001ec0f8loc_1ec0f8:
    001ec0f8mov rbx, rax
    001ec0fb
    001ec0fbloc_1ec0fb:
    001ec0fbcmp rbx, 157
    001ec102jl 0x1ec274
    001ec108mov rax, rbx
    001ec10badd rax, -158
    001ec111cmp rax, 61
    001ec115jbe 0x1ec260
    001ec11bcmp rax, 65
    001ec11fjge 0x1ecbe4
    001ec125mov [rsp+24], rdi
    001ec12amov rax, [rdi+56]
    001ec12ecall Stdlib.Buffer.add_char
    001ec133mov rax, [rsp]
    001ec137add rax, -2
    001ec13bmov rbx, [rsp+24]
    001ec140mov [rbx+16], 1
    001ec148cmp rax, 1
    001ec14cje 0x1ec205
    001ec152mov [rsp], rax
    001ec156mov rax, [rbx+16]
    001ec15acmp rax, 1
    001ec15ejne 0x1ec1fc
    001ec164mov [rsp+24], rbx
    001ec169lea r11, [rip+84]
    001ec170push r11
    001ec172push [r14+48]
    001ec176mov [r14+48], rsp
    001ec17amov rbx, [rbx+48]
    001ec17emov eax, 1
    001ec183mov rdi, [rbx]
    001ec186call rdi
    001ec188mov rbx, [rsp+40]
    001ec18dmov [rbx+8], rax
    001ec191mov [rbx+16], 3
    001ec199mov rdi, [rbx+24]
    001ec19dadd rdi, 2
    001ec1a1mov [rbx+24], rdi
    001ec1a5cmp rax, 21
    001ec1a9jne 0x1ec1b7
    001ec1abmov rax, [rbx+32]
    001ec1afadd rax, 2
    001ec1b3mov [rbx+32], rax
    001ec1b7
    001ec1b7loc_1ec1b7:
    001ec1b7pop [r14+48]
    001ec1bbadd rsp, 8
    001ec1bfjmp 0x1ec1fc
    001ec1c1
    001ec1c1 0f 1f 00 ...
    001ec1c4lea rbx, [rip+0x14144d]
    001ec1cbmov rbx, [rbx+88]
    001ec1cfcmp rax, rbx
    001ec1d2jne 0x1ec1f4
    001ec1d4mov rbx, [rsp+24]
    001ec1d9mov [rbx+8], 1
    001ec1e1mov [rbx+16], 1
    001ec1e9mov [rbx], 3
    001ec1f0jmp 0x1ec1fc
    001ec1f2
    001ec1f2 66 90 f.
    001ec1f4
    001ec1f4loc_1ec1f4:
    001ec1f4call caml_reraise_exn
    001ec1f9nop [rax]
    001ec1fc
    001ec1fcloc_1ec1fc:
    001ec1fcmov rax, [rbx]
    001ec1ffcmp rax, 1
    001ec203je 0x1ec23c
    001ec205
    001ec205loc_1ec205:
    001ec205sub r15, 24
    001ec209cmp r15, [r14]
    001ec20cjb 0x1ecd6b
    001ec212
    001ec212loc_1ec212:
    001ec212lea rax, [r15+8]
    001ec216mov [rax-8], 2048
    001ec21elea rbx, [rip+0x180f5b]
    001ec225mov rbx, [rbx+8]
    001ec229mov [rax], rbx
    001ec22clea rbx, [rip+0x181b7d]
    001ec233mov [rax+8], rbx
    001ec237call caml_raise_exn
    001ec23c
    001ec23cloc_1ec23c:
    001ec23clea rsi, [rip+0x181705]
    001ec243lea rax, [rip+0x180f36]
    001ec24amov rdi, [rax+152]
    001ec251mov rax, [rsp]
    001ec255add rsp, 32
    001ec259jmp 0x1ebbc0
    001ec25e
    001ec25e 66 90 f.
    001ec260
    001ec260loc_1ec260:
    001ec260cmp rax, 53
    001ec264jne 0x1ecbe4
    001ec26amov [rsp+24], rdi
    001ec26fjmp 0x1ecc1c
    001ec274
    001ec274loc_1ec274:
    001ec274cmp rbx, 97
    001ec278je 0x1ec294
    001ec27acmp rbx, 147
    001ec281jne 0x1ecbe4
    001ec287mov [rsp+24], rdi
    001ec28cjmp 0x1ecc1c
    001ec291
    001ec291 0f 1f 00 ...
    001ec294
    001ec294loc_1ec294:
    001ec294mov [rsp+24], rdi
    001ec299mov rax, [rdi+56]
    001ec29dcall Stdlib.Buffer.add_char
    001ec2a2mov rax, [rsp]
    001ec2a6add rax, -2
    001ec2aamov rbx, [rsp+24]
    001ec2afmov [rbx+16], 1
    001ec2b7cmp rax, 1
    001ec2bbje 0x1ec378
    001ec2c1mov [rsp], rax
    001ec2c5mov rax, [rbx+16]
    001ec2c9cmp rax, 1
    001ec2cdjne 0x1ec368
    001ec2d3mov [rsp+24], rbx
    001ec2d8lea r11, [rip+81]
    001ec2dfpush r11
    001ec2e1push [r14+48]
    001ec2e5mov [r14+48], rsp
    001ec2e9mov rbx, [rbx+48]
    001ec2edmov eax, 1
    001ec2f2mov rdi, [rbx]
    001ec2f5call rdi
    001ec2f7mov rbx, [rsp+40]
    001ec2fcmov [rbx+8], rax
    001ec300mov [rbx+16], 3
    001ec308mov rdi, [rbx+24]
    001ec30cadd rdi, 2
    001ec310mov [rbx+24], rdi
    001ec314cmp rax, 21
    001ec318jne 0x1ec326
    001ec31amov rax, [rbx+32]
    001ec31eadd rax, 2
    001ec322mov [rbx+32], rax
    001ec326
    001ec326loc_1ec326:
    001ec326pop [r14+48]
    001ec32aadd rsp, 8
    001ec32ejmp 0x1ec368
    001ec330lea rbx, [rip+0x1412e1]
    001ec337mov rbx, [rbx+88]
    001ec33bcmp rax, rbx
    001ec33ejne 0x1ec360
    001ec340mov rbx, [rsp+24]
    001ec345mov [rbx+8], 1
    001ec34dmov [rbx+16], 1
    001ec355mov [rbx], 3
    001ec35cjmp 0x1ec368
    001ec35e
    001ec35e 66 90 f.
    001ec360
    001ec360loc_1ec360:
    001ec360call caml_reraise_exn
    001ec365nop [rax]
    001ec368
    001ec368loc_1ec368:
    001ec368mov rax, [rbx]
    001ec36bcmp rax, 1
    001ec36fjne 0x1ec378
    001ec371mov [rsp+24], rbx
    001ec376jmp 0x1ec3b0
    001ec378
    001ec378loc_1ec378:
    001ec378sub r15, 24
    001ec37ccmp r15, [r14]
    001ec37fjb 0x1ecd61
    001ec385
    001ec385loc_1ec385:
    001ec385lea rax, [r15+8]
    001ec389mov [rax-8], 2048
    001ec391lea rbx, [rip+0x180de8]
    001ec398mov rbx, [rbx+8]
    001ec39cmov [rax], rbx
    001ec39flea rbx, [rip+0x181a0a]
    001ec3a6mov [rax+8], rbx
    001ec3aacall caml_raise_exn
    001ec3afnop
    001ec3b0
    001ec3b0loc_1ec3b0:
    001ec3b0lea rsi, [rip+0x181581]
    001ec3b7lea rax, [rip+0x180dc2]
    001ec3bemov rdi, [rax+152]
    001ec3c5mov rax, [rsp]
    001ec3c9call Stdlib.Scanf.check_case_insensitive_string
    001ec3cemov [rsp], rax
    001ec3d2cmp rax, 1
    001ec3d6je 0x1ecbd8
    001ec3dcmov rsi, [rsp+24]
    001ec3e1mov rax, [rsi+16]
    001ec3e5cmp rax, 1
    001ec3e9jne 0x1ec484
    001ec3efmov [rsp+24], rsi
    001ec3f4lea r11, [rip+81]
    001ec3fbpush r11
    001ec3fdpush [r14+48]
    001ec401mov [r14+48], rsp
    001ec405mov rbx, [rsi+48]
    001ec409mov eax, 1
    001ec40emov rdi, [rbx]
    001ec411call rdi
    001ec413mov rsi, [rsp+40]
    001ec418mov [rsi+8], rax
    001ec41cmov [rsi+16], 3
    001ec424mov rbx, [rsi+24]
    001ec428add rbx, 2
    001ec42cmov [rsi+24], rbx
    001ec430cmp rax, 21
    001ec434jne 0x1ec442
    001ec436mov rax, [rsi+32]
    001ec43aadd rax, 2
    001ec43emov [rsi+32], rax
    001ec442
    001ec442loc_1ec442:
    001ec442pop [r14+48]
    001ec446add rsp, 8
    001ec44ajmp 0x1ec484
    001ec44clea rbx, [rip+0x1411c5]
    001ec453mov rbx, [rbx+88]
    001ec457cmp rax, rbx
    001ec45ajne 0x1ec47c
    001ec45cmov rsi, [rsp+24]
    001ec461mov [rsi+8], 1
    001ec469mov [rsi+16], 1
    001ec471mov [rsi], 3
    001ec478jmp 0x1ec484
    001ec47a
    001ec47a 66 90 f.
    001ec47c
    001ec47cloc_1ec47c:
    001ec47ccall caml_reraise_exn
    001ec481nop [rax]
    001ec484
    001ec484loc_1ec484:
    001ec484mov rax, [rsi]
    001ec487cmp rax, 1
    001ec48bjne 0x1ecbd8
    001ec491mov [rsp+24], rsi
    001ec496mov rax, [rsi+16]
    001ec49acmp rax, 1
    001ec49eje 0x1ec4ac
    001ec4a0mov rax, [rsi+8]
    001ec4a4jmp 0x1ec540
    001ec4a9
    001ec4a9 0f 1f 00 ...
    001ec4ac
    001ec4acloc_1ec4ac:
    001ec4aclea r11, [rip+81]
    001ec4b3push r11
    001ec4b5push [r14+48]
    001ec4b9mov [r14+48], rsp
    001ec4bdmov rbx, [rsi+48]
    001ec4c1mov eax, 1
    001ec4c6mov rdi, [rbx]
    001ec4c9call rdi
    001ec4cbmov rsi, [rsp+40]
    001ec4d0mov [rsi+8], rax
    001ec4d4mov [rsi+16], 3
    001ec4dcmov rbx, [rsi+24]
    001ec4e0add rbx, 2
    001ec4e4mov [rsi+24], rbx
    001ec4e8cmp rax, 21
    001ec4ecjne 0x1ec4fa
    001ec4eemov rbx, [rsi+32]
    001ec4f2add rbx, 2
    001ec4f6mov [rsi+32], rbx
    001ec4fa
    001ec4faloc_1ec4fa:
    001ec4fapop [r14+48]
    001ec4feadd rsp, 8
    001ec502jmp 0x1ec540
    001ec504lea rbx, [rip+0x14110d]
    001ec50bmov rbx, [rbx+88]
    001ec50fcmp rax, rbx
    001ec512jne 0x1ec538
    001ec514mov rsi, [rsp+24]
    001ec519mov [rsi+8], 1
    001ec521mov [rsi+16], 1
    001ec529mov [rsi], 3
    001ec530mov eax, 1
    001ec535jmp 0x1ec540
    001ec537
    001ec537 90 .
    001ec538
    001ec538loc_1ec538:
    001ec538call caml_reraise_exn
    001ec53dnop [rax]
    001ec540
    001ec540loc_1ec540:
    001ec540add rax, -92
    001ec544cmp rax, 69
    001ec548jbe 0x1ec554
    001ec54acmp rax, 133
    001ec550je 0x1ec584
    001ec552jmp 0x1ec55e
    001ec554
    001ec554loc_1ec554:
    001ec554add rax, -2
    001ec558cmp rax, 65
    001ec55cja 0x1ec584
    001ec55e
    001ec55eloc_1ec55e:
    001ec55elea rax, [rip+0x180c1b]
    001ec565mov rax, [rax+360]
    001ec56cmov rbx, [rax+32]
    001ec570mov rax, [rax+24]
    001ec574mov rdi, [rsp]
    001ec578call Stdlib.Scanf.scan_digit_plus
    001ec57dmov [rsp], rax
    001ec581jmp 0x1ec58c
    001ec583
    001ec583 90 .
    001ec584
    001ec584loc_1ec584:
    001ec584mov rax, [rsp]
    001ec588mov [rsp], rax
    001ec58c
    001ec58cloc_1ec58c:
    001ec58ccmp rax, 1
    001ec590je 0x1ecbcc
    001ec596mov rdi, [rsp+24]
    001ec59bmov rax, [rdi+16]
    001ec59fcmp rax, 1
    001ec5a3jne 0x1ec640
    001ec5a9mov [rsp+24], rdi
    001ec5aelea r11, [rip+83]
    001ec5b5push r11
    001ec5b7push [r14+48]
    001ec5bbmov [r14+48], rsp
    001ec5bfmov rbx, [rdi+48]
    001ec5c3mov eax, 1
    001ec5c8mov rdi, [rbx]
    001ec5cbcall rdi
    001ec5cdmov rdi, [rsp+40]
    001ec5d2mov [rdi+8], rax
    001ec5d6mov [rdi+16], 3
    001ec5demov rbx, [rdi+24]
    001ec5e2add rbx, 2
    001ec5e6mov [rdi+24], rbx
    001ec5eacmp rax, 21
    001ec5eejne 0x1ec5fc
    001ec5f0mov rax, [rdi+32]
    001ec5f4add rax, 2
    001ec5f8mov [rdi+32], rax
    001ec5fc
    001ec5fcloc_1ec5fc:
    001ec5fcpop [r14+48]
    001ec600add rsp, 8
    001ec604jmp 0x1ec640
    001ec606
    001ec606 66 90 f.
    001ec608lea rbx, [rip+0x141009]
    001ec60fmov rbx, [rbx+88]
    001ec613cmp rax, rbx
    001ec616jne 0x1ec638
    001ec618mov rdi, [rsp+24]
    001ec61dmov [rdi+8], 1
    001ec625mov [rdi+16], 1
    001ec62dmov [rdi], 3
    001ec634jmp 0x1ec640
    001ec636
    001ec636 66 90 f.
    001ec638
    001ec638loc_1ec638:
    001ec638call caml_reraise_exn
    001ec63dnop [rax]
    001ec640
    001ec640loc_1ec640:
    001ec640mov rax, [rdi]
    001ec643cmp rax, 1
    001ec647jne 0x1ecbcc
    001ec64dmov [rsp+24], rdi
    001ec652mov rax, [rdi+16]
    001ec656cmp rax, 1
    001ec65aje 0x1ec668
    001ec65cmov rbx, [rdi+8]
    001ec660jmp 0x1ec6ff
    001ec665
    001ec665 0f 1f 00 ...
    001ec668
    001ec668loc_1ec668:
    001ec668lea r11, [rip+81]
    001ec66fpush r11
    001ec671push [r14+48]
    001ec675mov [r14+48], rsp
    001ec679mov rbx, [rdi+48]
    001ec67dmov eax, 1
    001ec682mov rdi, [rbx]
    001ec685call rdi
    001ec687mov rdi, [rsp+40]
    001ec68cmov [rdi+8], rax
    001ec690mov [rdi+16], 3
    001ec698mov rbx, [rdi+24]
    001ec69cadd rbx, 2
    001ec6a0mov [rdi+24], rbx
    001ec6a4cmp rax, 21
    001ec6a8jne 0x1ec6b6
    001ec6aamov rbx, [rdi+32]
    001ec6aeadd rbx, 2
    001ec6b2mov [rdi+32], rbx
    001ec6b6
    001ec6b6loc_1ec6b6:
    001ec6b6pop [r14+48]
    001ec6baadd rsp, 8
    001ec6bejmp 0x1ec6fc
    001ec6c0lea rbx, [rip+0x140f51]
    001ec6c7mov rbx, [rbx+88]
    001ec6cbcmp rax, rbx
    001ec6cejne 0x1ec6f4
    001ec6d0mov rdi, [rsp+24]
    001ec6d5mov [rdi+8], 1
    001ec6ddmov [rdi+16], 1
    001ec6e5mov [rdi], 3
    001ec6ecmov eax, 1
    001ec6f1jmp 0x1ec6fc
    001ec6f3
    001ec6f3 90 .
    001ec6f4
    001ec6f4loc_1ec6f4:
    001ec6f4call caml_reraise_exn
    001ec6f9nop [rax]
    001ec6fc
    001ec6fcloc_1ec6fc:
    001ec6fcmov rbx, rax
    001ec6ff
    001ec6ffloc_1ec6ff:
    001ec6ffcmp rbx, 93
    001ec703je 0x1ec714
    001ec705mov rax, [rsp]
    001ec709mov [rsp], rax
    001ec70djmp 0x1ec901
    001ec712
    001ec712 66 90 f.
    001ec714
    001ec714loc_1ec714:
    001ec714mov rax, [rdi+56]
    001ec718call Stdlib.Buffer.add_char
    001ec71dmov rax, [rsp]
    001ec721add rax, -2
    001ec725mov rsi, [rsp+24]
    001ec72amov [rsi+16], 1
    001ec732mov [rsp+16], rax
    001ec737cmp rax, 1
    001ec73bje 0x1ec8f8
    001ec741mov rax, [rsi+16]
    001ec745cmp rax, 1
    001ec749jne 0x1ec7e0
    001ec74flea r11, [rip+82]
    001ec756push r11
    001ec758push [r14+48]
    001ec75cmov [r14+48], rsp
    001ec760mov rbx, [rsi+48]
    001ec764mov eax, 1
    001ec769mov rdi, [rbx]
    001ec76ccall rdi
    001ec76emov rsi, [rsp+40]
    001ec773mov [rsi+8], rax
    001ec777mov [rsi+16], 3
    001ec77fmov rbx, [rsi+24]
    001ec783add rbx, 2
    001ec787mov [rsi+24], rbx
    001ec78bcmp rax, 21
    001ec78fjne 0x1ec79d
    001ec791mov rax, [rsi+32]
    001ec795add rax, 2
    001ec799mov [rsi+32], rax
    001ec79d
    001ec79dloc_1ec79d:
    001ec79dpop [r14+48]
    001ec7a1add rsp, 8
    001ec7a5jmp 0x1ec7e0
    001ec7a7
    001ec7a7 90 .
    001ec7a8lea rbx, [rip+0x140e69]
    001ec7afmov rbx, [rbx+88]
    001ec7b3cmp rax, rbx
    001ec7b6jne 0x1ec7d8
    001ec7b8mov rsi, [rsp+24]
    001ec7bdmov [rsi+8], 1
    001ec7c5mov [rsi+16], 1
    001ec7cdmov [rsi], 3
    001ec7d4jmp 0x1ec7e0
    001ec7d6
    001ec7d6 66 90 f.
    001ec7d8
    001ec7d8loc_1ec7d8:
    001ec7d8call caml_reraise_exn
    001ec7ddnop [rax]
    001ec7e0
    001ec7e0loc_1ec7e0:
    001ec7e0mov rax, [rsi]
    001ec7e3cmp rax, 1
    001ec7e7jne 0x1ec8f8
    001ec7edmov rax, [rsi+16]
    001ec7f1cmp rax, 1
    001ec7f5je 0x1ec800
    001ec7f7mov rax, [rsi+8]
    001ec7fbjmp 0x1ec894
    001ec800
    001ec800loc_1ec800:
    001ec800lea r11, [rip+81]
    001ec807push r11
    001ec809push [r14+48]
    001ec80dmov [r14+48], rsp
    001ec811mov rbx, [rsi+48]
    001ec815mov eax, 1
    001ec81amov rdi, [rbx]
    001ec81dcall rdi
    001ec81fmov rsi, [rsp+40]
    001ec824mov [rsi+8], rax
    001ec828mov [rsi+16], 3
    001ec830mov rbx, [rsi+24]
    001ec834add rbx, 2
    001ec838mov [rsi+24], rbx
    001ec83ccmp rax, 21
    001ec840jne 0x1ec84e
    001ec842mov rbx, [rsi+32]
    001ec846add rbx, 2
    001ec84amov [rsi+32], rbx
    001ec84e
    001ec84eloc_1ec84e:
    001ec84epop [r14+48]
    001ec852add rsp, 8
    001ec856jmp 0x1ec894
    001ec858lea rbx, [rip+0x140db9]
    001ec85fmov rbx, [rbx+88]
    001ec863cmp rax, rbx
    001ec866jne 0x1ec88c
    001ec868mov rsi, [rsp+24]
    001ec86dmov [rsi+8], 1
    001ec875mov [rsi+16], 1
    001ec87dmov [rsi], 3
    001ec884mov eax, 1
    001ec889jmp 0x1ec894
    001ec88b
    001ec88b 90 .
    001ec88c
    001ec88cloc_1ec88c:
    001ec88ccall caml_reraise_exn
    001ec891nop [rax]
    001ec894
    001ec894loc_1ec894:
    001ec894cmp rax, 161
    001ec89aje 0x1ec8f0
    001ec89ccmp rax, 225
    001ec8a2je 0x1ec8f0
    001ec8a4mov rdi, [rsp+16]
    001ec8a9mov rax, [rsp+8]
    001ec8aecmp rdi, rax
    001ec8b1jg 0x1ec8bc
    001ec8b3mov [rsp], rdi
    001ec8b7jmp 0x1ec8c3
    001ec8b9
    001ec8b9 0f 1f 00 ...
    001ec8bc
    001ec8bcloc_1ec8bc:
    001ec8bcmov rdi, rax
    001ec8bfmov [rsp], rdi
    001ec8c3
    001ec8c3loc_1ec8c3:
    001ec8c3lea rax, [rip+0x1808b6]
    001ec8camov rax, [rax+360]
    001ec8d1mov rbx, [rax+32]
    001ec8d5mov rax, [rax+24]
    001ec8d9call Stdlib.Scanf.scan_digit_plus
    001ec8demov rbx, [rsp]
    001ec8e2sub rbx, rax
    001ec8e5mov rax, [rsp+16]
    001ec8easub rax, rbx
    001ec8edjmp 0x1ec8fd
    001ec8ef
    001ec8ef 90 .
    001ec8f0
    001ec8f0loc_1ec8f0:
    001ec8f0mov rax, [rsp+16]
    001ec8f5jmp 0x1ec8fd
    001ec8f7
    001ec8f7 90 .
    001ec8f8
    001ec8f8loc_1ec8f8:
    001ec8f8mov rax, [rsp+16]
    001ec8fd
    001ec8fdloc_1ec8fd:
    001ec8fdmov [rsp], rax
    001ec901
    001ec901loc_1ec901:
    001ec901cmp rax, 1
    001ec905je 0x1ecbc0
    001ec90bmov rdi, [rsp+24]
    001ec910mov rax, [rdi+16]
    001ec914cmp rax, 1
    001ec918jne 0x1ec9b4
    001ec91emov [rsp+24], rdi
    001ec923lea r11, [rip+82]
    001ec92apush r11
    001ec92cpush [r14+48]
    001ec930mov [r14+48], rsp
    001ec934mov rbx, [rdi+48]
    001ec938mov eax, 1
    001ec93dmov rdi, [rbx]
    001ec940call rdi
    001ec942mov rdi, [rsp+40]
    001ec947mov [rdi+8], rax
    001ec94bmov [rdi+16], 3
    001ec953mov rbx, [rdi+24]
    001ec957add rbx, 2
    001ec95bmov [rdi+24], rbx
    001ec95fcmp rax, 21
    001ec963jne 0x1ec971
    001ec965mov rax, [rdi+32]
    001ec969add rax, 2
    001ec96dmov [rdi+32], rax
    001ec971
    001ec971loc_1ec971:
    001ec971pop [r14+48]
    001ec975add rsp, 8
    001ec979jmp 0x1ec9b4
    001ec97b
    001ec97b 90 .
    001ec97clea rbx, [rip+0x140c95]
    001ec983mov rbx, [rbx+88]
    001ec987cmp rax, rbx
    001ec98ajne 0x1ec9ac
    001ec98cmov rdi, [rsp+24]
    001ec991mov [rdi+8], 1
    001ec999mov [rdi+16], 1
    001ec9a1mov [rdi], 3
    001ec9a8jmp 0x1ec9b4
    001ec9aa
    001ec9aa 66 90 f.
    001ec9ac
    001ec9acloc_1ec9ac:
    001ec9accall caml_reraise_exn
    001ec9b1nop [rax]
    001ec9b4
    001ec9b4loc_1ec9b4:
    001ec9b4mov rax, [rdi]
    001ec9b7cmp rax, 1
    001ec9bbjne 0x1ecbc0
    001ec9c1mov rax, [rdi+16]
    001ec9c5cmp rax, 1
    001ec9c9je 0x1ec9d4
    001ec9cbmov rbx, [rdi+8]
    001ec9cfjmp 0x1eca73
    001ec9d4
    001ec9d4loc_1ec9d4:
    001ec9d4mov [rsp+24], rdi
    001ec9d9lea r11, [rip+84]
    001ec9e0push r11
    001ec9e2push [r14+48]
    001ec9e6mov [r14+48], rsp
    001ec9eamov rbx, [rdi+48]
    001ec9eemov eax, 1
    001ec9f3mov rdi, [rbx]
    001ec9f6call rdi
    001ec9f8mov rdi, [rsp+40]
    001ec9fdmov [rdi+8], rax
    001eca01mov [rdi+16], 3
    001eca09mov rbx, [rdi+24]
    001eca0dadd rbx, 2
    001eca11mov [rdi+24], rbx
    001eca15cmp rax, 21
    001eca19jne 0x1eca27
    001eca1bmov rbx, [rdi+32]
    001eca1fadd rbx, 2
    001eca23mov [rdi+32], rbx
    001eca27
    001eca27loc_1eca27:
    001eca27pop [r14+48]
    001eca2badd rsp, 8
    001eca2fjmp 0x1eca70
    001eca31
    001eca31 0f 1f 00 ...
    001eca34lea rbx, [rip+0x140bdd]
    001eca3bmov rbx, [rbx+88]
    001eca3fcmp rax, rbx
    001eca42jne 0x1eca68
    001eca44mov rdi, [rsp+24]
    001eca49mov [rdi+8], 1
    001eca51mov [rdi+16], 1
    001eca59mov [rdi], 3
    001eca60mov eax, 1
    001eca65jmp 0x1eca70
    001eca67
    001eca67 90 .
    001eca68
    001eca68loc_1eca68:
    001eca68call caml_reraise_exn
    001eca6dnop [rax]
    001eca70
    001eca70loc_1eca70:
    001eca70mov rbx, rax
    001eca73
    001eca73loc_1eca73:
    001eca73cmp rbx, 161
    001eca7aje 0x1eca98
    001eca7ccmp rbx, 225
    001eca83je 0x1eca90
    001eca85mov rax, [rsp]
    001eca89add rsp, 32
    001eca8dret
    001eca8e
    001eca8e 66 90 f.
    001eca90
    001eca90loc_1eca90:
    001eca90mov [rsp+24], rdi
    001eca95jmp 0x1eca9d
    001eca97
    001eca97 90 .
    001eca98
    001eca98loc_1eca98:
    001eca98mov [rsp+24], rdi
    001eca9d
    001eca9dloc_1eca9d:
    001eca9dmov rax, [rdi+56]
    001ecaa1call Stdlib.Buffer.add_char
    001ecaa6mov rax, [rsp]
    001ecaaaadd rax, -2
    001ecaaemov rbx, [rsp+24]
    001ecab3mov [rbx+16], 1
    001ecabbmov [rsp], rax
    001ecabfcmp rax, 1
    001ecac3je 0x1ecb71
    001ecac9mov rax, [rbx+16]
    001ecacdcmp rax, 1
    001ecad1jne 0x1ecb68
    001ecad7lea r11, [rip+82]
    001ecadepush r11
    001ecae0push [r14+48]
    001ecae4mov [r14+48], rsp
    001ecae8mov rbx, [rbx+48]
    001ecaecmov eax, 1
    001ecaf1mov rdi, [rbx]
    001ecaf4call rdi
    001ecaf6mov rbx, [rsp+40]
    001ecafbmov [rbx+8], rax
    001ecaffmov [rbx+16], 3
    001ecb07mov rdi, [rbx+24]
    001ecb0badd rdi, 2
    001ecb0fmov [rbx+24], rdi
    001ecb13cmp rax, 21
    001ecb17jne 0x1ecb25
    001ecb19mov rax, [rbx+32]
    001ecb1dadd rax, 2
    001ecb21mov [rbx+32], rax
    001ecb25
    001ecb25loc_1ecb25:
    001ecb25pop [r14+48]
    001ecb29add rsp, 8
    001ecb2djmp 0x1ecb68
    001ecb2f
    001ecb2f 90 .
    001ecb30lea rbx, [rip+0x140ae1]
    001ecb37mov rbx, [rbx+88]
    001ecb3bcmp rax, rbx
    001ecb3ejne 0x1ecb60
    001ecb40mov rbx, [rsp+24]
    001ecb45mov [rbx+8], 1
    001ecb4dmov [rbx+16], 1
    001ecb55mov [rbx], 3
    001ecb5cjmp 0x1ecb68
    001ecb5e
    001ecb5e 66 90 f.
    001ecb60
    001ecb60loc_1ecb60:
    001ecb60call caml_reraise_exn
    001ecb65nop [rax]
    001ecb68
    001ecb68loc_1ecb68:
    001ecb68mov rax, [rbx]
    001ecb6bcmp rax, 1
    001ecb6fje 0x1ecba8
    001ecb71
    001ecb71loc_1ecb71:
    001ecb71sub r15, 24
    001ecb75cmp r15, [r14]
    001ecb78jb 0x1ecd57
    001ecb7e
    001ecb7eloc_1ecb7e:
    001ecb7elea rax, [r15+8]
    001ecb82mov [rax-8], 2048
    001ecb8alea rbx, [rip+0x1805ef]
    001ecb91mov rbx, [rbx+8]
    001ecb95mov [rax], rbx
    001ecb98lea rbx, [rip+0x181211]
    001ecb9fmov [rax+8], rbx
    001ecba3call caml_raise_exn
    001ecba8
    001ecba8loc_1ecba8:
    001ecba8mov rax, [rsp]
    001ecbaccall Stdlib.Scanf.scan_sign
    001ecbb1mov rbx, [rsp+24]
    001ecbb6add rsp, 32
    001ecbbajmp 0x1ea9a0
    001ecbbf
    001ecbbf 90 .
    001ecbc0
    001ecbc0loc_1ecbc0:
    001ecbc0mov rax, [rsp]
    001ecbc4add rsp, 32
    001ecbc8ret
    001ecbc9
    001ecbc9 0f 1f 00 ...
    001ecbcc
    001ecbccloc_1ecbcc:
    001ecbccmov rax, [rsp]
    001ecbd0add rsp, 32
    001ecbd4ret
    001ecbd5
    001ecbd5 0f 1f 00 ...
    001ecbd8
    001ecbd8loc_1ecbd8:
    001ecbd8mov rax, [rsp]
    001ecbdcadd rsp, 32
    001ecbe0ret
    001ecbe1
    001ecbe1 0f 1f 00 ...
    001ecbe4
    001ecbe4loc_1ecbe4:
    001ecbe4sub r15, 24
    001ecbe8cmp r15, [r14]
    001ecbebjb 0x1ecd4d
    001ecbf1
    001ecbf1loc_1ecbf1:
    001ecbf1lea rax, [r15+8]
    001ecbf5mov [rax-8], 2048
    001ecbfdlea rbx, [rip+0x18057c]
    001ecc04mov rbx, [rbx+8]
    001ecc08mov [rax], rbx
    001ecc0blea rbx, [rip+0x18119e]
    001ecc12mov [rax+8], rbx
    001ecc16call caml_raise_exn
    001ecc1bnop
    001ecc1c
    001ecc1cloc_1ecc1c:
    001ecc1cmov rax, [rdi+56]
    001ecc20call Stdlib.Buffer.add_char
    001ecc25mov rax, [rsp]
    001ecc29add rax, -2
    001ecc2dmov rbx, [rsp+24]
    001ecc32mov [rbx+16], 1
    001ecc3amov [rsp], rax
    001ecc3ecmp rax, 1
    001ecc42je 0x1eccf1
    001ecc48mov rax, [rbx+16]
    001ecc4ccmp rax, 1
    001ecc50jne 0x1ecce8
    001ecc56lea r11, [rip+83]
    001ecc5dpush r11
    001ecc5fpush [r14+48]
    001ecc63mov [r14+48], rsp
    001ecc67mov rbx, [rbx+48]
    001ecc6bmov eax, 1
    001ecc70mov rdi, [rbx]
    001ecc73call rdi
    001ecc75mov rbx, [rsp+40]
    001ecc7amov [rbx+8], rax
    001ecc7emov [rbx+16], 3
    001ecc86mov rdi, [rbx+24]
    001ecc8aadd rdi, 2
    001ecc8emov [rbx+24], rdi
    001ecc92cmp rax, 21
    001ecc96jne 0x1ecca4
    001ecc98mov rax, [rbx+32]
    001ecc9cadd rax, 2
    001ecca0mov [rbx+32], rax
    001ecca4
    001ecca4loc_1ecca4:
    001ecca4pop [r14+48]
    001ecca8add rsp, 8
    001eccacjmp 0x1ecce8
    001eccae
    001eccae 66 90 f.
    001eccb0lea rbx, [rip+0x140961]
    001eccb7mov rbx, [rbx+88]
    001eccbbcmp rax, rbx
    001eccbejne 0x1ecce0
    001eccc0mov rbx, [rsp+24]
    001eccc5mov [rbx+8], 1
    001ecccdmov [rbx+16], 1
    001eccd5mov [rbx], 3
    001eccdcjmp 0x1ecce8
    001eccde
    001eccde 66 90 f.
    001ecce0
    001ecce0loc_1ecce0:
    001ecce0call caml_reraise_exn
    001ecce5nop [rax]
    001ecce8
    001ecce8loc_1ecce8:
    001ecce8mov rax, [rbx]
    001eccebcmp rax, 1
    001eccefje 0x1ecd24
    001eccf1
    001eccf1loc_1eccf1:
    001eccf1sub r15, 24
    001eccf5cmp r15, [r14]
    001eccf8jb 0x1ecd46
    001eccfa
    001eccfaloc_1eccfa:
    001eccfalea rax, [r15+8]
    001eccfemov [rax-8], 2048
    001ecd06lea rbx, [rip+0x180473]
    001ecd0dmov rbx, [rbx+8]
    001ecd11mov [rax], rbx
    001ecd14lea rbx, [rip+0x181095]
    001ecd1bmov [rax+8], rbx
    001ecd1fcall caml_raise_exn
    001ecd24
    001ecd24loc_1ecd24:
    001ecd24lea rsi, [rip+0x180bfd]
    001ecd2blea rax, [rip+0x18044e]
    001ecd32mov rdi, [rax+152]
    001ecd39mov rax, [rsp]
    001ecd3dadd rsp, 32
    001ecd41jmp 0x1ebbc0
    001ecd46
    001ecd46loc_1ecd46:
    001ecd46call caml_call_gc
    001ecd4bjmp 0x1eccfa
    001ecd4d
    001ecd4dloc_1ecd4d:
    001ecd4dcall caml_call_gc
    001ecd52jmp 0x1ecbf1
    001ecd57
    001ecd57loc_1ecd57:
    001ecd57call caml_call_gc
    001ecd5cjmp 0x1ecb7e
    001ecd61
    001ecd61loc_1ecd61:
    001ecd61call caml_call_gc
    001ecd66jmp 0x1ec385
    001ecd6b
    001ecd6bloc_1ecd6b:
    001ecd6bcall caml_call_gc
    001ecd70jmp 0x1ec212
    001ecd75
    001ecd75loc_1ecd75:
    001ecd75call caml_call_gc
    001ecd7ajmp 0x1ec01e
    001ecd7f
    001ecd7floc_1ecd7f:
    001ecd7fcall caml_call_gc
    001ecd84jmp 0x1ebf19
    001ecd89
    001ecd89loc_1ecd89:
    001ecd89push 39
    001ecd8bcall caml_call_realloc_stack
    001ecd90pop r10
    001ecd92jmp 0x1ebe42
    001ebe30
    001ecd97
    001ecd97 // align 0x10
    001ecda0
    001ecda0Stdlib.Scanf.scan_caml_float_rest:
    001ecda0lea r10, [rsp-368]
    001ecda8cmp r10, [r14+40]
    001ecdacjb 0x1ed156
    001ecdb2
    001ecdb2loc_1ecdb2:
    001ecdb2sub rsp, 32
    001ecdb6cmp rax, 1
    001ecdbaje 0x1ece7c
    001ecdc0mov [rsp+8], rbx
    001ecdc5mov [rsp], rax
    001ecdc9mov rax, [rdi+16]
    001ecdcdcmp rax, 1
    001ecdd1jne 0x1ece6c
    001ecdd7mov [rsp+24], rdi
    001ecddclea r11, [rip+81]
    001ecde3push r11
    001ecde5push [r14+48]
    001ecde9mov [r14+48], rsp
    001ecdedmov rbx, [rdi+48]
    001ecdf1mov eax, 1
    001ecdf6mov rdi, [rbx]
    001ecdf9call rdi
    001ecdfbmov rdi, [rsp+40]
    001ece00mov [rdi+8], rax
    001ece04mov [rdi+16], 3
    001ece0cmov rbx, [rdi+24]
    001ece10add rbx, 2
    001ece14mov [rdi+24], rbx
    001ece18cmp rax, 21
    001ece1cjne 0x1ece2a
    001ece1emov rax, [rdi+32]
    001ece22add rax, 2
    001ece26mov [rdi+32], rax
    001ece2a
    001ece2aloc_1ece2a:
    001ece2apop [r14+48]
    001ece2eadd rsp, 8
    001ece32jmp 0x1ece6c
    001ece34lea rbx, [rip+0x1407dd]
    001ece3bmov rbx, [rbx+88]
    001ece3fcmp rax, rbx
    001ece42jne 0x1ece64
    001ece44mov rdi, [rsp+24]
    001ece49mov [rdi+8], 1
    001ece51mov [rdi+16], 1
    001ece59mov [rdi], 3
    001ece60jmp 0x1ece6c
    001ece62
    001ece62 66 90 f.
    001ece64
    001ece64loc_1ece64:
    001ece64call caml_reraise_exn
    001ece69nop [rax]
    001ece6c
    001ece6cloc_1ece6c:
    001ece6cmov rax, [rdi]
    001ece6fcmp rax, 1
    001ece73jne 0x1ece7c
    001ece75mov [rsp+24], rdi
    001ece7ajmp 0x1eceb4
    001ece7c
    001ece7cloc_1ece7c:
    001ece7csub r15, 24
    001ece80cmp r15, [r14]
    001ece83jb 0x1ed14c
    001ece89
    001ece89loc_1ece89:
    001ece89lea rax, [r15+8]
    001ece8dmov [rax-8], 2048
    001ece95lea rbx, [rip+0x1802e4]
    001ece9cmov rbx, [rbx+8]
    001ecea0mov [rax], rbx
    001ecea3lea rbx, [rip+0x180f3e]
    001eceaamov [rax+8], rbx
    001eceaecall caml_raise_exn
    001eceb3nop
    001eceb4
    001eceb4loc_1eceb4:
    001eceb4mov rax, [rsp]
    001eceb8mov rbx, rdi
    001ecebbcall Stdlib.Scanf.scan_decimal_digit_star
    001ecec0cmp rax, 1
    001ecec4je 0x1ecf81
    001ececamov [rsp], rax
    001ececemov rdi, [rsp+24]
    001eced3mov rax, [rdi+16]
    001eced7cmp rax, 1
    001ecedbjne 0x1ecf78
    001ecee1mov [rsp+24], rdi
    001ecee6lea r11, [rip+83]
    001eceedpush r11
    001eceefpush [r14+48]
    001ecef3mov [r14+48], rsp
    001ecef7mov rbx, [rdi+48]
    001ecefbmov eax, 1
    001ecf00mov rdi, [rbx]
    001ecf03call rdi
    001ecf05mov rdi, [rsp+40]
    001ecf0amov [rdi+8], rax
    001ecf0emov [rdi+16], 3
    001ecf16mov rbx, [rdi+24]
    001ecf1aadd rbx, 2
    001ecf1emov [rdi+24], rbx
    001ecf22cmp rax, 21
    001ecf26jne 0x1ecf34
    001ecf28mov rax, [rdi+32]
    001ecf2cadd rax, 2
    001ecf30mov [rdi+32], rax
    001ecf34
    001ecf34loc_1ecf34:
    001ecf34pop [r14+48]
    001ecf38add rsp, 8
    001ecf3cjmp 0x1ecf78
    001ecf3e
    001ecf3e 66 90 f.
    001ecf40lea rbx, [rip+0x1406d1]
    001ecf47mov rbx, [rbx+88]
    001ecf4bcmp rax, rbx
    001ecf4ejne 0x1ecf70
    001ecf50mov rdi, [rsp+24]
    001ecf55mov [rdi+8], 1
    001ecf5dmov [rdi+16], 1
    001ecf65mov [rdi], 3
    001ecf6cjmp 0x1ecf78
    001ecf6e
    001ecf6e 66 90 f.
    001ecf70
    001ecf70loc_1ecf70:
    001ecf70call caml_reraise_exn
    001ecf75nop [rax]
    001ecf78
    001ecf78loc_1ecf78:
    001ecf78mov rax, [rdi]
    001ecf7bcmp rax, 1
    001ecf7fje 0x1ecfb8
    001ecf81
    001ecf81loc_1ecf81:
    001ecf81sub r15, 24
    001ecf85cmp r15, [r14]
    001ecf88jb 0x1ed142
    001ecf8e
    001ecf8eloc_1ecf8e:
    001ecf8elea rax, [r15+8]
    001ecf92mov [rax-8], 2048
    001ecf9alea rbx, [rip+0x1801df]
    001ecfa1mov rbx, [rbx+8]
    001ecfa5mov [rax], rbx
    001ecfa8lea rbx, [rip+0x180e39]
    001ecfafmov [rax+8], rbx
    001ecfb3call caml_raise_exn
    001ecfb8
    001ecfb8loc_1ecfb8:
    001ecfb8mov rax, [rdi+16]
    001ecfbccmp rax, 1
    001ecfc0je 0x1ecfcc
    001ecfc2mov rbx, [rdi+8]
    001ecfc6jmp 0x1ed06b
    001ecfcb
    001ecfcb 90 .
    001ecfcc
    001ecfccloc_1ecfcc:
    001ecfccmov [rsp+24], rdi
    001ecfd1lea r11, [rip+84]
    001ecfd8push r11
    001ecfdapush [r14+48]
    001ecfdemov [r14+48], rsp
    001ecfe2mov rbx, [rdi+48]
    001ecfe6mov eax, 1
    001ecfebmov rdi, [rbx]
    001ecfeecall rdi
    001ecff0mov rdi, [rsp+40]
    001ecff5mov [rdi+8], rax
    001ecff9mov [rdi+16], 3
    001ed001mov rbx, [rdi+24]
    001ed005add rbx, 2
    001ed009mov [rdi+24], rbx
    001ed00dcmp rax, 21
    001ed011jne 0x1ed01f
    001ed013mov rbx, [rdi+32]
    001ed017add rbx, 2
    001ed01bmov [rdi+32], rbx
    001ed01f
    001ed01floc_1ed01f:
    001ed01fpop [r14+48]
    001ed023add rsp, 8
    001ed027jmp 0x1ed068
    001ed029
    001ed029 0f 1f 00 ...
    001ed02clea rbx, [rip+0x1405e5]
    001ed033mov rbx, [rbx+88]
    001ed037cmp rax, rbx
    001ed03ajne 0x1ed060
    001ed03cmov rdi, [rsp+24]
    001ed041mov [rdi+8], 1
    001ed049mov [rdi+16], 1
    001ed051mov [rdi], 3
    001ed058mov eax, 1
    001ed05djmp 0x1ed068
    001ed05f
    001ed05f 90 .
    001ed060
    001ed060loc_1ed060:
    001ed060call caml_reraise_exn
    001ed065nop [rax]
    001ed068
    001ed068loc_1ed068:
    001ed068mov rbx, rax
    001ed06b
    001ed06bloc_1ed06b:
    001ed06bmov rax, rbx
    001ed06eadd rax, -138
    001ed074cmp rax, 65
    001ed078jbe 0x1ed0ec
    001ed07acmp rax, -45
    001ed07ejne 0x1ed108
    001ed084mov [rsp+24], rdi
    001ed089mov rax, [rdi+56]
    001ed08dcall Stdlib.Buffer.add_char
    001ed092mov rax, [rsp]
    001ed096add rax, -2
    001ed09amov rbx, [rsp+24]
    001ed09fmov [rbx+16], 1
    001ed0a7mov [rsp+16], rax
    001ed0acmov rdi, [rsp+8]
    001ed0b1cmp rax, rdi
    001ed0b4jg 0x1ed0bc
    001ed0b6mov [rsp], rax
    001ed0bajmp 0x1ed0c3
    001ed0bc
    001ed0bcloc_1ed0bc:
    001ed0bcmov rax, rdi
    001ed0bfmov [rsp], rax
    001ed0c3
    001ed0c3loc_1ed0c3:
    001ed0c3call Stdlib.Scanf.scan_fractional_part
    001ed0c8mov rbx, [rsp]
    001ed0ccsub rbx, rax
    001ed0cfinc rbx
    001ed0d2mov rax, [rsp+16]
    001ed0d7sub rax, rbx
    001ed0dainc rax
    001ed0ddmov rbx, [rsp+24]
    001ed0e2add rsp, 32
    001ed0e6jmp 0x1eb7c0
    001ed0eb
    001ed0eb 90 .
    001ed0ec
    001ed0ecloc_1ed0ec:
    001ed0ecadd rax, -2
    001ed0f0cmp rax, 61
    001ed0f4jbe 0x1ed108
    001ed0f6mov rax, [rsp]
    001ed0famov rbx, rdi
    001ed0fdadd rsp, 32
    001ed101jmp 0x1eb7c0
    001ed106
    001ed106 66 90 f.
    001ed108
    001ed108loc_1ed108:
    001ed108sub r15, 24
    001ed10ccmp r15, [r14]
    001ed10fjb 0x1ed13b
    001ed111
    001ed111loc_1ed111:
    001ed111lea rax, [r15+8]
    001ed115mov [rax-8], 2048
    001ed11dlea rbx, [rip+0x18005c]
    001ed124mov rbx, [rbx+8]
    001ed128mov [rax], rbx
    001ed12blea rbx, [rip+0x180cb6]
    001ed132mov [rax+8], rbx
    001ed136call caml_raise_exn
    001ed13b
    001ed13bloc_1ed13b:
    001ed13bcall caml_call_gc
    001ed140jmp 0x1ed111
    001ed142
    001ed142loc_1ed142:
    001ed142call caml_call_gc
    001ed147jmp 0x1ecf8e
    001ed14c
    001ed14cloc_1ed14c:
    001ed14ccall caml_call_gc
    001ed151jmp 0x1ece89
    001ed156
    001ed156loc_1ed156:
    001ed156push 39
    001ed158call caml_call_realloc_stack
    001ed15dpop r10
    001ed15fjmp 0x1ecdb2
    001ecda0
    001ed164
    001ed164 // align 0x10
    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