File hevea_f46f610a6b0078f4aa208dda361f21de574cc56ad64b32889301afc466d33979.elf
Function:
    001e8350
    001e8350Stdlib.Hashtbl.of_seq:
    001e8350lea r10, [rsp-336]
    001e8358cmp r10, [r14+40]
    001e835cjb 0x1e8399
    001e835e
    001e835eloc_1e835e:
    001e835esub rsp, 16
    001e8362mov [rsp], rax
    001e8366lea rax, [rip+0x181c9b]
    001e836dmov rax, [rax+272]
    001e8374mov rax, [rax]
    001e8377mov ebx, 33
    001e837ccall Stdlib.Hashtbl.create_inner
    001e8381mov [rsp+8], rax
    001e8386mov rbx, [rsp]
    001e838acall Stdlib.Hashtbl.replace_seq
    001e838fmov rax, [rsp+8]
    001e8394add rsp, 16
    001e8398ret
    001e8399
    001e8399loc_1e8399:
    001e8399push 35
    001e839bcall caml_call_realloc_stack
    001e83a0pop r10
    001e83a2jmp 0x1e835e
    001e8350
    001e83a4
    001e83a4 // align 0x10
    001e83b0
    001e83b0Stdlib.Hashtbl.rebuild_inner:
    001e83b0lea r10, [rsp-352]
    001e83b8cmp r10, [r14+40]
    001e83bcjb 0x1e8552
    001e83c2
    001e83c2loc_1e83c2:
    001e83c2sub rsp, 32
    001e83c6mov [rsp], rax
    001e83camov [rsp+24], rbx
    001e83cfmov rax, [rbx+8]
    001e83d3mov rbx, [rax-8]
    001e83d7shr rbx, 9
    001e83dbor rbx, 1
    001e83dfmov eax, 33
    001e83e4call Stdlib.Hashtbl.power_2_above
    001e83e9mov [rsp+16], rax
    001e83eemov rax, [rsp]
    001e83f2cmp rax, 1
    001e83f6je 0x1e8440
    001e83f8lea rax, [rip+0x163f49]
    001e83ffmov rax, [rax+80]
    001e8403mov rbx, [rax+8]
    001e8407lea rax, [rip+0x181bfa]
    001e840emov rax, [rax+280]
    001e8415mov rdi, [rbx]
    001e8418call rdi
    001e841amov rdi, rax
    001e841dmov rbx, rsp
    001e8420mov rsp, [r14+64]
    001e8424call caml_lxm_next_unboxed
    001e8429mov rsp, rbx
    001e842cshl rax, 1
    001e842finc rax
    001e8432and rax, 0x7fffffff
    001e8438mov [rsp], rax
    001e843cjmp 0x1e846d
    001e843e
    001e843e 66 90 f.
    001e8440
    001e8440loc_1e8440:
    001e8440mov rbx, [rsp+24]
    001e8445mov rax, [rbx-8]
    001e8449shr rax, 9
    001e844dor rax, 1
    001e8451cmp rax, 9
    001e8455jl 0x1e8464
    001e8457mov rax, [rbx+16]
    001e845bmov [rsp], rax
    001e845fjmp 0x1e846d
    001e8461
    001e8461 0f 1f 00 ...
    001e8464
    001e8464loc_1e8464:
    001e8464mov eax, 1
    001e8469mov [rsp], rax
    001e846d
    001e846dloc_1e846d:
    001e846dmov rbx, [rsp+24]
    001e8472mov rax, [rbx-8]
    001e8476shr rax, 9
    001e847aor rax, 1
    001e847ecmp rax, 9
    001e8482jl 0x1e8490
    001e8484mov rax, [rbx+24]
    001e8488mov [rsp+8], rax
    001e848djmp 0x1e849a
    001e848f
    001e848f 90 .
    001e8490
    001e8490loc_1e8490:
    001e8490mov rax, [rsp+16]
    001e8495mov [rsp+8], rax
    001e849a
    001e849aloc_1e849a:
    001e849amov esi, 1
    001e849fmov rdi, [rsp+16]
    001e84a4lea rax, [rip+0x117f5]
    001e84abcall caml_c_call
    001e84b0sub r15, 80
    001e84b4cmp r15, [r14]
    001e84b7jb 0x1e8548
    001e84bd
    001e84bdloc_1e84bd:
    001e84bdlea rbx, [r15+8]
    001e84c1add rbx, 40
    001e84c5mov [rsp+16], rbx
    001e84camov [rbx-8], 4096
    001e84d2mov rdx, [rsp+24]
    001e84d7mov rdi, [rdx]
    001e84damov [rbx], rdi
    001e84ddmov [rbx+8], rax
    001e84e1mov rax, [rsp]
    001e84e5mov [rbx+16], rax
    001e84e9mov rax, [rsp+8]
    001e84eemov [rbx+24], rax
    001e84f2lea rax, [rip+0x181b0f]
    001e84f9mov rdi, [rax+336]
    001e8500lea rax, [rbx-40]
    001e8504mov [rax-8], 4343
    001e850clea rsi, [rip+109]
    001e8513mov [rax], rsi
    001e8516mov rsi, 0x100000000000005
    001e8520mov [rax+8], rsi
    001e8524mov [rax+16], rbx
    001e8528mov [rax+24], rdi
    001e852cmov rsi, [rbx+8]
    001e8530mov rdi, [rdx+8]
    001e8534mov ebx, 1
    001e8539call Stdlib.Hashtbl.insert_all_buckets
    001e853emov rax, [rsp+16]
    001e8543add rsp, 32
    001e8547ret
    001e8548
    001e8548loc_1e8548:
    001e8548call caml_call_gc
    001e854djmp 0x1e84bd
    001e8552
    001e8552loc_1e8552:
    001e8552push 37
    001e8554call caml_call_realloc_stack
    001e8559pop r10
    001e855bjmp 0x1e83c2
    001e83b0
    001e8560
    001e8560Stdlib.Hashtbl.rebuild:
    001e8560test al, 1
    001e8562je 0x1e8578
    001e8564lea rax, [rip+0x181a9d]
    001e856bmov rax, [rax+272]
    001e8572mov rax, [rax]
    001e8575jmp 0x1e857b
    001e8577
    001e8577 90 .
    001e8578
    001e8578loc_1e8578:
    001e8578mov rax, [rax]
    001e857b
    001e857bloc_1e857b:
    001e857bjmp 0x1e83b0
    001e8560
    001e8580
    001e8580Stdlib.Hashtbl.fun:
    001e8580mov rdi, rax
    001e8583mov rax, [rbx+16]
    001e8587mov rbx, rdi
    001e858ajmp 0x1e7630
    001e8580
    001e858f
    001e858f // align 0x10
    001e8590
    001e8590Stdlib.Hashtbl.entry:
    001e8590lea r10, [rsp-336]
    001e8598cmp r10, [r14+40]
    001e859cjb 0x1e8cfa
    001e85a2
    001e85a2loc_1e85a2:
    001e85a2lea rsi, [rip+0x181537]
    001e85a9lea rdi, [rip+0x181a58]
    001e85b0add rdi, 240
    001e85b7mov rbx, rsp
    001e85bamov rsp, [r14+64]
    001e85becall caml_initialize
    001e85c3mov rsp, rbx
    001e85c6lea rsi, [rip+0x181533]
    001e85cdlea rdi, [rip+0x181a34]
    001e85d4add rdi, 248
    001e85dbmov rbx, rsp
    001e85demov rsp, [r14+64]
    001e85e2call caml_initialize
    001e85e7mov rsp, rbx
    001e85ealea rsi, [rip+0x181527]
    001e85f1lea rdi, [rip+0x181a10]
    001e85f8add rdi, 256
    001e85ffmov rbx, rsp
    001e8602mov rsp, [r14+64]
    001e8606call caml_initialize
    001e860bmov rsp, rbx
    001e860elea r11, [rip+39]
    001e8615push r11
    001e8617push [r14+48]
    001e861bmov [r14+48], rsp
    001e861flea rdi, [rip+0x181c1a]
    001e8626lea rax, [rip+0x3a613]
    001e862dcall caml_c_call
    001e8632pop [r14+48]
    001e8636add rsp, 8
    001e863ajmp 0x1e869d
    001e863clea rbx, [rip+0x144fd5]
    001e8643mov rbx, [rbx+56]
    001e8647cmp rax, rbx
    001e864ajne 0x1e8698
    001e864clea r11, [rip+39]
    001e8653push r11
    001e8655push [r14+48]
    001e8659mov [r14+48], rsp
    001e865dlea rdi, [rip+0x181bc4]
    001e8664lea rax, [rip+0x3a5d5]
    001e866bcall caml_c_call
    001e8670pop [r14+48]
    001e8674add rsp, 8
    001e8678jmp 0x1e869d
    001e867alea rbx, [rip+0x144f97]
    001e8681mov rbx, [rbx+56]
    001e8685cmp rax, rbx
    001e8688jne 0x1e8693
    001e868alea rax, [rip+0x181b87]
    001e8691jmp 0x1e869d
    001e8693
    001e8693loc_1e8693:
    001e8693call caml_reraise_exn
    001e8698
    001e8698loc_1e8698:
    001e8698call caml_reraise_exn
    001e869d
    001e869dloc_1e869d:
    001e869dmov edi, 165
    001e86a2mov ebx, 1
    001e86a7call Stdlib.String.contains_from
    001e86aclea rdi, [rip+0x181955]
    001e86b3add rdi, 264
    001e86bamov rsi, rax
    001e86bdmov rbx, rsp
    001e86c0mov rsp, [r14+64]
    001e86c4call caml_initialize
    001e86c9mov rsp, rbx
    001e86cclea rdi, [rip+0x181935]
    001e86d3mov rax, [rdi+264]
    001e86dacall caml_alloc1
    001e86dflea rsi, [r15+8]
    001e86e3mov [rsi-8], 1024
    001e86ebmov [rsi], rax
    001e86eeadd rdi, 272
    001e86f5mov rbx, rsp
    001e86f8mov rsp, [r14+64]
    001e86fccall caml_initialize
    001e8701mov rsp, rbx
    001e8704lea rsi, [rip+0x181425]
    001e870blea rdi, [rip+0x1818f6]
    001e8712add rdi, 120
    001e8716mov rbx, rsp
    001e8719mov rsp, [r14+64]
    001e871dcall caml_initialize
    001e8722mov rsp, rbx
    001e8725lea rsi, [rip+0x18141c]
    001e872clea rdi, [rip+0x1818d5]
    001e8733add rdi, 128
    001e873amov rbx, rsp
    001e873dmov rsp, [r14+64]
    001e8741call caml_initialize
    001e8746mov rsp, rbx
    001e8749lea rax, [rip+0x17f7b0]
    001e8750mov rax, [rax+144]
    001e8757mov rbx, [rax+8]
    001e875bmov eax, 1
    001e8760call Stdlib.Domain.new_key
    001e8765lea rdi, [rip+0x18189c]
    001e876cadd rdi, 280
    001e8773mov rsi, rax
    001e8776mov rbx, rsp
    001e8779mov rsp, [r14+64]
    001e877dcall caml_initialize
    001e8782mov rsp, rbx
    001e8785lea rsi, [rip+0x1813d4]
    001e878clea rdi, [rip+0x181875]
    001e8793add rdi, 288
    001e879amov rbx, rsp
    001e879dmov rsp, [r14+64]
    001e87a1call caml_initialize
    001e87a6mov rsp, rbx
    001e87a9lea rsi, [rip+0x1813d0]
    001e87b0lea rdi, [rip+0x181851]
    001e87b7mov rbx, rsp
    001e87bamov rsp, [r14+64]
    001e87becall caml_initialize
    001e87c3mov rsp, rbx
    001e87c6lea rsi, [rip+0x1813f3]
    001e87cdlea rdi, [rip+0x181834]
    001e87d4add rdi, 8
    001e87d8mov rbx, rsp
    001e87dbmov rsp, [r14+64]
    001e87dfcall caml_initialize
    001e87e4mov rsp, rbx
    001e87e7lea rsi, [rip+0x1813ea]
    001e87eelea rdi, [rip+0x181813]
    001e87f5add rdi, 16
    001e87f9mov rbx, rsp
    001e87fcmov rsp, [r14+64]
    001e8800call caml_initialize
    001e8805mov rsp, rbx
    001e8808lea rsi, [rip+0x1813e1]
    001e880flea rdi, [rip+0x1817f2]
    001e8816add rdi, 296
    001e881dmov rbx, rsp
    001e8820mov rsp, [r14+64]
    001e8824call caml_initialize
    001e8829mov rsp, rbx
    001e882clea rsi, [rip+0x1813d5]
    001e8833lea rdi, [rip+0x1817ce]
    001e883aadd rdi, 24
    001e883emov rbx, rsp
    001e8841mov rsp, [r14+64]
    001e8845call caml_initialize
    001e884amov rsp, rbx
    001e884dlea rsi, [rip+0x1813cc]
    001e8854lea rdi, [rip+0x1817ad]
    001e885badd rdi, 112
    001e885fmov rbx, rsp
    001e8862mov rsp, [r14+64]
    001e8866call caml_initialize
    001e886bmov rsp, rbx
    001e886elea rsi, [rip+0x1813c3]
    001e8875lea rdi, [rip+0x18178c]
    001e887cadd rdi, 304
    001e8883mov rbx, rsp
    001e8886mov rsp, [r14+64]
    001e888acall caml_initialize
    001e888fmov rsp, rbx
    001e8892lea rsi, [rip+0x1813bf]
    001e8899lea rdi, [rip+0x181768]
    001e88a0add rdi, 312
    001e88a7mov rbx, rsp
    001e88aamov rsp, [r14+64]
    001e88aecall caml_initialize
    001e88b3mov rsp, rbx
    001e88b6lea rsi, [rip+0x1813bb]
    001e88bdlea rdi, [rip+0x181744]
    001e88c4add rdi, 88
    001e88c8mov rbx, rsp
    001e88cbmov rsp, [r14+64]
    001e88cfcall caml_initialize
    001e88d4mov rsp, rbx
    001e88d7lea rsi, [rip+0x1813ba]
    001e88delea rdi, [rip+0x181723]
    001e88e5add rdi, 320
    001e88ecmov rbx, rsp
    001e88efmov rsp, [r14+64]
    001e88f3call caml_initialize
    001e88f8mov rsp, rbx
    001e88fblea rsi, [rip+0x1813b6]
    001e8902lea rdi, [rip+0x1816ff]
    001e8909add rdi, 96
    001e890dmov rbx, rsp
    001e8910mov rsp, [r14+64]
    001e8914call caml_initialize
    001e8919mov rsp, rbx
    001e891clea rsi, [rip+0x1813b5]
    001e8923lea rdi, [rip+0x1816de]
    001e892aadd rdi, 104
    001e892emov rbx, rsp
    001e8931mov rsp, [r14+64]
    001e8935call caml_initialize
    001e893amov rsp, rbx
    001e893dlea rsi, [rip+0x1813b4]
    001e8944lea rdi, [rip+0x1816bd]
    001e894badd rdi, 328
    001e8952mov rbx, rsp
    001e8955mov rsp, [r14+64]
    001e8959call caml_initialize
    001e895emov rsp, rbx
    001e8961lea rsi, [rip+0x1813b0]
    001e8968lea rdi, [rip+0x181699]
    001e896fadd rdi, 144
    001e8976mov rbx, rsp
    001e8979mov rsp, [r14+64]
    001e897dcall caml_initialize
    001e8982mov rsp, rbx
    001e8985lea rsi, [rip+0x1813a4]
    001e898clea rdi, [rip+0x181675]
    001e8993add rdi, 152
    001e899amov rbx, rsp
    001e899dmov rsp, [r14+64]
    001e89a1call caml_initialize
    001e89a6mov rsp, rbx
    001e89a9lea rsi, [rip+0x181398]
    001e89b0lea rdi, [rip+0x181651]
    001e89b7add rdi, 160
    001e89bemov rbx, rsp
    001e89c1mov rsp, [r14+64]
    001e89c5call caml_initialize
    001e89camov rsp, rbx
    001e89cdlea rsi, [rip+0x18138c]
    001e89d4lea rdi, [rip+0x18162d]
    001e89dbadd rdi, 168
    001e89e2mov rbx, rsp
    001e89e5mov rsp, [r14+64]
    001e89e9call caml_initialize
    001e89eemov rsp, rbx
    001e89f1lea rsi, [rip+0x181048]
    001e89f8lea rdi, [rip+0x181609]
    001e89ffadd rdi, 208
    001e8a06mov rbx, rsp
    001e8a09mov rsp, [r14+64]
    001e8a0dcall caml_initialize
    001e8a12mov rsp, rbx
    001e8a15lea rsi, [rip+0x18100c]
    001e8a1clea rdi, [rip+0x1815e5]
    001e8a23add rdi, 200
    001e8a2amov rbx, rsp
    001e8a2dmov rsp, [r14+64]
    001e8a31call caml_initialize
    001e8a36mov rsp, rbx
    001e8a39lea rsi, [rip+0x181338]
    001e8a40lea rdi, [rip+0x1815c1]
    001e8a47add rdi, 216
    001e8a4emov rbx, rsp
    001e8a51mov rsp, [r14+64]
    001e8a55call caml_initialize
    001e8a5amov rsp, rbx
    001e8a5dlea rsi, [rip+0x18132c]
    001e8a64lea rdi, [rip+0x18159d]
    001e8a6badd rdi, 232
    001e8a72mov rbx, rsp
    001e8a75mov rsp, [r14+64]
    001e8a79call caml_initialize
    001e8a7emov rsp, rbx
    001e8a81lea rsi, [rip+0x181328]
    001e8a88lea rdi, [rip+0x181579]
    001e8a8fadd rdi, 224
    001e8a96mov rbx, rsp
    001e8a99mov rsp, [r14+64]
    001e8a9dcall caml_initialize
    001e8aa2mov rsp, rbx
    001e8aa5lea rsi, [rip+0x181324]
    001e8aaclea rdi, [rip+0x181555]
    001e8ab3add rdi, 336
    001e8abamov rbx, rsp
    001e8abdmov rsp, [r14+64]
    001e8ac1call caml_initialize
    001e8ac6mov rsp, rbx
    001e8ac9lea rsi, [rip+0x181320]
    001e8ad0lea rdi, [rip+0x181531]
    001e8ad7add rdi, 32
    001e8adbmov rbx, rsp
    001e8ademov rsp, [r14+64]
    001e8ae2call caml_initialize
    001e8ae7mov rsp, rbx
    001e8aealea rsi, [rip+0x18131f]
    001e8af1lea rdi, [rip+0x181510]
    001e8af8add rdi, 344
    001e8affmov rbx, rsp
    001e8b02mov rsp, [r14+64]
    001e8b06call caml_initialize
    001e8b0bmov rsp, rbx
    001e8b0elea rsi, [rip+0x18131b]
    001e8b15lea rdi, [rip+0x1814ec]
    001e8b1cadd rdi, 72
    001e8b20mov rbx, rsp
    001e8b23mov rsp, [r14+64]
    001e8b27call caml_initialize
    001e8b2cmov rsp, rbx
    001e8b2flea rsi, [rip+0x18131a]
    001e8b36lea rdi, [rip+0x1814cb]
    001e8b3dadd rdi, 352
    001e8b44mov rbx, rsp
    001e8b47mov rsp, [r14+64]
    001e8b4bcall caml_initialize
    001e8b50mov rsp, rbx
    001e8b53lea rsi, [rip+0x181316]
    001e8b5alea rdi, [rip+0x1814a7]
    001e8b61add rdi, 40
    001e8b65mov rbx, rsp
    001e8b68mov rsp, [r14+64]
    001e8b6ccall caml_initialize
    001e8b71mov rsp, rbx
    001e8b74lea rsi, [rip+0x181315]
    001e8b7blea rdi, [rip+0x181486]
    001e8b82add rdi, 360
    001e8b89mov rbx, rsp
    001e8b8cmov rsp, [r14+64]
    001e8b90call caml_initialize
    001e8b95mov rsp, rbx
    001e8b98lea rsi, [rip+0x181311]
    001e8b9flea rdi, [rip+0x181462]
    001e8ba6add rdi, 48
    001e8baamov rbx, rsp
    001e8badmov rsp, [r14+64]
    001e8bb1call caml_initialize
    001e8bb6mov rsp, rbx
    001e8bb9lea rsi, [rip+0x181310]
    001e8bc0lea rdi, [rip+0x181441]
    001e8bc7add rdi, 56
    001e8bcbmov rbx, rsp
    001e8bcemov rsp, [r14+64]
    001e8bd2call caml_initialize
    001e8bd7mov rsp, rbx
    001e8bdalea rsi, [rip+0x18130f]
    001e8be1lea rdi, [rip+0x181420]
    001e8be8add rdi, 368
    001e8befmov rbx, rsp
    001e8bf2mov rsp, [r14+64]
    001e8bf6call caml_initialize
    001e8bfbmov rsp, rbx
    001e8bfelea rsi, [rip+0x18130b]
    001e8c05lea rdi, [rip+0x1813fc]
    001e8c0cadd rdi, 80
    001e8c10mov rbx, rsp
    001e8c13mov rsp, [r14+64]
    001e8c17call caml_initialize
    001e8c1cmov rsp, rbx
    001e8c1flea rsi, [rip+0x18130a]
    001e8c26lea rdi, [rip+0x1813db]
    001e8c2dadd rdi, 376
    001e8c34mov rbx, rsp
    001e8c37mov rsp, [r14+64]
    001e8c3bcall caml_initialize
    001e8c40mov rsp, rbx
    001e8c43lea rsi, [rip+0x181306]
    001e8c4alea rdi, [rip+0x1813b7]
    001e8c51add rdi, 64
    001e8c55mov rbx, rsp
    001e8c58mov rsp, [r14+64]
    001e8c5ccall caml_initialize
    001e8c61mov rsp, rbx
    001e8c64lea rsi, [rip+0x181305]
    001e8c6blea rdi, [rip+0x181396]
    001e8c72add rdi, 176
    001e8c79mov rbx, rsp
    001e8c7cmov rsp, [r14+64]
    001e8c80call caml_initialize
    001e8c85mov rsp, rbx
    001e8c88lea rsi, [rip+0x181301]
    001e8c8flea rdi, [rip+0x181372]
    001e8c96add rdi, 184
    001e8c9dmov rbx, rsp
    001e8ca0mov rsp, [r14+64]
    001e8ca4call caml_initialize
    001e8ca9mov rsp, rbx
    001e8caclea rsi, [rip+0x1812fd]
    001e8cb3lea rdi, [rip+0x18134e]
    001e8cbaadd rdi, 192
    001e8cc1mov rbx, rsp
    001e8cc4mov rsp, [r14+64]
    001e8cc8call caml_initialize
    001e8ccdmov rsp, rbx
    001e8cd0lea rsi, [rip+0x1812f1]
    001e8cd7lea rdi, [rip+0x18132a]
    001e8cdeadd rdi, 136
    001e8ce5mov rbx, rsp
    001e8ce8mov rsp, [r14+64]
    001e8ceccall caml_initialize
    001e8cf1mov rsp, rbx
    001e8cf4mov eax, 1
    001e8cf9ret
    001e8cfa
    001e8cfaloc_1e8cfa:
    001e8cfapush 35
    001e8cfccall caml_call_realloc_stack
    001e8d01pop r10
    001e8d03jmp 0x1e85a2
    001e8590
    001e8d08
    001e8d08 // align 0x10
    001e8d10
    001e8d10Stdlib.Scanf.next_char:
    001e8d10lea r10, [rsp-344]
    001e8d18cmp r10, [r14+40]
    001e8d1cjb 0x1e8dc9
    001e8d22
    001e8d22loc_1e8d22:
    001e8d22sub rsp, 8
    001e8d26mov [rsp], rax
    001e8d2alea r11, [rip+83]
    001e8d31push r11
    001e8d33push [r14+48]
    001e8d37mov [r14+48], rsp
    001e8d3bmov rbx, [rax+48]
    001e8d3fmov eax, 1
    001e8d44mov rdi, [rbx]
    001e8d47call rdi
    001e8d49mov rdi, [rsp+16]
    001e8d4emov [rdi+8], rax
    001e8d52mov [rdi+16], 3
    001e8d5amov rbx, [rdi+24]
    001e8d5eadd rbx, 2
    001e8d62mov [rdi+24], rbx
    001e8d66cmp rax, 21
    001e8d6ajne 0x1e8d78
    001e8d6cmov rbx, [rdi+32]
    001e8d70add rbx, 2
    001e8d74mov [rdi+32], rbx
    001e8d78
    001e8d78loc_1e8d78:
    001e8d78pop [r14+48]
    001e8d7cadd rsp, 8
    001e8d80jmp 0x1e8dc4
    001e8d82
    001e8d82 66 90 f.
    001e8d84lea rbx, [rip+0x14488d]
    001e8d8bmov rbx, [rbx+88]
    001e8d8fcmp rax, rbx
    001e8d92jne 0x1e8dbc
    001e8d94mov rax, [rsp]
    001e8d98mov [rax+8], 1
    001e8da0mov [rax+16], 1
    001e8da8mov [rax], 3
    001e8dafmov eax, 1
    001e8db4add rsp, 8
    001e8db8ret
    001e8db9
    001e8db9 0f 1f 00 ...
    001e8dbc
    001e8dbcloc_1e8dbc:
    001e8dbccall caml_reraise_exn
    001e8dc1nop [rax]
    001e8dc4
    001e8dc4loc_1e8dc4:
    001e8dc4add rsp, 8
    001e8dc8ret
    001e8dc9
    001e8dc9loc_1e8dc9:
    001e8dc9push 36
    001e8dcbcall caml_call_realloc_stack
    001e8dd0pop r10
    001e8dd2jmp 0x1e8d22
    001e8d10
    001e8dd7
    001e8dd7 // align 0x10
    001e8de0
    001e8de0Stdlib.Scanf.peek_char:
    001e8de0lea r10, [rsp-344]
    001e8de8cmp r10, [r14+40]
    001e8decjb 0x1e8ead
    001e8df2
    001e8df2loc_1e8df2:
    001e8df2sub rsp, 8
    001e8df6mov rbx, [rax+16]
    001e8dfacmp rbx, 1
    001e8dfeje 0x1e8e0c
    001e8e00mov rax, [rax+8]
    001e8e04add rsp, 8
    001e8e08ret
    001e8e09
    001e8e09 0f 1f 00 ...
    001e8e0c
    001e8e0cloc_1e8e0c:
    001e8e0cmov [rsp], rax
    001e8e10lea r11, [rip+81]
    001e8e17push r11
    001e8e19push [r14+48]
    001e8e1dmov [r14+48], rsp
    001e8e21mov rbx, [rax+48]
    001e8e25mov eax, 1
    001e8e2amov rdi, [rbx]
    001e8e2dcall rdi
    001e8e2fmov rdi, [rsp+16]
    001e8e34mov [rdi+8], rax
    001e8e38mov [rdi+16], 3
    001e8e40mov rbx, [rdi+24]
    001e8e44add rbx, 2
    001e8e48mov [rdi+24], rbx
    001e8e4ccmp rax, 21
    001e8e50jne 0x1e8e5e
    001e8e52mov rbx, [rdi+32]
    001e8e56add rbx, 2
    001e8e5amov [rdi+32], rbx
    001e8e5e
    001e8e5eloc_1e8e5e:
    001e8e5epop [r14+48]
    001e8e62add rsp, 8
    001e8e66jmp 0x1e8ea8
    001e8e68lea rbx, [rip+0x1447a9]
    001e8e6fmov rbx, [rbx+88]
    001e8e73cmp rax, rbx
    001e8e76jne 0x1e8ea0
    001e8e78mov rax, [rsp]
    001e8e7cmov [rax+8], 1
    001e8e84mov [rax+16], 1
    001e8e8cmov [rax], 3
    001e8e93mov eax, 1
    001e8e98add rsp, 8
    001e8e9cret
    001e8e9d
    001e8e9d 0f 1f 00 ...
    001e8ea0
    001e8ea0loc_1e8ea0:
    001e8ea0call caml_reraise_exn
    001e8ea5nop [rax]
    001e8ea8
    001e8ea8loc_1e8ea8:
    001e8ea8add rsp, 8
    001e8eacret
    001e8ead
    001e8eadloc_1e8ead:
    001e8eadpush 36
    001e8eafcall caml_call_realloc_stack
    001e8eb4pop r10
    001e8eb6jmp 0x1e8df2
    001e8de0
    001e8ebb
    001e8ebb // align 0x10
    001e8ec0
    001e8ec0Stdlib.Scanf.checked_peek_char:
    001e8ec0lea r10, [rsp-344]
    001e8ec8cmp r10, [r14+40]
    001e8eccjb 0x1e8fa5
    001e8ed2
    001e8ed2loc_1e8ed2:
    001e8ed2sub rsp, 8
    001e8ed6mov rbx, rax
    001e8ed9mov rax, [rbx+16]
    001e8eddcmp rax, 1
    001e8ee1je 0x1e8eec
    001e8ee3mov rax, [rbx+8]
    001e8ee7jmp 0x1e8f84
    001e8eec
    001e8eecloc_1e8eec:
    001e8eecmov [rsp], rbx
    001e8ef0lea r11, [rip+81]
    001e8ef7push r11
    001e8ef9push [r14+48]
    001e8efdmov [r14+48], rsp
    001e8f01mov rbx, [rbx+48]
    001e8f05mov eax, 1
    001e8f0amov rdi, [rbx]
    001e8f0dcall rdi
    001e8f0fmov rbx, [rsp+16]
    001e8f14mov [rbx+8], rax
    001e8f18mov [rbx+16], 3
    001e8f20mov rdi, [rbx+24]
    001e8f24add rdi, 2
    001e8f28mov [rbx+24], rdi
    001e8f2ccmp rax, 21
    001e8f30jne 0x1e8f3e
    001e8f32mov rdi, [rbx+32]
    001e8f36add rdi, 2
    001e8f3amov [rbx+32], rdi
    001e8f3e
    001e8f3eloc_1e8f3e:
    001e8f3epop [r14+48]
    001e8f42add rsp, 8
    001e8f46jmp 0x1e8f84
    001e8f48lea rbx, [rip+0x1446c9]
    001e8f4fmov rbx, [rbx+88]
    001e8f53cmp rax, rbx
    001e8f56jne 0x1e8f7c
    001e8f58mov rbx, [rsp]
    001e8f5cmov [rbx+8], 1
    001e8f64mov [rbx+16], 1
    001e8f6cmov [rbx], 3
    001e8f73mov eax, 1
    001e8f78jmp 0x1e8f84
    001e8f7a
    001e8f7a 66 90 f.
    001e8f7c
    001e8f7cloc_1e8f7c:
    001e8f7ccall caml_reraise_exn
    001e8f81nop [rax]
    001e8f84
    001e8f84loc_1e8f84:
    001e8f84mov rbx, [rbx]
    001e8f87cmp rbx, 1
    001e8f8bje 0x1e8fa0
    001e8f8dlea rax, [rip+0x144684]
    001e8f94mov rax, [rax+88]
    001e8f98call caml_raise_exn
    001e8f9dnop [rax]
    001e8fa0
    001e8fa0loc_1e8fa0:
    001e8fa0add rsp, 8
    001e8fa4ret
    001e8fa5
    001e8fa5loc_1e8fa5:
    001e8fa5push 36
    001e8fa7call caml_call_realloc_stack
    001e8facpop r10
    001e8faejmp 0x1e8ed2
    001e8ec0
    001e8fb3
    001e8fb3 // align 0x10
    001e8fc0
    001e8fc0Stdlib.Scanf.end_of_input:
    001e8fc0lea r10, [rsp-344]
    001e8fc8cmp r10, [r14+40]
    001e8fccjb 0x1e9084
    001e8fd2
    001e8fd2loc_1e8fd2:
    001e8fd2sub rsp, 8
    001e8fd6mov rbx, [rax+16]
    001e8fdacmp rbx, 1
    001e8fdejne 0x1e907c
    001e8fe4mov [rsp], rax
    001e8fe8lea r11, [rip+85]
    001e8fefpush r11
    001e8ff1push [r14+48]
    001e8ff5mov [r14+48], rsp
    001e8ff9mov rbx, [rax+48]
    001e8ffdmov eax, 1
    001e9002mov rdi, [rbx]
    001e9005call rdi
    001e9007mov rbx, rax
    001e900amov rax, [rsp+16]
    001e900fmov [rax+8], rbx
    001e9013mov [rax+16], 3
    001e901bmov rdi, [rax+24]
    001e901fadd rdi, 2
    001e9023mov [rax+24], rdi
    001e9027cmp rbx, 21
    001e902bjne 0x1e9039
    001e902dmov rbx, [rax+32]
    001e9031add rbx, 2
    001e9035mov [rax+32], rbx
    001e9039
    001e9039loc_1e9039:
    001e9039pop [r14+48]
    001e903dadd rsp, 8
    001e9041jmp 0x1e907c
    001e9043
    001e9043 90 .
    001e9044lea rbx, [rip+0x1445cd]
    001e904bmov rbx, [rbx+88]
    001e904fcmp rax, rbx
    001e9052jne 0x1e9074
    001e9054mov rax, [rsp]
    001e9058mov [rax+8], 1
    001e9060mov [rax+16], 1
    001e9068mov [rax], 3
    001e906fjmp 0x1e907c
    001e9071
    001e9071 0f 1f 00 ...
    001e9074
    001e9074loc_1e9074:
    001e9074call caml_reraise_exn
    001e9079nop [rax]
    001e907c
    001e907cloc_1e907c:
    001e907cmov rax, [rax]
    001e907fadd rsp, 8
    001e9083ret
    001e9084
    001e9084loc_1e9084:
    001e9084push 36
    001e9086call caml_call_realloc_stack
    001e908bpop r10
    001e908djmp 0x1e8fd2
    001e8fc0
    001e9092
    001e9092 // align 0x10
    001e90a0
    001e90a0Stdlib.Scanf.eof:
    001e90a0mov rax, [rax]
    001e90a3ret
    001e90a0
    001e90a4
    001e90a4 // align 0x10
    001e90b0
    001e90b0Stdlib.Scanf.beginning_of_input:
    001e90b0mov rax, [rax+24]
    001e90b4cmp rax, 1
    001e90b8sete al
    001e90bbmovzx rax, al
    001e90bflea rax, [rax+rax+1]
    001e90c4ret
    001e90b0
    001e90c5
    001e90c5 // align 0x10
    001e90d0
    001e90d0Stdlib.Scanf.name_of_input:
    001e90d0mov rax, [rax+64]
    001e90d4test al, 1
    001e90d6je 0x1e90f0
    001e90d8sar rax, 1
    001e90dbtest rax, rax
    001e90deje 0x1e90e8
    001e90e0lea rax, [rip+0x184dd9]
    001e90e7ret
    001e90e8
    001e90e8loc_1e90e8:
    001e90e8lea rax, [rip+0x185139]
    001e90efret
    001e90f0
    001e90f0loc_1e90f0:
    001e90f0movzx rbx, [rax-8]
    001e90f5test rbx, rbx
    001e90f8je 0x1e9100
    001e90famov rax, [rax]
    001e90fdret
    001e90fe
    001e90fe 66 90 f.
    001e9100
    001e9100loc_1e9100:
    001e9100lea rax, [rip+0x184c29]
    001e9107ret
    001e90d0
    001e9108
    001e9108 // align 0x10
    001e9110
    001e9110Stdlib.Scanf.char_count:
    001e9110mov rbx, [rax+16]
    001e9114cmp rbx, 1
    001e9118je 0x1e9124
    001e911amov rax, [rax+24]
    001e911eadd rax, -2
    001e9122ret
    001e9123
    001e9123 90 .
    001e9124
    001e9124loc_1e9124:
    001e9124mov rax, [rax+24]
    001e9128ret
    001e9110
    001e9129
    001e9129 // align 0x10
    001e9130
    001e9130Stdlib.Scanf.line_count:
    001e9130mov rax, [rax+32]
    001e9134ret
    001e9130
    001e9135
    001e9135 // align 0x10
    001e9140
    001e9140Stdlib.Scanf.reset_token:
    001e9140mov rdi, [rax+56]
    001e9144mov [rdi+8], 1
    001e914csub r15, 24
    001e9150cmp r15, [r14]
    001e9153jb 0x1e919e
    001e9155
    001e9155loc_1e9155:
    001e9155lea rsi, [r15+8]
    001e9159mov [rsi-8], 2048
    001e9161mov rax, [rdi+16]
    001e9165mov [rsi], rax
    001e9168mov rbx, [rax-8]
    001e916cshr rbx, 10
    001e9170lea rbx, [8*rbx-1]
    001e9178movzx rax, [rax+rbx]
    001e917dsub rbx, rax
    001e9180lea rax, [rbx+rbx+1]
    001e9185mov [rsi+8], rax
    001e9189mov rbx, rsp
    001e918cmov rsp, [r14+64]
    001e9190call caml_modify
    001e9195mov rsp, rbx
    001e9198mov eax, 1
    001e919dret
    001e919e
    001e919eloc_1e919e:
    001e919ecall caml_call_gc
    001e91a3jmp 0x1e9155
    001e9140
    001e91a5
    001e91a5 // align 0x10
    001e91b0
    001e91b0Stdlib.Scanf.invalidate_current_char:
    001e91b0mov [rax+16], 1
    001e91b8mov eax, 1
    001e91bdret
    001e91b0
    001e91be
    001e91be // align 0x10
    001e91c0
    001e91c0Stdlib.Scanf.token:
    001e91c0lea r10, [rsp-336]
    001e91c8cmp r10, [r14+40]
    001e91ccjb 0x1e9215
    001e91ce
    001e91celoc_1e91ce:
    001e91cesub rsp, 16
    001e91d2mov [rsp+8], rax
    001e91d7mov rax, [rax+56]
    001e91dbmov [rsp], rax
    001e91dfmov rdi, [rax+8]
    001e91e3mov rax, [rax]
    001e91e6mov rax, [rax]
    001e91e9mov ebx, 1
    001e91eecall Stdlib.Bytes.sub
    001e91f3mov rbx, [rsp]
    001e91f7mov [rbx+8], 1
    001e91ffmov rdi, [rsp+8]
    001e9204mov rbx, [rdi+40]
    001e9208add rbx, 2
    001e920cmov [rdi+40], rbx
    001e9210add rsp, 16
    001e9214ret
    001e9215
    001e9215loc_1e9215:
    001e9215push 35
    001e9217call caml_call_realloc_stack
    001e921cpop r10
    001e921ejmp 0x1e91ce
    001e91c0
    001e9220
    001e9220Stdlib.Scanf.token_count:
    001e9220mov rax, [rax+40]
    001e9224ret
    001e9220
    001e9225
    001e9225 // align 0x10
    001e9230
    001e9230Stdlib.Scanf.skip_char:
    001e9230mov [rbx+16], 1
    001e9238ret
    001e9230
    001e9239
    001e9239 // align 0x10
    001e9240
    001e9240Stdlib.Scanf.ignore_char:
    001e9240add rax, -2
    001e9244mov [rbx+16], 1
    001e924cret
    001e9240
    001e924d
    001e924d // align 0x10
    001e9250
    001e9250Stdlib.Scanf.store_char:
    001e9250lea r10, [rsp-336]
    001e9258cmp r10, [r14+40]
    001e925cjb 0x1e9291
    001e925e
    001e925eloc_1e925e:
    001e925esub rsp, 16
    001e9262mov [rsp], rax
    001e9266mov [rsp+8], rbx
    001e926bmov rax, [rbx+56]
    001e926fmov rbx, rdi
    001e9272call Stdlib.Buffer.add_char
    001e9277mov rax, [rsp]
    001e927badd rax, -2
    001e927fmov rbx, [rsp+8]
    001e9284mov [rbx+16], 1
    001e928cadd rsp, 16
    001e9290ret
    001e9291
    001e9291loc_1e9291:
    001e9291push 35
    001e9293call caml_call_realloc_stack
    001e9298pop r10
    001e929ajmp 0x1e925e
    001e9250
    001e929c
    001e929c // align 0x10
    001e92a0
    001e92a0Stdlib.Scanf.create:
    001e92a0lea r10, [rsp-336]
    001e92a8cmp r10, [r14+40]
    001e92acjb 0x1e932d
    001e92ae
    001e92aeloc_1e92ae:
    001e92aesub rsp, 16
    001e92b2mov [rsp+8], rax
    001e92b7mov [rsp], rbx
    001e92bbmov eax, 2049
    001e92c0call Stdlib.Buffer.create
    001e92c5sub r15, 80
    001e92c9cmp r15, [r14]
    001e92ccjb 0x1e9326
    001e92ce
    001e92celoc_1e92ce:
    001e92celea rbx, [r15+8]
    001e92d2mov [rbx-8], 9216
    001e92damov [rbx], 1
    001e92e1mov [rbx+8], 1
    001e92e9mov [rbx+16], 1
    001e92f1mov [rbx+24], 1
    001e92f9mov [rbx+32], 1
    001e9301mov [rbx+40], 1
    001e9309mov rdi, [rsp]
    001e930dmov [rbx+48], rdi
    001e9311mov [rbx+56], rax
    001e9315mov rax, [rsp+8]
    001e931amov [rbx+64], rax
    001e931emov rax, rbx
    001e9321add rsp, 16
    001e9325ret
    001e9326
    001e9326loc_1e9326:
    001e9326call caml_call_gc
    001e932bjmp 0x1e92ce
    001e932d
    001e932dloc_1e932d:
    001e932dpush 35
    001e932fcall caml_call_realloc_stack
    001e9334pop r10
    001e9336jmp 0x1e92ae
    001e92a0
    001e933b
    001e933b // align 0x10
    001e9340
    001e9340Stdlib.Scanf.from_string:
    001e9340lea r10, [rsp-328]
    001e9348cmp r10, [r14+40]
    001e934cjb 0x1e9446
    001e9352
    001e9352loc_1e9352:
    001e9352sub rsp, 8
    001e9356sub r15, 64
    001e935acmp r15, [r14]
    001e935djb 0x1e943c
    001e9363
    001e9363loc_1e9363:
    001e9363lea rbx, [r15+8]
    001e9367add rbx, 48
    001e936bmov [rbx-8], 1024
    001e9373mov [rbx], 1
    001e937amov rdi, [rax-8]
    001e937eshr rdi, 10
    001e9382lea rdi, [8*rdi-1]
    001e938amovzx rsi, [rax+rdi]
    001e938fsub rdi, rsi
    001e9392lea rdi, [rdi+rdi+1]
    001e9397lea rsi, [rbx-48]
    001e939bmov [rsp], rsi
    001e939fmov [rsi-8], 5367
    001e93a7lea rdx, [rip+178]
    001e93aemov [rsi], rdx
    001e93b1mov rdx, 0x100000000000005
    001e93bbmov [rsi+8], rdx
    001e93bfmov [rsi+16], rax
    001e93c3mov [rsi+24], rbx
    001e93c7mov [rsi+32], rdi
    001e93cbmov eax, 2049
    001e93d0call Stdlib.Buffer.create
    001e93d5sub r15, 80
    001e93d9cmp r15, [r14]
    001e93dcjb 0x1e9435
    001e93de
    001e93deloc_1e93de:
    001e93delea rbx, [r15+8]
    001e93e2mov [rbx-8], 9216
    001e93eamov [rbx], 1
    001e93f1mov [rbx+8], 1
    001e93f9mov [rbx+16], 1
    001e9401mov [rbx+24], 1
    001e9409mov [rbx+32], 1
    001e9411mov [rbx+40], 1
    001e9419mov rdi, [rsp]
    001e941dmov [rbx+48], rdi
    001e9421mov [rbx+56], rax
    001e9425mov [rbx+64], 3
    001e942dmov rax, rbx
    001e9430add rsp, 8
    001e9434ret
    001e9435
    001e9435loc_1e9435:
    001e9435call caml_call_gc
    001e943ajmp 0x1e93de
    001e943c
    001e943cloc_1e943c:
    001e943ccall caml_call_gc
    001e9441jmp 0x1e9363
    001e9446
    001e9446loc_1e9446:
    001e9446push 34
    001e9448call caml_call_realloc_stack
    001e944dpop r10
    001e944fjmp 0x1e9352
    001e9340
    001e9454
    001e9454 // align 0x10
    001e9460
    001e9460Stdlib.Scanf.next:
    001e9460mov rax, [rbx+32]
    001e9464mov rdi, [rbx+24]
    001e9468mov rsi, [rdi]
    001e946bcmp rsi, rax
    001e946ejl 0x1e9480
    001e9470lea rax, [rip+0x1441a1]
    001e9477mov rax, [rax+88]
    001e947bcall caml_raise_exn
    001e9480
    001e9480loc_1e9480:
    001e9480sar rsi, 1
    001e9483mov rax, [rbx+16]
    001e9487mov rbx, [rax-8]
    001e948bshr rbx, 10
    001e948flea rbx, [8*rbx-1]
    001e9497movzx rdx, [rax+rbx]
    001e949csub rbx, rdx
    001e949fcmp rbx, rsi
    001e94a2jbe 0x1e94b3
    001e94a4movzx rax, [rax+rsi]
    001e94a9lea rax, [rax+rax+1]
    001e94aeadd [rdi], 2
    001e94b2ret
    001e94b3
    001e94b3loc_1e94b3:
    001e94b3call caml_ml_array_bound_error
    001e9460
    001e94b8
    001e94b8 // align 0x10
    001e94c0
    001e94c0Stdlib.Scanf.fun:
    001e94c0lea r10, [rsp-336]
    001e94c8cmp r10, [r14+40]
    001e94ccjb 0x1e9555
    001e94d2
    001e94d2loc_1e94d2:
    001e94d2sub rsp, 16
    001e94d6mov [rsp], rax
    001e94damov rax, [rbx+16]
    001e94demov [rsp+8], rax
    001e94e3mov eax, 2049
    001e94e8call Stdlib.Buffer.create
    001e94edsub r15, 80
    001e94f1cmp r15, [r14]
    001e94f4jb 0x1e954e
    001e94f6
    001e94f6loc_1e94f6:
    001e94f6lea rbx, [r15+8]
    001e94famov [rbx-8], 9216
    001e9502mov [rbx], 1
    001e9509mov [rbx+8], 1
    001e9511mov [rbx+16], 1
    001e9519mov [rbx+24], 1
    001e9521mov [rbx+32], 1
    001e9529mov [rbx+40], 1
    001e9531mov rdi, [rsp]
    001e9535mov [rbx+48], rdi
    001e9539mov [rbx+56], rax
    001e953dmov rax, [rsp+8]
    001e9542mov [rbx+64], rax
    001e9546mov rax, rbx
    001e9549add rsp, 16
    001e954dret
    001e954e
    001e954eloc_1e954e:
    001e954ecall caml_call_gc
    001e9553jmp 0x1e94f6
    001e9555
    001e9555loc_1e9555:
    001e9555push 35
    001e9557call caml_call_realloc_stack
    001e955cpop r10
    001e955ejmp 0x1e94d2
    001e94c0
    001e9563
    001e9563 // align 0x10
    001e9570
    001e9570Stdlib.Scanf.scan_close_at_end:
    001e9570mov rdi, rax
    001e9573lea rax, [rip+0x264d6]
    001e957acall caml_c_call
    001e957flea rax, [rip+0x144092]
    001e9586mov rax, [rax+88]
    001e958acall caml_raise_exn
    001e9570
    001e958f
    001e958f // align 0x10
    001e9590
    001e9590Stdlib.Scanf.scan_raise_at_end:
    001e9590lea rax, [rip+0x144081]
    001e9597mov rax, [rax+88]
    001e959bcall caml_raise_exn
    001e9590
    001e95a0
    001e95a0Stdlib.Scanf.from_ic:
    001e95a0lea r10, [rsp-360]
    001e95a8cmp r10, [r14+40]
    001e95acjb 0x1e9703
    001e95b2
    001e95b2loc_1e95b2:
    001e95b2sub rsp, 40
    001e95b6mov [rsp], rax
    001e95bamov [rsp+32], rbx
    001e95bfmov [rsp+8], rdi
    001e95c4lea rax, [rip+0x183bb5]
    001e95cbmov rax, [rax+864]
    001e95d2mov rdi, [rax]
    001e95d5mov [rsp+16], rdi
    001e95dalea rax, [rip+0x37a4f]
    001e95e1call caml_c_call
    001e95e6sub r15, 128
    001e95edcmp r15, [r14]
    001e95f0jb 0x1e96f9
    001e95f6
    001e95f6loc_1e95f6:
    001e95f6lea rbx, [r15+8]
    001e95faadd rbx, 112
    001e95femov [rbx-8], 1024
    001e9606mov [rbx], 1
    001e960dlea rdi, [rbx-16]
    001e9611mov [rdi-8], 1024
    001e9619mov [rdi], 1
    001e9620lea rsi, [rdi-16]
    001e9624mov [rsi-8], 1024
    001e962cmov [rsi], 1
    001e9633lea rdx, [rsi-80]
    001e9637mov [rsp+24], rdx
    001e963cmov [rdx-8], 9463
    001e9644lea rcx, [rip+213]
    001e964bmov [rdx], rcx
    001e964emov rcx, 0x100000000000005
    001e9658mov [rdx+8], rcx
    001e965cmov rcx, [rsp]
    001e9660mov [rdx+16], rcx
    001e9664mov rcx, [rsp+8]
    001e9669mov [rdx+24], rcx
    001e966dmov rcx, [rsp+16]
    001e9672mov [rdx+32], rcx
    001e9676mov [rdx+40], rax
    001e967amov [rdx+48], rbx
    001e967emov [rdx+56], rdi
    001e9682mov [rdx+64], rsi
    001e9686mov eax, 2049
    001e968bcall Stdlib.Buffer.create
    001e9690sub r15, 80
    001e9694cmp r15, [r14]
    001e9697jb 0x1e96f2
    001e9699
    001e9699loc_1e9699:
    001e9699lea rbx, [r15+8]
    001e969dmov [rbx-8], 9216
    001e96a5mov [rbx], 1
    001e96acmov [rbx+8], 1
    001e96b4mov [rbx+16], 1
    001e96bcmov [rbx+24], 1
    001e96c4mov [rbx+32], 1
    001e96ccmov [rbx+40], 1
    001e96d4mov rdi, [rsp+24]
    001e96d9mov [rbx+48], rdi
    001e96ddmov [rbx+56], rax
    001e96e1mov rax, [rsp+32]
    001e96e6mov [rbx+64], rax
    001e96eamov rax, rbx
    001e96edadd rsp, 40
    001e96f1ret
    001e96f2
    001e96f2loc_1e96f2:
    001e96f2call caml_call_gc
    001e96f7jmp 0x1e9699
    001e96f9
    001e96f9loc_1e96f9:
    001e96f9call caml_call_gc
    001e96fejmp 0x1e95f6
    001e9703
    001e9703loc_1e9703:
    001e9703push 38
    001e9705call caml_call_realloc_stack
    001e970apop r10
    001e970cjmp 0x1e95b2
    001e95a0
    001e9711
    001e9711 // align 0x10
    001e9720
    001e9720Stdlib.Scanf.next:
    001e9720lea r10, [rsp-328]
    001e9728cmp r10, [r14+40]
    001e972cjb 0x1e984f
    001e9732
    001e9732loc_1e9732:
    001e9732sub rsp, 8
    001e9736cmp r15, [r14]
    001e9739jbe 0x1e983b
    001e973f
    001e973floc_1e973f:
    001e973fmov rax, [rbx+56]
    001e9743mov rax, [rax]
    001e9746mov rdi, [rbx+48]
    001e974amov rsi, [rdi]
    001e974dcmp rsi, rax
    001e9750jge 0x1e9790
    001e9752sar rsi, 1
    001e9755mov rax, [rbx+40]
    001e9759mov rbx, [rax-8]
    001e975dshr rbx, 10
    001e9761lea rbx, [8*rbx-1]
    001e9769movzx rdx, [rax+rbx]
    001e976esub rbx, rdx
    001e9771cmp rbx, rsi
    001e9774jbe 0x1e984a
    001e977amovzx rax, [rax+rsi]
    001e977flea rax, [rax+rax+1]
    001e9784add [rdi], 2
    001e9788add rsp, 8
    001e978cret
    001e978dnop [rax]
    001e9790
    001e9790loc_1e9790:
    001e9790mov rax, [rbx+64]
    001e9794mov rax, [rax]
    001e9797cmp rax, 1
    001e979bje 0x1e97b0
    001e979dlea rax, [rip+0x143e74]
    001e97a4mov rax, [rax+88]
    001e97a8call caml_raise_exn
    001e97adnop [rax]
    001e97b0
    001e97b0loc_1e97b0:
    001e97b0mov [rsp], rbx
    001e97b4mov rsi, [rbx+32]
    001e97b8mov edi, 1
    001e97bdmov rdx, [rbx+40]
    001e97c1mov rax, [rbx+24]
    001e97c5mov rbx, rdx
    001e97c8call camlStdlib.input_302
    001e97cdmov rdi, [rsp]
    001e97d1mov rbx, [rdi+56]
    001e97d5mov [rbx], rax
    001e97d8mov rax, [rbx]
    001e97dbcmp rax, 1
    001e97dfjne 0x1e9800
    001e97e1mov rax, [rdi+64]
    001e97e5mov [rax], 3
    001e97ecmov rbx, [rdi+16]
    001e97f0mov rax, [rdi+24]
    001e97f4mov rdi, [rbx]
    001e97f7add rsp, 8
    001e97fbjmp rdi
    001e97fdnop [rax]
    001e9800
    001e9800loc_1e9800:
    001e9800mov rax, [rdi+48]
    001e9804mov [rax], 3
    001e980bmov rax, [rdi+40]
    001e980fmov rbx, [rax-8]
    001e9813shr rbx, 10
    001e9817lea rbx, [8*rbx-1]
    001e981fmovzx rdi, [rax+rbx]
    001e9824sub rbx, rdi
    001e9827cmp rbx, 0
    001e982bjbe 0x1e9845
    001e982dmovzx rax, [rax]
    001e9831lea rax, [rax+rax+1]
    001e9836add rsp, 8
    001e983aret
    001e983b
    001e983bloc_1e983b:
    001e983bcall caml_call_gc
    001e9840jmp 0x1e973f
    001e9845
    001e9845loc_1e9845:
    001e9845call caml_ml_array_bound_error
    001e984a
    001e984aloc_1e984a:
    001e984acall caml_ml_array_bound_error
    001e984f
    001e984floc_1e984f:
    001e984fpush 34
    001e9851call caml_call_realloc_stack
    001e9856pop r10
    001e9858jmp 0x1e9732
    001e9720
    001e985d
    001e985d // align 0x10
    001e9860
    001e9860Stdlib.Scanf.fun:
    001e9860mov rsi, rax
    001e9863mov rdx, rbx
    001e9866mov rax, [rdi+24]
    001e986amov rbx, rsi
    001e986dmov rdi, rdx
    001e9870jmp 0x1e95a0
    001e9860
    001e9875
    001e9875 // align 0x10
    001e9880
    001e9880Stdlib.Scanf.fun:
    001e9880mov rsi, rax
    001e9883mov rdx, rbx
    001e9886mov rax, [rdi+24]
    001e988amov rbx, rsi
    001e988dmov rdi, rdx
    001e9890jmp 0x1e95a0
    001e9880
    001e9895
    001e9895 // align 0x10
    001e98a0
    001e98a0Stdlib.Scanf.open_in_file:
    001e98a0lea r10, [rsp-328]
    001e98a8cmp r10, [r14+40]
    001e98acjb 0x1e9949
    001e98b2
    001e98b2loc_1e98b2:
    001e98b2sub rsp, 8
    001e98b6mov rdi, rax
    001e98b9mov rax, rbx
    001e98bcmov rbx, [rax-8]
    001e98c0shr rbx, 10
    001e98c4cmp rbx, 2
    001e98c8jl 0x1e98d0
    001e98camov [rsp], rax
    001e98cejmp 0x1e98fc
    001e98d0
    001e98d0loc_1e98d0:
    001e98d0mov rbx, [rax]
    001e98d3mov rsi, 0x60000000000002d
    001e98ddcmp rbx, rsi
    001e98e0jne 0x1e98f8
    001e98e2lea rax, [rip+0x183897]
    001e98e9mov rax, [rax+912]
    001e98f0add rsp, 8
    001e98f4ret
    001e98f5
    001e98f5 0f 1f 00 ...
    001e98f8
    001e98f8loc_1e98f8:
    001e98f8mov [rsp], rax
    001e98fc
    001e98fcloc_1e98fc:
    001e98fcmov rsi, [rdi]
    001e98ffmov rbx, rdi
    001e9902call rsi
    001e9904mov rdi, rax
    001e9907sub r15, 24
    001e990bcmp r15, [r14]
    001e990ejb 0x1e9942
    001e9910
    001e9910loc_1e9910:
    001e9910lea rbx, [r15+8]
    001e9914mov [rbx-8], 2049
    001e991cmov rax, [rsp]
    001e9920mov [rbx], rax
    001e9923mov [rbx+8], rdi
    001e9927lea rax, [rip+0x183852]
    001e992emov rax, [rax+896]
    001e9935mov rax, [rax+24]
    001e9939add rsp, 8
    001e993djmp 0x1e95a0
    001e9942
    001e9942loc_1e9942:
    001e9942call caml_call_gc
    001e9947jmp 0x1e9910
    001e9949
    001e9949loc_1e9949:
    001e9949push 34
    001e994bcall caml_call_realloc_stack
    001e9950pop r10
    001e9952jmp 0x1e98b2
    001e98a0
    001e9957
    001e9957 // align 0x10
    001e9960
    001e9960Stdlib.Scanf.fun:
    001e9960lea r10, [rsp-328]
    001e9968cmp r10, [r14+40]
    001e996cjb 0x1e9a06
    001e9972
    001e9972loc_1e9972:
    001e9972sub rsp, 8
    001e9976mov rbx, [rbx+16]
    001e997amov rdi, [rax-8]
    001e997eshr rdi, 10
    001e9982cmp rdi, 2
    001e9986jl 0x1e9990
    001e9988mov [rsp], rax
    001e998cjmp 0x1e99bc
    001e998e
    001e998e 66 90 f.
    001e9990
    001e9990loc_1e9990:
    001e9990mov rdi, [rax]
    001e9993mov rsi, 0x60000000000002d
    001e999dcmp rdi, rsi
    001e99a0jne 0x1e99b8
    001e99a2lea rax, [rip+0x1837d7]
    001e99a9mov rax, [rax+912]
    001e99b0add rsp, 8
    001e99b4ret
    001e99b5
    001e99b5 0f 1f 00 ...
    001e99b8
    001e99b8loc_1e99b8:
    001e99b8mov [rsp], rax
    001e99bc
    001e99bcloc_1e99bc:
    001e99bcmov rdi, [rbx]
    001e99bfcall rdi
    001e99c1mov rdi, rax
    001e99c4sub r15, 24
    001e99c8cmp r15, [r14]
    001e99cbjb 0x1e99ff
    001e99cd
    001e99cdloc_1e99cd:
    001e99cdlea rbx, [r15+8]
    001e99d1mov [rbx-8], 2049
    001e99d9mov rax, [rsp]
    001e99ddmov [rbx], rax
    001e99e0mov [rbx+8], rdi
    001e99e4lea rax, [rip+0x183795]
    001e99ebmov rax, [rax+896]
    001e99f2mov rax, [rax+24]
    001e99f6add rsp, 8
    001e99fajmp 0x1e95a0
    001e99ff
    001e99ffloc_1e99ff:
    001e99ffcall caml_call_gc
    001e9a04jmp 0x1e99cd
    001e9a06
    001e9a06loc_1e9a06:
    001e9a06push 34
    001e9a08call caml_call_realloc_stack
    001e9a0dpop r10
    001e9a0fjmp 0x1e9972
    001e9960
    001e9a14
    001e9a14 // align 0x10
    001e9a20
    001e9a20Stdlib.Scanf.fun:
    001e9a20lea r10, [rsp-328]
    001e9a28cmp r10, [r14+40]
    001e9a2cjb 0x1e9ac6
    001e9a32
    001e9a32loc_1e9a32:
    001e9a32sub rsp, 8
    001e9a36mov rbx, [rbx+16]
    001e9a3amov rdi, [rax-8]
    001e9a3eshr rdi, 10
    001e9a42cmp rdi, 2
    001e9a46jl 0x1e9a50
    001e9a48mov [rsp], rax
    001e9a4cjmp 0x1e9a7c
    001e9a4e
    001e9a4e 66 90 f.
    001e9a50
    001e9a50loc_1e9a50:
    001e9a50mov rdi, [rax]
    001e9a53mov rsi, 0x60000000000002d
    001e9a5dcmp rdi, rsi
    001e9a60jne 0x1e9a78
    001e9a62lea rax, [rip+0x183717]
    001e9a69mov rax, [rax+912]
    001e9a70add rsp, 8
    001e9a74ret
    001e9a75
    001e9a75 0f 1f 00 ...
    001e9a78
    001e9a78loc_1e9a78:
    001e9a78mov [rsp], rax
    001e9a7c
    001e9a7cloc_1e9a7c:
    001e9a7cmov rdi, [rbx]
    001e9a7fcall rdi
    001e9a81mov rdi, rax
    001e9a84sub r15, 24
    001e9a88cmp r15, [r14]
    001e9a8bjb 0x1e9abf
    001e9a8d
    001e9a8dloc_1e9a8d:
    001e9a8dlea rbx, [r15+8]
    001e9a91mov [rbx-8], 2049
    001e9a99mov rax, [rsp]
    001e9a9dmov [rbx], rax
    001e9aa0mov [rbx+8], rdi
    001e9aa4lea rax, [rip+0x1836d5]
    001e9aabmov rax, [rax+896]
    001e9ab2mov rax, [rax+24]
    001e9ab6add rsp, 8
    001e9abajmp 0x1e95a0
    001e9abf
    001e9abfloc_1e9abf:
    001e9abfcall caml_call_gc
    001e9ac4jmp 0x1e9a8d
    001e9ac6
    001e9ac6loc_1e9ac6:
    001e9ac6push 34
    001e9ac8call caml_call_realloc_stack
    001e9acdpop r10
    001e9acfjmp 0x1e9a32
    001e9a20
    001e9ad4
    001e9ad4 // align 0x10
    001e9ae0
    001e9ae0Stdlib.Scanf.from_channel:
    001e9ae0mov rdi, rax
    001e9ae3sub r15, 16
    001e9ae7cmp r15, [r14]
    001e9aeajb 0x1e9b12
    001e9aec
    001e9aecloc_1e9aec:
    001e9aeclea rbx, [r15+8]
    001e9af0mov [rbx-8], 1024
    001e9af8mov [rbx], rdi
    001e9afblea rax, [rip+0x18367e]
    001e9b02mov rax, [rax+904]
    001e9b09mov rax, [rax+24]
    001e9b0djmp 0x1e95a0
    001e9b12
    001e9b12loc_1e9b12:
    001e9b12call caml_call_gc
    001e9b17jmp 0x1e9aec
    001e9ae0
    001e9b19
    001e9b19 // align 0x10
    001e9b20
    001e9b20Stdlib.Scanf.close_in:
    001e9b20mov rax, [rax+64]
    001e9b24test al, 1
    001e9b26jne 0x1e9b54
    001e9b28movzx rbx, [rax-8]
    001e9b2dtest rbx, rbx
    001e9b30je 0x1e9b44
    001e9b32mov rdi, [rax+8]
    001e9b36lea rax, [rip+0x25f13]
    001e9b3dcall caml_c_call
    001e9b42ret
    001e9b43
    001e9b43 90 .
    001e9b44
    001e9b44loc_1e9b44:
    001e9b44mov rdi, [rax]
    001e9b47lea rax, [rip+0x25f02]
    001e9b4ecall caml_c_call
    001e9b53ret
    001e9b54
    001e9b54loc_1e9b54:
    001e9b54mov eax, 1
    001e9b59ret
    001e9b20
    001e9b5a
    001e9b5a // align 0x10
    001e9b60
    001e9b60Stdlib.Scanf.bad_input:
    001e9b60sub r15, 24
    001e9b64cmp r15, [r14]
    001e9b67jb 0x1e9b8f
    001e9b69
    001e9b69loc_1e9b69:
    001e9b69lea rbx, [r15+8]
    001e9b6dmov [rbx-8], 2048
    001e9b75lea rdi, [rip+0x183604]
    001e9b7cmov rdi, [rdi+8]
    001e9b80mov [rbx], rdi
    001e9b83mov [rbx+8], rax
    001e9b87mov rax, rbx
    001e9b8acall caml_raise_exn
    001e9b8f
    001e9b8floc_1e9b8f:
    001e9b8fcall caml_call_gc
    001e9b94jmp 0x1e9b69
    001e9b60
    001e9b96
    001e9b96 // align 0x10
    001e9ba0
    001e9ba0Stdlib.Scanf.bad_input_escape:
    001e9ba0lea r10, [rsp-328]
    001e9ba8cmp r10, [r14+40]
    001e9bacjb 0x1e9c04
    001e9bae
    001e9baeloc_1e9bae:
    001e9baesub rsp, 8
    001e9bb2mov [rsp], rax
    001e9bb6lea rax, [rip+0x184653]
    001e9bbdcall Stdlib.Printf.sprintf
    001e9bc2mov rbx, rax
    001e9bc5mov rdi, [rbx]
    001e9bc8mov rax, [rsp]
    001e9bcccall rdi
    001e9bcesub r15, 24
    001e9bd2cmp r15, [r14]
    001e9bd5jb 0x1e9bfd
    001e9bd7
    001e9bd7loc_1e9bd7:
    001e9bd7lea rbx, [r15+8]
    001e9bdbmov [rbx-8], 2048
    001e9be3lea rdi, [rip+0x183596]
    001e9beamov rdi, [rdi+8]
    001e9beemov [rbx], rdi
    001e9bf1mov [rbx+8], rax
    001e9bf5mov rax, rbx
    001e9bf8call caml_raise_exn
    001e9bfd
    001e9bfdloc_1e9bfd:
    001e9bfdcall caml_call_gc
    001e9c02jmp 0x1e9bd7
    001e9c04
    001e9c04loc_1e9c04:
    001e9c04push 34
    001e9c06call caml_call_realloc_stack
    001e9c0bpop r10
    001e9c0djmp 0x1e9bae
    001e9ba0
    001e9c0f
    001e9c0f // align 0x10
    001e9c10
    001e9c10Stdlib.Scanf.bad_token_length:
    001e9c10lea r10, [rsp-328]
    001e9c18cmp r10, [r14+40]
    001e9c1cjb 0x1e9c74
    001e9c1e
    001e9c1eloc_1e9c1e:
    001e9c1esub rsp, 8
    001e9c22mov [rsp], rax
    001e9c26lea rax, [rip+0x18431b]
    001e9c2dcall Stdlib.Printf.sprintf
    001e9c32mov rbx, rax
    001e9c35mov rdi, [rbx]
    001e9c38mov rax, [rsp]
    001e9c3ccall rdi
    001e9c3esub r15, 24
    001e9c42cmp r15, [r14]
    001e9c45jb 0x1e9c6d
    001e9c47
    001e9c47loc_1e9c47:
    001e9c47lea rbx, [r15+8]
    001e9c4bmov [rbx-8], 2048
    001e9c53lea rdi, [rip+0x183526]
    001e9c5amov rdi, [rdi+8]
    001e9c5emov [rbx], rdi
    001e9c61mov [rbx+8], rax
    001e9c65mov rax, rbx
    001e9c68call caml_raise_exn
    001e9c6d
    001e9c6dloc_1e9c6d:
    001e9c6dcall caml_call_gc
    001e9c72jmp 0x1e9c47
    001e9c74
    001e9c74loc_1e9c74:
    001e9c74push 34
    001e9c76call caml_call_realloc_stack
    001e9c7bpop r10
    001e9c7djmp 0x1e9c1e
    001e9c10
    001e9c7f
    001e9c7f // align 0x10
    001e9c80
    001e9c80Stdlib.Scanf.bad_end_of_input:
    001e9c80lea r10, [rsp-328]
    001e9c88cmp r10, [r14+40]
    001e9c8cjb 0x1e9ce4
    001e9c8e
    001e9c8eloc_1e9c8e:
    001e9c8esub rsp, 8
    001e9c92mov [rsp], rax
    001e9c96lea rax, [rip+0x184183]
    001e9c9dcall Stdlib.Printf.sprintf
    001e9ca2mov rbx, rax
    001e9ca5mov rdi, [rbx]
    001e9ca8mov rax, [rsp]
    001e9caccall rdi
    001e9caesub r15, 24
    001e9cb2cmp r15, [r14]
    001e9cb5jb 0x1e9cdd
    001e9cb7
    001e9cb7loc_1e9cb7:
    001e9cb7lea rbx, [r15+8]
    001e9cbbmov [rbx-8], 2048
    001e9cc3lea rdi, [rip+0x1834b6]
    001e9ccamov rdi, [rdi+8]
    001e9ccemov [rbx], rdi
    001e9cd1mov [rbx+8], rax
    001e9cd5mov rax, rbx
    001e9cd8call caml_raise_exn
    001e9cdd
    001e9cddloc_1e9cdd:
    001e9cddcall caml_call_gc
    001e9ce2jmp 0x1e9cb7
    001e9ce4
    001e9ce4loc_1e9ce4:
    001e9ce4push 34
    001e9ce6call caml_call_realloc_stack
    001e9cebpop r10
    001e9cedjmp 0x1e9c8e
    001e9c80
    001e9cef
    001e9cef // align 0x10
    001e9cf0
    001e9cf0Stdlib.Scanf.bad_float:
    001e9cf0sub r15, 24
    001e9cf4cmp r15, [r14]
    001e9cf7jb 0x1e9d23
    001e9cf9
    001e9cf9loc_1e9cf9:
    001e9cf9lea rax, [r15+8]
    001e9cfdmov [rax-8], 2048
    001e9d05lea rbx, [rip+0x183474]
    001e9d0cmov rbx, [rbx+8]
    001e9d10mov [rax], rbx
    001e9d13lea rbx, [rip+0x1840ce]
    001e9d1amov [rax+8], rbx
    001e9d1ecall caml_raise_exn
    001e9d23
    001e9d23loc_1e9d23:
    001e9d23call caml_call_gc
    001e9d28jmp 0x1e9cf9
    001e9cf0
    001e9d2a
    001e9d2a // align 0x10
    001e9d30
    001e9d30Stdlib.Scanf.bad_hex_float:
    001e9d30sub r15, 24
    001e9d34cmp r15, [r14]
    001e9d37jb 0x1e9d63
    001e9d39
    001e9d39loc_1e9d39:
    001e9d39lea rax, [r15+8]
    001e9d3dmov [rax-8], 2048
    001e9d45lea rbx, [rip+0x183434]
    001e9d4cmov rbx, [rbx+8]
    001e9d50mov [rax], rbx
    001e9d53lea rbx, [rip+0x184056]
    001e9d5amov [rax+8], rbx
    001e9d5ecall caml_raise_exn
    001e9d63
    001e9d63loc_1e9d63:
    001e9d63call caml_call_gc
    001e9d68jmp 0x1e9d39
    001e9d30
    001e9d6a
    001e9d6a // align 0x10
    001e9d70
    001e9d70Stdlib.Scanf.character_mismatch_err:
    001e9d70lea r10, [rsp-336]
    001e9d78cmp r10, [r14+40]
    001e9d7cjb 0x1e9db8
    001e9d7e
    001e9d7eloc_1e9d7e:
    001e9d7esub rsp, 16
    001e9d82cmp r15, [r14]
    001e9d85jbe 0x1e9db1
    001e9d87
    001e9d87loc_1e9d87:
    001e9d87mov [rsp+8], rbx
    001e9d8cmov [rsp], rax
    001e9d90lea rax, [rip+0x183f41]
    001e9d97call Stdlib.Printf.sprintf
    001e9d9cmov rdi, rax
    001e9d9fmov rax, [rsp]
    001e9da3mov rbx, [rsp+8]
    001e9da8add rsp, 16
    001e9dacjmp 0xf73e0
    001e9db1
    001e9db1loc_1e9db1:
    001e9db1call caml_call_gc
    001e9db6jmp 0x1e9d87
    001e9db8
    001e9db8loc_1e9db8:
    001e9db8push 35
    001e9dbacall caml_call_realloc_stack
    001e9dbfpop r10
    001e9dc1jmp 0x1e9d7e
    001e9d70
    001e9dc3
    001e9dc3 // align 0x10
    001e9dd0
    001e9dd0Stdlib.Scanf.character_mismatch:
    001e9dd0lea r10, [rsp-336]
    001e9dd8cmp r10, [r14+40]
    001e9ddcjb 0x1e9e3e
    001e9dde
    001e9ddeloc_1e9dde:
    001e9ddesub rsp, 16
    001e9de2mov [rsp+8], rbx
    001e9de7mov [rsp], rax
    001e9deblea rax, [rip+0x183ee6]
    001e9df2call Stdlib.Printf.sprintf
    001e9df7mov rdi, rax
    001e9dfamov rax, [rsp]
    001e9dfemov rbx, [rsp+8]
    001e9e03call caml_apply2
    001e9e08sub r15, 24
    001e9e0ccmp r15, [r14]
    001e9e0fjb 0x1e9e37
    001e9e11
    001e9e11loc_1e9e11:
    001e9e11lea rbx, [r15+8]
    001e9e15mov [rbx-8], 2048
    001e9e1dlea rdi, [rip+0x18335c]
    001e9e24mov rdi, [rdi+8]
    001e9e28mov [rbx], rdi
    001e9e2bmov [rbx+8], rax
    001e9e2fmov rax, rbx
    001e9e32call caml_raise_exn
    001e9e37
    001e9e37loc_1e9e37:
    001e9e37call caml_call_gc
    001e9e3cjmp 0x1e9e11
    001e9e3e
    001e9e3eloc_1e9e3e:
    001e9e3epush 35
    001e9e40call caml_call_realloc_stack
    001e9e45pop r10
    001e9e47jmp 0x1e9dde
    001e9dd0
    001e9e49
    001e9e49 // align 0x10
    001e9e50
    001e9e50Stdlib.Scanf.skip_whites:
    001e9e50lea r10, [rsp-344]
    001e9e58cmp r10, [r14+40]
    001e9e5cjb 0x1e9f76
    001e9e62
    001e9e62loc_1e9e62:
    001e9e62sub rsp, 8
    001e9e66
    001e9e66loc_1e9e66:
    001e9e66mov rbx, rax
    001e9e69cmp r15, [r14]
    001e9e6cjbe 0x1e9f6c
    001e9e72
    001e9e72loc_1e9e72:
    001e9e72mov rax, [rbx+16]
    001e9e76cmp rax, 1
    001e9e7aje 0x1e9e88
    001e9e7cmov rax, [rbx+8]
    001e9e80jmp 0x1e9f20
    001e9e85
    001e9e85 0f 1f 00 ...
    001e9e88
    001e9e88loc_1e9e88:
    001e9e88mov [rsp], rbx
    001e9e8clea r11, [rip+81]
    001e9e93push r11
    001e9e95push [r14+48]
    001e9e99mov [r14+48], rsp
    001e9e9dmov rbx, [rbx+48]
    001e9ea1mov eax, 1
    001e9ea6mov rdi, [rbx]
    001e9ea9call rdi
    001e9eabmov rbx, [rsp+16]
    001e9eb0mov [rbx+8], rax
    001e9eb4mov [rbx+16], 3
    001e9ebcmov rdi, [rbx+24]
    001e9ec0add rdi, 2
    001e9ec4mov [rbx+24], rdi
    001e9ec8cmp rax, 21
    001e9eccjne 0x1e9eda
    001e9ecemov rdi, [rbx+32]
    001e9ed2add rdi, 2
    001e9ed6mov [rbx+32], rdi
    001e9eda
    001e9edaloc_1e9eda:
    001e9edapop [r14+48]
    001e9edeadd rsp, 8
    001e9ee2jmp 0x1e9f20
    001e9ee4lea rbx, [rip+0x14372d]
    001e9eebmov rbx, [rbx+88]
    001e9eefcmp rax, rbx
    001e9ef2jne 0x1e9f18
    001e9ef4mov rbx, [rsp]
    001e9ef8mov [rbx+8], 1
    001e9f00mov [rbx+16], 1
    001e9f08mov [rbx], 3
    001e9f0fmov eax, 1
    001e9f14jmp 0x1e9f20
    001e9f16
    001e9f16 66 90 f.
    001e9f18
    001e9f18loc_1e9f18:
    001e9f18call caml_reraise_exn
    001e9f1dnop [rax]
    001e9f20
    001e9f20loc_1e9f20:
    001e9f20mov rdi, [rbx]
    001e9f23cmp rdi, 1
    001e9f27je 0x1e9f34
    001e9f29mov eax, 1
    001e9f2eadd rsp, 8
    001e9f32ret
    001e9f33
    001e9f33 90 .
    001e9f34
    001e9f34loc_1e9f34:
    001e9f34add rax, -18
    001e9f38cmp rax, 9
    001e9f3cjbe 0x1e9f48
    001e9f3ecmp rax, 47
    001e9f42je 0x1e9f5c
    001e9f44jmp 0x1e9f52
    001e9f46
    001e9f46 66 90 f.
    001e9f48
    001e9f48loc_1e9f48:
    001e9f48add rax, -4
    001e9f4ccmp rax, 3
    001e9f50ja 0x1e9f5c
    001e9f52
    001e9f52loc_1e9f52:
    001e9f52mov eax, 1
    001e9f57add rsp, 8
    001e9f5bret
    001e9f5c
    001e9f5cloc_1e9f5c:
    001e9f5cmov [rbx+16], 1
    001e9f64mov rax, rbx
    001e9f67jmp 0x1e9e66
    001e9f6c
    001e9f6cloc_1e9f6c:
    001e9f6ccall caml_call_gc
    001e9f71jmp 0x1e9e72
    001e9f76
    001e9f76loc_1e9f76:
    001e9f76push 36
    001e9f78call caml_call_realloc_stack
    001e9f7dpop r10
    001e9f7fjmp 0x1e9e62
    001e9e50
    001e9f84
    001e9f84 // align 0x10
    001e9f90
    001e9f90Stdlib.Scanf.check_char:
    001e9f90cmp r15, [r14]
    001e9f93jbe 0x1e9fb5
    001e9f95
    001e9f95loc_1e9f95:
    001e9f95cmp rbx, 21
    001e9f99je 0x1e9fb0
    001e9f9bcmp rbx, 65
    001e9f9fje 0x1e9fa8
    001e9fa1jmp 0x1e9fc0
    001e9fa6
    001e9fa6 66 90 f.
    001e9fa8
    001e9fa8loc_1e9fa8:
    001e9fa8jmp 0x1e9e50
    001e9fad
    001e9fad 0f 1f 00 ...
    001e9fb0
    001e9fb0loc_1e9fb0:
    001e9fb0jmp 0x1ea130
    001e9fb5
    001e9fb5loc_1e9fb5:
    001e9fb5call caml_call_gc
    001e9fbajmp 0x1e9f95
    001e9f90
    001e9fbc
    001e9fbc // align 0x10
    001e9fc0
    001e9fc0Stdlib.Scanf.check_this_char:
    001e9fc0lea r10, [rsp-352]
    001e9fc8cmp r10, [r14+40]
    001e9fccjb 0x1ea120
    001e9fd2
    001e9fd2loc_1e9fd2:
    001e9fd2sub rsp, 16
    001e9fd6mov rdi, rax
    001e9fd9mov [rsp], rbx
    001e9fddmov rax, [rdi+16]
    001e9fe1cmp rax, 1
    001e9fe5je 0x1e9ff0
    001e9fe7mov rax, [rdi+8]
    001e9febjmp 0x1ea08c
    001e9ff0
    001e9ff0loc_1e9ff0:
    001e9ff0mov [rsp+8], rdi
    001e9ff5lea r11, [rip+84]
    001e9ffcpush r11
    001e9ffepush [r14+48]
    001ea002mov [r14+48], rsp
    001ea006mov rbx, [rdi+48]
    001ea00amov eax, 1
    001ea00fmov rdi, [rbx]
    001ea012call rdi
    001ea014mov rdi, [rsp+24]
    001ea019mov [rdi+8], rax
    001ea01dmov [rdi+16], 3
    001ea025mov rbx, [rdi+24]
    001ea029add rbx, 2
    001ea02dmov [rdi+24], rbx
    001ea031cmp rax, 21
    001ea035jne 0x1ea043
    001ea037mov rbx, [rdi+32]
    001ea03badd rbx, 2
    001ea03fmov [rdi+32], rbx
    001ea043
    001ea043loc_1ea043:
    001ea043pop [r14+48]
    001ea047add rsp, 8
    001ea04bjmp 0x1ea08c
    001ea04d
    001ea04d 0f 1f 00 ...
    001ea050lea rbx, [rip+0x1435c1]
    001ea057mov rbx, [rbx+88]
    001ea05bcmp rax, rbx
    001ea05ejne 0x1ea084
    001ea060mov rdi, [rsp+8]
    001ea065mov [rdi+8], 1
    001ea06dmov [rdi+16], 1
    001ea075mov [rdi], 3
    001ea07cmov eax, 1
    001ea081jmp 0x1ea08c
    001ea083
    001ea083 90 .
    001ea084
    001ea084loc_1ea084:
    001ea084call caml_reraise_exn
    001ea089nop [rax]
    001ea08c
    001ea08cloc_1ea08c:
    001ea08cmov rbx, [rdi]
    001ea08fcmp rbx, 1
    001ea093je 0x1ea0a8
    001ea095lea rax, [rip+0x14357c]
    001ea09cmov rax, [rax+88]
    001ea0a0call caml_raise_exn
    001ea0a5nop [rax]
    001ea0a8
    001ea0a8loc_1ea0a8:
    001ea0a8mov rbx, [rsp]
    001ea0accmp rax, rbx
    001ea0afjne 0x1ea0c4
    001ea0b1mov [rdi+16], 1
    001ea0b9mov eax, 1
    001ea0beadd rsp, 16
    001ea0c2ret
    001ea0c3
    001ea0c3 90 .
    001ea0c4
    001ea0c4loc_1ea0c4:
    001ea0c4mov [rsp+8], rax
    001ea0c9mov [rsp], rbx
    001ea0cdlea rax, [rip+0x183c04]
    001ea0d4call Stdlib.Printf.sprintf
    001ea0d9mov rdi, rax
    001ea0dcmov rax, [rsp]
    001ea0e0mov rbx, [rsp+8]
    001ea0e5call caml_apply2
    001ea0easub r15, 24
    001ea0eecmp r15, [r14]
    001ea0f1jb 0x1ea119
    001ea0f3
    001ea0f3loc_1ea0f3:
    001ea0f3lea rbx, [r15+8]
    001ea0f7mov [rbx-8], 2048
    001ea0fflea rdi, [rip+0x18307a]
    001ea106mov rdi, [rdi+8]
    001ea10amov [rbx], rdi
    001ea10dmov [rbx+8], rax
    001ea111mov rax, rbx
    001ea114call caml_raise_exn
    001ea119
    001ea119loc_1ea119:
    001ea119call caml_call_gc
    001ea11ejmp 0x1ea0f3
    001ea120
    001ea120loc_1ea120:
    001ea120push 37
    001ea122call caml_call_realloc_stack
    001ea127pop r10
    001ea129jmp 0x1e9fd2
    001e9fc0
    001ea12e
    001ea12e // align 0x10
    001ea130
    001ea130Stdlib.Scanf.check_newline:
    001ea130lea r10, [rsp-352]
    001ea138cmp r10, [r14+40]
    001ea13cjb 0x1ea2ad
    001ea142
    001ea142loc_1ea142:
    001ea142sub rsp, 16
    001ea146mov rdi, rax
    001ea149mov rax, [rdi+16]
    001ea14dcmp rax, 1
    001ea151je 0x1ea15c
    001ea153mov rax, [rdi+8]
    001ea157jmp 0x1ea1f4
    001ea15c
    001ea15cloc_1ea15c:
    001ea15cmov [rsp], rdi
    001ea160lea r11, [rip+81]
    001ea167push r11
    001ea169push [r14+48]
    001ea16dmov [r14+48], rsp
    001ea171mov rbx, [rdi+48]
    001ea175mov eax, 1
    001ea17amov rdi, [rbx]
    001ea17dcall rdi
    001ea17fmov rdi, [rsp+16]
    001ea184mov [rdi+8], rax
    001ea188mov [rdi+16], 3
    001ea190mov rbx, [rdi+24]
    001ea194add rbx, 2
    001ea198mov [rdi+24], rbx
    001ea19ccmp rax, 21
    001ea1a0jne 0x1ea1ae
    001ea1a2mov rbx, [rdi+32]
    001ea1a6add rbx, 2
    001ea1aamov [rdi+32], rbx
    001ea1ae
    001ea1aeloc_1ea1ae:
    001ea1aepop [r14+48]
    001ea1b2add rsp, 8
    001ea1b6jmp 0x1ea1f4
    001ea1b8lea rbx, [rip+0x143459]
    001ea1bfmov rbx, [rbx+88]
    001ea1c3cmp rax, rbx
    001ea1c6jne 0x1ea1ec
    001ea1c8mov rdi, [rsp]
    001ea1ccmov [rdi+8], 1
    001ea1d4mov [rdi+16], 1
    001ea1dcmov [rdi], 3
    001ea1e3mov eax, 1
    001ea1e8jmp 0x1ea1f4
    001ea1ea
    001ea1ea 66 90 f.
    001ea1ec
    001ea1ecloc_1ea1ec:
    001ea1eccall caml_reraise_exn
    001ea1f1nop [rax]
    001ea1f4
    001ea1f4loc_1ea1f4:
    001ea1f4mov rbx, [rdi]
    001ea1f7cmp rbx, 1
    001ea1fbje 0x1ea210
    001ea1fdlea rax, [rip+0x143414]
    001ea204mov rax, [rax+88]
    001ea208call caml_raise_exn
    001ea20dnop [rax]
    001ea210
    001ea210loc_1ea210:
    001ea210cmp rax, 21
    001ea214je 0x1ea294
    001ea216cmp rax, 27
    001ea21aje 0x1ea278
    001ea21cmov [rsp+8], rax
    001ea221mov eax, 21
    001ea226mov [rsp], rax
    001ea22alea rax, [rip+0x183aa7]
    001ea231call Stdlib.Printf.sprintf
    001ea236mov rdi, rax
    001ea239mov rax, [rsp]
    001ea23dmov rbx, [rsp+8]
    001ea242call caml_apply2
    001ea247sub r15, 24
    001ea24bcmp r15, [r14]
    001ea24ejb 0x1ea2a6
    001ea250
    001ea250loc_1ea250:
    001ea250lea rbx, [r15+8]
    001ea254mov [rbx-8], 2048
    001ea25clea rdi, [rip+0x182f1d]
    001ea263mov rdi, [rdi+8]
    001ea267mov [rbx], rdi
    001ea26amov [rbx+8], rax
    001ea26emov rax, rbx
    001ea271call caml_raise_exn
    001ea276nop
    001ea278
    001ea278loc_1ea278:
    001ea278mov [rdi+16], 1
    001ea280mov ebx, 21
    001ea285mov rax, rdi
    001ea288add rsp, 16
    001ea28cjmp 0x1e9fc0
    001ea291
    001ea291 0f 1f 00 ...
    001ea294
    001ea294loc_1ea294:
    001ea294mov [rdi+16], 1
    001ea29cmov eax, 1
    001ea2a1add rsp, 16
    001ea2a5ret
    001ea2a6
    001ea2a6loc_1ea2a6:
    001ea2a6call caml_call_gc
    001ea2abjmp 0x1ea250
    001ea2ad
    001ea2adloc_1ea2ad:
    001ea2adpush 37
    001ea2afcall caml_call_realloc_stack
    001ea2b4pop r10
    001ea2b6jmp 0x1ea142
    001ea130
    001ea2bb
    001ea2bb // align 0x10
    001ea2c0
    001ea2c0Stdlib.Scanf.token_char:
    001ea2c0lea r10, [rsp-336]
    001ea2c8cmp r10, [r14+40]
    001ea2ccjb 0x1ea342
    001ea2ce
    001ea2celoc_1ea2ce:
    001ea2cesub rsp, 16
    001ea2d2mov [rsp+8], rax
    001ea2d7mov rax, [rax+56]
    001ea2dbmov [rsp], rax
    001ea2dfmov rdi, [rax+8]
    001ea2e3mov rax, [rax]
    001ea2e6mov rax, [rax]
    001ea2e9mov ebx, 1
    001ea2eecall Stdlib.Bytes.sub
    001ea2f3mov rbx, [rsp]
    001ea2f7mov [rbx+8], 1
    001ea2ffmov rdi, [rsp+8]
    001ea304mov rbx, [rdi+40]
    001ea308add rbx, 2
    001ea30cmov [rdi+40], rbx
    001ea310mov rbx, [rax-8]
    001ea314shr rbx, 10
    001ea318lea rbx, [8*rbx-1]
    001ea320movzx rdi, [rax+rbx]
    001ea325sub rbx, rdi
    001ea328cmp rbx, 0
    001ea32cjbe 0x1ea33d
    001ea32emovzx rax, [rax]
    001ea332shl rax, 1
    001ea335inc rax
    001ea338add rsp, 16
    001ea33cret
    001ea33d
    001ea33dloc_1ea33d:
    001ea33dcall caml_ml_array_bound_error
    001ea342
    001ea342loc_1ea342:
    001ea342push 35
    001ea344call caml_call_realloc_stack
    001ea349pop r10
    001ea34bjmp 0x1ea2ce
    001ea2c0
    001ea34d
    001ea34d // align 0x10
    001ea350
    001ea350Stdlib.Scanf.token_bool:
    001ea350lea r10, [rsp-336]
    001ea358cmp r10, [r14+40]
    001ea35cjb 0x1ea43e
    001ea362
    001ea362loc_1ea362:
    001ea362sub rsp, 16
    001ea366mov [rsp+8], rax
    001ea36bmov rax, [rax+56]
    001ea36fmov [rsp], rax
    001ea373mov rdi, [rax+8]
    001ea377mov rax, [rax]
    001ea37amov rax, [rax]
    001ea37dmov ebx, 1
    001ea382call Stdlib.Bytes.sub
    001ea387mov rbx, [rsp]
    001ea38bmov [rbx+8], 1
    001ea393mov rdi, [rsp+8]
    001ea398mov rbx, [rdi+40]
    001ea39cadd rbx, 2
    001ea3a0mov [rdi+40], rbx
    001ea3a4mov rbx, [rax-8]
    001ea3a8shr rbx, 10
    001ea3accmp rbx, 2
    001ea3b0jge 0x1ea3ec
    001ea3b2mov rbx, [rax]
    001ea3b5mov rdi, 0x2000065736c6166
    001ea3bfcmp rbx, rdi
    001ea3c2jne 0x1ea3d0
    001ea3c4mov eax, 1
    001ea3c9add rsp, 16
    001ea3cdret
    001ea3ce
    001ea3ce 66 90 f.
    001ea3d0
    001ea3d0loc_1ea3d0:
    001ea3d0mov rdi, 0x300000065757274
    001ea3dacmp rbx, rdi
    001ea3ddjne 0x1ea3ec
    001ea3dfmov eax, 3
    001ea3e4add rsp, 16
    001ea3e8ret
    001ea3e9
    001ea3e9 0f 1f 00 ...
    001ea3ec
    001ea3ecloc_1ea3ec:
    001ea3ecmov [rsp], rax
    001ea3f0lea rax, [rip+0x183841]
    001ea3f7call Stdlib.Printf.sprintf
    001ea3fcmov rbx, rax
    001ea3ffmov rdi, [rbx]
    001ea402mov rax, [rsp]
    001ea406call rdi
    001ea408sub r15, 24
    001ea40ccmp r15, [r14]
    001ea40fjb 0x1ea437
    001ea411
    001ea411loc_1ea411:
    001ea411lea rbx, [r15+8]
    001ea415mov [rbx-8], 2048
    001ea41dlea rdi, [rip+0x182d5c]
    001ea424mov rdi, [rdi+8]
    001ea428mov [rbx], rdi
    001ea42bmov [rbx+8], rax
    001ea42fmov rax, rbx
    001ea432call caml_raise_exn
    001ea437
    001ea437loc_1ea437:
    001ea437call caml_call_gc
    001ea43cjmp 0x1ea411
    001ea43e
    001ea43eloc_1ea43e:
    001ea43epush 35
    001ea440call caml_call_realloc_stack
    001ea445pop r10
    001ea447jmp 0x1ea362
    001ea350