diff options
| -rw-r--r-- | .auto/cfg-ls.json | 1 | ||||
| -rw-r--r-- | docs/GRAPH_VIEW.md | 8 | ||||
| -rw-r--r-- | idatui/app.py | 3 | ||||
| -rw-r--r-- | idatui/graph.py | 23 | ||||
| -rw-r--r-- | idatui/graph_triskel.py | 141 | ||||
| -rw-r--r-- | tests/test_graph.py | 38 |
6 files changed, 182 insertions, 32 deletions
diff --git a/.auto/cfg-ls.json b/.auto/cfg-ls.json new file mode 100644 index 0000000..5ab6b57 --- /dev/null +++ b/.auto/cfg-ls.json @@ -0,0 +1 @@ +[{"name": "sub_15420", "ea": 87072, "blocks": [{"id": 0, "start": 87072, "end": 87178, "lines": ["push rbp", "mov rbp, rsp", "push r15", "mov r15, rdi", "push r14", "mov r14, rdx", "push r13", "push r12", "push rbx", "mov rbx, rsi", "sub rsp, 4E8h", "mov rax, [rbp+arg_18]", "mov [rbp+tp], rcx", "mov [rbp+var_4D8], r8", "mov r11, [rbp+arg_10]", "mov [rbp+var_4D0], rax", "movzx eax, [rbp+arg_0]", "mov [rbp+var_4E0], r9", "mov [rbp+var_4B1], al", "mov rax, fs:28h", "mov [rbp+var_38], rax", "mov eax, [rcx+8]", "mov [rbp+var_4B8], eax", "cmp eax, 0Ch", "jle loc_15800"], "succs": [[1, "fall"], [61, "jump"]]}, {"id": 1, "start": 87178, "end": 87187, "lines": ["sub eax, 0Ch", "mov [rbp+var_4B8], eax"], "succs": [[2, "fall"]]}, {"id": 2, "start": 87187, "end": 87199, "lines": ["movzx eax, byte ptr [r14]", "test al, al", "jz loc_172E2"], "succs": [[3, "fall"], [384, "jump"]]}, {"id": 3, "start": 87199, "end": 87238, "lines": ["mov rdx, 7FFFFFFFFFFFFFFFh", "mov [rbp+var_4E8], rbx", "mov r12, r11", "cmp rbx, rdx", "cmovbe rdx, rbx", "xor r13d, r13d", "mov [rbp+var_4A8], rdx", "jmp short loc_15543"], "succs": [[11, "jump"]]}, {"id": 4, "start": 87248, "end": 87288, "lines": ["xor eax, eax", "test r12, r12", "mov rcx, [rbp+var_4A8]", "mov edx, 1", "cmovns rax, r12", "test rax, rax", "cmovnz rdx, rax", "sub rcx, r13", "cmp rdx, rcx", "jnb loc_158C0"], "succs": [[5, "fall"], [67, "jump"]]}, {"id": 5, "start": 87288, "end": 87296, "lines": ["add r13, rdx", "test r15, r15", "jz short loc_15529"], "succs": [[6, "fall"], [9, "jump"]]}, {"id": 6, "start": 87296, "end": 87302, "lines": ["cmp r12, 1", "jle short loc_1551D"], "succs": [[7, "fall"], [8, "jump"]]}, {"id": 7, "start": 87302, "end": 87325, "lines": ["mov rdi, r15; s", "lea rdx, [rax-1]; n", "mov esi, 20h ; ' '; c", "lea r15, [r15+rax-1]", "call cs:memset_ptr"], "succs": [[8, "fall"]]}, {"id": 8, "start": 87325, "end": 87337, "lines": ["movzx eax, byte ptr [r14]", "add r15, 1", "mov [r15-1], al"], "succs": [[9, "fall"]]}, {"id": 9, "start": 87337, "end": 87340, "lines": ["mov rbx, r14"], "succs": [[10, "fall"]]}, {"id": 10, "start": 87340, "end": 87363, "lines": ["movzx eax, byte ptr [rbx+1]", "lea r14, [rbx+1]", "mov r12, 0FFFFFFFFFFFFFFFFh", "test al, al", "jz loc_158D8"], "succs": [[11, "fall"], [68, "jump"]]}, {"id": 11, "start": 87363, "end": 87367, "lines": ["cmp al, 25h ; '%'", "jnz short loc_154D0"], "succs": [[4, "jump"], [12, "fall"]]}, {"id": 12, "start": 87367, "end": 87392, "lines": ["movzx eax, [rbp+var_4B1]", "mov rbx, r14", "xor r8d, r8d", "xor r11d, r11d", "mov [rbp+var_4B0], al", "nop dword ptr [rax]"], "succs": [[13, "fall"]]}, {"id": 13, "start": 87392, "end": 87405, "lines": ["movzx ecx, byte ptr [rbx+1]", "add rbx, 1", "cmp cl, 30h ; '0'", "jz short loc_155A0"], "succs": [[14, "fall"], [20, "jump"]]}, {"id": 14, "start": 87405, "end": 87407, "lines": ["jg short loc_155B0"], "succs": [[15, "fall"], [21, "jump"]]}, {"id": 15, "start": 87407, "end": 87412, "lines": ["cmp cl, 2Bh ; '+'", "jz short loc_155D0"], "succs": [[16, "fall"], [24, "jump"]]}, {"id": 16, "start": 87412, "end": 87417, "lines": ["cmp cl, 2Dh ; '-'", "jz short loc_155E0"], "succs": [[17, "fall"], [25, "jump"]]}, {"id": 17, "start": 87417, "end": 87426, "lines": ["cmp cl, 23h ; '#'", "jnz loc_15610"], "succs": [[18, "fall"], [29, "jump"]]}, {"id": 18, "start": 87426, "end": 87445, "lines": ["movzx ecx, byte ptr [rbx+1]", "add rbx, 1", "mov r8d, 1", "cmp cl, 30h ; '0'", "jnz short loc_1556D"], "succs": [[14, "jump"], [19, "fall"]]}, {"id": 19, "start": 87445, "end": 87456, "lines": ["nop word ptr [rax+rax+00000000h]"], "succs": [[20, "fall"]]}, {"id": 20, "start": 87456, "end": 87464, "lines": ["mov r11d, 1", "jmp short loc_15560"], "succs": [[13, "jump"]]}, {"id": 21, "start": 87472, "end": 87477, "lines": ["cmp cl, 5Eh ; '^'", "jz short loc_155F0"], "succs": [[22, "fall"], [26, "jump"]]}, {"id": 22, "start": 87477, "end": 87486, "lines": ["cmp cl, 5Fh ; '_'", "jnz loc_15708"], "succs": [[23, "fall"], [43, "jump"]]}, {"id": 23, "start": 87486, "end": 87494, "lines": ["mov r11d, 3", "jmp short loc_15560"], "succs": [[13, "jump"]]}, {"id": 24, "start": 87504, "end": 87512, "lines": ["mov r11d, 2", "jmp short loc_15560"], "succs": [[13, "jump"]]}, {"id": 25, "start": 87520, "end": 87531, "lines": ["mov r11d, 4", "jmp loc_15560"], "succs": [[13, "jump"]]}, {"id": 26, "start": 87536, "end": 87548, "lines": ["mov [rbp+var_4B0], 1", "jmp loc_15560"], "succs": [[13, "jump"]]}, {"id": 27, "start": 87552, "end": 87561, "lines": ["cmp cl, 45h ; 'E'", "jz loc_15785"], "succs": [[28, "fall"], [53, "jump"]]}, {"id": 28, "start": 87561, "end": 87568, "lines": ["nop dword ptr [rax+00000000h]"], "succs": [[29, "fall"]]}, {"id": 29, "start": 87568, "end": 87579, "lines": ["xor eax, eax", "cmp cl, 4Fh ; 'O'", "jz loc_15780"], "succs": [[30, "fall"], [52, "jump"]]}, {"id": 30, "start": 87579, "end": 87584, "lines": ["cmp cl, 7Ah; switch 123 cases", "ja short def_15631; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118"], "succs": [[31, "fall"], [33, "jump"]]}, {"id": 31, "start": 87584, "end": 87604, "lines": ["lea rdi, jpt_15631", "movzx edx, cl", "movsxd rdx, ds:(jpt_15631 - 21DC4h)[rdi+rdx*4]", "add rdx, rdi", "jmp rdx; switch jump"], "succs": [[32, "switch"], [33, "switch"], [72, "switch"], [73, "switch"], [87, "switch"], [100, "switch"], [115, "switch"], [129, "switch"], [133, "switch"], [142, "switch"], [154, "switch"], [188, "switch"], [193, "switch"], [196, "switch"], [197, "switch"], [207, "switch"], [211, "switch"], [216, "switch"], [219, "switch"], [222, "switch"], [224, "switch"], [233, "switch"], [235, "switch"], [237, "switch"], [239, "switch"], [241, "switch"], [243, "switch"], [245, "switch"], [248, "switch"], [251, "switch"], [253, "switch"], [255, "switch"], [278, "switch"], [282, "switch"], [296, "switch"], [301, "switch"], [315, "switch"], [316, "switch"], [319, "switch"], [320, "switch"], [321, "switch"]]}, {"id": 32, "start": 87604, "end": 87616, "lines": ["sub rbx, 1; jumptable 0000000000015631 case 0", "nop dword ptr [rax+rax+00000000h]"], "succs": [[33, "fall"]]}, {"id": 33, "start": 87616, "end": 87646, "lines": ["mov rax, [rbp+var_4A8]; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118", "mov rcx, rbx", "sub rcx, r14", "lea r8, [rcx+1]", "sub rax, r13", "cmp r11d, 4", "jz loc_15798"], "succs": [[34, "fall"], [54, "jump"]]}, {"id": 34, "start": 87646, "end": 87655, "lines": ["test r12, r12", "js loc_15798"], "succs": [[35, "fall"], [54, "jump"]]}, {"id": 35, "start": 87655, "end": 87674, "lines": ["cmp r8, r12", "mov rdx, r12", "cmovnb rdx, r8", "cmp rdx, rax", "jnb loc_158C0"], "succs": [[36, "fall"], [67, "jump"]]}, {"id": 36, "start": 87674, "end": 87686, "lines": ["add r13, rdx", "test r15, r15", "jz loc_1552C"], "succs": [[10, "jump"], [37, "fall"]]}, {"id": 37, "start": 87686, "end": 87695, "lines": ["cmp r8, r12", "jnb loc_157AD"], "succs": [[38, "fall"], [56, "jump"]]}, {"id": 38, "start": 87695, "end": 87732, "lines": ["mov rdx, r12", "lea eax, [r11-1]", "mov [rbp+n], r8", "sub rdx, r8; n", "mov [rbp+src], rcx", "lea r12, [r15+rdx]", "cmp eax, 1", "jbe loc_15B5A"], "succs": [[39, "fall"], [99, "jump"]]}, {"id": 39, "start": 87732, "end": 87760, "lines": ["mov esi, 20h ; ' '; c", "mov rdi, r15; s", "call cs:memset_ptr", "mov rcx, [rbp+src]", "mov r8, [rbp+n]"], "succs": [[40, "fall"]]}, {"id": 40, "start": 87760, "end": 87776, "lines": ["mov r15, r12", "cmp [rbp+var_4B0], 0", "jnz loc_157BA"], "succs": [[41, "fall"], [57, "jump"]]}, {"id": 41, "start": 87776, "end": 87805, "lines": ["mov qword ptr [rbp+var_4B0], r8", "mov rdx, r8; n", "mov rsi, r14; src", "mov rdi, r15; dest", "call cs:memcpy_ptr", "mov r8, qword ptr [rbp+var_4B0]"], "succs": [[42, "fall"]]}, {"id": 42, "start": 87805, "end": 87813, "lines": ["add r15, r8", "jmp loc_1552C"], "succs": [[10, "jump"]]}, {"id": 43, "start": 87816, "end": 87831, "lines": ["movsx eax, cl", "lea edx, [rax-30h]", "cmp edx, 9", "ja loc_15600"], "succs": [[27, "jump"], [44, "fall"]]}, {"id": 44, "start": 87831, "end": 87837, "lines": ["xor edx, edx", "xor eax, eax", "jmp short loc_1574F"], "succs": [[48, "jump"]]}, {"id": 45, "start": 87840, "end": 87853, "lines": ["movsx eax, byte ptr [rbx]", "sub eax, 30h ; '0'", "cdqe", "add rdx, rax", "jo short loc_15754"], "succs": [[46, "fall"], [49, "jump"]]}, {"id": 46, "start": 87853, "end": 87878, "lines": ["movsx eax, byte ptr [rbx+1]", "add rbx, 1", "mov r12, rdx", "lea esi, [rax-30h]", "mov ecx, eax", "cmp esi, 9", "ja loc_15600"], "succs": [[27, "jump"], [47, "fall"]]}, {"id": 47, "start": 87878, "end": 87887, "lines": ["xor eax, eax", "imul rdx, 0Ah", "seto al"], "succs": [[48, "fall"]]}, {"id": 48, "start": 87887, "end": 87892, "lines": ["test rax, rax", "jz short loc_15720"], "succs": [[45, "jump"], [49, "fall"]]}, {"id": 49, "start": 87892, "end": 87899, "lines": ["mov r13, 0FFFFFFFFFFFFFFFFh"], "succs": [[50, "fall"]]}, {"id": 50, "start": 87899, "end": 87918, "lines": ["mov rax, [rbp+var_38]", "sub rax, fs:28h", "jnz loc_17B76"], "succs": [[51, "fall"], [493, "jump"]]}, {"id": 51, "start": 87918, "end": 87936, "lines": ["lea rsp, [rbp-28h]", "mov rax, r13", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 52, "start": 87936, "end": 87941, "lines": ["mov eax, 4Fh ; 'O'"], "succs": [[53, "fall"]]}, {"id": 53, "start": 87941, "end": 87954, "lines": ["movzx ecx, byte ptr [rbx+1]", "add rbx, 1", "jmp loc_1561B"], "succs": [[30, "jump"]]}, {"id": 54, "start": 87960, "end": 87969, "lines": ["cmp r8, rax", "jnb loc_158C0"], "succs": [[55, "fall"], [67, "jump"]]}, {"id": 55, "start": 87969, "end": 87981, "lines": ["add r13, r8", "test r15, r15", "jz loc_1552C"], "succs": [[10, "jump"], [56, "fall"]]}, {"id": 56, "start": 87981, "end": 87994, "lines": ["cmp [rbp+var_4B0], 0", "jz loc_156E0"], "succs": [[41, "jump"], [57, "fall"]]}, {"id": 57, "start": 87994, "end": 88003, "lines": ["test r8, r8", "jz loc_156FD"], "succs": [[42, "jump"], [58, "fall"]]}, {"id": 58, "start": 88003, "end": 88032, "lines": ["mov qword ptr [rbp+var_4B0], r8", "mov r12, rcx", "call cs:__ctype_toupper_loc_ptr", "mov r8, qword ptr [rbp+var_4B0]", "mov rcx, rax", "nop dword ptr [rax]"], "succs": [[59, "fall"]]}, {"id": 59, "start": 88032, "end": 88053, "lines": ["movzx edx, byte ptr [r14+r12]", "mov rax, [rcx]", "mov eax, [rax+rdx*4]", "mov [r15+r12], al", "sub r12, 1", "jnb short loc_157E0"], "succs": [[60, "fall"], [59, "jump"]]}, {"id": 60, "start": 88053, "end": 88061, "lines": ["add r15, r8", "jmp loc_1552C"], "succs": [[10, "jump"]]}, {"id": 61, "start": 88064, "end": 88091, "lines": ["mov esi, [rbp+var_4B8]", "mov eax, 0Ch", "test esi, esi", "cmovnz eax, esi", "mov [rbp+var_4B8], eax", "jmp loc_15493"], "succs": [[2, "jump"]]}, {"id": 62, "start": 88091, "end": 88122, "lines": ["mov rax, [rbp+var_4A8]", "mov r9, r12", "add r13, rdx", "sub r9, rdx", "mov r12, rax", "sub r12, r13", "test r15, r15", "jz loc_17192"], "succs": [[63, "fall"], [360, "jump"]]}, {"id": 63, "start": 88122, "end": 88169, "lines": ["mov [rbp+var_500], r9", "mov esi, 20h ; ' '; c", "mov rdi, r15; s", "mov byte ptr [rbp+format], r8b", "mov dword ptr [rbp+n], ecx", "mov [rbp+src], rdx", "call cs:memset_ptr", "cmp r12, 1", "jbe short loc_158C0"], "succs": [[64, "fall"], [67, "jump"]]}, {"id": 64, "start": 88169, "end": 88224, "lines": ["mov r9, [rbp+var_500]", "mov rdx, [rbp+src]", "add r13, 1", "movzx r8d, byte ptr [rbp+format]", "movsxd rcx, dword ptr [rbp+n]", "sub r9, 1", "mov [r15+rdx], r8b", "mov r12, r9", "lea r15, [r15+rdx+1]", "jns loc_1775E"], "succs": [[65, "fall"], [445, "jump"]]}, {"id": 65, "start": 88224, "end": 88243, "lines": ["mov rax, [rbp+var_4A8]", "sub rax, r13", "cmp rcx, rax", "jb loc_16F4C"], "succs": [[66, "fall"], [331, "jump"]]}, {"id": 66, "start": 88243, "end": 88256, "lines": ["xchg ax, ax", "nop word ptr [rax+rax+00000000h]"], "succs": [[67, "fall"]]}, {"id": 67, "start": 88256, "end": 88273, "lines": ["call cs:__errno_location_ptr", "mov dword ptr [rax], 22h ; '\"'", "jmp loc_15754"], "succs": [[49, "jump"]]}, {"id": 68, "start": 88280, "end": 88287, "lines": ["mov rbx, [rbp+var_4E8]"], "succs": [[69, "fall"]]}, {"id": 69, "start": 88287, "end": 88296, "lines": ["test r15, r15", "jz loc_1575B"], "succs": [[50, "jump"], [70, "fall"]]}, {"id": 70, "start": 88296, "end": 88305, "lines": ["test rbx, rbx", "jz loc_1575B"], "succs": [[50, "jump"], [71, "fall"]]}, {"id": 71, "start": 88305, "end": 88314, "lines": ["mov byte ptr [r15], 0", "jmp loc_1575B"], "succs": [[50, "jump"]]}, {"id": 72, "start": 88314, "end": 88323, "lines": ["cmp eax, 4Fh ; 'O'; jumptable 0000000000015631 cases 88,99", "jz def_15631; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118"], "succs": [[33, "jump"], [73, "fall"]]}, {"id": 73, "start": 88323, "end": 88326, "lines": ["xor r8d, r8d; jumptable 0000000000015631 case 114"], "succs": [[74, "fall"]]}, {"id": 74, "start": 88326, "end": 88389, "lines": ["mov [rbp+var_464], al", "cmp eax, 1", "mov rdi, [rbp+var_4D0]", "lea rax, [rbp+var_30]", "sbb rax, 433h", "mov r10d, 2520h", "lea rdx, [rbp+var_466]; format", "mov word ptr [rbp+var_466], r10w", "mov [rax], cl", "mov byte ptr [rax+1], 0", "cmp rdi, 1", "jbe loc_15A90"], "succs": [[75, "fall"], [89, "jump"]]}, {"id": 75, "start": 88389, "end": 88428, "lines": ["mov [rbp+format], rdx", "mov dword ptr [rbp+n], r11d", "mov byte ptr [rbp+src], r8b", "call sub_1AD50", "mov r14, rax", "test rax, rax", "jz loc_1552C"], "succs": [[10, "jump"], [76, "fall"]]}, {"id": 76, "start": 88428, "end": 88478, "lines": ["mov rcx, [rbp+tp]; tp", "mov rdx, [rbp+format]; format", "mov esi, 400h; maxsize", "lea rdi, [rbp+s]; s", "call cs:strftime_ptr", "movzx r8d, byte ptr [rbp+src]", "mov r11d, dword ptr [rbp+n]", "mov rcx, rax"], "succs": [[77, "fall"]]}, {"id": 77, "start": 88478, "end": 88538, "lines": ["mov [rbp+format], rcx", "mov rdi, r14", "mov dword ptr [rbp+n], r11d", "mov byte ptr [rbp+src], r8b", "call sub_1AE50", "movzx r8d, byte ptr [rbp+src]", "mov r11d, dword ptr [rbp+n]", "test al, al", "mov rcx, [rbp+format]", "jz loc_1552C"], "succs": [[10, "jump"], [78, "fall"]]}, {"id": 78, "start": 88538, "end": 88547, "lines": ["test rcx, rcx", "jz loc_1552C"], "succs": [[10, "jump"], [79, "fall"]]}, {"id": 79, "start": 88547, "end": 88571, "lines": ["mov rax, [rbp+var_4A8]", "lea r14, [rcx-1]", "sub rax, r13", "cmp r11d, 4", "jz loc_15AE2"], "succs": [[80, "fall"], [91, "jump"]]}, {"id": 80, "start": 88571, "end": 88580, "lines": ["test r12, r12", "js loc_15AE2"], "succs": [[81, "fall"], [91, "jump"]]}, {"id": 81, "start": 88580, "end": 88599, "lines": ["cmp r14, r12", "mov rdx, r12", "cmovnb rdx, r14", "cmp rdx, rax", "jnb loc_158C0"], "succs": [[67, "jump"], [82, "fall"]]}, {"id": 82, "start": 88599, "end": 88611, "lines": ["add r13, rdx", "test r15, r15", "jz loc_1552C"], "succs": [[10, "jump"], [83, "fall"]]}, {"id": 83, "start": 88611, "end": 88620, "lines": ["cmp r14, r12", "jnb loc_15AF7"], "succs": [[84, "fall"], [93, "jump"]]}, {"id": 84, "start": 88620, "end": 88657, "lines": ["mov rdx, r12", "lea eax, [r11-1]", "mov [rbp+n], rcx", "sub rdx, r14; n", "mov byte ptr [rbp+src], r8b", "lea r12, [r15+rdx]", "cmp eax, 1", "jbe loc_172C0"], "succs": [[85, "fall"], [383, "jump"]]}, {"id": 85, "start": 88657, "end": 88686, "lines": ["mov esi, 20h ; ' '; c", "mov rdi, r15; s", "call cs:memset_ptr", "movzx r8d, byte ptr [rbp+src]", "mov rcx, [rbp+n]"], "succs": [[86, "fall"]]}, {"id": 86, "start": 88686, "end": 88694, "lines": ["mov r15, r12", "jmp loc_15AF7"], "succs": [[93, "jump"]]}, {"id": 87, "start": 88694, "end": 88702, "lines": ["test eax, eax; jumptable 0000000000015631 cases 65,97", "jnz def_15631; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118"], "succs": [[33, "jump"], [88, "fall"]]}, {"id": 88, "start": 88702, "end": 88717, "lines": ["or [rbp+var_4B0], r8b", "xor r8d, r8d", "jmp loc_15906"], "succs": [[74, "jump"]]}, {"id": 89, "start": 88720, "end": 88791, "lines": ["mov dword ptr [rbp+n], r11d", "mov rcx, [rbp+tp]; tp", "lea rdi, [rbp+s]; s", "mov esi, 400h; maxsize", "mov byte ptr [rbp+src], r8b", "call cs:strftime_ptr", "cmp [rbp+var_4D0], 0", "movzx r8d, byte ptr [rbp+src]", "mov r11d, dword ptr [rbp+n]", "mov rcx, rax", "jz loc_159DA"], "succs": [[78, "jump"], [90, "fall"]]}, {"id": 90, "start": 88791, "end": 88802, "lines": ["mov r14d, 1", "jmp loc_1599E"], "succs": [[77, "jump"]]}, {"id": 91, "start": 88802, "end": 88811, "lines": ["cmp r14, rax", "jnb loc_158C0"], "succs": [[67, "jump"], [92, "fall"]]}, {"id": 92, "start": 88811, "end": 88823, "lines": ["add r13, r14", "test r15, r15", "jz loc_1552C"], "succs": [[10, "jump"], [93, "fall"]]}, {"id": 93, "start": 88823, "end": 88832, "lines": ["test r8b, r8b", "jnz loc_171C0"], "succs": [[94, "fall"], [364, "jump"]]}, {"id": 94, "start": 88832, "end": 88845, "lines": ["cmp [rbp+var_4B0], 0", "jz loc_15D2E"], "succs": [[95, "fall"], [112, "jump"]]}, {"id": 95, "start": 88845, "end": 88854, "lines": ["test r14, r14", "jz loc_15D41"], "succs": [[96, "fall"], [114, "jump"]]}, {"id": 96, "start": 88854, "end": 88896, "lines": ["lea r12, [rcx-2]", "call cs:__ctype_toupper_loc_ptr", "lea rsi, [rbp+var_43F]", "mov rcx, rax", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]"], "succs": [[97, "fall"]]}, {"id": 97, "start": 88896, "end": 88917, "lines": ["movzx edx, byte ptr [rsi+r12]", "mov rax, [rcx]", "mov eax, [rax+rdx*4]", "mov [r15+r12], al", "sub r12, 1", "jnb short loc_15B40"], "succs": [[98, "fall"], [97, "jump"]]}, {"id": 98, "start": 88917, "end": 88922, "lines": ["jmp loc_15D41"], "succs": [[114, "jump"]]}, {"id": 99, "start": 88922, "end": 88955, "lines": ["mov esi, 30h ; '0'; c", "mov rdi, r15; s", "call cs:memset_ptr", "mov r8, [rbp+n]", "mov rcx, [rbp+src]", "jmp loc_156D0"], "succs": [[40, "jump"]]}, {"id": 100, "start": 88955, "end": 88964, "lines": ["cmp eax, 45h ; 'E'; jumptable 0000000000015631 cases 71,86,103", "jz def_15631; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118"], "succs": [[33, "jump"], [101, "fall"]]}, {"id": 101, "start": 88964, "end": 89074, "lines": ["mov rdi, [rbp+tp]", "mov esi, [rdi+14h]", "mov r9d, [rdi+1Ch]", "mov r10d, [rdi+18h]", "mov edx, esi", "mov edi, r9d", "sar edx, 1Fh", "sub edi, r10d", "add edi, 17Eh", "and edx, 190h", "lea r14d, [rsi+rdx-64h]", "movsxd rdx, edi", "mov r8d, edi", "imul rdx, 0FFFFFFFF92492493h", "sar r8d, 1Fh", "shr rdx, 20h", "add edx, edi", "sar edx, 2", "sub edx, r8d", "lea r8d, ds:0[rdx*8]", "sub r8d, edx", "mov edx, r9d", "sub edx, edi", "lea edi, [rdx+r8+3]", "mov dword ptr [rbp+src], edi", "test edi, edi", "js loc_17578"], "succs": [[102, "fall"], [425, "jump"]]}, {"id": 102, "start": 89074, "end": 89085, "lines": ["mov edi, 16Dh", "test r14b, 3", "jnz short loc_15C34"], "succs": [[103, "fall"], [105, "jump"]]}, {"id": 103, "start": 89085, "end": 89119, "lines": ["imul edx, r14d, 0C28F5C29h", "mov edi, 16Eh", "add edx, 51EB850h", "mov r8d, edx", "ror r8d, 2", "cmp r8d, 28F5C28h", "ja short loc_15C34"], "succs": [[104, "fall"], [105, "jump"]]}, {"id": 104, "start": 89119, "end": 89140, "lines": ["ror edx, 4", "xor edi, edi", "cmp edx, 0A3D70Ah", "setbe dil", "add edi, 16Dh"], "succs": [[105, "fall"]]}, {"id": 105, "start": 89140, "end": 89220, "lines": ["sub r9d, edi", "mov edi, r9d", "sub edi, r10d", "add edi, 17Eh", "movsxd rdx, edi", "mov r8d, edi", "sub r9d, edi", "imul rdx, 0FFFFFFFF92492493h", "sar r8d, 1Fh", "shr rdx, 20h", "add edx, edi", "sar edx, 2", "sub edx, r8d", "lea r8d, ds:0[rdx*8]", "sub r8d, edx", "lea edi, [r9+r8+3]", "test edi, edi", "cmovs edi, dword ptr [rbp+src]", "setns r8b", "movzx r8d, r8b"], "succs": [[106, "fall"]]}, {"id": 106, "start": 89220, "end": 89229, "lines": ["cmp cl, 47h ; 'G'", "jz loc_17884"], "succs": [[107, "fall"], [462, "jump"]]}, {"id": 107, "start": 89229, "end": 89238, "lines": ["cmp cl, 67h ; 'g'", "jnz loc_177C2"], "succs": [[108, "fall"], [450, "jump"]]}, {"id": 108, "start": 89238, "end": 89303, "lines": ["movsxd rdx, esi", "mov ecx, esi", "imul rdx, 51EB851Fh", "sar ecx, 1Fh", "sar rdx, 25h", "sub edx, ecx", "mov ecx, esi", "imul edx, 64h ; 'd'", "sub ecx, edx", "add ecx, r8d", "movsxd rdx, ecx", "mov edi, ecx", "imul rdx, 51EB851Fh", "sar edi, 1Fh", "sar rdx, 25h", "sub edx, edi", "imul edi, edx, 64h ; 'd'", "mov edx, ecx", "sub edx, edi", "js loc_17466"], "succs": [[109, "fall"], [409, "jump"]]}, {"id": 109, "start": 89303, "end": 89312, "lines": ["test r11d, r11d", "jnz loc_17481"], "succs": [[110, "fall"], [411, "jump"]]}, {"id": 110, "start": 89312, "end": 89322, "lines": ["cmp [rbp+arg_8], 2", "jz loc_17606"], "succs": [[111, "fall"], [429, "jump"]]}, {"id": 111, "start": 89322, "end": 89390, "lines": ["mov r9d, [rbp+arg_8]", "mov ecx, 1", "mov r11d, [rbp+arg_8]", "mov byte ptr [rbp+format], 0", "mov byte ptr [rbp+src], 0", "mov esi, 2", "test r9d, r9d", "cmovnz ecx, [rbp+arg_8]", "cmp [rbp+arg_8], 4", "setnz byte ptr [rbp+n]", "xor edi, edi", "mov [rbp+var_508], ecx", "mov ecx, 1", "jmp loc_16147"], "succs": [[158, "jump"]]}, {"id": 112, "start": 89390, "end": 89397, "lines": ["lea rsi, [rbp+var_43F]; src"], "succs": [[113, "fall"]]}, {"id": 113, "start": 89397, "end": 89409, "lines": ["mov rdx, r14; n", "mov rdi, r15; dest", "call cs:memcpy_ptr"], "succs": [[114, "fall"]]}, {"id": 114, "start": 89409, "end": 89417, "lines": ["add r15, r14", "jmp loc_1552C"], "succs": [[10, "jump"]]}, {"id": 115, "start": 89417, "end": 89433, "lines": ["or [rbp+var_4B0], r8b; jumptable 0000000000015631 cases 98,104", "cmp eax, 45h ; 'E'", "jz def_15631; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118"], "succs": [[33, "jump"], [116, "fall"]]}, {"id": 116, "start": 89433, "end": 89447, "lines": ["cmp [rbp+var_4D8], 0", "jz loc_15903; jumptable 0000000000015631 case 114"], "succs": [[73, "jump"], [117, "fall"]]}, {"id": 117, "start": 89447, "end": 89530, "lines": ["mov rsi, [rbp+var_4E0]", "mov dword ptr [rbp+n], r11d", "movsxd rax, dword ptr [rsi+4]", "shl rax, 4", "add rax, [rsi+10h]", "mov rsi, [rax+8]", "mov [rbp+src], rsi", "mov rdi, rsi; s", "call cs:strlen_ptr", "mov r11d, dword ptr [rbp+n]", "mov rsi, [rbp+src]", "mov r14, rax", "mov rax, [rbp+var_4A8]", "sub rax, r13", "cmp r11d, 4", "jz loc_173F7"], "succs": [[118, "fall"], [402, "jump"]]}, {"id": 118, "start": 89530, "end": 89539, "lines": ["test r12, r12", "js loc_173F7"], "succs": [[119, "fall"], [402, "jump"]]}, {"id": 119, "start": 89539, "end": 89558, "lines": ["cmp r14, r12", "mov rdx, r12", "cmovnb rdx, r14", "cmp rdx, rax", "jnb loc_158C0"], "succs": [[67, "jump"], [120, "fall"]]}, {"id": 120, "start": 89558, "end": 89570, "lines": ["add r13, rdx", "test r15, r15", "jz loc_1552C"], "succs": [[10, "jump"], [121, "fall"]]}, {"id": 121, "start": 89570, "end": 89575, "lines": ["cmp r14, r12", "jnb short loc_15E22"], "succs": [[122, "fall"], [124, "jump"]]}, {"id": 122, "start": 89575, "end": 89594, "lines": ["mov rdx, r12", "lea eax, [r11-1]", "sub rdx, r14; n", "cmp eax, 1", "jbe loc_17AE4"], "succs": [[123, "fall"], [486, "jump"]]}, {"id": 123, "start": 89594, "end": 89634, "lines": ["mov rdi, r15; s", "mov esi, 20h ; ' '; c", "add r15, rdx", "call cs:memset_ptr", "mov rdi, [rbp+var_4E0]", "movsxd rax, dword ptr [rdi+4]", "shl rax, 4", "add rax, [rdi+10h]", "mov rsi, [rax+8]"], "succs": [[124, "fall"]]}, {"id": 124, "start": 89634, "end": 89647, "lines": ["cmp [rbp+var_4B0], 0", "jz loc_15D35"], "succs": [[113, "jump"], [125, "fall"]]}, {"id": 125, "start": 89647, "end": 89656, "lines": ["test r14, r14", "jz loc_15D41"], "succs": [[114, "jump"], [126, "fall"]]}, {"id": 126, "start": 89656, "end": 89683, "lines": ["mov qword ptr [rbp+var_4B0], rsi", "lea r12, [r14-1]", "call cs:__ctype_toupper_loc_ptr", "mov rsi, qword ptr [rbp+var_4B0]", "mov rdi, rax"], "succs": [[127, "fall"]]}, {"id": 127, "start": 89683, "end": 89704, "lines": ["movzx edx, byte ptr [rsi+r12]", "mov rax, [rdi]", "mov eax, [rax+rdx*4]", "mov [r15+r12], al", "sub r12, 1", "jnb short loc_15E53"], "succs": [[128, "fall"], [127, "jump"]]}, {"id": 128, "start": 89704, "end": 89709, "lines": ["jmp loc_15D41"], "succs": [[114, "jump"]]}, {"id": 129, "start": 89709, "end": 89721, "lines": ["xor r8d, r8d; jumptable 0000000000015631 case 67", "cmp eax, 45h ; 'E'", "jz loc_15906"], "succs": [[74, "jump"], [130, "fall"]]}, {"id": 130, "start": 89721, "end": 89795, "lines": ["mov rsi, [rbp+tp]", "mov ecx, [rsi+14h]", "cmp ecx, 0FFFFF894h", "setl byte ptr [rbp+src]", "sbb edx, edx", "not edx", "and edx, 0FFFFFF9Dh", "add edx, ecx", "movsxd rsi, edx", "mov edi, edx", "imul rsi, 51EB851Fh", "sar edi, 1Fh", "sar rsi, 25h", "sub esi, edi", "cmp ecx, 0FFFFF894h", "lea edx, [rsi+13h]", "setnl cl", "test r11d, r11d", "jnz loc_17549"], "succs": [[131, "fall"], [423, "jump"]]}, {"id": 131, "start": 89795, "end": 89805, "lines": ["cmp [rbp+arg_8], 2", "jz loc_1797C"], "succs": [[132, "fall"], [472, "jump"]]}, {"id": 132, "start": 89805, "end": 89859, "lines": ["mov esi, [rbp+arg_8]", "mov r11d, [rbp+arg_8]", "mov byte ptr [rbp+format], 0", "test esi, esi", "mov esi, 1", "cmovnz esi, [rbp+arg_8]", "cmp [rbp+arg_8], 4", "setnz byte ptr [rbp+n]", "xor edi, edi", "mov [rbp+var_508], esi", "mov esi, 2", "jmp loc_16147"], "succs": [[158, "jump"]]}, {"id": 133, "start": 89859, "end": 89879, "lines": ["mov rdx, [rbp+var_4A8]; jumptable 0000000000015631 case 110", "sub rdx, r13", "cmp r11d, 4", "jz loc_17237"], "succs": [[134, "fall"], [372, "jump"]]}, {"id": 134, "start": 89879, "end": 89888, "lines": ["test r12, r12", "js loc_17237"], "succs": [[135, "fall"], [372, "jump"]]}, {"id": 135, "start": 89888, "end": 89906, "lines": ["mov eax, 1", "cmovnz rax, r12", "cmp rax, rdx", "jnb loc_158C0"], "succs": [[67, "jump"], [136, "fall"]]}, {"id": 136, "start": 89906, "end": 89918, "lines": ["add r13, rax", "test r15, r15", "jz loc_1552C"], "succs": [[10, "jump"], [137, "fall"]]}, {"id": 137, "start": 89918, "end": 89924, "lines": ["cmp r12, 1", "jbe short loc_15F6B"], "succs": [[138, "fall"], [141, "jump"]]}, {"id": 138, "start": 89924, "end": 89946, "lines": ["lea rdx, [r12-1]; n", "lea eax, [r11-1]", "lea r14, [r15+rdx]", "cmp eax, 1", "jbe loc_17843"], "succs": [[139, "fall"], [457, "jump"]]}, {"id": 139, "start": 89946, "end": 89960, "lines": ["mov esi, 20h ; ' '; c", "mov rdi, r15; s", "call cs:memset_ptr"], "succs": [[140, "fall"]]}, {"id": 140, "start": 89960, "end": 89963, "lines": ["mov r15, r14"], "succs": [[141, "fall"]]}, {"id": 141, "start": 89963, "end": 89976, "lines": ["mov byte ptr [r15], 0Ah", "add r15, 1", "jmp loc_1552C"], "succs": [[10, "jump"]]}, {"id": 142, "start": 89976, "end": 89984, "lines": ["test eax, eax; jumptable 0000000000015631 case 68", "jnz def_15631; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118"], "succs": [[33, "jump"], [143, "fall"]]}, {"id": 143, "start": 89984, "end": 90009, "lines": ["lea rax, aMDY; \"%m/%d/%y\"", "mov [rbp+n], 0FFFFFFFFFFFFFFFFh", "mov [rbp+src], rax"], "succs": [[144, "fall"]]}, {"id": 144, "start": 90009, "end": 90110, "lines": ["mov eax, [rbp+arg_20]", "sub rsp, 8", "mov r9, [rbp+var_4E0]", "xor edi, edi; s", "movzx r10d, [rbp+var_4B0]", "mov r8, [rbp+var_4D8]", "mov rsi, 0FFFFFFFFFFFFFFFFh", "mov rcx, [rbp+tp]", "mov rdx, [rbp+src]", "push rax; int", "push [rbp+var_4D0]; __int64", "push [rbp+n]; __int64", "push r11; int", "mov dword ptr [rbp+format], r11d", "push r10; char", "mov dword ptr [rbp+var_4B0], r10d", "call sub_15420", "add rsp, 30h", "test rax, rax", "js loc_15754"], "succs": [[49, "jump"], [145, "fall"]]}, {"id": 145, "start": 90110, "end": 90147, "lines": ["mov r11d, dword ptr [rbp+format]", "mov r14, rax", "mov rax, [rbp+var_4A8]", "mov r10d, dword ptr [rbp+var_4B0]", "sub rax, r13", "cmp r11d, 4", "jz loc_17110"], "succs": [[146, "fall"], [350, "jump"]]}, {"id": 146, "start": 90147, "end": 90156, "lines": ["test r12, r12", "js loc_17106"], "succs": [[147, "fall"], [349, "jump"]]}, {"id": 147, "start": 90156, "end": 90175, "lines": ["cmp r14, r12", "mov rcx, r12", "cmovnb rcx, r14", "cmp rcx, rax", "jnb loc_158C0"], "succs": [[67, "jump"], [148, "fall"]]}, {"id": 148, "start": 90175, "end": 90190, "lines": ["add rcx, r13", "mov r13, rcx", "test r15, r15", "jz loc_1552C"], "succs": [[10, "jump"], [149, "fall"]]}, {"id": 149, "start": 90190, "end": 90195, "lines": ["cmp r14, r12", "jnb short loc_160A5"], "succs": [[150, "fall"], [153, "jump"]]}, {"id": 150, "start": 90195, "end": 90239, "lines": ["mov rdx, r12", "lea eax, [r11-1]", "mov [rbp+var_500], rcx", "sub rdx, r14; n", "mov dword ptr [rbp+format], r11d", "mov dword ptr [rbp+var_4B0], r10d", "lea r12, [r15+rdx]", "cmp eax, 1", "jbe loc_172EA"], "succs": [[151, "fall"], [385, "jump"]]}, {"id": 151, "start": 90239, "end": 90274, "lines": ["mov esi, 20h ; ' '; c", "mov rdi, r15; s", "call cs:memset_ptr", "mov r10d, dword ptr [rbp+var_4B0]", "mov r11d, dword ptr [rbp+format]", "mov rcx, [rbp+var_500]"], "succs": [[152, "fall"]]}, {"id": 152, "start": 90274, "end": 90277, "lines": ["mov r15, r12"], "succs": [[153, "fall"]]}, {"id": 153, "start": 90277, "end": 90359, "lines": ["mov eax, [rbp+arg_20]", "sub rsp, 8", "mov rsi, [rbp+var_4A8]", "mov rdi, r15; s", "mov r9, [rbp+var_4E0]", "mov r8, [rbp+var_4D8]", "add r15, r14", "push rax; int", "sub rsi, rcx", "mov rdx, [rbp+src]", "push [rbp+var_4D0]; __int64", "mov rcx, [rbp+tp]", "push [rbp+n]; __int64", "push r11; int", "push r10; char", "call sub_15420", "add rsp, 30h", "jmp loc_1552C"], "succs": [[10, "jump"]]}, {"id": 154, "start": 90359, "end": 90368, "lines": ["cmp eax, 45h ; 'E'; jumptable 0000000000015631 case 77", "jz def_15631; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118"], "succs": [[33, "jump"], [155, "fall"]]}, {"id": 155, "start": 90368, "end": 90378, "lines": ["mov rsi, [rbp+tp]", "mov edx, [rsi+4]"], "succs": [[156, "fall"]]}, {"id": 156, "start": 90378, "end": 90412, "lines": ["test r11d, r11d", "mov ecx, 1", "mov esi, 2", "cmovnz ecx, r11d", "cmp r11d, 4", "setnz byte ptr [rbp+n]", "mov [rbp+var_508], ecx"], "succs": [[157, "fall"]]}, {"id": 157, "start": 90412, "end": 90439, "lines": ["mov edi, edx", "mov ecx, edx", "mov byte ptr [rbp+format], 0", "shr edi, 1Fh", "not ecx", "mov dword ptr [rbp+src], edi", "shr ecx, 1Fh", "xor edi, edi"], "succs": [[158, "fall"]]}, {"id": 158, "start": 90439, "end": 90448, "lines": ["cmp eax, 4Fh ; 'O'", "jnz loc_16FF0"], "succs": [[159, "fall"], [341, "jump"]]}, {"id": 159, "start": 90448, "end": 90456, "lines": ["test cl, cl", "jz loc_16FF0"], "succs": [[160, "fall"], [341, "jump"]]}, {"id": 160, "start": 90456, "end": 90470, "lines": ["cmp [rbp+var_4D8], 0", "jz loc_17148"], "succs": [[161, "fall"], [354, "jump"]]}, {"id": 161, "start": 90470, "end": 90491, "lines": ["mov rax, [rbp+var_4D8]", "mov byte ptr [rbp+src], 0", "mov r9d, [rax+10h]", "mov r10d, r9d"], "succs": [[162, "fall"]]}, {"id": 162, "start": 90491, "end": 90544, "lines": ["mov eax, r9d", "mov [rbp+var_500], rbx", "lea rcx, [rbp+var_449]", "mov r8d, 0CCCCCCCDh", "mov [rbp+var_504], r11d", "shr eax, 8", "mov r14, rcx", "mov [rbp+var_510], rcx", "mov ecx, eax", "nop dword ptr [rax+rax+00000000h]"], "succs": [[163, "fall"]]}, {"id": 163, "start": 90544, "end": 90550, "lines": ["test dil, 1", "jz short loc_161BF"], "succs": [[164, "fall"], [165, "jump"]]}, {"id": 164, "start": 90550, "end": 90559, "lines": ["mov byte ptr [r14-1], 3Ah ; ':'", "sub r14, 1"], "succs": [[165, "fall"]]}, {"id": 165, "start": 90559, "end": 90606, "lines": ["mov eax, edx", "sar edi, 1", "mov r11, rax", "imul r11, r8", "shr r11, 23h", "lea ebx, [r11+r11*4]", "mov r11d, edx", "add ebx, ebx", "sub r11d, ebx", "add r11d, r10d", "mov [r14-1], r11b", "cmp r9d, 0FFh", "ja loc_16EC8"], "succs": [[166, "fall"], [322, "jump"]]}, {"id": 166, "start": 90606, "end": 90610, "lines": ["sub r14, 1"], "succs": [[167, "fall"]]}, {"id": 167, "start": 90610, "end": 90623, "lines": ["imul rax, r8", "shr rax, 23h", "cmp edx, 9", "ja short loc_16203"], "succs": [[168, "fall"], [169, "jump"]]}, {"id": 168, "start": 90623, "end": 90627, "lines": ["test edi, edi", "jz short loc_16210"], "succs": [[169, "fall"], [170, "jump"]]}, {"id": 169, "start": 90627, "end": 90631, "lines": ["mov edx, eax", "jmp short loc_161B0"], "succs": [[163, "jump"]]}, {"id": 170, "start": 90640, "end": 90684, "lines": ["movsxd rax, esi", "test r12, r12", "mov rbx, [rbp+var_500]", "mov r11d, [rbp+var_504]", "mov rcx, [rbp+var_510]", "cmovs r12, rax", "cmp byte ptr [rbp+src], 0", "jz loc_16FD0"], "succs": [[171, "fall"], [339, "jump"]]}, {"id": 171, "start": 90684, "end": 90695, "lines": ["lea rdx, [r12-1]", "mov r8d, 2Dh ; '-'"], "succs": [[172, "fall"]]}, {"id": 172, "start": 90695, "end": 90733, "lines": ["mov rsi, rcx", "sub rsi, r14", "mov eax, esi", "mov ecx, esi", "shr eax, 1Fh", "add eax, esi", "sar eax, 1", "cmp r9d, 0FFh", "cmovbe eax, esi", "cdqe", "sub rdx, rax", "jz loc_16F88"], "succs": [[173, "fall"], [333, "jump"]]}, {"id": 173, "start": 90733, "end": 90746, "lines": ["cmp byte ptr [rbp+n], 0", "jz loc_16F88"], "succs": [[174, "fall"], [333, "jump"]]}, {"id": 174, "start": 90746, "end": 90755, "lines": ["test r8b, r8b", "jnz loc_16EF0"], "succs": [[175, "fall"], [325, "jump"]]}, {"id": 175, "start": 90755, "end": 90758, "lines": ["movsxd rax, esi"], "succs": [[176, "fall"]]}, {"id": 176, "start": 90758, "end": 90761, "lines": ["mov rcx, rax"], "succs": [[177, "fall"]]}, {"id": 177, "start": 90761, "end": 90787, "lines": ["cmp r12, rax", "mov rdx, [rbp+var_4A8]", "cmovnb rax, r12", "sub rdx, r13", "cmp rax, rdx", "jnb loc_158C0"], "succs": [[67, "jump"], [178, "fall"]]}, {"id": 178, "start": 90787, "end": 90799, "lines": ["add r13, rax", "test r15, r15", "jz loc_1552C"], "succs": [[10, "jump"], [179, "fall"]]}, {"id": 179, "start": 90799, "end": 90804, "lines": ["cmp rcx, r12", "jnb short loc_162EF"], "succs": [[180, "fall"], [183, "jump"]]}, {"id": 180, "start": 90804, "end": 90839, "lines": ["mov eax, [rbp+var_508]", "mov rdx, r12", "mov [rbp+src], rcx", "sub rdx, rcx; n", "sub eax, 1", "lea r12, [r15+rdx]", "cmp eax, 1", "jbe loc_1712E"], "succs": [[181, "fall"], [353, "jump"]]}, {"id": 181, "start": 90839, "end": 90860, "lines": ["mov esi, 20h ; ' '; c", "mov rdi, r15; s", "call cs:memset_ptr", "mov rcx, [rbp+src]"], "succs": [[182, "fall"]]}, {"id": 182, "start": 90860, "end": 90863, "lines": ["mov r15, r12"], "succs": [[183, "fall"]]}, {"id": 183, "start": 90863, "end": 90876, "lines": ["cmp [rbp+var_4B0], 0", "jz loc_16F5C"], "succs": [[184, "fall"], [332, "jump"]]}, {"id": 184, "start": 90876, "end": 90881, "lines": ["test rcx, rcx", "jz short loc_16335"], "succs": [[185, "fall"], [187, "jump"]]}, {"id": 185, "start": 90881, "end": 90912, "lines": ["mov qword ptr [rbp+var_4B0], rcx", "lea r12, [rcx-1]", "call cs:__ctype_toupper_loc_ptr", "mov rcx, qword ptr [rbp+var_4B0]", "mov rsi, rax", "nop dword ptr [rax+00h]"], "succs": [[186, "fall"]]}, {"id": 186, "start": 90912, "end": 90933, "lines": ["movzx edx, byte ptr [r14+r12]", "mov rax, [rsi]", "mov eax, [rax+rdx*4]", "mov [r15+r12], al", "sub r12, 1", "jnb short loc_16320"], "succs": [[187, "fall"], [186, "jump"]]}, {"id": 187, "start": 90933, "end": 90941, "lines": ["add r15, rcx", "jmp loc_1552C"], "succs": [[10, "jump"]]}, {"id": 188, "start": 90941, "end": 91055, "lines": ["mov rax, [rbp+tp]; jumptable 0000000000015631 case 115", "mov dword ptr [rbp+src], r11d", "lea rsi, [rbp+var_4A0]", "mov rdi, [rbp+var_4D0]", "movdqu xmm0, xmmword ptr [rax]", "movaps [rbp+var_4A0], xmm0", "movdqu xmm0, xmmword ptr [rax+10h]", "movaps [rbp+var_490], xmm0", "movdqu xmm0, xmmword ptr [rax+20h]", "mov dword ptr [rbp+var_490+0Ch], 0FFFFFFFFh", "movaps [rbp+var_480], xmm0", "mov rax, [rax+30h]", "mov [rbp+var_470], rax", "call sub_1AF20", "mov ecx, dword ptr [rbp+var_490+0Ch]", "mov r11d, dword ptr [rbp+src]", "mov r9, rax", "test ecx, ecx", "js loc_17B35"], "succs": [[189, "fall"], [490, "jump"]]}, {"id": 189, "start": 91055, "end": 91116, "lines": ["mov r10, 6666666666666667h", "lea rcx, [rbp+var_449]", "imul r10", "mov rax, r9", "mov rdi, rcx", "sar rax, 3Fh", "sar rdx, 2", "mov rsi, rdx", "sub rsi, rax", "mov eax, r9d", "lea rdx, [rsi+rsi*4]", "add rdx, rdx", "sub eax, edx", "test r9, r9", "js loc_17017"], "succs": [[190, "fall"], [343, "jump"]]}, {"id": 190, "start": 91116, "end": 91135, "lines": ["add eax, 30h ; '0'", "lea r14, [rdi-1]", "mov [rdi-1], al", "test rsi, rsi", "jz loc_1726D"], "succs": [[191, "fall"], [378, "jump"]]}, {"id": 191, "start": 91135, "end": 91187, "lines": ["mov rax, rsi", "lea r14, [rdi-2]", "imul r10", "mov rax, rdx", "mov rdx, rsi", "sar rdx, 3Fh", "sar rax, 2", "sub rax, rdx", "lea rdx, [rax+rax*4]", "add rdx, rdx", "sub rsi, rdx", "lea edx, [rsi+30h]", "mov [rdi-2], dl", "test rax, rax", "jz loc_174BC"], "succs": [[192, "fall"], [413, "jump"]]}, {"id": 192, "start": 91187, "end": 91207, "lines": ["mov esi, 0Ah", "cqo", "mov rdi, r14", "idiv rsi", "mov rsi, rax", "mov eax, edx", "jmp short loc_163EC"], "succs": [[190, "jump"]]}, {"id": 193, "start": 91216, "end": 91225, "lines": ["cmp eax, 45h ; 'E'; jumptable 0000000000015631 case 119", "jz def_15631; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118"], "succs": [[33, "jump"], [194, "fall"]]}, {"id": 194, "start": 91225, "end": 91235, "lines": ["mov rdi, [rbp+tp]", "mov edx, [rdi+18h]"], "succs": [[195, "fall"]]}, {"id": 195, "start": 91235, "end": 91274, "lines": ["test r11d, r11d", "mov ecx, 1", "mov esi, 1", "cmovnz ecx, r11d", "cmp r11d, 4", "setnz byte ptr [rbp+n]", "mov [rbp+var_508], ecx", "jmp loc_1612C"], "succs": [[157, "jump"]]}, {"id": 196, "start": 91274, "end": 91329, "lines": ["mov rsi, [rbp+tp]; jumptable 0000000000015631 case 117", "mov edi, [rsi+18h]", "lea edx, [rdi+6]", "movsxd rcx, edx", "mov esi, edx", "imul rcx, 0FFFFFFFF92492493h", "sar esi, 1Fh", "shr rcx, 20h", "add ecx, edx", "sar ecx, 2", "sub ecx, esi", "lea esi, ds:0[rcx*8]", "sub esi, ecx", "sub edx, esi", "add edx, 1", "jmp short loc_16463"], "succs": [[195, "jump"]]}, {"id": 197, "start": 91329, "end": 91352, "lines": ["movzx edx, byte ptr [rbx+1]; jumptable 0000000000015631 case 58", "lea rcx, [rbx+1]", "mov r8d, 1", "cmp dl, 3Ah ; ':'", "jz loc_17741"], "succs": [[198, "fall"], [442, "jump"]]}, {"id": 198, "start": 91352, "end": 91361, "lines": ["cmp dl, 7Ah ; 'z'", "jnz def_15631; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118"], "succs": [[33, "jump"], [199, "fall"]]}, {"id": 199, "start": 91361, "end": 91364, "lines": ["mov rbx, rcx"], "succs": [[200, "fall"]]}, {"id": 200, "start": 91364, "end": 91382, "lines": ["mov rsi, [rbp+tp]", "mov edx, [rsi+20h]", "test edx, edx", "js loc_1552C"], "succs": [[10, "jump"], [201, "fall"]]}, {"id": 201, "start": 91382, "end": 91394, "lines": ["mov rcx, [rsi+28h]", "test ecx, ecx", "jz loc_17411"], "succs": [[202, "fall"], [405, "jump"]]}, {"id": 202, "start": 91394, "end": 91405, "lines": ["mov edx, ecx", "shr edx, 1Fh", "mov byte ptr [rbp+src], dl"], "succs": [[203, "fall"]]}, {"id": 203, "start": 91405, "end": 91500, "lines": ["movsxd rdx, ecx", "mov esi, ecx", "imul rdi, rdx, 0FFFFFFFF91A2B3C5h", "sar esi, 1Fh", "imul rdx, 0FFFFFFFF88888889h", "shr rdi, 20h", "shr rdx, 20h", "add edi, ecx", "add edx, ecx", "sar edi, 0Bh", "sar edx, 5", "sub edi, esi", "sub edx, esi", "mov r9d, edi", "movsxd rdi, edx", "mov esi, edx", "imul rdi, 0FFFFFFFF88888889h", "sar esi, 1Fh", "shr rdi, 20h", "add edi, edx", "sar edi, 5", "sub edi, esi", "imul esi, edi, 3Ch ; '<'", "mov edi, edx", "imul edx, 3Ch ; '<'", "sub edi, esi", "sub ecx, edx", "cmp r8, 2", "jz loc_17695"], "succs": [[204, "fall"], [435, "jump"]]}, {"id": 204, "start": 91500, "end": 91506, "lines": ["ja loc_17644"], "succs": [[205, "fall"], [431, "jump"]]}, {"id": 205, "start": 91506, "end": 91515, "lines": ["test r8, r8", "jz loc_1798B"], "succs": [[206, "fall"], [473, "jump"]]}, {"id": 206, "start": 91515, "end": 91582, "lines": ["imul edx, r9d, 64h ; 'd'", "movzx ecx, byte ptr [rbp+src]", "mov esi, 1", "mov byte ptr [rbp+format], 1", "xor ecx, 1", "add edx, edi", "test r11d, r11d", "mov edi, 4", "cmovnz esi, r11d", "cmp r11d, 4", "setnz byte ptr [rbp+n]", "mov [rbp+var_508], esi", "mov esi, 6", "jmp loc_16147"], "succs": [[158, "jump"]]}, {"id": 207, "start": 91582, "end": 91591, "lines": ["cmp eax, 45h ; 'E'; jumptable 0000000000015631 case 109", "jz def_15631; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118"], "succs": [[33, "jump"], [208, "fall"]]}, {"id": 208, "start": 91591, "end": 91634, "lines": ["test r11d, r11d", "mov edx, 1", "cmovnz edx, r11d", "cmp r11d, 4", "setnz byte ptr [rbp+n]", "mov [rbp+var_508], edx", "cmp [rbp+var_4D8], 0", "jz loc_17783"], "succs": [[209, "fall"], [447, "jump"]]}, {"id": 209, "start": 91634, "end": 91662, "lines": ["mov rsi, [rbp+var_4E0]", "mov edi, [rsi+4]", "mov dword ptr [rbp+src], edi", "lea edx, [rdi+1]", "cmp eax, 4Fh ; 'O'", "jnz loc_17440"], "succs": [[210, "fall"], [408, "jump"]]}, {"id": 210, "start": 91662, "end": 91681, "lines": ["mov byte ptr [rbp+format], 0", "xor edi, edi", "mov esi, 2", "jmp loc_16166"], "succs": [[161, "jump"]]}, {"id": 211, "start": 91681, "end": 91690, "lines": ["cmp eax, 45h ; 'E'; jumptable 0000000000015631 case 101", "jz def_15631; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118"], "succs": [[33, "jump"], [212, "fall"]]}, {"id": 212, "start": 91690, "end": 91704, "lines": ["cmp [rbp+var_4D8], 0", "jz loc_17732"], "succs": [[213, "fall"], [441, "jump"]]}, {"id": 213, "start": 91704, "end": 91714, "lines": ["mov rdi, [rbp+var_4E0]", "mov edx, [rdi+8]"], "succs": [[214, "fall"]]}, {"id": 214, "start": 91714, "end": 91723, "lines": ["test r11d, r11d", "jz loc_171FA"], "succs": [[215, "fall"], [368, "jump"]]}, {"id": 215, "start": 91723, "end": 91751, "lines": ["cmp r11d, 4", "mov [rbp+var_508], r11d", "mov esi, 2", "setnz byte ptr [rbp+n]", "jmp loc_1612C"], "succs": [[157, "jump"]]}, {"id": 216, "start": 91751, "end": 91760, "lines": ["cmp eax, 45h ; 'E'; jumptable 0000000000015631 case 100", "jz def_15631; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118"], "succs": [[33, "jump"], [217, "fall"]]}, {"id": 217, "start": 91760, "end": 91803, "lines": ["test r11d, r11d", "mov edx, 1", "cmovnz edx, r11d", "cmp r11d, 4", "setnz byte ptr [rbp+n]", "mov [rbp+var_508], edx", "cmp [rbp+var_4D8], 0", "jz loc_1771E"], "succs": [[218, "fall"], [440, "jump"]]}, {"id": 218, "start": 91803, "end": 91823, "lines": ["mov rsi, [rbp+var_4E0]", "mov edx, [rsi+8]", "mov esi, 2", "jmp loc_1612C"], "succs": [[157, "jump"]]}, {"id": 219, "start": 91823, "end": 91835, "lines": ["xor r8d, r8d; jumptable 0000000000015631 case 121", "cmp eax, 45h ; 'E'", "jz loc_15906"], "succs": [[74, "jump"], [220, "fall"]]}, {"id": 220, "start": 91835, "end": 91880, "lines": ["mov rsi, [rbp+tp]", "movsxd rdx, dword ptr [rsi+14h]", "mov rcx, rdx", "imul rdx, 51EB851Fh", "mov esi, ecx", "sar esi, 1Fh", "sar rdx, 25h", "sub edx, esi", "imul esi, edx, 64h ; 'd'", "mov edx, ecx", "sub edx, esi", "jns loc_15CD7"], "succs": [[109, "jump"], [221, "fall"]]}, {"id": 221, "start": 91880, "end": 91901, "lines": ["mov esi, edx", "add edx, 64h ; 'd'", "neg esi", "cmp ecx, 0FFFFF893h", "cmovle edx, esi", "jmp loc_15CD7"], "succs": [[109, "jump"]]}, {"id": 222, "start": 91901, "end": 91961, "lines": ["mov rsi, [rbp+tp]; jumptable 0000000000015631 case 113", "mov edx, [rsi+10h]", "lea ecx, [rdx+rdx*4]", "lea edx, [rdx+rcx*2]", "mov ecx, 1", "sar edx, 5", "add edx, 1", "test r11d, r11d", "cmovnz ecx, r11d", "cmp r11d, 4", "setnz byte ptr [rbp+n]", "mov [rbp+var_508], ecx", "cmp eax, 4Fh ; 'O'", "jz loc_172AD"], "succs": [[223, "fall"], [382, "jump"]]}, {"id": 223, "start": 91961, "end": 91999, "lines": ["mov byte ptr [rbp+format], 0", "mov r10d, 30h ; '0'", "mov esi, 1", "xor edi, edi", "mov byte ptr [rbp+src], 0", "mov r9d, 30h ; '0'", "jmp loc_1617B"], "succs": [[162, "jump"]]}, {"id": 224, "start": 91999, "end": 92019, "lines": ["mov rdx, [rbp+var_4A8]; jumptable 0000000000015631 case 116", "sub rdx, r13", "cmp r11d, 4", "jz loc_1721B"], "succs": [[225, "fall"], [369, "jump"]]}, {"id": 225, "start": 92019, "end": 92028, "lines": ["test r12, r12", "js loc_1721B"], "succs": [[226, "fall"], [369, "jump"]]}, {"id": 226, "start": 92028, "end": 92046, "lines": ["mov eax, 1", "cmovnz rax, r12", "cmp rax, rdx", "jnb loc_158C0"], "succs": [[67, "jump"], [227, "fall"]]}, {"id": 227, "start": 92046, "end": 92058, "lines": ["add r13, rax", "test r15, r15", "jz loc_1552C"], "succs": [[10, "jump"], [228, "fall"]]}, {"id": 228, "start": 92058, "end": 92064, "lines": ["cmp r12, 1", "jbe short loc_167C7"], "succs": [[229, "fall"], [232, "jump"]]}, {"id": 229, "start": 92064, "end": 92086, "lines": ["lea rdx, [r12-1]; n", "lea eax, [r11-1]", "lea r14, [r15+rdx]", "cmp eax, 1", "jbe loc_17830"], "succs": [[230, "fall"], [456, "jump"]]}, {"id": 230, "start": 92086, "end": 92100, "lines": ["mov esi, 20h ; ' '; c", "mov rdi, r15; s", "call cs:memset_ptr"], "succs": [[231, "fall"]]}, {"id": 231, "start": 92100, "end": 92103, "lines": ["mov r15, r14"], "succs": [[232, "fall"]]}, {"id": 232, "start": 92103, "end": 92116, "lines": ["mov byte ptr [r15], 9", "add r15, 1", "jmp loc_1552C"], "succs": [[10, "jump"]]}, {"id": 233, "start": 92116, "end": 92125, "lines": ["cmp eax, 45h ; 'E'; jumptable 0000000000015631 case 73", "jz def_15631; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118"], "succs": [[33, "jump"], [234, "fall"]]}, {"id": 234, "start": 92125, "end": 92170, "lines": ["test r11d, r11d", "mov edx, 1", "mov esi, 2", "cmovnz edx, r11d", "cmp r11d, 4", "setnz byte ptr [rbp+n]", "mov [rbp+var_508], edx", "mov edx, [rbp+var_4B8]", "jmp loc_1612C"], "succs": [[157, "jump"]]}, {"id": 235, "start": 92170, "end": 92179, "lines": ["cmp eax, 45h ; 'E'; jumptable 0000000000015631 case 72", "jz def_15631; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118"], "succs": [[33, "jump"], [236, "fall"]]}, {"id": 236, "start": 92179, "end": 92194, "lines": ["mov rdi, [rbp+tp]", "mov edx, [rdi+8]", "jmp loc_1610A"], "succs": [[156, "jump"]]}, {"id": 237, "start": 92194, "end": 92203, "lines": ["cmp eax, 45h ; 'E'; jumptable 0000000000015631 case 107", "jz def_15631; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118"], "succs": [[33, "jump"], [238, "fall"]]}, {"id": 238, "start": 92203, "end": 92218, "lines": ["mov rsi, [rbp+tp]", "mov edx, [rsi+8]", "jmp loc_16642"], "succs": [[214, "jump"]]}, {"id": 239, "start": 92218, "end": 92227, "lines": ["cmp eax, 45h ; 'E'; jumptable 0000000000015631 case 106", "jz def_15631; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118"], "succs": [[33, "jump"], [240, "fall"]]}, {"id": 240, "start": 92227, "end": 92301, "lines": ["mov rdi, [rbp+tp]", "mov esi, 1", "mov byte ptr [rbp+format], 0", "mov ecx, [rdi+1Ch]", "cmp ecx, 0FFFFFFFFh", "lea edx, [rcx+1]", "setl byte ptr [rbp+src]", "setnl cl", "test r11d, r11d", "cmovnz esi, r11d", "cmp r11d, 4", "setnz byte ptr [rbp+n]", "xor edi, edi", "mov [rbp+var_508], esi", "mov esi, 3", "jmp loc_16147"], "succs": [[158, "jump"]]}, {"id": 241, "start": 92301, "end": 92316, "lines": ["mov edx, [rbp+var_4B8]; jumptable 0000000000015631 case 108", "cmp eax, 45h ; 'E'", "jz def_15631; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118"], "succs": [[33, "jump"], [242, "fall"]]}, {"id": 242, "start": 92316, "end": 92321, "lines": ["jmp loc_16642"], "succs": [[214, "jump"]]}, {"id": 243, "start": 92321, "end": 92334, "lines": ["lea rax, [rbx-1]; jumptable 0000000000015631 case 37", "cmp rax, r14", "jz loc_17312"], "succs": [[244, "fall"], [386, "jump"]]}, {"id": 244, "start": 92334, "end": 92342, "lines": ["mov rbx, rax", "jmp def_15631; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118"], "succs": [[33, "jump"]]}, {"id": 245, "start": 92342, "end": 92351, "lines": ["cmp eax, 4Fh ; 'O'; jumptable 0000000000015631 case 120", "jz def_15631; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118"], "succs": [[33, "jump"], [246, "fall"]]}, {"id": 246, "start": 92351, "end": 92367, "lines": ["mov rdi, [rbp+var_4D8]", "test rdi, rdi", "jz loc_15903; jumptable 0000000000015631 case 114"], "succs": [[73, "jump"], [247, "fall"]]}, {"id": 247, "start": 92367, "end": 92394, "lines": ["mov [rbp+n], 0FFFFFFFFFFFFFFFFh", "mov rax, [rdi+8]", "mov [rbp+src], rax", "jmp loc_15F99"], "succs": [[144, "jump"]]}, {"id": 248, "start": 92394, "end": 92403, "lines": ["cmp eax, 45h ; 'E'; jumptable 0000000000015631 case 87", "jz def_15631; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118"], "succs": [[33, "jump"], [249, "fall"]]}, {"id": 249, "start": 92403, "end": 92466, "lines": ["mov rdi, [rbp+tp]", "mov esi, [rdi+18h]", "mov edi, [rdi+1Ch]", "lea ecx, [rsi+6]", "mov dword ptr [rbp+src], esi", "movsxd rdx, ecx", "mov esi, ecx", "imul rdx, 0FFFFFFFF92492493h", "sar esi, 1Fh", "shr rdx, 20h", "add edx, ecx", "sar edx, 2", "sub edx, esi", "lea esi, ds:0[rdx*8]", "sub esi, edx", "sub esi, ecx", "lea ecx, [rsi+rdi+7]"], "succs": [[250, "fall"]]}, {"id": 250, "start": 92466, "end": 92495, "lines": ["movsxd rdx, ecx", "imul rdx, 0FFFFFFFF92492493h", "shr rdx, 20h", "add edx, ecx", "sar ecx, 1Fh", "sar edx, 2", "sub edx, ecx", "jmp loc_1610A"], "succs": [[156, "jump"]]}, {"id": 251, "start": 92495, "end": 92504, "lines": ["cmp eax, 45h ; 'E'; jumptable 0000000000015631 case 85", "jz def_15631; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118"], "succs": [[33, "jump"], [252, "fall"]]}, {"id": 252, "start": 92504, "end": 92522, "lines": ["mov rdi, [rbp+tp]", "mov ecx, [rdi+1Ch]", "sub ecx, [rdi+18h]", "add ecx, 7", "jmp short loc_16932"], "succs": [[250, "jump"]]}, {"id": 253, "start": 92522, "end": 92531, "lines": ["cmp eax, 45h ; 'E'; jumptable 0000000000015631 case 83", "jz def_15631; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118"], "succs": [[33, "jump"], [254, "fall"]]}, {"id": 254, "start": 92531, "end": 92545, "lines": ["mov rsi, [rbp+tp]", "mov edx, [rsi]", "jmp loc_1610A"], "succs": [[156, "jump"]]}, {"id": 255, "start": 92545, "end": 92554, "lines": ["cmp eax, 45h ; 'E'; jumptable 0000000000015631 case 78", "jz def_15631; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118"], "succs": [[33, "jump"], [256, "fall"]]}, {"id": 256, "start": 92554, "end": 92577, "lines": ["mov eax, 9", "test r12, r12", "mov r14d, 9", "cmovle r12, rax", "mov eax, [rbp+arg_20]", "jmp short loc_169DB"], "succs": [[258, "jump"]]}, {"id": 257, "start": 92608, "end": 92635, "lines": ["movsxd rdx, eax", "sar eax, 1Fh", "sub r14, 1", "imul rdx, 66666667h", "mov ecx, eax", "sar rdx, 22h", "mov eax, edx", "sub eax, ecx"], "succs": [[258, "fall"]]}, {"id": 258, "start": 92635, "end": 92643, "lines": ["mov rsi, r14", "cmp r14, r12", "jg short loc_169C0"], "succs": [[257, "jump"], [259, "fall"]]}, {"id": 259, "start": 92643, "end": 92653, "lines": ["cmp r14, 1", "jz loc_173ED"], "succs": [[260, "fall"], [401, "jump"]]}, {"id": 260, "start": 92653, "end": 92675, "lines": ["imul edx, eax, 0CCCCCCCDh", "add edx, 19999998h", "ror edx, 1", "cmp edx, 19999998h", "jbe short loc_169C0"], "succs": [[257, "jump"], [261, "fall"]]}, {"id": 261, "start": 92675, "end": 92681, "lines": ["mov ecx, r14d", "movsxd r14, r14d"], "succs": [[262, "fall"]]}, {"id": 262, "start": 92681, "end": 92736, "lines": ["lea rdx, [rbp+var_460]", "sub ecx, 1", "lea rdi, [rbp+var_461]", "add rcx, rdx", "xchg ax, ax", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]"], "succs": [[263, "fall"]]}, {"id": 263, "start": 92736, "end": 92788, "lines": ["movsxd r8, eax", "mov r9d, eax", "sub rcx, 1", "imul r8, 66666667h", "sar r9d, 1Fh", "sar r8, 22h", "sub r8d, r9d", "lea r9d, [r8+r8*4]", "add r9d, r9d", "sub eax, r9d", "add eax, 30h ; '0'", "mov [rcx+1], al", "mov eax, r8d", "cmp rcx, rdi", "jnz short loc_16A40"], "succs": [[264, "fall"], [263, "jump"]]}, {"id": 264, "start": 92788, "end": 92807, "lines": ["mov rax, [rbp+var_4A8]", "sub rax, r13", "cmp r14, rax", "jnb loc_158C0"], "succs": [[67, "jump"], [265, "fall"]]}, {"id": 265, "start": 92807, "end": 92817, "lines": ["lea rcx, [r13+r14+0]", "test r15, r15", "jz short loc_16AFC"], "succs": [[266, "fall"], [270, "jump"]]}, {"id": 266, "start": 92817, "end": 92830, "lines": ["cmp [rbp+var_4B0], 0", "jz loc_177E2"], "succs": [[267, "fall"], [451, "jump"]]}, {"id": 267, "start": 92830, "end": 92899, "lines": ["mov [rbp+format], rdx", "lea r13, [r14-1]", "mov dword ptr [rbp+n], r11d", "mov [rbp+src], rcx", "mov qword ptr [rbp+var_4B0], rsi", "call cs:__ctype_toupper_loc_ptr", "mov rsi, qword ptr [rbp+var_4B0]", "mov rcx, [rbp+src]", "mov r11d, dword ptr [rbp+n]", "mov rdx, [rbp+format]", "mov rdi, rax"], "succs": [[268, "fall"]]}, {"id": 268, "start": 92899, "end": 92921, "lines": ["movzx r8d, byte ptr [rdx+r13]", "mov rax, [rdi]", "mov eax, [rax+r8*4]", "mov [r15+r13], al", "sub r13, 1", "jnb short loc_16AE3"], "succs": [[269, "fall"], [268, "jump"]]}, {"id": 269, "start": 92921, "end": 92924, "lines": ["add r15, r14"], "succs": [[270, "fall"]]}, {"id": 270, "start": 92924, "end": 92934, "lines": ["cmp r11d, 4", "jz loc_1742B"], "succs": [[271, "fall"], [406, "jump"]]}, {"id": 271, "start": 92934, "end": 92946, "lines": ["mov rdx, r12", "sub rdx, rsi; n", "js loc_1742B"], "succs": [[272, "fall"], [406, "jump"]]}, {"id": 272, "start": 92946, "end": 92965, "lines": ["mov rax, [rbp+var_4A8]", "sub rax, rcx", "cmp rdx, rax", "jnb loc_158C0"], "succs": [[67, "jump"], [273, "fall"]]}, {"id": 273, "start": 92965, "end": 92978, "lines": ["lea r13, [rcx+rdx]", "test r15, r15", "jz loc_1552C"], "succs": [[10, "jump"], [274, "fall"]]}, {"id": 274, "start": 92978, "end": 92987, "lines": ["test rdx, rdx", "jz loc_1552C"], "succs": [[10, "jump"], [275, "fall"]]}, {"id": 275, "start": 92987, "end": 93001, "lines": ["lea r14, [r15+rdx]", "cmp r11d, 3", "jnz loc_17B11"], "succs": [[276, "fall"], [487, "jump"]]}, {"id": 276, "start": 93001, "end": 93015, "lines": ["mov esi, 20h ; ' '; c", "mov rdi, r15; s", "call cs:memset_ptr"], "succs": [[277, "fall"]]}, {"id": 277, "start": 93015, "end": 93023, "lines": ["mov r15, r14", "jmp loc_1552C"], "succs": [[10, "jump"]]}, {"id": 278, "start": 93023, "end": 93031, "lines": ["test eax, eax; jumptable 0000000000015631 case 70", "jnz def_15631; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118"], "succs": [[33, "jump"], [279, "fall"]]}, {"id": 279, "start": 93031, "end": 93036, "lines": ["test r11d, r11d", "jnz short loc_16B75"], "succs": [[280, "fall"], [281, "jump"]]}, {"id": 280, "start": 93036, "end": 93045, "lines": ["test r12, r12", "js loc_17083"], "succs": [[281, "fall"], [347, "jump"]]}, {"id": 281, "start": 93045, "end": 93085, "lines": ["lea rdi, [r12-6]", "xor eax, eax", "test rdi, rdi", "cmovns rax, rdi", "mov [rbp+n], rax", "lea rax, aYMD; \"%Y-%m-%d\"", "mov [rbp+src], rax", "jmp loc_15F99"], "succs": [[144, "jump"]]}, {"id": 282, "start": 93085, "end": 93182, "lines": ["movzx esi, [rbp+var_4B0]; jumptable 0000000000015631 case 90", "test r8b, r8b", "mov eax, 0", "mov dword ptr [rbp+n], r11d", "mov byte ptr [rbp+src], r8b", "cmovnz esi, eax", "mov rax, [rbp+tp]", "mov r14, [rax+30h]", "mov [rbp+var_4B0], sil", "mov rdi, r14; s", "call cs:strlen_ptr", "mov r11d, dword ptr [rbp+n]", "movzx r8d, byte ptr [rbp+src]", "mov rcx, rax", "mov rax, [rbp+var_4A8]", "sub rax, r13", "cmp r11d, 4", "jz loc_17253"], "succs": [[283, "fall"], [375, "jump"]]}, {"id": 283, "start": 93182, "end": 93191, "lines": ["test r12, r12", "js loc_17253"], "succs": [[284, "fall"], [375, "jump"]]}, {"id": 284, "start": 93191, "end": 93210, "lines": ["cmp rcx, r12", "mov rdx, r12", "cmovnb rdx, rcx", "cmp rdx, rax", "jnb loc_158C0"], "succs": [[67, "jump"], [285, "fall"]]}, {"id": 285, "start": 93210, "end": 93222, "lines": ["add r13, rdx", "test r15, r15", "jz loc_1552C"], "succs": [[10, "jump"], [286, "fall"]]}, {"id": 286, "start": 93222, "end": 93227, "lines": ["cmp rcx, r12", "jnb short loc_16C70"], "succs": [[287, "fall"], [290, "jump"]]}, {"id": 287, "start": 93227, "end": 93264, "lines": ["mov rdx, r12", "lea eax, [r11-1]", "mov [rbp+n], rcx", "sub rdx, rcx; n", "mov byte ptr [rbp+src], r8b", "lea r12, [r15+rdx]", "cmp eax, 1", "jbe loc_179CB"], "succs": [[288, "fall"], [474, "jump"]]}, {"id": 288, "start": 93264, "end": 93293, "lines": ["mov esi, 20h ; ' '; c", "mov rdi, r15; s", "call cs:memset_ptr", "movzx r8d, byte ptr [rbp+src]", "mov rcx, [rbp+n]"], "succs": [[289, "fall"]]}, {"id": 289, "start": 93293, "end": 93296, "lines": ["mov r15, r12"], "succs": [[290, "fall"]]}, {"id": 290, "start": 93296, "end": 93305, "lines": ["test r8b, r8b", "jnz loc_176E0"], "succs": [[291, "fall"], [436, "jump"]]}, {"id": 291, "start": 93305, "end": 93318, "lines": ["cmp [rbp+var_4B0], 0", "jz loc_16F5C"], "succs": [[292, "fall"], [332, "jump"]]}, {"id": 292, "start": 93318, "end": 93327, "lines": ["test rcx, rcx", "jz loc_16335"], "succs": [[187, "jump"], [293, "fall"]]}, {"id": 293, "start": 93327, "end": 93354, "lines": ["mov qword ptr [rbp+var_4B0], rcx", "lea r12, [rcx-1]", "call cs:__ctype_toupper_loc_ptr", "mov rcx, qword ptr [rbp+var_4B0]", "mov rsi, rax"], "succs": [[294, "fall"]]}, {"id": 294, "start": 93354, "end": 93375, "lines": ["movzx edx, byte ptr [r14+r12]", "mov rax, [rsi]", "mov eax, [rax+rdx*4]", "mov [r15+r12], al", "sub r12, 1", "jnb short loc_16CAA"], "succs": [[295, "fall"], [294, "jump"]]}, {"id": 295, "start": 93375, "end": 93380, "lines": ["jmp loc_16335"], "succs": [[187, "jump"]]}, {"id": 296, "start": 93380, "end": 93392, "lines": ["xor r8d, r8d; jumptable 0000000000015631 case 89", "cmp eax, 45h ; 'E'", "jz loc_15906"], "succs": [[74, "jump"], [297, "fall"]]}, {"id": 297, "start": 93392, "end": 93406, "lines": ["cmp [rbp+var_4D8], 0", "jz loc_17928"], "succs": [[298, "fall"], [469, "jump"]]}, {"id": 298, "start": 93406, "end": 93424, "lines": ["mov rdi, [rbp+var_4E0]", "mov edx, [rdi]", "test r11d, r11d", "jnz loc_179ED"], "succs": [[299, "fall"], [475, "jump"]]}, {"id": 299, "start": 93424, "end": 93434, "lines": ["cmp [rbp+arg_8], 2", "jz loc_178E5"], "succs": [[300, "fall"], [465, "jump"]]}, {"id": 300, "start": 93434, "end": 93502, "lines": ["mov r8d, [rbp+arg_8]", "mov ecx, 1", "mov r11d, [rbp+arg_8]", "mov byte ptr [rbp+format], 0", "mov byte ptr [rbp+src], 0", "mov esi, 4", "test r8d, r8d", "cmovnz ecx, [rbp+arg_8]", "cmp [rbp+arg_8], 4", "setnz byte ptr [rbp+n]", "xor edi, edi", "mov [rbp+var_508], ecx", "mov ecx, 1", "jmp loc_16147"], "succs": [[158, "jump"]]}, {"id": 301, "start": 93504, "end": 93513, "lines": ["cmp eax, 45h ; 'E'; jumptable 0000000000015631 case 66", "jz def_15631; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118"], "succs": [[33, "jump"], [302, "fall"]]}, {"id": 302, "start": 93513, "end": 93534, "lines": ["or [rbp+var_4B0], r8b", "cmp [rbp+var_4D8], 0", "jz loc_15903; jumptable 0000000000015631 case 114"], "succs": [[73, "jump"], [303, "fall"]]}, {"id": 303, "start": 93534, "end": 93616, "lines": ["mov rsi, [rbp+var_4E0]", "mov dword ptr [rbp+n], r11d", "movsxd rax, dword ptr [rsi+4]", "shl rax, 4", "add rax, [rsi+10h]", "mov rsi, [rax]", "mov [rbp+src], rsi", "mov rdi, rsi; s", "call cs:strlen_ptr", "mov r11d, dword ptr [rbp+n]", "mov rsi, [rbp+src]", "mov r14, rax", "mov rax, [rbp+var_4A8]", "sub rax, r13", "cmp r11d, 4", "jz loc_173D3"], "succs": [[304, "fall"], [398, "jump"]]}, {"id": 304, "start": 93616, "end": 93625, "lines": ["test r12, r12", "js loc_173D3"], "succs": [[305, "fall"], [398, "jump"]]}, {"id": 305, "start": 93625, "end": 93644, "lines": ["cmp r14, r12", "mov rdx, r12", "cmovnb rdx, r14", "cmp rdx, rax", "jnb loc_158C0"], "succs": [[67, "jump"], [306, "fall"]]}, {"id": 306, "start": 93644, "end": 93656, "lines": ["add r13, rdx", "test r15, r15", "jz loc_1552C"], "succs": [[10, "jump"], [307, "fall"]]}, {"id": 307, "start": 93656, "end": 93661, "lines": ["cmp r14, r12", "jnb short loc_16E17"], "succs": [[308, "fall"], [310, "jump"]]}, {"id": 308, "start": 93661, "end": 93680, "lines": ["mov rdx, r12", "lea eax, [r11-1]", "sub rdx, r14; n", "cmp eax, 1", "jbe loc_17AB0"], "succs": [[309, "fall"], [484, "jump"]]}, {"id": 309, "start": 93680, "end": 93719, "lines": ["mov esi, 20h ; ' '; c", "mov rdi, r15; s", "add r15, rdx", "call cs:memset_ptr", "mov rsi, [rbp+var_4E0]", "movsxd rax, dword ptr [rsi+4]", "shl rax, 4", "add rax, [rsi+10h]", "mov rsi, [rax]"], "succs": [[310, "fall"]]}, {"id": 310, "start": 93719, "end": 93732, "lines": ["cmp [rbp+var_4B0], 0", "jz loc_15D35"], "succs": [[113, "jump"], [311, "fall"]]}, {"id": 311, "start": 93732, "end": 93741, "lines": ["test r14, r14", "jz loc_15D41"], "succs": [[114, "jump"], [312, "fall"]]}, {"id": 312, "start": 93741, "end": 93768, "lines": ["mov qword ptr [rbp+var_4B0], rsi", "lea r12, [r14-1]", "call cs:__ctype_toupper_loc_ptr", "mov rsi, qword ptr [rbp+var_4B0]", "mov rdi, rax"], "succs": [[313, "fall"]]}, {"id": 313, "start": 93768, "end": 93789, "lines": ["movzx edx, byte ptr [rsi+r12]", "mov rax, [rdi]", "mov eax, [rax+rdx*4]", "mov [r15+r12], al", "sub r12, 1", "jnb short loc_16E48"], "succs": [[314, "fall"], [313, "jump"]]}, {"id": 314, "start": 93789, "end": 93794, "lines": ["jmp loc_15D41"], "succs": [[114, "jump"]]}, {"id": 315, "start": 93794, "end": 93824, "lines": ["lea rax, aHMS; jumptable 0000000000015631 case 84", "mov [rbp+n], 0FFFFFFFFFFFFFFFFh", "mov [rbp+src], rax", "jmp loc_15F99"], "succs": [[144, "jump"]]}, {"id": 316, "start": 93824, "end": 93829, "lines": ["mov edx, 1; jumptable 0000000000015631 case 80"], "succs": [[317, "fall"]]}, {"id": 317, "start": 93829, "end": 93838, "lines": ["test r8b, r8b", "jnz loc_17181"], "succs": [[318, "fall"], [359, "jump"]]}, {"id": 318, "start": 93838, "end": 93851, "lines": ["mov r8d, edx", "mov ecx, 70h ; 'p'", "jmp loc_15906"], "succs": [[74, "jump"]]}, {"id": 319, "start": 93851, "end": 93859, "lines": ["xor r8d, r8d; jumptable 0000000000015631 case 122", "jmp loc_164E4"], "succs": [[200, "jump"]]}, {"id": 320, "start": 93859, "end": 93863, "lines": ["xor edx, edx; jumptable 0000000000015631 case 112", "jmp short loc_16E85"], "succs": [[317, "jump"]]}, {"id": 321, "start": 93863, "end": 93893, "lines": ["lea rax, aYMDHM+9; jumptable 0000000000015631 case 82", "mov [rbp+n], 0FFFFFFFFFFFFFFFFh", "mov [rbp+src], rax", "jmp loc_15F99"], "succs": [[144, "jump"]]}, {"id": 322, "start": 93896, "end": 93909, "lines": ["mov [r14-2], cl", "sub r14, 2", "jmp loc_161F2"], "succs": [[167, "jump"]]}, {"id": 323, "start": 93909, "end": 93921, "lines": ["mov r12d, 1", "mov r8d, 2Dh ; '-'"], "succs": [[324, "fall"]]}, {"id": 324, "start": 93921, "end": 93936, "lines": ["xor edx, edx; n", "xchg ax, ax", "nop word ptr [rax+rax+00000000h]"], "succs": [[325, "fall"]]}, {"id": 325, "start": 93936, "end": 93946, "lines": ["cmp r11d, 3", "jz loc_1581B"], "succs": [[62, "jump"], [326, "fall"]]}, {"id": 326, "start": 93946, "end": 93966, "lines": ["mov rax, [rbp+var_4A8]", "sub rax, r13", "cmp rax, 1", "jbe loc_158C0"], "succs": [[67, "jump"], [327, "fall"]]}, {"id": 327, "start": 93966, "end": 93996, "lines": ["mov rax, [rbp+var_4A8]", "add r13, 1", "movsxd rcx, ecx", "sub r12, 1", "sub rax, r13", "test r15, r15", "jz loc_17160"], "succs": [[328, "fall"], [355, "jump"]]}, {"id": 328, "start": 93996, "end": 94009, "lines": ["mov [r15], r8b", "add r15, 1", "cmp r11d, 4", "jz short loc_16F43"], "succs": [[329, "fall"], [330, "jump"]]}, {"id": 329, "start": 94009, "end": 94019, "lines": ["cmp r12, 0FFFFFFFFFFFFFFFFh", "jnz loc_1752E"], "succs": [[330, "fall"], [421, "jump"]]}, {"id": 330, "start": 94019, "end": 94028, "lines": ["cmp rcx, rax", "jnb loc_158C0"], "succs": [[67, "jump"], [331, "fall"]]}, {"id": 331, "start": 94028, "end": 94044, "lines": ["add r13, rcx", "cmp [rbp+var_4B0], 0", "jnz loc_162FC"], "succs": [[184, "jump"], [332, "fall"]]}, {"id": 332, "start": 94044, "end": 94081, "lines": ["mov qword ptr [rbp+var_4B0], rcx", "mov rdx, rcx; n", "mov rdi, r15; dest", "mov rsi, r14; src", "call cs:memcpy_ptr", "mov rcx, qword ptr [rbp+var_4B0]", "add r15, rcx", "jmp loc_1552C"], "succs": [[10, "jump"]]}, {"id": 333, "start": 94088, "end": 94099, "lines": ["xor edx, edx", "test r8b, r8b", "jnz loc_16EF0"], "succs": [[325, "jump"], [334, "fall"]]}, {"id": 334, "start": 94099, "end": 94102, "lines": ["movsxd rax, ecx"], "succs": [[335, "fall"]]}, {"id": 335, "start": 94102, "end": 94115, "lines": ["mov rcx, rax", "cmp r11d, 4", "jnz loc_16289"], "succs": [[177, "jump"], [336, "fall"]]}, {"id": 336, "start": 94115, "end": 94134, "lines": ["mov rax, [rbp+var_4A8]", "sub rax, r13", "cmp rcx, rax", "jnb loc_158C0"], "succs": [[67, "jump"], [337, "fall"]]}, {"id": 337, "start": 94134, "end": 94146, "lines": ["add r13, rcx", "test r15, r15", "jnz loc_162EF"], "succs": [[183, "jump"], [338, "fall"]]}, {"id": 338, "start": 94146, "end": 94151, "lines": ["jmp loc_1552C"], "succs": [[10, "jump"]]}, {"id": 339, "start": 94160, "end": 94173, "lines": ["cmp byte ptr [rbp+format], 0", "jz loc_17078"], "succs": [[340, "fall"], [346, "jump"]]}, {"id": 340, "start": 94173, "end": 94189, "lines": ["lea rdx, [r12-1]", "mov r8d, 2Bh ; '+'", "jmp loc_16247"], "succs": [[172, "jump"]]}, {"id": 341, "start": 94192, "end": 94205, "lines": ["cmp byte ptr [rbp+src], 0", "jz loc_17B46"], "succs": [[342, "fall"], [491, "jump"]]}, {"id": 342, "start": 94205, "end": 94231, "lines": ["mov byte ptr [rbp+src], 1", "neg edx", "mov r10d, 30h ; '0'", "mov r9d, 30h ; '0'", "jmp loc_1617B"], "succs": [[162, "jump"]]}, {"id": 343, "start": 94231, "end": 94254, "lines": ["mov edx, 30h ; '0'", "lea r14, [rdi-1]", "sub edx, eax", "mov [rdi-1], dl", "test rsi, rsi", "jz loc_17385"], "succs": [[344, "fall"], [394, "jump"]]}, {"id": 344, "start": 94254, "end": 94303, "lines": ["mov rax, rsi", "lea r14, [rdi-2]", "imul r10", "mov rax, rdx", "mov rdx, rsi", "sar rdx, 3Fh", "sar rax, 2", "sub rax, rdx", "lea rdx, [rax+rax*4]", "lea edx, [rdx+rdx+30h]", "sub edx, esi", "mov [rdi-2], dl", "test rax, rax", "jz loc_174BC"], "succs": [[345, "fall"], [413, "jump"]]}, {"id": 345, "start": 94303, "end": 94323, "lines": ["mov esi, 0Ah", "cqo", "mov rdi, r14", "idiv rsi", "mov rsi, rax", "mov eax, edx", "jmp short loc_17017"], "succs": [[343, "jump"]]}, {"id": 346, "start": 94328, "end": 94339, "lines": ["mov rdx, r12", "xor r8d, r8d", "jmp loc_16247"], "succs": [[172, "jump"]]}, {"id": 347, "start": 94339, "end": 94436, "lines": ["mov eax, [rbp+arg_20]", "sub rsp, 8", "mov r9, [rbp+var_4E0]", "xor edi, edi; s", "movzx r10d, [rbp+var_4B0]", "mov r8, [rbp+var_4D8]", "lea rdx, aYMD; \"%Y-%m-%d\"", "mov rsi, 0FFFFFFFFFFFFFFFFh", "push rax; int", "mov rcx, [rbp+tp]", "push [rbp+var_4D0]; __int64", "push 4; __int64", "push 2; int", "push r10; char", "mov dword ptr [rbp+var_4B0], r10d", "call sub_15420", "add rsp, 30h", "mov r10d, dword ptr [rbp+var_4B0]", "test rax, rax", "js loc_15754"], "succs": [[49, "jump"], [348, "fall"]]}, {"id": 348, "start": 94436, "end": 94470, "lines": ["mov r14, rax", "lea rax, aYMD; \"%Y-%m-%d\"", "mov [rbp+n], 4", "mov r11d, 2", "mov [rbp+src], rax"], "succs": [[349, "fall"]]}, {"id": 349, "start": 94470, "end": 94480, "lines": ["mov rax, [rbp+var_4A8]", "sub rax, r13"], "succs": [[350, "fall"]]}, {"id": 350, "start": 94480, "end": 94489, "lines": ["cmp r14, rax", "jnb loc_158C0"], "succs": [[67, "jump"], [351, "fall"]]}, {"id": 351, "start": 94489, "end": 94505, "lines": ["lea rcx, [r14+r13]", "mov r13, rcx", "test r15, r15", "jnz loc_160A5"], "succs": [[153, "jump"], [352, "fall"]]}, {"id": 352, "start": 94505, "end": 94510, "lines": ["jmp loc_1552C"], "succs": [[10, "jump"]]}, {"id": 353, "start": 94510, "end": 94536, "lines": ["mov esi, 30h ; '0'; c", "mov rdi, r15; s", "call cs:memset_ptr", "mov rcx, [rbp+src]", "jmp loc_162EC"], "succs": [[182, "jump"]]}, {"id": 354, "start": 94536, "end": 94560, "lines": ["mov byte ptr [rbp+src], 0", "mov r10d, 30h ; '0'", "mov r9d, 30h ; '0'", "jmp loc_1617B"], "succs": [[162, "jump"]]}, {"id": 355, "start": 94560, "end": 94566, "lines": ["cmp r11d, 4", "jz short loc_17170"], "succs": [[356, "fall"], [357, "jump"]]}, {"id": 356, "start": 94566, "end": 94576, "lines": ["cmp r12, 0FFFFFFFFFFFFFFFFh", "jnz loc_17A7F"], "succs": [[357, "fall"], [481, "jump"]]}, {"id": 357, "start": 94576, "end": 94585, "lines": ["cmp rcx, rax", "jnb loc_158C0"], "succs": [[67, "jump"], [358, "fall"]]}, {"id": 358, "start": 94585, "end": 94593, "lines": ["add r13, rcx", "jmp loc_1552C"], "succs": [[10, "jump"]]}, {"id": 359, "start": 94593, "end": 94610, "lines": ["mov [rbp+var_4B0], 0", "mov ecx, 70h ; 'p'", "jmp loc_15906"], "succs": [[74, "jump"]]}, {"id": 360, "start": 94610, "end": 94620, "lines": ["cmp r12, 1", "jbe loc_158C0"], "succs": [[67, "jump"], [361, "fall"]]}, {"id": 361, "start": 94620, "end": 94636, "lines": ["add r13, 1", "movsxd rcx, ecx", "sub rax, r13", "sub r9, 1", "js short loc_17170"], "succs": [[357, "jump"], [362, "fall"]]}, {"id": 362, "start": 94636, "end": 94648, "lines": ["cmp r9, rcx", "cmovnb rcx, r9", "cmp rcx, rax", "jb short loc_17179"], "succs": [[358, "jump"], [363, "fall"]]}, {"id": 363, "start": 94648, "end": 94653, "lines": ["jmp loc_158C0"], "succs": [[67, "jump"]]}, {"id": 364, "start": 94656, "end": 94665, "lines": ["test r14, r14", "jz loc_15D41"], "succs": [[114, "jump"], [365, "fall"]]}, {"id": 365, "start": 94665, "end": 94688, "lines": ["lea r12, [rcx-2]", "call cs:__ctype_tolower_loc_ptr", "lea rsi, [rbp+var_43F]", "mov rcx, rax", "nop dword ptr [rax]"], "succs": [[366, "fall"]]}, {"id": 366, "start": 94688, "end": 94709, "lines": ["movzx edx, byte ptr [rsi+r12]", "mov rax, [rcx]", "mov eax, [rax+rdx*4]", "mov [r15+r12], al", "sub r12, 1", "jnb short loc_171E0"], "succs": [[367, "fall"], [366, "jump"]]}, {"id": 367, "start": 94709, "end": 94714, "lines": ["jmp loc_15D41"], "succs": [[114, "jump"]]}, {"id": 368, "start": 94714, "end": 94747, "lines": ["mov byte ptr [rbp+n], 1", "mov esi, 2", "mov r11d, 3", "mov [rbp+var_508], 3", "jmp loc_1612C"], "succs": [[157, "jump"]]}, {"id": 369, "start": 94747, "end": 94757, "lines": ["cmp rdx, 1", "jbe loc_158C0"], "succs": [[67, "jump"], [370, "fall"]]}, {"id": 370, "start": 94757, "end": 94770, "lines": ["add r13, 1", "test r15, r15", "jnz loc_167C7"], "succs": [[232, "jump"], [371, "fall"]]}, {"id": 371, "start": 94770, "end": 94775, "lines": ["jmp loc_1552C"], "succs": [[10, "jump"]]}, {"id": 372, "start": 94775, "end": 94785, "lines": ["cmp rdx, 1", "jbe loc_158C0"], "succs": [[67, "jump"], [373, "fall"]]}, {"id": 373, "start": 94785, "end": 94798, "lines": ["add r13, 1", "test r15, r15", "jnz loc_15F6B"], "succs": [[141, "jump"], [374, "fall"]]}, {"id": 374, "start": 94798, "end": 94803, "lines": ["jmp loc_1552C"], "succs": [[10, "jump"]]}, {"id": 375, "start": 94803, "end": 94812, "lines": ["cmp rcx, rax", "jnb loc_158C0"], "succs": [[67, "jump"], [376, "fall"]]}, {"id": 376, "start": 94812, "end": 94824, "lines": ["add r13, rcx", "test r15, r15", "jnz loc_16C70"], "succs": [[290, "jump"], [377, "fall"]]}, {"id": 377, "start": 94824, "end": 94829, "lines": ["jmp loc_1552C"], "succs": [[10, "jump"]]}, {"id": 378, "start": 94829, "end": 94867, "lines": ["test r11d, r11d", "mov eax, 1", "cmovnz eax, r11d", "sub ecx, r14d", "cmp r11d, 4", "setnz sil", "mov [rbp+var_508], eax", "test r12, r12", "js loc_1785F"], "succs": [[379, "fall"], [459, "jump"]]}, {"id": 379, "start": 94867, "end": 94879, "lines": ["movsxd rax, ecx", "cmp rax, r12", "jz loc_16F96"], "succs": [[335, "jump"], [380, "fall"]]}, {"id": 380, "start": 94879, "end": 94888, "lines": ["test sil, sil", "jnz loc_16286"], "succs": [[176, "jump"], [381, "fall"]]}, {"id": 381, "start": 94888, "end": 94893, "lines": ["jmp loc_16F96"], "succs": [[335, "jump"]]}, {"id": 382, "start": 94893, "end": 94912, "lines": ["mov byte ptr [rbp+format], 0", "xor edi, edi", "mov esi, 1", "jmp loc_16158"], "succs": [[160, "jump"]]}, {"id": 383, "start": 94912, "end": 94946, "lines": ["mov esi, 30h ; '0'; c", "mov rdi, r15; s", "call cs:memset_ptr", "mov rcx, [rbp+n]", "movzx r8d, byte ptr [rbp+src]", "jmp loc_15A6E"], "succs": [[86, "jump"]]}, {"id": 384, "start": 94946, "end": 94954, "lines": ["xor r13d, r13d", "jmp loc_158DF"], "succs": [[69, "jump"]]}, {"id": 385, "start": 94954, "end": 94994, "lines": ["mov esi, 30h ; '0'; c", "mov rdi, r15; s", "call cs:memset_ptr", "mov rcx, [rbp+var_500]", "mov r11d, dword ptr [rbp+format]", "mov r10d, dword ptr [rbp+var_4B0]", "jmp loc_160A2"], "succs": [[152, "jump"]]}, {"id": 386, "start": 94994, "end": 95014, "lines": ["mov rdx, [rbp+var_4A8]", "sub rdx, r13", "cmp r11d, 4", "jz loc_17512"], "succs": [[387, "fall"], [418, "jump"]]}, {"id": 387, "start": 95014, "end": 95023, "lines": ["test r12, r12", "js loc_17512"], "succs": [[388, "fall"], [418, "jump"]]}, {"id": 388, "start": 95023, "end": 95041, "lines": ["mov eax, 1", "cmovnz rax, r12", "cmp rax, rdx", "jnb loc_158C0"], "succs": [[67, "jump"], [389, "fall"]]}, {"id": 389, "start": 95041, "end": 95053, "lines": ["add r13, rax", "test r15, r15", "jz loc_1552C"], "succs": [[10, "jump"], [390, "fall"]]}, {"id": 390, "start": 95053, "end": 95059, "lines": ["cmp r12, 1", "jbe short loc_17379"], "succs": [[391, "fall"], [393, "jump"]]}, {"id": 391, "start": 95059, "end": 95077, "lines": ["lea eax, [r11-1]", "lea rdx, [r12-1]; n", "cmp eax, 1", "jbe loc_17A97"], "succs": [[392, "fall"], [483, "jump"]]}, {"id": 392, "start": 95077, "end": 95097, "lines": ["mov rdi, r15; s", "mov esi, 20h ; ' '; c", "add r15, rdx", "call cs:memset_ptr", "movzx ecx, byte ptr [rbx]"], "succs": [[393, "fall"]]}, {"id": 393, "start": 95097, "end": 95109, "lines": ["mov [r15], cl", "add r15, 1", "jmp loc_1552C"], "succs": [[10, "jump"]]}, {"id": 394, "start": 95109, "end": 95147, "lines": ["test r11d, r11d", "mov eax, 1", "cmovnz eax, r11d", "sub ecx, r14d", "cmp r11d, 4", "setnz sil", "mov [rbp+var_508], eax", "test r12, r12", "jns loc_174EB"], "succs": [[395, "fall"], [415, "jump"]]}, {"id": 395, "start": 95147, "end": 95155, "lines": ["test ecx, ecx", "jz loc_16ED5"], "succs": [[323, "jump"], [396, "fall"]]}, {"id": 396, "start": 95155, "end": 95164, "lines": ["test sil, sil", "jz loc_16ED5"], "succs": [[323, "jump"], [397, "fall"]]}, {"id": 397, "start": 95164, "end": 95187, "lines": ["movsxd rdx, ecx", "mov r12d, 1", "mov r8d, 2Dh ; '-'", "neg rdx", "jmp loc_16EF0"], "succs": [[325, "jump"]]}, {"id": 398, "start": 95187, "end": 95196, "lines": ["cmp r14, rax", "jnb loc_158C0"], "succs": [[67, "jump"], [399, "fall"]]}, {"id": 399, "start": 95196, "end": 95208, "lines": ["add r13, r14", "test r15, r15", "jnz loc_16E17"], "succs": [[310, "jump"], [400, "fall"]]}, {"id": 400, "start": 95208, "end": 95213, "lines": ["jmp loc_1552C"], "succs": [[10, "jump"]]}, {"id": 401, "start": 95213, "end": 95223, "lines": ["mov ecx, 1", "jmp loc_16A09"], "succs": [[262, "jump"]]}, {"id": 402, "start": 95223, "end": 95232, "lines": ["cmp r14, rax", "jnb loc_158C0"], "succs": [[67, "jump"], [403, "fall"]]}, {"id": 403, "start": 95232, "end": 95244, "lines": ["add r13, r14", "test r15, r15", "jnz loc_15E22"], "succs": [[124, "jump"], [404, "fall"]]}, {"id": 404, "start": 95244, "end": 95249, "lines": ["jmp loc_1552C"], "succs": [[10, "jump"]]}, {"id": 405, "start": 95249, "end": 95275, "lines": ["mov rdi, [rbp+tp]", "mov rdx, [rdi+30h]", "cmp byte ptr [rdx], 2Dh ; '-'", "setz byte ptr [rbp+src]", "jmp loc_1650D"], "succs": [[203, "jump"]]}, {"id": 406, "start": 95275, "end": 95288, "lines": ["cmp [rbp+var_4A8], rcx", "jz loc_158C0"], "succs": [[67, "jump"], [407, "fall"]]}, {"id": 407, "start": 95288, "end": 95296, "lines": ["mov r13, rcx", "jmp loc_1552C"], "succs": [[10, "jump"]]}, {"id": 408, "start": 95296, "end": 95334, "lines": ["mov byte ptr [rbp+format], 0", "mov r10d, 30h ; '0'", "mov esi, 2", "xor edi, edi", "mov byte ptr [rbp+src], 0", "mov r9d, 30h ; '0'", "jmp loc_1617B"], "succs": [[162, "jump"]]}, {"id": 409, "start": 95334, "end": 95350, "lines": ["mov ecx, 0FFFFF894h", "sub ecx, r8d", "cmp esi, ecx", "jge loc_17B24"], "succs": [[410, "fall"], [488, "jump"]]}, {"id": 410, "start": 95350, "end": 95361, "lines": ["neg edx", "test r11d, r11d", "jz loc_15CE0"], "succs": [[110, "jump"], [411, "fall"]]}, {"id": 411, "start": 95361, "end": 95371, "lines": ["cmp r11d, 2", "jz loc_17606"], "succs": [[412, "fall"], [429, "jump"]]}, {"id": 412, "start": 95371, "end": 95420, "lines": ["cmp r11d, 4", "mov [rbp+var_508], r11d", "mov ecx, 1", "mov esi, 2", "setnz byte ptr [rbp+n]", "xor edi, edi", "mov byte ptr [rbp+format], 0", "mov byte ptr [rbp+src], 0", "jmp loc_16147"], "succs": [[158, "jump"]]}, {"id": 413, "start": 95420, "end": 95458, "lines": ["test r11d, r11d", "mov eax, 1", "cmovnz eax, r11d", "sub ecx, r14d", "cmp r11d, 4", "setnz sil", "mov [rbp+var_508], eax", "test r12, r12", "js loc_17856"], "succs": [[414, "fall"], [458, "jump"]]}, {"id": 414, "start": 95458, "end": 95467, "lines": ["test r9, r9", "jns loc_17293"], "succs": [[379, "jump"], [415, "fall"]]}, {"id": 415, "start": 95467, "end": 95490, "lines": ["lea rdx, [r12-1]", "movsxd rax, ecx", "mov r8d, 2Dh ; '-'", "sub rdx, rax", "jz loc_16EE1"], "succs": [[324, "jump"], [416, "fall"]]}, {"id": 416, "start": 95490, "end": 95499, "lines": ["test sil, sil", "jnz loc_16EF0"], "succs": [[325, "jump"], [417, "fall"]]}, {"id": 417, "start": 95499, "end": 95506, "lines": ["xor edx, edx", "jmp loc_16EF0"], "succs": [[325, "jump"]]}, {"id": 418, "start": 95506, "end": 95516, "lines": ["cmp rdx, 1", "jbe loc_158C0"], "succs": [[67, "jump"], [419, "fall"]]}, {"id": 419, "start": 95516, "end": 95529, "lines": ["add r13, 1", "test r15, r15", "jnz loc_17379"], "succs": [[393, "jump"], [420, "fall"]]}, {"id": 420, "start": 95529, "end": 95534, "lines": ["jmp loc_1552C"], "succs": [[10, "jump"]]}, {"id": 421, "start": 95534, "end": 95553, "lines": ["cmp r12, rcx", "mov rdx, rcx", "cmovnb rdx, r12", "cmp rdx, rax", "jnb loc_158C0"], "succs": [[67, "jump"], [422, "fall"]]}, {"id": 422, "start": 95553, "end": 95561, "lines": ["add r13, rdx", "jmp loc_162AF"], "succs": [[179, "jump"]]}, {"id": 423, "start": 95561, "end": 95571, "lines": ["cmp r11d, 2", "jz loc_1797C"], "succs": [[424, "fall"], [472, "jump"]]}, {"id": 424, "start": 95571, "end": 95608, "lines": ["cmp r11d, 4", "mov [rbp+var_508], r11d", "mov esi, 2", "setnz byte ptr [rbp+n]", "xor edi, edi", "mov byte ptr [rbp+format], 0", "jmp loc_16147"], "succs": [[158, "jump"]]}, {"id": 425, "start": 95608, "end": 95622, "lines": ["lea edx, [r14-1]", "mov edi, 16Dh", "test dl, 3", "jnz short loc_175BC"], "succs": [[426, "fall"], [428, "jump"]]}, {"id": 426, "start": 95622, "end": 95655, "lines": ["imul edx, 0C28F5C29h", "mov edi, 16Eh", "add edx, 51EB850h", "mov r8d, edx", "ror r8d, 2", "cmp r8d, 28F5C28h", "ja short loc_175BC"], "succs": [[427, "fall"], [428, "jump"]]}, {"id": 427, "start": 95655, "end": 95676, "lines": ["ror edx, 4", "xor edi, edi", "cmp edx, 0A3D70Ah", "setbe dil", "add edi, 16Dh"], "succs": [[428, "fall"]]}, {"id": 428, "start": 95676, "end": 95750, "lines": ["add r9d, edi", "mov edi, r9d", "sub edi, r10d", "add edi, 17Eh", "movsxd rdx, edi", "mov r8d, edi", "sub r9d, edi", "imul rdx, 0FFFFFFFF92492493h", "sar r8d, 1Fh", "shr rdx, 20h", "add edx, edi", "sar edx, 2", "sub edx, r8d", "lea r8d, ds:0[rdx*8]", "sub r8d, edx", "lea edi, [r9+r8+3]", "mov r8d, 0FFFFFFFFh", "jmp loc_15C84"], "succs": [[106, "jump"]]}, {"id": 429, "start": 95750, "end": 95772, "lines": ["mov ecx, 1", "mov edi, 2", "mov esi, 2", "mov byte ptr [rbp+src], 0"], "succs": [[430, "fall"]]}, {"id": 430, "start": 95772, "end": 95812, "lines": ["cmp r12, rdi", "mov byte ptr [rbp+n], 1", "mov r11d, 2", "setnle byte ptr [rbp+format]", "xor edi, edi", "mov [rbp+var_508], 2", "jmp loc_16147"], "succs": [[158, "jump"]]}, {"id": 431, "start": 95812, "end": 95822, "lines": ["cmp r8, 3", "jnz def_15631; jumptable 0000000000015631 default case, cases 1-36,38-57,59-64,69,74-76,79,81,91-96,102,105,111,118"], "succs": [[33, "jump"], [432, "fall"]]}, {"id": 432, "start": 95822, "end": 95826, "lines": ["test ecx, ecx", "jnz short loc_17695"], "succs": [[433, "fall"], [435, "jump"]]}, {"id": 433, "start": 95826, "end": 95834, "lines": ["test edi, edi", "jnz loc_1657B"], "succs": [[206, "jump"], [434, "fall"]]}, {"id": 434, "start": 95834, "end": 95893, "lines": ["test r11d, r11d", "mov edx, 1", "movzx ecx, byte ptr [rbp+src]", "mov byte ptr [rbp+format], 1", "cmovnz edx, r11d", "cmp r11d, 4", "mov esi, 3", "setnz byte ptr [rbp+n]", "xor ecx, 1", "mov [rbp+var_508], edx", "mov edx, r9d", "jmp loc_16147"], "succs": [[158, "jump"]]}, {"id": 435, "start": 95893, "end": 95968, "lines": ["imul edi, 64h ; 'd'", "mov esi, 1", "mov byte ptr [rbp+format], 1", "imul edx, r9d, 2710h", "add edx, edi", "mov edi, 14h", "add edx, ecx", "movzx ecx, byte ptr [rbp+src]", "xor ecx, 1", "test r11d, r11d", "cmovnz esi, r11d", "cmp r11d, 4", "setnz byte ptr [rbp+n]", "mov [rbp+var_508], esi", "mov esi, 9", "jmp loc_16147"], "succs": [[158, "jump"]]}, {"id": 436, "start": 95968, "end": 95977, "lines": ["test rcx, rcx", "jz loc_16335"], "succs": [[187, "jump"], [437, "fall"]]}, {"id": 437, "start": 95977, "end": 96004, "lines": ["mov qword ptr [rbp+var_4B0], rcx", "lea r12, [rcx-1]", "call cs:__ctype_tolower_loc_ptr", "mov rcx, qword ptr [rbp+var_4B0]", "mov rsi, rax"], "succs": [[438, "fall"]]}, {"id": 438, "start": 96004, "end": 96025, "lines": ["movzx edx, byte ptr [r14+r12]", "mov rax, [rsi]", "mov eax, [rax+rdx*4]", "mov [r15+r12], al", "sub r12, 1", "jnb short loc_17704"], "succs": [[439, "fall"], [438, "jump"]]}, {"id": 439, "start": 96025, "end": 96030, "lines": ["jmp loc_16335"], "succs": [[187, "jump"]]}, {"id": 440, "start": 96030, "end": 96050, "lines": ["mov rdi, [rbp+tp]", "mov esi, 2", "mov edx, [rdi+0Ch]", "jmp loc_1612C"], "succs": [[157, "jump"]]}, {"id": 441, "start": 96050, "end": 96065, "lines": ["mov rsi, [rbp+tp]", "mov edx, [rsi+0Ch]", "jmp loc_16642"], "succs": [[214, "jump"]]}, {"id": 442, "start": 96065, "end": 96071, "lines": ["mov r8d, 1"], "succs": [[443, "fall"]]}, {"id": 443, "start": 96071, "end": 96085, "lines": ["add r8, 1", "movzx edx, byte ptr [rbx+r8]", "cmp dl, 3Ah ; ':'", "jz short loc_17747"], "succs": [[444, "fall"], [443, "jump"]]}, {"id": 444, "start": 96085, "end": 96094, "lines": ["lea rcx, [rbx+r8]", "jmp loc_164D8"], "succs": [[198, "jump"]]}, {"id": 445, "start": 96094, "end": 96123, "lines": ["cmp rcx, r9", "mov rdx, [rbp+var_4A8]", "mov rax, r9", "cmovnb rax, rcx", "sub rdx, r13", "cmp rax, rdx", "jnb loc_158C0"], "succs": [[67, "jump"], [446, "fall"]]}, {"id": 446, "start": 96123, "end": 96131, "lines": ["add r13, rax", "jmp loc_162AF"], "succs": [[179, "jump"]]}, {"id": 447, "start": 96131, "end": 96173, "lines": ["mov rdi, [rbp+tp]", "cmp eax, 4Fh ; 'O'", "setz sil", "mov ecx, [rdi+10h]", "cmp ecx, 0FFFFFFFFh", "lea edx, [rcx+1]", "setnl al", "and sil, al", "mov byte ptr [rbp+format], sil", "jnz loc_17440"], "succs": [[408, "jump"], [448, "fall"]]}, {"id": 448, "start": 96173, "end": 96182, "lines": ["cmp ecx, 0FFFFFFFFh", "jge loc_17B57"], "succs": [[449, "fall"], [492, "jump"]]}, {"id": 449, "start": 96182, "end": 96194, "lines": ["xor edi, edi", "mov esi, 2", "jmp loc_16FFD"], "succs": [[342, "jump"]]}, {"id": 450, "start": 96194, "end": 96226, "lines": ["movsxd rdx, edi", "imul rdx, 0FFFFFFFF92492493h", "shr rdx, 20h", "add edx, edi", "sar edi, 1Fh", "sar edx, 2", "sub edx, edi", "add edx, 1", "jmp loc_1610A"], "succs": [[156, "jump"]]}, {"id": 451, "start": 96226, "end": 96239, "lines": ["mov eax, r14d", "cmp r14d, 8", "jnb loc_17A28"], "succs": [[452, "fall"], [477, "jump"]]}, {"id": 452, "start": 96239, "end": 96249, "lines": ["test r14b, 4", "jnz loc_17B7C"], "succs": [[453, "fall"], [494, "jump"]]}, {"id": 453, "start": 96249, "end": 96258, "lines": ["test r14d, r14d", "jz loc_16AF9"], "succs": [[269, "jump"], [454, "fall"]]}, {"id": 454, "start": 96258, "end": 96278, "lines": ["movzx edi, byte ptr [rbp+var_460]", "mov [r15], dil", "test r14b, 2", "jz loc_16AF9"], "succs": [[269, "jump"], [455, "fall"]]}, {"id": 455, "start": 96278, "end": 96294, "lines": ["movzx edx, word ptr [rdx+rax-2]", "mov [r15+rax-2], dx", "jmp loc_16AF9"], "succs": [[269, "jump"]]}, {"id": 456, "start": 96304, "end": 96323, "lines": ["mov esi, 30h ; '0'; c", "mov rdi, r15; s", "call cs:memset_ptr", "jmp loc_167C4"], "succs": [[231, "jump"]]}, {"id": 457, "start": 96323, "end": 96342, "lines": ["mov esi, 30h ; '0'; c", "mov rdi, r15; s", "call cs:memset_ptr", "jmp loc_15F68"], "succs": [[140, "jump"]]}, {"id": 458, "start": 96342, "end": 96351, "lines": ["test r9, r9", "js loc_173AB"], "succs": [[395, "jump"], [459, "fall"]]}, {"id": 459, "start": 96351, "end": 96356, "lines": ["cmp ecx, 1", "jz short loc_17876"], "succs": [[460, "fall"], [461, "jump"]]}, {"id": 460, "start": 96356, "end": 96374, "lines": ["mov r12d, 1", "movsxd rax, ecx", "test sil, sil", "jnz loc_16286"], "succs": [[176, "jump"], [461, "fall"]]}, {"id": 461, "start": 96374, "end": 96388, "lines": ["mov r12d, 1", "movsxd rax, ecx", "jmp loc_16F96"], "succs": [[335, "jump"]]}, {"id": 462, "start": 96388, "end": 96425, "lines": ["mov ecx, 0FFFFF894h", "lea edx, [rsi+r8+76Ch]", "sub ecx, r8d", "cmp esi, ecx", "setl byte ptr [rbp+src]", "setnl cl", "test r11d, r11d", "jnz loc_17951"], "succs": [[463, "fall"], [470, "jump"]]}, {"id": 463, "start": 96425, "end": 96431, "lines": ["cmp [rbp+arg_8], 2", "jz short loc_178F1"], "succs": [[464, "fall"], [466, "jump"]]}, {"id": 464, "start": 96431, "end": 96485, "lines": ["mov edi, [rbp+arg_8]", "mov esi, 1", "mov byte ptr [rbp+format], 0", "mov r11d, [rbp+arg_8]", "test edi, edi", "cmovnz esi, [rbp+arg_8]", "cmp [rbp+arg_8], 4", "setnz byte ptr [rbp+n]", "xor edi, edi", "mov [rbp+var_508], esi", "mov esi, 4", "jmp loc_16147"], "succs": [[158, "jump"]]}, {"id": 465, "start": 96485, "end": 96497, "lines": ["mov byte ptr [rbp+src], 0", "mov ecx, 1"], "succs": [[466, "fall"]]}, {"id": 466, "start": 96497, "end": 96507, "lines": ["mov esi, 4", "mov edi, 270Fh"], "succs": [[467, "fall"]]}, {"id": 467, "start": 96507, "end": 96515, "lines": ["cmp edi, edx", "jnb loc_17ADC"], "succs": [[468, "fall"], [485, "jump"]]}, {"id": 468, "start": 96515, "end": 96552, "lines": ["mov byte ptr [rbp+n], 1", "mov r11d, 2", "xor edi, edi", "mov [rbp+var_508], 2", "mov byte ptr [rbp+format], 1", "jmp loc_16147"], "succs": [[158, "jump"]]}, {"id": 469, "start": 96552, "end": 96593, "lines": ["mov rsi, [rbp+tp]", "mov ecx, [rsi+14h]", "cmp ecx, 0FFFFF894h", "lea edx, [rcx+76Ch]", "setl byte ptr [rbp+src]", "setnl cl", "test r11d, r11d", "jz loc_178A9"], "succs": [[463, "jump"], [470, "fall"]]}, {"id": 470, "start": 96593, "end": 96599, "lines": ["cmp r11d, 2", "jz short loc_178F1"], "succs": [[466, "jump"], [471, "fall"]]}, {"id": 471, "start": 96599, "end": 96636, "lines": ["cmp r11d, 4", "mov [rbp+var_508], r11d", "mov esi, 4", "setnz byte ptr [rbp+n]", "xor edi, edi", "mov byte ptr [rbp+format], 0", "jmp loc_16147"], "succs": [[158, "jump"]]}, {"id": 472, "start": 96636, "end": 96651, "lines": ["mov esi, 2", "mov edi, 63h ; 'c'", "jmp loc_178FB"], "succs": [[467, "jump"]]}, {"id": 473, "start": 96651, "end": 96715, "lines": ["imul edx, r9d, 64h ; 'd'", "movzx ecx, byte ptr [rbp+src]", "mov esi, 1", "mov byte ptr [rbp+format], 1", "xor ecx, 1", "add edx, edi", "test r11d, r11d", "cmovnz esi, r11d", "cmp r11d, 4", "setnz byte ptr [rbp+n]", "xor edi, edi", "mov [rbp+var_508], esi", "mov esi, 5", "jmp loc_16147"], "succs": [[158, "jump"]]}, {"id": 474, "start": 96715, "end": 96749, "lines": ["mov esi, 30h ; '0'; c", "mov rdi, r15; s", "call cs:memset_ptr", "mov rcx, [rbp+n]", "movzx r8d, byte ptr [rbp+src]", "jmp loc_16C6D"], "succs": [[289, "jump"]]}, {"id": 475, "start": 96749, "end": 96759, "lines": ["cmp r11d, 2", "jz loc_178E5"], "succs": [[465, "jump"], [476, "fall"]]}, {"id": 476, "start": 96759, "end": 96808, "lines": ["cmp r11d, 4", "mov [rbp+var_508], r11d", "mov ecx, 1", "mov esi, 4", "setnz byte ptr [rbp+n]", "xor edi, edi", "mov byte ptr [rbp+format], 0", "mov byte ptr [rbp+src], 0", "jmp loc_16147"], "succs": [[158, "jump"]]}, {"id": 477, "start": 96808, "end": 96863, "lines": ["mov rax, [rbp+var_460]", "mov [r15], rax", "mov eax, r14d", "mov rdi, [rdx+rax-8]", "mov [r15+rax-8], rdi", "lea rdi, [r15+8]", "mov rax, r15", "and rdi, 0FFFFFFFFFFFFFFF8h", "sub rax, rdi", "sub rdx, rax", "add eax, r14d", "and eax, 0FFFFFFF8h", "cmp eax, 8", "jb loc_16AF9"], "succs": [[269, "jump"], [478, "fall"]]}, {"id": 478, "start": 96863, "end": 96871, "lines": ["and eax, 0FFFFFFF8h", "mov r9d, eax", "xor eax, eax"], "succs": [[479, "fall"]]}, {"id": 479, "start": 96871, "end": 96890, "lines": ["mov r8d, eax", "add eax, 8", "mov r10, [rdx+r8]", "mov [rdi+r8], r10", "cmp eax, r9d", "jb short loc_17A67"], "succs": [[480, "fall"], [479, "jump"]]}, {"id": 480, "start": 96890, "end": 96895, "lines": ["jmp loc_16AF9"], "succs": [[269, "jump"]]}, {"id": 481, "start": 96895, "end": 96911, "lines": ["cmp r12, rcx", "cmovb r12, rcx", "cmp r12, rax", "jnb loc_158C0"], "succs": [[67, "jump"], [482, "fall"]]}, {"id": 482, "start": 96911, "end": 96919, "lines": ["add r13, r12", "jmp loc_1552C"], "succs": [[10, "jump"]]}, {"id": 483, "start": 96919, "end": 96944, "lines": ["mov rdi, r15; s", "mov esi, 30h ; '0'; c", "add r15, rdx", "call cs:memset_ptr", "movzx ecx, byte ptr [rbx]", "jmp loc_17379"], "succs": [[393, "jump"]]}, {"id": 484, "start": 96944, "end": 96988, "lines": ["mov rdi, r15; s", "mov esi, 30h ; '0'; c", "add r15, rdx", "call cs:memset_ptr", "mov rdi, [rbp+var_4E0]", "movsxd rax, dword ptr [rdi+4]", "shl rax, 4", "add rax, [rdi+10h]", "mov rsi, [rax]", "jmp loc_16E17"], "succs": [[310, "jump"]]}, {"id": 485, "start": 96988, "end": 96996, "lines": ["movsxd rdi, esi", "jmp loc_1761C"], "succs": [[430, "jump"]]}, {"id": 486, "start": 96996, "end": 97041, "lines": ["mov esi, 30h ; '0'; c", "mov rdi, r15; s", "add r15, rdx", "call cs:memset_ptr", "mov rsi, [rbp+var_4E0]", "movsxd rax, dword ptr [rsi+4]", "shl rax, 4", "add rax, [rsi+10h]", "mov rsi, [rax+8]", "jmp loc_15E22"], "succs": [[124, "jump"]]}, {"id": 487, "start": 97041, "end": 97060, "lines": ["mov esi, 30h ; '0'; c", "mov rdi, r15; s", "call cs:memset_ptr", "jmp loc_16B57"], "succs": [[277, "jump"]]}, {"id": 488, "start": 97060, "end": 97072, "lines": ["add edx, 64h ; 'd'", "test r11d, r11d", "jz loc_15CE0"], "succs": [[110, "jump"], [489, "fall"]]}, {"id": 489, "start": 97072, "end": 97077, "lines": ["jmp loc_17481"], "succs": [[411, "jump"]]}, {"id": 490, "start": 97077, "end": 97094, "lines": ["call cs:__errno_location_ptr", "mov dword ptr [rax], 4Bh ; 'K'", "jmp loc_15754"], "succs": [[49, "jump"]]}, {"id": 491, "start": 97094, "end": 97111, "lines": ["mov r10d, 30h ; '0'", "mov r9d, 30h ; '0'", "jmp loc_1617B"], "succs": [[162, "jump"]]}, {"id": 492, "start": 97111, "end": 97142, "lines": ["mov byte ptr [rbp+src], 0", "mov r10d, 30h ; '0'", "mov esi, 2", "xor edi, edi", "mov r9d, 30h ; '0'", "jmp loc_1617B"], "succs": [[162, "jump"]]}, {"id": 493, "start": 97142, "end": 97148, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 494, "start": 97148, "end": 97171, "lines": ["mov edi, dword ptr [rbp+var_460]", "mov [r15], edi", "mov edx, [rdx+rax-4]", "mov [r15+rax-4], edx", "jmp loc_16AF9"], "succs": [[269, "jump"]]}]}, {"name": "sub_18400", "ea": 99328, "blocks": [{"id": 0, "start": 99328, "end": 99424, "lines": ["push rbp", "mov rbp, rsp", "push r15", "mov r15, rsi", "push r14", "push r13", "push r12", "push rbx", "mov rbx, rdi", "sub rsp, 0B8h", "mov rax, [rbp+arg_0]", "mov [rbp+var_58], rdx", "mov [rbp+var_E0], rdi", "mov r13, [rbp+arg_8]", "mov [rbp+var_7C], r8d", "mov [rbp+var_9C], r9d", "mov [rbp+var_70], rax", "mov r14, fs:28h", "mov [rbp+var_38], r14", "mov r14, [rbp+arg_10]", "mov [rbp+var_D8], r13", "mov [rbp+s], r14", "mov r14, rcx", "xchg ax, ax"], "succs": [[1, "fall"]]}, {"id": 1, "start": 99424, "end": 99501, "lines": ["call cs:__ctype_get_mb_cur_max_ptr", "mov [rbp+var_63], 1", "mov r8, r14", "mov r12, rbx", "mov edx, [rbp+var_9C]", "mov [rbp+var_B0], rax", "mov [rbp+var_7E], 0", "shr edx, 1", "mov [rbp+var_65], 0", "mov eax, edx", "mov [rbp+n], 0", "mov [rbp+s2], 0", "and eax, 1", "mov [rbp+var_61], al", "mov [rbp+var_A8], 0"], "succs": [[2, "fall"]]}, {"id": 2, "start": 99501, "end": 99513, "lines": ["mov eax, [rbp+var_7C]", "cmp eax, 0Ah; switch 11 cases", "ja def_184C7; jumptable 00000000000184C7 default case"], "succs": [[3, "fall"], [423, "jump"]]}, {"id": 3, "start": 99513, "end": 99530, "lines": ["lea rdi, jpt_184C7", "movsxd rax, ds:(jpt_184C7 - 21FC0h)[rdi+rax*4]", "add rax, rdi", "jmp rax; switch jump"], "succs": [[4, "switch"], [118, "switch"], [119, "switch"], [121, "switch"], [122, "switch"], [126, "switch"], [127, "switch"], [131, "switch"], [133, "switch"]]}, {"id": 4, "start": 99536, "end": 99544, "lines": ["mov ebx, [rbp+var_7C]; jumptable 00000000000184C7 cases 8-10", "cmp ebx, 0Ah", "jz short loc_1850A"], "succs": [[5, "fall"], [6, "jump"]]}, {"id": 5, "start": 99544, "end": 99594, "lines": ["mov esi, ebx", "lea rdi, asc_1F9D5; \"`\"", "mov [rbp+var_60], r8", "call sub_18320", "mov esi, ebx", "lea rdi, aInvalidSSArgum+19h; msgid", "mov [rbp+var_D8], rax", "call sub_18320", "mov r8, [rbp+var_60]", "mov [rbp+s], rax"], "succs": [[6, "fall"]]}, {"id": 6, "start": 99594, "end": 99606, "lines": ["xor ebx, ebx", "cmp [rbp+var_61], 0", "jz loc_19A85"], "succs": [[7, "fall"], [394, "jump"]]}, {"id": 7, "start": 99606, "end": 99680, "lines": ["mov r14, [rbp+s]", "mov [rbp+var_60], r8", "mov rdi, r14; s", "call cs:strlen_ptr", "mov [rbp+s2], r14", "mov r8, [rbp+var_60]", "cmp rax, 1", "mov [rbp+n], rax", "mov [rbp+var_66], 0", "mov [rbp+var_67], 0", "mov [rbp+var_64], 0", "mov [rbp+var_9D], 1", "mov [rbp+var_65], 1", "setnz [rbp+var_7D]", "test rax, rax", "setnz [rbp+var_62]", "nop"], "succs": [[8, "fall"]]}, {"id": 8, "start": 99680, "end": 99686, "lines": ["xor r13d, r13d", "xor r11d, r11d"], "succs": [[9, "fall"]]}, {"id": 9, "start": 99686, "end": 99703, "lines": ["cmp r8, r13", "setnz r14b", "cmp r8, 0FFFFFFFFFFFFFFFFh", "jz loc_18693"], "succs": [[10, "fall"], [39, "jump"]]}, {"id": 10, "start": 99703, "end": 99712, "lines": ["nop word ptr [rax+rax+00000000h]"], "succs": [[11, "fall"]]}, {"id": 11, "start": 99712, "end": 99721, "lines": ["test r14b, r14b", "jz loc_186B0"], "succs": [[12, "fall"], [40, "jump"]]}, {"id": 12, "start": 99721, "end": 99739, "lines": ["mov rax, [rbp+var_58]", "lea r10, [rax+r13]", "cmp [rbp+var_62], 0", "jnz loc_18C90"], "succs": [[13, "fall"], [134, "jump"]]}, {"id": 13, "start": 99739, "end": 99753, "lines": ["movzx r9d, byte ptr [r10]", "cmp r9b, 3Fh ; '?'", "jg loc_190A0"], "succs": [[14, "fall"], [191, "jump"]]}, {"id": 14, "start": 99753, "end": 99762, "lines": ["test r9b, r9b", "js def_185CE; jumptable 00000000000185CE default case, cases 1-6,14-31"], "succs": [[15, "fall"], [47, "jump"]]}, {"id": 15, "start": 99762, "end": 99772, "lines": ["cmp r9b, 3Fh; switch 64 cases", "ja def_185CE; jumptable 00000000000185CE default case, cases 1-6,14-31"], "succs": [[16, "fall"], [47, "jump"]]}, {"id": 16, "start": 99772, "end": 99793, "lines": ["lea rsi, jpt_185CE", "movzx eax, r9b", "movsxd rax, ds:(jpt_185CE - 21FECh)[rsi+rax*4]", "add rax, rsi", "jmp rax; switch jump"], "succs": [[17, "switch"], [47, "switch"], [63, "switch"], [68, "switch"], [73, "switch"], [74, "switch"], [75, "switch"], [77, "switch"], [82, "switch"], [86, "switch"], [88, "switch"], [108, "switch"], [109, "switch"], [112, "switch"], [114, "switch"]]}, {"id": 17, "start": 99800, "end": 99810, "lines": ["cmp [rbp+var_66], 0; jumptable 00000000000185CE cases 37,43-58", "jnz loc_19390"], "succs": [[18, "fall"], [253, "jump"]]}, {"id": 18, "start": 99810, "end": 99821, "lines": ["cmp [rbp+var_70], 0", "jz loc_192E0"], "succs": [[19, "fall"], [237, "jump"]]}, {"id": 19, "start": 99821, "end": 99828, "lines": ["mov byte ptr [rbp+var_60], 0", "mov edx, r14d"], "succs": [[20, "fall"]]}, {"id": 20, "start": 99828, "end": 99847, "lines": ["mov eax, r9d", "mov esi, r9d", "shr al, 5", "and esi, 1Fh", "movzx eax, al", "shl rax, 2"], "succs": [[21, "fall"]]}, {"id": 21, "start": 99847, "end": 99863, "lines": ["mov rdi, [rbp+var_70]", "mov eax, [rdi+rax]", "bt eax, esi", "jnb loc_18798"], "succs": [[22, "fall"], [54, "jump"]]}, {"id": 22, "start": 99863, "end": 99873, "lines": ["cmp [rbp+var_61], 0", "jnz loc_192CA"], "succs": [[23, "fall"], [236, "jump"]]}, {"id": 23, "start": 99873, "end": 99877, "lines": ["lea rcx, [r13+1]"], "succs": [[24, "fall"]]}, {"id": 24, "start": 99877, "end": 99892, "lines": ["and [rbp+var_63], dl", "mov eax, r11d", "mov r13, rcx", "xor eax, 1", "and al, [rbp+var_64]"], "succs": [[25, "fall"]]}, {"id": 25, "start": 99892, "end": 99896, "lines": ["test al, al", "jz short loc_18667"], "succs": [[26, "fall"], [33, "jump"]]}, {"id": 26, "start": 99896, "end": 99901, "lines": ["cmp rbx, r15", "jnb short loc_18642"], "succs": [[27, "fall"], [28, "jump"]]}, {"id": 27, "start": 99901, "end": 99906, "lines": ["mov byte ptr [r12+rbx], 27h ; '''"], "succs": [[28, "fall"]]}, {"id": 28, "start": 99906, "end": 99915, "lines": ["lea rax, [rbx+1]", "cmp rax, r15", "jnb short loc_18651"], "succs": [[29, "fall"], [30, "jump"]]}, {"id": 29, "start": 99915, "end": 99921, "lines": ["mov byte ptr [r12+rbx+1], 24h ; '$'"], "succs": [[30, "fall"]]}, {"id": 30, "start": 99921, "end": 99930, "lines": ["lea rax, [rbx+2]", "cmp rax, r15", "jnb short loc_18660"], "succs": [[31, "fall"], [32, "jump"]]}, {"id": 31, "start": 99930, "end": 99936, "lines": ["mov byte ptr [r12+rbx+2], 27h ; '''"], "succs": [[32, "fall"]]}, {"id": 32, "start": 99936, "end": 99943, "lines": ["add rbx, 3", "mov r11d, r14d"], "succs": [[33, "fall"]]}, {"id": 33, "start": 99943, "end": 99948, "lines": ["cmp rbx, r15", "jnb short loc_18671"], "succs": [[34, "fall"], [35, "jump"]]}, {"id": 34, "start": 99948, "end": 99953, "lines": ["mov byte ptr [r12+rbx], 5Ch ; '\\'"], "succs": [[35, "fall"]]}, {"id": 35, "start": 99953, "end": 99957, "lines": ["add rbx, 1"], "succs": [[36, "fall"]]}, {"id": 36, "start": 99957, "end": 99962, "lines": ["cmp rbx, r15", "jnb short loc_1867E"], "succs": [[37, "fall"], [38, "jump"]]}, {"id": 37, "start": 99962, "end": 99966, "lines": ["mov [r12+rbx], r9b"], "succs": [[38, "fall"]]}, {"id": 38, "start": 99966, "end": 99987, "lines": ["add rbx, 1", "cmp r8, r13", "setnz r14b", "cmp r8, 0FFFFFFFFFFFFFFFFh", "jnz loc_18580"], "succs": [[11, "jump"], [39, "fall"]]}, {"id": 39, "start": 99987, "end": 100016, "lines": ["mov rax, [rbp+var_58]", "mov r8, 0FFFFFFFFFFFFFFFFh", "cmp byte ptr [rax+r13], 0", "setnz r14b", "test r14b, r14b", "jnz loc_18589"], "succs": [[12, "jump"], [40, "fall"]]}, {"id": 40, "start": 100016, "end": 100025, "lines": ["test rbx, rbx", "jnz loc_19630"], "succs": [[41, "fall"], [307, "jump"]]}, {"id": 41, "start": 100025, "end": 100035, "lines": ["cmp [rbp+var_64], 0", "jz loc_19630"], "succs": [[42, "fall"], [307, "jump"]]}, {"id": 42, "start": 100035, "end": 100045, "lines": ["cmp [rbp+var_61], 0", "jnz loc_187EC"], "succs": [[43, "fall"], [65, "jump"]]}, {"id": 43, "start": 100045, "end": 100055, "lines": ["cmp [rbp+var_7E], 0", "jz loc_19B8F"], "succs": [[44, "fall"], [414, "jump"]]}, {"id": 44, "start": 100055, "end": 100065, "lines": ["cmp [rbp+var_63], 0", "jnz loc_19B76"], "succs": [[45, "fall"], [413, "jump"]]}, {"id": 45, "start": 100065, "end": 100090, "lines": ["test r15, r15", "setz al", "cmp [rbp+var_A8], 0", "setnz dl", "and al, dl", "jz loc_19B6A"], "succs": [[46, "fall"], [412, "jump"]]}, {"id": 46, "start": 100090, "end": 100109, "lines": ["mov [rbp+var_7E], al", "mov r15, [rbp+var_A8]", "mov [rbp+var_61], 0", "jmp loc_184AD"], "succs": [[2, "jump"]]}, {"id": 47, "start": 100112, "end": 100116, "lines": ["mov byte ptr [rbp+var_60], 0; jumptable 00000000000185CE default case, cases 1-6,14-31"], "succs": [[48, "fall"]]}, {"id": 48, "start": 100116, "end": 100130, "lines": ["cmp [rbp+var_B0], 1", "jnz loc_18D9D"], "succs": [[49, "fall"], [148, "jump"]]}, {"id": 49, "start": 100130, "end": 100214, "lines": ["mov [rbp+var_B8], r8", "mov byte ptr [rbp+var_90], r11b", "mov byte ptr [rbp+var_88], r9b", "call cs:__ctype_b_loc_ptr", "movzx r11d, byte ptr [rbp+var_90]", "mov ecx, 1", "mov r8, [rbp+var_B8]", "mov rdx, rax", "movzx eax, byte ptr [rbp+var_88]", "mov rdx, [rdx]", "mov r9, rax", "movzx edx, word ptr [rdx+rax*2]", "and dx, 4000h", "shr dx, 0Eh", "mov eax, edx", "xor eax, 1", "and al, [rbp+var_65]"], "succs": [[50, "fall"]]}, {"id": 50, "start": 100214, "end": 100222, "lines": ["test al, al", "jnz loc_194A0"], "succs": [[51, "fall"], [273, "jump"]]}, {"id": 51, "start": 100222, "end": 100224, "lines": ["xchg ax, ax"], "succs": [[52, "fall"]]}, {"id": 52, "start": 100224, "end": 100237, "lines": ["mov ecx, r9d", "cmp [rbp+var_66], 0", "jnz loc_1884C"], "succs": [[53, "fall"], [70, "jump"]]}, {"id": 53, "start": 100237, "end": 100248, "lines": ["cmp [rbp+var_70], 0", "jnz loc_185F4"], "succs": [[20, "jump"], [54, "fall"]]}, {"id": 54, "start": 100248, "end": 100250, "lines": ["xor eax, eax"], "succs": [[55, "fall"]]}, {"id": 55, "start": 100250, "end": 100260, "lines": ["cmp byte ptr [rbp+var_60], 0", "jnz loc_18617"], "succs": [[22, "jump"], [56, "fall"]]}, {"id": 56, "start": 100260, "end": 100273, "lines": ["and [rbp+var_63], dl", "xor eax, 1", "add r13, 1", "and eax, r11d"], "succs": [[57, "fall"]]}, {"id": 57, "start": 100273, "end": 100281, "lines": ["test al, al", "jz loc_18675"], "succs": [[36, "jump"], [58, "fall"]]}, {"id": 58, "start": 100281, "end": 100286, "lines": ["cmp rbx, r15", "jnb short loc_187C3"], "succs": [[59, "fall"], [60, "jump"]]}, {"id": 59, "start": 100286, "end": 100291, "lines": ["mov byte ptr [r12+rbx], 27h ; '''"], "succs": [[60, "fall"]]}, {"id": 60, "start": 100291, "end": 100300, "lines": ["lea rax, [rbx+1]", "cmp rax, r15", "jnb short loc_187D2"], "succs": [[61, "fall"], [62, "jump"]]}, {"id": 61, "start": 100300, "end": 100306, "lines": ["mov byte ptr [r12+rbx+1], 27h ; '''"], "succs": [[62, "fall"]]}, {"id": 62, "start": 100306, "end": 100318, "lines": ["add rbx, 2", "xor r11d, r11d", "jmp loc_18675"], "succs": [[36, "jump"]]}, {"id": 63, "start": 100320, "end": 100326, "lines": ["mov byte ptr [rbp+var_60], 0; jumptable 00000000000185CE cases 33,34,36,38,40-42,59-62", "xor edx, edx"], "succs": [[64, "fall"]]}, {"id": 64, "start": 100326, "end": 100332, "lines": ["cmp [rbp+var_67], 0", "jz short loc_18780"], "succs": [[52, "jump"], [65, "fall"]]}, {"id": 65, "start": 100332, "end": 100352, "lines": ["mov [rbp+var_7C], 2", "mov r14, r8", "mov rbx, r12", "nop dword ptr [rax+00000000h]"], "succs": [[66, "fall"]]}, {"id": 66, "start": 100352, "end": 100368, "lines": ["cmp [rbp+var_65], 0", "mov eax, 4", "cmovz eax, [rbp+var_7C]", "mov [rbp+var_7C], eax"], "succs": [[67, "fall"]]}, {"id": 67, "start": 100368, "end": 100388, "lines": ["and [rbp+var_9C], 0FFFFFFFDh", "mov [rbp+var_70], 0", "jmp loc_18460"], "succs": [[1, "jump"]]}, {"id": 68, "start": 100392, "end": 100416, "lines": ["mov byte ptr [rbp+var_60], 0; jumptable 00000000000185CE case 12", "mov ecx, 0Ch", "mov r9d, 66h ; 'f'", "nop word ptr [rax+rax+00000000h]"], "succs": [[69, "fall"]]}, {"id": 69, "start": 100416, "end": 100428, "lines": ["xor edx, edx", "cmp [rbp+var_65], 0", "jnz loc_18617"], "succs": [[22, "jump"], [70, "fall"]]}, {"id": 70, "start": 100428, "end": 100438, "lines": ["cmp [rbp+var_61], 0", "jz loc_18FE0"], "succs": [[71, "fall"], [178, "jump"]]}, {"id": 71, "start": 100438, "end": 100449, "lines": ["cmp [rbp+var_70], 0", "jz loc_192C0"], "succs": [[72, "fall"], [235, "jump"]]}, {"id": 72, "start": 100449, "end": 100474, "lines": ["mov eax, ecx", "mov esi, ecx", "mov r9d, ecx", "shr al, 5", "and esi, 1Fh", "movzx eax, al", "shl rax, 2", "jmp loc_18607"], "succs": [[21, "jump"]]}, {"id": 73, "start": 100480, "end": 100497, "lines": ["mov byte ptr [rbp+var_60], 0; jumptable 00000000000185CE case 11", "mov ecx, 0Bh", "mov r9d, 76h ; 'v'", "jmp short loc_18840"], "succs": [[69, "jump"]]}, {"id": 74, "start": 100504, "end": 100521, "lines": ["mov byte ptr [rbp+var_60], 0; jumptable 00000000000185CE case 8", "mov ecx, 8", "mov r9d, 62h ; 'b'", "jmp short loc_18840"], "succs": [[69, "jump"]]}, {"id": 75, "start": 100528, "end": 100538, "lines": ["cmp [rbp+var_7C], 2; jumptable 00000000000185CE case 39", "jz loc_193D0"], "succs": [[76, "fall"], [259, "jump"]]}, {"id": 76, "start": 100538, "end": 100560, "lines": ["mov [rbp+var_7E], r14b", "mov edx, r14d", "mov r9d, 27h ; '''", "mov byte ptr [rbp+var_60], 0", "jmp loc_18780"], "succs": [[52, "jump"]]}, {"id": 77, "start": 100560, "end": 100570, "lines": ["cmp [rbp+var_65], 0; jumptable 00000000000185CE case 0", "jnz loc_191B8; jumptable 000000000001914B case 0"], "succs": [[78, "fall"], [212, "jump"]]}, {"id": 78, "start": 100570, "end": 100583, "lines": ["test byte ptr [rbp+var_9C], 1", "jnz loc_196EB"], "succs": [[79, "fall"], [324, "jump"]]}, {"id": 79, "start": 100583, "end": 100593, "lines": ["cmp [rbp+var_61], 0", "jz loc_1970F"], "succs": [[80, "fall"], [327, "jump"]]}, {"id": 80, "start": 100593, "end": 100604, "lines": ["cmp [rbp+var_70], 0", "jz loc_198AB"], "succs": [[81, "fall"], [354, "jump"]]}, {"id": 81, "start": 100604, "end": 100617, "lines": ["mov byte ptr [rbp+var_60], 0", "xor edx, edx", "xor ecx, ecx", "jmp loc_18861"], "succs": [[72, "jump"]]}, {"id": 82, "start": 100624, "end": 100628, "lines": ["mov byte ptr [rbp+var_60], 0; jumptable 00000000000185CE case 13"], "succs": [[83, "fall"]]}, {"id": 83, "start": 100628, "end": 100639, "lines": ["mov ecx, 0Dh", "mov r9d, 72h ; 'r'"], "succs": [[84, "fall"]]}, {"id": 84, "start": 100639, "end": 100649, "lines": ["cmp [rbp+var_67], 0", "jz loc_18840"], "succs": [[69, "jump"], [85, "fall"]]}, {"id": 85, "start": 100649, "end": 100654, "lines": ["jmp loc_187EC"], "succs": [[65, "jump"]]}, {"id": 86, "start": 100656, "end": 100660, "lines": ["mov byte ptr [rbp+var_60], 0; jumptable 00000000000185CE case 9"], "succs": [[87, "fall"]]}, {"id": 87, "start": 100660, "end": 100673, "lines": ["mov ecx, 9", "mov r9d, 74h ; 't'", "jmp short loc_1891F"], "succs": [[84, "jump"]]}, {"id": 88, "start": 100680, "end": 100694, "lines": ["mov byte ptr [rbp+var_60], 0; jumptable 00000000000185CE case 63", "cmp [rbp+var_7C], 2", "jz loc_1984E"], "succs": [[89, "fall"], [350, "jump"]]}, {"id": 89, "start": 100694, "end": 100704, "lines": ["cmp [rbp+var_7C], 5", "jnz loc_19320"], "succs": [[90, "fall"], [244, "jump"]]}, {"id": 90, "start": 100704, "end": 100717, "lines": ["test byte ptr [rbp+var_9C], 4", "jz loc_19320"], "succs": [[91, "fall"], [244, "jump"]]}, {"id": 91, "start": 100717, "end": 100738, "lines": ["lea rsi, [r13+2]", "mov r9d, 3Fh ; '?'", "xor edx, edx", "cmp rsi, r8", "jnb loc_18780"], "succs": [[52, "jump"], [92, "fall"]]}, {"id": 92, "start": 100738, "end": 100754, "lines": ["mov rax, [rbp+var_58]", "cmp byte ptr [rax+r13+1], 3Fh ; '?'", "jnz loc_18780"], "succs": [[52, "jump"], [93, "fall"]]}, {"id": 93, "start": 100754, "end": 100771, "lines": ["movzx ecx, byte ptr [rax+r13+2]", "lea eax, [rcx-21h]", "cmp al, 1Dh", "ja loc_18780"], "succs": [[52, "jump"], [94, "fall"]]}, {"id": 94, "start": 100771, "end": 100791, "lines": ["mov edx, 380051C1h", "bt rdx, rax", "setb dl", "test dl, dl", "jz loc_18780"], "succs": [[52, "jump"], [95, "fall"]]}, {"id": 95, "start": 100791, "end": 100801, "lines": ["cmp [rbp+var_61], 0", "jnz loc_19107"], "succs": [[96, "fall"], [199, "jump"]]}, {"id": 96, "start": 100801, "end": 100806, "lines": ["cmp rbx, r15", "jnb short loc_189CB"], "succs": [[97, "fall"], [98, "jump"]]}, {"id": 97, "start": 100806, "end": 100811, "lines": ["mov byte ptr [r12+rbx], 3Fh ; '?'"], "succs": [[98, "fall"]]}, {"id": 98, "start": 100811, "end": 100820, "lines": ["lea rax, [rbx+1]", "cmp rax, r15", "jnb short loc_189DA"], "succs": [[99, "fall"], [100, "jump"]]}, {"id": 99, "start": 100820, "end": 100826, "lines": ["mov byte ptr [r12+rbx+1], 22h ; '\"'"], "succs": [[100, "fall"]]}, {"id": 100, "start": 100826, "end": 100835, "lines": ["lea rax, [rbx+2]", "cmp rax, r15", "jnb short loc_189E9"], "succs": [[101, "fall"], [102, "jump"]]}, {"id": 101, "start": 100835, "end": 100841, "lines": ["mov byte ptr [r12+rbx+2], 22h ; '\"'"], "succs": [[102, "fall"]]}, {"id": 102, "start": 100841, "end": 100850, "lines": ["lea rax, [rbx+3]", "cmp rax, r15", "jnb short loc_189F8"], "succs": [[103, "fall"], [104, "jump"]]}, {"id": 103, "start": 100850, "end": 100856, "lines": ["mov byte ptr [r12+rbx+3], 3Fh ; '?'"], "succs": [[104, "fall"]]}, {"id": 104, "start": 100856, "end": 100870, "lines": ["add rbx, 4", "cmp [rbp+var_65], 0", "jnz loc_19B1B"], "succs": [[105, "fall"], [406, "jump"]]}, {"id": 105, "start": 100870, "end": 100893, "lines": ["mov r13, rsi", "mov [rbp+var_63], 0", "xor eax, eax", "add r13, 1", "cmp byte ptr [rbp+var_60], 0", "jnz loc_18FF3"], "succs": [[106, "fall"], [180, "jump"]]}, {"id": 106, "start": 100893, "end": 100896, "lines": ["nop dword ptr [rax]"], "succs": [[107, "fall"]]}, {"id": 107, "start": 100896, "end": 100910, "lines": ["xor eax, 1", "mov r9d, ecx", "and eax, r11d", "jmp loc_187B1"], "succs": [[57, "jump"]]}, {"id": 108, "start": 100910, "end": 100930, "lines": ["mov byte ptr [rbp+var_60], 0; jumptable 00000000000185CE case 10", "mov ecx, 0Ah", "mov r9d, 6Eh ; 'n'", "jmp loc_1891F"], "succs": [[84, "jump"]]}, {"id": 109, "start": 100930, "end": 100944, "lines": ["mov byte ptr [rbp+var_60], 0; jumptable 00000000000185CE case 35", "mov r9d, 23h ; '#'", "nop dword ptr [rax+00h]"], "succs": [[110, "fall"]]}, {"id": 110, "start": 100944, "end": 100949, "lines": ["test r13, r13", "jz short loc_18A70"], "succs": [[111, "fall"], [113, "jump"]]}, {"id": 111, "start": 100949, "end": 100956, "lines": ["xor edx, edx", "jmp loc_18780"], "succs": [[52, "jump"]]}, {"id": 112, "start": 100956, "end": 100976, "lines": ["mov byte ptr [rbp+var_60], 0; jumptable 00000000000185CE case 32", "mov r9d, 20h ; ' '", "nop word ptr [rax+rax+00000000h]"], "succs": [[113, "fall"]]}, {"id": 113, "start": 100976, "end": 100984, "lines": ["mov edx, r14d", "jmp loc_187E6"], "succs": [[64, "jump"]]}, {"id": 114, "start": 100984, "end": 100994, "lines": ["cmp [rbp+var_65], 0; jumptable 00000000000185CE case 7", "jnz loc_198C1"], "succs": [[115, "fall"], [355, "jump"]]}, {"id": 115, "start": 100994, "end": 101004, "lines": ["cmp [rbp+var_61], 0", "jz loc_1988E"], "succs": [[116, "fall"], [353, "jump"]]}, {"id": 116, "start": 101004, "end": 101015, "lines": ["cmp [rbp+var_70], 0", "jz loc_19ADC"], "succs": [[117, "fall"], [402, "jump"]]}, {"id": 117, "start": 101015, "end": 101031, "lines": ["mov byte ptr [rbp+var_60], 0", "xor edx, edx", "mov ecx, 7", "jmp loc_18861"], "succs": [[72, "jump"]]}, {"id": 118, "start": 101031, "end": 101102, "lines": ["lea rax, asc_1F9D3; jumptable 00000000000184C7 case 6", "mov [rbp+var_62], 1", "xor ebx, ebx", "mov [rbp+var_66], 0", "mov [rbp+var_67], 0", "mov [rbp+var_64], 0", "mov [rbp+var_7D], 0", "mov [rbp+var_9D], 1", "mov [rbp+var_61], 1", "mov [rbp+var_65], 1", "mov [rbp+n], 1", "mov [rbp+s2], rax", "mov [rbp+var_7C], 5", "jmp loc_18560"], "succs": [[8, "jump"]]}, {"id": 119, "start": 101102, "end": 101133, "lines": ["mov [rbp+var_62], 0; jumptable 00000000000184C7 case 1", "mov [rbp+var_66], 1", "mov [rbp+var_67], 1", "mov [rbp+var_64], 1", "mov [rbp+var_7D], 0", "mov [rbp+var_9D], 0", "mov [rbp+var_61], 1"], "succs": [[120, "fall"]]}, {"id": 120, "start": 101133, "end": 101169, "lines": ["lea rax, aInvalidSSArgum+19h; \"'\"", "mov [rbp+n], 1", "xor ebx, ebx", "mov [rbp+s2], rax", "mov [rbp+var_7C], 2", "jmp loc_18560"], "succs": [[8, "jump"]]}, {"id": 121, "start": 101169, "end": 101229, "lines": ["movzx ecx, [rbp+var_65]; jumptable 00000000000184C7 case 0", "mov rdi, [rbp+n]", "mov [rbp+var_67], 0", "mov [rbp+var_64], 0", "cmp rdi, 1", "mov eax, ecx", "mov [rbp+var_9D], cl", "setnz [rbp+var_7D]", "xor eax, 1", "test rdi, rdi", "mov [rbp+var_66], al", "setnz al", "xor ebx, ebx", "and eax, ecx", "mov [rbp+var_61], 0", "mov [rbp+var_62], al", "jmp loc_18560"], "succs": [[8, "jump"]]}, {"id": 122, "start": 101229, "end": 101239, "lines": ["cmp [rbp+var_61], 0; jumptable 00000000000184C7 case 2", "jnz loc_19982"], "succs": [[123, "fall"], [372, "jump"]]}, {"id": 123, "start": 101239, "end": 101244, "lines": ["test r15, r15", "jz short loc_18B81"], "succs": [[124, "fall"], [125, "jump"]]}, {"id": 124, "start": 101244, "end": 101249, "lines": ["mov byte ptr [r12], 27h ; '''"], "succs": [[125, "fall"]]}, {"id": 125, "start": 101249, "end": 101319, "lines": ["lea rax, aInvalidSSArgum+19h; \"'\"", "mov [rbp+var_62], 0", "mov ebx, 1", "mov [rbp+var_66], 1", "mov [rbp+var_67], 0", "mov [rbp+var_64], 1", "mov [rbp+var_7D], 0", "mov [rbp+var_9D], 0", "mov [rbp+var_61], 0", "mov [rbp+n], 1", "mov [rbp+s2], rax", "mov [rbp+var_7C], 2", "jmp loc_18560"], "succs": [[8, "jump"]]}, {"id": 126, "start": 101319, "end": 101372, "lines": ["mov rax, [rbp+n]; jumptable 00000000000184C7 case 7", "mov [rbp+var_66], 0", "mov [rbp+var_67], 0", "cmp rax, 1", "mov [rbp+var_64], 0", "setnz [rbp+var_7D]", "test rax, rax", "setnz [rbp+var_62]", "xor ebx, ebx", "mov [rbp+var_9D], 1", "mov [rbp+var_61], 0", "mov [rbp+var_65], 1", "jmp loc_18560"], "succs": [[8, "jump"]]}, {"id": 127, "start": 101372, "end": 101382, "lines": ["cmp [rbp+var_61], 0; jumptable 00000000000184C7 case 5", "jnz loc_18AA7; jumptable 00000000000184C7 case 6"], "succs": [[118, "jump"], [128, "fall"]]}, {"id": 128, "start": 101382, "end": 101387, "lines": ["test r15, r15", "jz short loc_18C10"], "succs": [[129, "fall"], [130, "jump"]]}, {"id": 129, "start": 101387, "end": 101392, "lines": ["mov byte ptr [r12], 22h ; '\"'"], "succs": [[130, "fall"]]}, {"id": 130, "start": 101392, "end": 101455, "lines": ["lea rax, asc_1F9D3; \"\\\"\"", "mov [rbp+var_66], 0", "mov ebx, 1", "mov [rbp+var_67], 0", "mov [rbp+var_64], 0", "mov [rbp+var_7D], 0", "mov [rbp+var_62], 1", "mov [rbp+var_9D], 1", "mov [rbp+var_65], 1", "mov [rbp+n], 1", "mov [rbp+s2], rax", "jmp loc_18560"], "succs": [[8, "jump"]]}, {"id": 131, "start": 101455, "end": 101465, "lines": ["cmp [rbp+var_61], 0; jumptable 00000000000184C7 case 4", "jnz loc_18AEE; jumptable 00000000000184C7 case 1"], "succs": [[119, "jump"], [132, "fall"]]}, {"id": 132, "start": 101465, "end": 101474, "lines": ["mov [rbp+var_65], 1", "jmp loc_18B77"], "succs": [[123, "jump"]]}, {"id": 133, "start": 101474, "end": 101514, "lines": ["mov [rbp+var_62], 0; jumptable 00000000000184C7 case 3", "mov [rbp+var_66], 1", "mov [rbp+var_67], 1", "mov [rbp+var_64], 1", "mov [rbp+var_7D], 0", "mov [rbp+var_9D], 0", "mov [rbp+var_61], 1", "mov [rbp+var_65], 1", "jmp loc_18B0D"], "succs": [[120, "jump"]]}, {"id": 134, "start": 101520, "end": 101534, "lines": ["mov rax, [rbp+n]", "lea rdx, [rax+r13]", "cmp r8, 0FFFFFFFFFFFFFFFFh", "jnz short loc_18CD6"], "succs": [[135, "fall"], [137, "jump"]]}, {"id": 135, "start": 101534, "end": 101540, "lines": ["cmp [rbp+var_7D], 0", "jz short loc_18CD6"], "succs": [[136, "fall"], [137, "jump"]]}, {"id": 136, "start": 101540, "end": 101590, "lines": ["mov byte ptr [rbp+var_90], r11b", "mov rdi, [rbp+var_58]; s", "mov [rbp+var_88], r10", "mov [rbp+var_60], rdx", "call cs:strlen_ptr", "mov r10, [rbp+var_88]", "mov rdx, [rbp+var_60]", "movzx r11d, byte ptr [rbp+var_90]", "mov r8, rax"], "succs": [[137, "fall"]]}, {"id": 137, "start": 101590, "end": 101599, "lines": ["cmp r8, rdx", "jb loc_19118"], "succs": [[138, "fall"], [200, "jump"]]}, {"id": 138, "start": 101599, "end": 101664, "lines": ["mov [rbp+var_90], r8", "mov rdi, r10; s1", "mov rdx, [rbp+n]; n", "mov byte ptr [rbp+var_88], r11b", "mov rsi, [rbp+s2]; s2", "mov [rbp+var_60], r10", "call cs:memcmp_ptr", "mov r10, [rbp+var_60]", "movzx r11d, byte ptr [rbp+var_88]", "test eax, eax", "mov r8, [rbp+var_90]", "jnz loc_19150"], "succs": [[139, "fall"], [204, "jump"]]}, {"id": 139, "start": 101664, "end": 101674, "lines": ["cmp [rbp+var_61], 0", "jnz loc_19729"], "succs": [[140, "fall"], [328, "jump"]]}, {"id": 140, "start": 101674, "end": 101688, "lines": ["movzx r9d, byte ptr [r10]", "cmp r9b, 3Fh ; '?'", "jg loc_19580"], "succs": [[141, "fall"], [296, "jump"]]}, {"id": 141, "start": 101688, "end": 101693, "lines": ["test r9b, r9b", "js short def_18D55; jumptable 0000000000018D55 default case, cases 1-6,14-31"], "succs": [[142, "fall"], [147, "jump"]]}, {"id": 142, "start": 101693, "end": 101699, "lines": ["cmp r9b, 3Fh; switch 64 cases", "ja short def_18D55; jumptable 0000000000018D55 default case, cases 1-6,14-31"], "succs": [[143, "fall"], [147, "jump"]]}, {"id": 143, "start": 101699, "end": 101720, "lines": ["lea rdx, jpt_18D55", "movzx eax, r9b", "movsxd rax, ds:(jpt_18D55 - 220ECh)[rdx+rax*4]", "add rax, rdx", "jmp rax; switch jump"], "succs": [[144, "switch"], [147, "switch"], [158, "switch"], [160, "switch"], [161, "switch"], [162, "switch"], [163, "switch"], [164, "switch"], [165, "switch"], [176, "switch"], [181, "switch"], [183, "switch"], [185, "switch"], [187, "switch"], [189, "switch"]]}, {"id": 144, "start": 101728, "end": 101738, "lines": ["cmp [rbp+var_66], 0; jumptable 0000000000018D55 cases 37,43-58", "jnz loc_19A79"], "succs": [[145, "fall"], [393, "jump"]]}, {"id": 145, "start": 101738, "end": 101753, "lines": ["movzx edx, [rbp+var_62]", "cmp [rbp+var_70], 0", "jz loc_18621"], "succs": [[23, "jump"], [146, "fall"]]}, {"id": 146, "start": 101753, "end": 101761, "lines": ["mov byte ptr [rbp+var_60], dl", "jmp loc_185F4"], "succs": [[20, "jump"]]}, {"id": 147, "start": 101768, "end": 101789, "lines": ["movzx eax, [rbp+var_62]; jumptable 0000000000018D55 default case, cases 1-6,14-31", "mov byte ptr [rbp+var_60], al", "cmp [rbp+var_B0], 1", "jz loc_18722"], "succs": [[49, "jump"], [148, "fall"]]}, {"id": 148, "start": 101789, "end": 101807, "lines": ["mov [rbp+var_40], 0", "lea rcx, [rbp+var_40]", "cmp r8, 0FFFFFFFFFFFFFFFFh", "jnz short loc_18DF6"], "succs": [[149, "fall"], [150, "jump"]]}, {"id": 149, "start": 101807, "end": 101878, "lines": ["mov byte ptr [rbp+var_C0], r11b", "mov rdi, [rbp+var_58]; s", "mov [rbp+var_B8], rcx", "mov [rbp+var_90], r10", "mov byte ptr [rbp+var_88], r9b", "call cs:strlen_ptr", "movzx r11d, byte ptr [rbp+var_C0]", "mov rcx, [rbp+var_B8]", "mov r10, [rbp+var_90]", "movzx r9d, byte ptr [rbp+var_88]", "mov r8, rax"], "succs": [[150, "fall"]]}, {"id": 150, "start": 101878, "end": 101970, "lines": ["mov rax, r8", "mov byte ptr [rbp+var_B8], r11b", "lea rdi, [rbp+wc]; pc32", "mov rsi, r10; s", "sub rax, r13", "mov byte ptr [rbp+var_90], r9b", "mov [rbp+var_88], r8", "mov rdx, rax", "mov [rbp+var_C8], rax", "mov [rbp+var_C0], r10", "call sub_144B0", "mov r8, [rbp+var_88]", "movzx r9d, byte ptr [rbp+var_90]", "test rax, rax", "movzx r11d, byte ptr [rbp+var_B8]", "mov rcx, rax", "jz loc_18ED0"], "succs": [[151, "fall"], [157, "jump"]]}, {"id": 151, "start": 101970, "end": 101987, "lines": ["cmp rax, 0FFFFFFFFFFFFFFFFh", "mov r10, [rbp+var_C0]", "jz loc_197FA"], "succs": [[152, "fall"], [342, "jump"]]}, {"id": 152, "start": 101987, "end": 101997, "lines": ["cmp rax, 0FFFFFFFFFFFFFFFEh", "jz loc_19807"], "succs": [[153, "fall"], [343, "jump"]]}, {"id": 153, "start": 101997, "end": 102007, "lines": ["cmp [rbp+var_67], 0", "jnz loc_1993D"], "succs": [[154, "fall"], [366, "jump"]]}, {"id": 154, "start": 102007, "end": 102082, "lines": ["mov [rbp+var_C0], r8", "mov edi, [rbp+wc]; wc", "mov byte ptr [rbp+var_B8], r11b", "mov byte ptr [rbp+var_90], r9b", "mov [rbp+var_88], rax", "call cs:iswprint_ptr", "mov rcx, [rbp+var_88]", "movzx r9d, byte ptr [rbp+var_90]", "test eax, eax", "movzx r11d, byte ptr [rbp+var_B8]", "mov r8, [rbp+var_C0]", "jz loc_19830"], "succs": [[155, "fall"], [347, "jump"]]}, {"id": 155, "start": 102082, "end": 102092, "lines": ["cmp rcx, 1", "jnz loc_19B14"], "succs": [[156, "fall"], [405, "jump"]]}, {"id": 156, "start": 102092, "end": 102096, "lines": ["nop dword ptr [rax+00h]"], "succs": [[157, "fall"]]}, {"id": 157, "start": 102096, "end": 102104, "lines": ["mov edx, r14d", "jmp loc_18780"], "succs": [[52, "jump"]]}, {"id": 158, "start": 102104, "end": 102111, "lines": ["movzx eax, [rbp+var_62]; jumptable 0000000000018D55 cases 33,34,36,38,40-42,59-62", "mov byte ptr [rbp+var_60], al"], "succs": [[159, "fall"]]}, {"id": 159, "start": 102111, "end": 102118, "lines": ["xor edx, edx", "jmp loc_187E6"], "succs": [[64, "jump"]]}, {"id": 160, "start": 102118, "end": 102136, "lines": ["movzx eax, [rbp+var_62]; jumptable 0000000000018D55 case 35", "mov r9d, 23h ; '#'", "mov byte ptr [rbp+var_60], al", "jmp loc_18A50"], "succs": [[110, "jump"]]}, {"id": 161, "start": 102136, "end": 102157, "lines": ["movzx eax, [rbp+var_62]; jumptable 0000000000018D55 case 32", "mov r9d, 20h ; ' '", "mov edx, r14d", "mov byte ptr [rbp+var_60], al", "jmp loc_187E6"], "succs": [[64, "jump"]]}, {"id": 162, "start": 102157, "end": 102169, "lines": ["movzx eax, [rbp+var_62]; jumptable 0000000000018D55 case 13", "mov byte ptr [rbp+var_60], al", "jmp loc_18914"], "succs": [[83, "jump"]]}, {"id": 163, "start": 102169, "end": 102192, "lines": ["movzx eax, [rbp+var_62]; jumptable 0000000000018D55 case 10", "mov ecx, 0Ah", "mov r9d, 6Eh ; 'n'", "mov byte ptr [rbp+var_60], al", "jmp loc_1891F"], "succs": [[84, "jump"]]}, {"id": 164, "start": 102192, "end": 102204, "lines": ["movzx eax, [rbp+var_62]; jumptable 0000000000018D55 case 9", "mov byte ptr [rbp+var_60], al", "jmp loc_18934"], "succs": [[87, "jump"]]}, {"id": 165, "start": 102204, "end": 102226, "lines": ["movzx eax, [rbp+var_62]; jumptable 0000000000018D55 case 0", "mov byte ptr [rbp+var_60], al", "mov eax, r11d", "xor eax, 1", "and al, [rbp+var_64]", "jz loc_191D5"], "succs": [[166, "fall"], [214, "jump"]]}, {"id": 166, "start": 102226, "end": 102240, "lines": ["nop dword ptr [rax]", "nop word ptr [rax+rax+00000000h]"], "succs": [[167, "fall"]]}, {"id": 167, "start": 102240, "end": 102245, "lines": ["cmp rbx, r15", "jnb short loc_18F6A"], "succs": [[168, "fall"], [169, "jump"]]}, {"id": 168, "start": 102245, "end": 102250, "lines": ["mov byte ptr [r12+rbx], 27h ; '''"], "succs": [[169, "fall"]]}, {"id": 169, "start": 102250, "end": 102259, "lines": ["lea rdx, [rbx+1]", "cmp rdx, r15", "jnb short loc_18F79"], "succs": [[170, "fall"], [171, "jump"]]}, {"id": 170, "start": 102259, "end": 102265, "lines": ["mov byte ptr [r12+rbx+1], 24h ; '$'"], "succs": [[171, "fall"]]}, {"id": 171, "start": 102265, "end": 102274, "lines": ["lea rdx, [rbx+2]", "cmp rdx, r15", "jnb short loc_18F88"], "succs": [[172, "fall"], [173, "jump"]]}, {"id": 172, "start": 102274, "end": 102280, "lines": ["mov byte ptr [r12+rbx+2], 27h ; '''"], "succs": [[173, "fall"]]}, {"id": 173, "start": 102280, "end": 102297, "lines": ["lea rdx, [rbx+3]", "add rbx, 4", "cmp rdx, r15", "jnb loc_1973B"], "succs": [[174, "fall"], [329, "jump"]]}, {"id": 174, "start": 102297, "end": 102316, "lines": ["mov byte ptr [r12+rdx], 5Ch ; '\\'", "add r13, 1", "cmp byte ptr [rbp+var_60], 0", "jz loc_198CE"], "succs": [[175, "fall"], [356, "jump"]]}, {"id": 175, "start": 102316, "end": 102336, "lines": ["mov [rbp+var_63], 0", "movzx r11d, byte ptr [rbp+var_60]", "mov r9d, 30h ; '0'", "jmp loc_18667"], "succs": [[33, "jump"]]}, {"id": 176, "start": 102336, "end": 102346, "lines": ["cmp [rbp+var_65], 0; jumptable 0000000000018D55 case 12", "jnz loc_19BCB"], "succs": [[177, "fall"], [418, "jump"]]}, {"id": 177, "start": 102346, "end": 102368, "lines": ["movzx eax, [rbp+var_62]", "xor edx, edx", "mov ecx, 0Ch", "mov byte ptr [rbp+var_60], al", "nop dword ptr [rax+rax+00000000h]"], "succs": [[178, "fall"]]}, {"id": 178, "start": 102368, "end": 102370, "lines": ["xor eax, eax"], "succs": [[179, "fall"]]}, {"id": 179, "start": 102370, "end": 102387, "lines": ["and [rbp+var_63], dl", "add r13, 1", "cmp byte ptr [rbp+var_60], 0", "jz loc_18A20"], "succs": [[107, "jump"], [180, "fall"]]}, {"id": 180, "start": 102387, "end": 102404, "lines": ["mov eax, r11d", "mov r9d, ecx", "xor eax, 1", "and al, [rbp+var_64]", "jmp loc_18634"], "succs": [[25, "jump"]]}, {"id": 181, "start": 102404, "end": 102414, "lines": ["cmp [rbp+var_65], 0; jumptable 0000000000018D55 case 11", "jnz loc_19B9C"], "succs": [[182, "fall"], [415, "jump"]]}, {"id": 182, "start": 102414, "end": 102430, "lines": ["movzx eax, [rbp+var_62]", "xor edx, edx", "mov ecx, 0Bh", "mov byte ptr [rbp+var_60], al", "jmp short loc_18FE0"], "succs": [[178, "jump"]]}, {"id": 183, "start": 102430, "end": 102447, "lines": ["movzx eax, [rbp+var_62]; jumptable 0000000000018D55 case 63", "mov byte ptr [rbp+var_60], al", "cmp [rbp+var_7C], 2", "jnz loc_18956"], "succs": [[89, "jump"], [184, "fall"]]}, {"id": 184, "start": 102447, "end": 102462, "lines": ["mov [rbp+var_63], 0", "add r13, 1", "mov ecx, 3Fh ; '?'", "jmp short loc_18FF3"], "succs": [[180, "jump"]]}, {"id": 185, "start": 102462, "end": 102476, "lines": ["movzx eax, [rbp+var_62]; jumptable 0000000000018D55 case 39", "cmp [rbp+var_7C], 2", "jz loc_19B43"], "succs": [[186, "fall"], [409, "jump"]]}, {"id": 186, "start": 102476, "end": 102495, "lines": ["mov byte ptr [rbp+var_60], al", "mov edx, eax", "mov r9d, 27h ; '''", "mov [rbp+var_7E], al", "jmp loc_18780"], "succs": [[52, "jump"]]}, {"id": 187, "start": 102495, "end": 102505, "lines": ["cmp [rbp+var_65], 0; jumptable 0000000000018D55 case 8", "jnz loc_19BAD"], "succs": [[188, "fall"], [416, "jump"]]}, {"id": 188, "start": 102505, "end": 102524, "lines": ["movzx eax, [rbp+var_62]", "xor edx, edx", "mov ecx, 8", "mov byte ptr [rbp+var_60], al", "jmp loc_18FE0"], "succs": [[178, "jump"]]}, {"id": 189, "start": 102524, "end": 102534, "lines": ["cmp [rbp+var_65], 0; jumptable 0000000000018D55 case 7", "jnz loc_19BBE"], "succs": [[190, "fall"], [417, "jump"]]}, {"id": 190, "start": 102534, "end": 102552, "lines": ["mov [rbp+var_63], 0", "add r13, 1", "mov ecx, 7", "jmp loc_18FF3"], "succs": [[180, "jump"]]}, {"id": 191, "start": 102560, "end": 102570, "lines": ["cmp r9b, 7Ah ; 'z'", "jg loc_19280"], "succs": [[192, "fall"], [228, "jump"]]}, {"id": 192, "start": 102570, "end": 102580, "lines": ["cmp r9b, 40h ; '@'", "jz def_185CE; jumptable 00000000000185CE default case, cases 1-6,14-31"], "succs": [[47, "jump"], [193, "fall"]]}, {"id": 193, "start": 102580, "end": 102611, "lines": ["lea ecx, [r9-41h]", "mov eax, 1", "mov rdx, 3FFFFFF53FFFFFFh", "shl rax, cl", "test rax, rdx", "jnz loc_185D8; jumptable 00000000000185CE cases 37,43-58"], "succs": [[17, "jump"], [194, "fall"]]}, {"id": 194, "start": 102611, "end": 102622, "lines": ["test eax, 0A4000000h", "jnz loc_187E0; jumptable 00000000000185CE cases 33,34,36,38,40-42,59-62"], "succs": [[63, "jump"], [195, "fall"]]}, {"id": 195, "start": 102622, "end": 102632, "lines": ["cmp [rbp+var_7C], 2", "jz loc_19330"], "succs": [[196, "fall"], [245, "jump"]]}, {"id": 196, "start": 102632, "end": 102642, "lines": ["cmp [rbp+var_65], 0", "jz loc_195F7"], "succs": [[197, "fall"], [304, "jump"]]}, {"id": 197, "start": 102642, "end": 102652, "lines": ["cmp [rbp+var_61], 0", "jz loc_19787"], "succs": [[198, "fall"], [335, "jump"]]}, {"id": 198, "start": 102652, "end": 102663, "lines": ["cmp [rbp+n], 0", "jnz loc_1933A"], "succs": [[199, "fall"], [246, "jump"]]}, {"id": 199, "start": 102663, "end": 102674, "lines": ["mov r14, r8", "mov rbx, r12", "jmp loc_18810"], "succs": [[67, "jump"]]}, {"id": 200, "start": 102680, "end": 102694, "lines": ["movzx r9d, byte ptr [r10]", "cmp r9b, 3Fh ; '?'", "jg loc_192F0"], "succs": [[201, "fall"], [238, "jump"]]}, {"id": 201, "start": 102694, "end": 102703, "lines": ["test r9b, r9b", "js def_185CE; jumptable 00000000000185CE default case, cases 1-6,14-31"], "succs": [[47, "jump"], [202, "fall"]]}, {"id": 202, "start": 102703, "end": 102713, "lines": ["cmp r9b, 3Fh; switch 64 cases", "ja def_185CE; jumptable 00000000000185CE default case, cases 1-6,14-31"], "succs": [[47, "jump"], [203, "fall"]]}, {"id": 203, "start": 102713, "end": 102734, "lines": ["lea rcx, jpt_1914B", "movzx eax, r9b", "movsxd rax, ds:(jpt_1914B - 221ECh)[rcx+rax*4]", "add rax, rcx", "jmp rax; switch jump"], "succs": [[47, "switch"], [63, "switch"], [68, "switch"], [73, "switch"], [74, "switch"], [75, "switch"], [82, "switch"], [86, "switch"], [88, "switch"], [209, "switch"], [212, "switch"], [223, "switch"], [224, "switch"], [225, "switch"], [226, "switch"]]}, {"id": 204, "start": 102736, "end": 102746, "lines": ["movzx r9d, byte ptr [r10]", "cmp r9b, 3Fh ; '?'", "jle short loc_19126"], "succs": [[201, "jump"], [205, "fall"]]}, {"id": 205, "start": 102746, "end": 102756, "lines": ["cmp r9b, 7Ah ; 'z'", "jg loc_1935D"], "succs": [[206, "fall"], [249, "jump"]]}, {"id": 206, "start": 102756, "end": 102766, "lines": ["cmp r9b, 40h ; '@'", "jz def_185CE; jumptable 00000000000185CE default case, cases 1-6,14-31"], "succs": [[47, "jump"], [207, "fall"]]}, {"id": 207, "start": 102766, "end": 102797, "lines": ["lea ecx, [r9-41h]", "mov eax, 1", "shl rax, cl", "mov rcx, 3FFFFFF53FFFFFFh", "test rax, rcx", "jz loc_190D3"], "succs": [[194, "jump"], [208, "fall"]]}, {"id": 208, "start": 102797, "end": 102800, "lines": ["nop dword ptr [rax]"], "succs": [[209, "fall"]]}, {"id": 209, "start": 102800, "end": 102810, "lines": ["cmp [rbp+var_66], 0; jumptable 000000000001914B cases 37,43-58", "jnz loc_197B8"], "succs": [[210, "fall"], [337, "jump"]]}, {"id": 210, "start": 102810, "end": 102821, "lines": ["cmp [rbp+var_70], 0", "jz loc_19608"], "succs": [[211, "fall"], [305, "jump"]]}, {"id": 211, "start": 102821, "end": 102834, "lines": ["mov byte ptr [rbp+var_60], 0", "movzx edx, [rbp+var_62]", "jmp loc_185F4"], "succs": [[20, "jump"]]}, {"id": 212, "start": 102840, "end": 102850, "lines": ["cmp [rbp+var_61], 0; jumptable 000000000001914B case 0", "jnz loc_19729"], "succs": [[213, "fall"], [328, "jump"]]}, {"id": 213, "start": 102850, "end": 102869, "lines": ["mov eax, r11d", "mov byte ptr [rbp+var_60], 0", "xor eax, 1", "and al, [rbp+var_64]", "jnz loc_18F60"], "succs": [[167, "jump"], [214, "fall"]]}, {"id": 214, "start": 102869, "end": 102874, "lines": ["cmp rbx, r15", "jnb short loc_191DF"], "succs": [[215, "fall"], [216, "jump"]]}, {"id": 215, "start": 102874, "end": 102879, "lines": ["mov byte ptr [r12+rbx], 5Ch ; '\\'"], "succs": [[216, "fall"]]}, {"id": 216, "start": 102879, "end": 102900, "lines": ["lea rsi, [rbx+1]", "lea rcx, [r13+1]", "cmp [rbp+var_9D], 0", "jz loc_19B4B"], "succs": [[217, "fall"], [410, "jump"]]}, {"id": 217, "start": 102900, "end": 102905, "lines": ["cmp rcx, r8", "jnb short loc_19214"], "succs": [[218, "fall"], [219, "jump"]]}, {"id": 218, "start": 102905, "end": 102932, "lines": ["mov rax, [rbp+var_58]", "movzx eax, byte ptr [rax+r13+1]", "mov byte ptr [rbp+var_88], al", "sub eax, 30h ; '0'", "cmp al, 9", "jbe loc_198E0"], "succs": [[219, "fall"], [357, "jump"]]}, {"id": 219, "start": 102932, "end": 102945, "lines": ["mov rax, [rbp+var_70]", "test rax, rax", "jz loc_197DB"], "succs": [[220, "fall"], [340, "jump"]]}, {"id": 220, "start": 102945, "end": 102957, "lines": ["xor edx, edx", "test byte ptr [rax+6], 1", "jz loc_197A3"], "succs": [[221, "fall"], [336, "jump"]]}, {"id": 221, "start": 102957, "end": 102960, "lines": ["mov rbx, rsi"], "succs": [[222, "fall"]]}, {"id": 222, "start": 102960, "end": 102971, "lines": ["mov r9d, 30h ; '0'", "jmp loc_18625"], "succs": [[24, "jump"]]}, {"id": 223, "start": 102971, "end": 102980, "lines": ["mov byte ptr [rbp+var_60], 0; jumptable 000000000001914B case 35", "jmp loc_18A50"], "succs": [[110, "jump"]]}, {"id": 224, "start": 102980, "end": 102992, "lines": ["mov byte ptr [rbp+var_60], 0; jumptable 000000000001914B case 32", "mov edx, r14d", "jmp loc_187E6"], "succs": [[64, "jump"]]}, {"id": 225, "start": 102992, "end": 103010, "lines": ["mov ecx, r9d; jumptable 000000000001914B case 10", "mov byte ptr [rbp+var_60], 0", "mov r9d, 6Eh ; 'n'", "jmp loc_1891F"], "succs": [[84, "jump"]]}, {"id": 226, "start": 103010, "end": 103020, "lines": ["cmp [rbp+var_65], 0; jumptable 000000000001914B case 7", "jz loc_18A82"], "succs": [[115, "jump"], [227, "fall"]]}, {"id": 227, "start": 103020, "end": 103033, "lines": ["mov r9d, 61h ; 'a'", "xor edx, edx", "jmp loc_18617"], "succs": [[22, "jump"]]}, {"id": 228, "start": 103040, "end": 103050, "lines": ["cmp r9b, 7Dh ; '}'", "jz loc_19370"], "succs": [[229, "fall"], [251, "jump"]]}, {"id": 229, "start": 103050, "end": 103060, "lines": ["mov byte ptr [rbp+var_60], 0", "jg loc_19310"], "succs": [[230, "fall"], [242, "jump"]]}, {"id": 230, "start": 103060, "end": 103070, "lines": ["cmp r9b, 7Bh ; '{'", "jnz loc_18EDF"], "succs": [[159, "jump"], [231, "fall"]]}, {"id": 231, "start": 103070, "end": 103080, "lines": ["cmp r8, 0FFFFFFFFFFFFFFFFh", "jz loc_1937E"], "succs": [[232, "fall"], [252, "jump"]]}, {"id": 232, "start": 103080, "end": 103087, "lines": ["cmp r8, 1", "setnz al"], "succs": [[233, "fall"]]}, {"id": 233, "start": 103087, "end": 103095, "lines": ["test al, al", "jz loc_18A50"], "succs": [[110, "jump"], [234, "fall"]]}, {"id": 234, "start": 103095, "end": 103102, "lines": ["xor edx, edx", "jmp loc_18780"], "succs": [[52, "jump"]]}, {"id": 235, "start": 103104, "end": 103114, "lines": ["cmp byte ptr [rbp+var_60], 0", "jz loc_193B6"], "succs": [[236, "fall"], [258, "jump"]]}, {"id": 236, "start": 103114, "end": 103132, "lines": ["movzx ecx, [rbp+var_64]", "mov r14, r8", "and [rbp+var_65], cl", "mov rbx, r12", "jmp loc_18800"], "succs": [[66, "jump"]]}, {"id": 237, "start": 103136, "end": 103146, "lines": ["mov edx, r14d", "xor eax, eax", "jmp loc_187A4"], "succs": [[56, "jump"]]}, {"id": 238, "start": 103152, "end": 103162, "lines": ["cmp r9b, 7Ah ; 'z'", "jle loc_19164"], "succs": [[206, "jump"], [239, "fall"]]}, {"id": 239, "start": 103162, "end": 103172, "lines": ["cmp r9b, 7Dh ; '}'", "jz loc_19845"], "succs": [[240, "fall"], [349, "jump"]]}, {"id": 240, "start": 103172, "end": 103182, "lines": ["mov byte ptr [rbp+var_60], 0", "cmp r9b, 7Dh ; '}'", "jle short loc_19294"], "succs": [[230, "jump"], [241, "fall"]]}, {"id": 241, "start": 103182, "end": 103184, "lines": ["xchg ax, ax"], "succs": [[242, "fall"]]}, {"id": 242, "start": 103184, "end": 103194, "lines": ["cmp r9b, 7Eh ; '~'", "jz loc_18A50"], "succs": [[110, "jump"], [243, "fall"]]}, {"id": 243, "start": 103194, "end": 103199, "lines": ["jmp loc_18714"], "succs": [[48, "jump"]]}, {"id": 244, "start": 103200, "end": 103213, "lines": ["mov r9d, 3Fh ; '?'", "xor edx, edx", "jmp loc_18780"], "succs": [[52, "jump"]]}, {"id": 245, "start": 103216, "end": 103226, "lines": ["cmp [rbp+var_61], 0", "jnz loc_1943F"], "succs": [[246, "fall"], [270, "jump"]]}, {"id": 246, "start": 103226, "end": 103239, "lines": ["add r13, 1", "test r11b, r11b", "jnz loc_195E8"], "succs": [[247, "fall"], [303, "jump"]]}, {"id": 247, "start": 103239, "end": 103248, "lines": ["cmp rbx, r15", "jb loc_1974A"], "succs": [[248, "fall"], [330, "jump"]]}, {"id": 248, "start": 103248, "end": 103261, "lines": ["mov [rbp+var_63], 0", "add rbx, 1", "jmp loc_18566"], "succs": [[9, "jump"]]}, {"id": 249, "start": 103261, "end": 103267, "lines": ["cmp r9b, 7Dh ; '}'", "jnz short loc_19304"], "succs": [[240, "jump"], [250, "fall"]]}, {"id": 250, "start": 103267, "end": 103280, "lines": ["xchg ax, ax", "nop word ptr [rax+rax+00000000h]"], "succs": [[251, "fall"]]}, {"id": 251, "start": 103280, "end": 103294, "lines": ["mov byte ptr [rbp+var_60], 0", "cmp r8, 0FFFFFFFFFFFFFFFFh", "jnz loc_192A8"], "succs": [[232, "jump"], [252, "fall"]]}, {"id": 252, "start": 103294, "end": 103310, "lines": ["mov rax, [rbp+var_58]", "cmp byte ptr [rax+1], 0", "setnz al", "jmp loc_192AF"], "succs": [[233, "jump"]]}, {"id": 253, "start": 103312, "end": 103324, "lines": ["movzx edx, [rbp+var_61]", "test dl, dl", "jz loc_19618"], "succs": [[254, "fall"], [306, "jump"]]}, {"id": 254, "start": 103324, "end": 103331, "lines": ["cmp [rbp+var_70], 0", "jz short loc_193AF"], "succs": [[255, "fall"], [256, "jump"]]}, {"id": 255, "start": 103331, "end": 103343, "lines": ["mov byte ptr [rbp+var_60], 0", "mov ecx, r9d", "jmp loc_18861"], "succs": [[72, "jump"]]}, {"id": 256, "start": 103343, "end": 103346, "lines": ["mov ecx, r9d"], "succs": [[257, "fall"]]}, {"id": 257, "start": 103346, "end": 103350, "lines": ["movzx edx, [rbp+var_61]"], "succs": [[258, "fall"]]}, {"id": 258, "start": 103350, "end": 103368, "lines": ["and [rbp+var_63], dl", "add r13, 1", "mov eax, r11d", "mov r9d, ecx", "jmp loc_187B1"], "succs": [[57, "jump"]]}, {"id": 259, "start": 103376, "end": 103382, "lines": ["cmp [rbp+var_61], 0", "jnz short loc_1943F"], "succs": [[260, "fall"], [270, "jump"]]}, {"id": 260, "start": 103382, "end": 103386, "lines": ["mov [rbp+var_7E], 0"], "succs": [[261, "fall"]]}, {"id": 261, "start": 103386, "end": 103411, "lines": ["test r15, r15", "setnz al", "cmp [rbp+var_A8], 0", "setz dl", "and al, dl", "jnz loc_196BF"], "succs": [[262, "fall"], [322, "jump"]]}, {"id": 262, "start": 103411, "end": 103416, "lines": ["cmp rbx, r15", "jnb short loc_193FD"], "succs": [[263, "fall"], [264, "jump"]]}, {"id": 263, "start": 103416, "end": 103421, "lines": ["mov byte ptr [r12+rbx], 27h ; '''"], "succs": [[264, "fall"]]}, {"id": 264, "start": 103421, "end": 103430, "lines": ["lea rax, [rbx+1]", "cmp rax, r15", "jnb short loc_1940C"], "succs": [[265, "fall"], [266, "jump"]]}, {"id": 265, "start": 103430, "end": 103436, "lines": ["mov byte ptr [r12+rbx+1], 5Ch ; '\\'"], "succs": [[266, "fall"]]}, {"id": 266, "start": 103436, "end": 103445, "lines": ["lea rax, [rbx+2]", "cmp rax, r15", "jnb short loc_1941B"], "succs": [[267, "fall"], [268, "jump"]]}, {"id": 267, "start": 103445, "end": 103451, "lines": ["mov byte ptr [r12+rbx+2], 27h ; '''"], "succs": [[268, "fall"]]}, {"id": 268, "start": 103451, "end": 103475, "lines": ["add rbx, 3", "add r13, 1", "mov r9d, 27h ; '''", "cmp [rbp+var_7E], 0", "jnz loc_18638"], "succs": [[26, "jump"], [269, "fall"]]}, {"id": 269, "start": 103475, "end": 103487, "lines": ["mov [rbp+var_7E], r14b", "xor r11d, r11d", "jmp loc_18675"], "succs": [[36, "jump"]]}, {"id": 270, "start": 103487, "end": 103498, "lines": ["mov r14, r8", "mov rbx, r12", "jmp loc_18800"], "succs": [[66, "jump"]]}, {"id": 271, "start": 103498, "end": 103573, "lines": ["mov [rbp+var_C0], r8", "mov edi, [rbp+wc]; wc", "mov byte ptr [rbp+var_B8], r11b", "mov byte ptr [rbp+var_90], r9b", "mov [rbp+var_88], rcx", "call cs:iswprint_ptr", "mov rcx, [rbp+var_88]", "movzx r9d, byte ptr [rbp+var_90]", "test eax, eax", "movzx r11d, byte ptr [rbp+var_B8]", "mov r8, [rbp+var_C0]", "jnz loc_19B14"], "succs": [[272, "fall"], [405, "jump"]]}, {"id": 272, "start": 103573, "end": 103584, "lines": ["nop word ptr [rax+rax+00000000h]"], "succs": [[273, "fall"]]}, {"id": 273, "start": 103584, "end": 103591, "lines": ["movzx eax, [rbp+var_65]", "xor r14d, r14d"], "succs": [[274, "fall"]]}, {"id": 274, "start": 103591, "end": 103607, "lines": ["lea rdx, [rcx+r13]", "add r13, 1", "test al, al", "jz loc_199BB"], "succs": [[275, "fall"], [373, "jump"]]}, {"id": 275, "start": 103607, "end": 103617, "lines": ["cmp [rbp+var_61], 0", "jnz loc_19729"], "succs": [[276, "fall"], [328, "jump"]]}, {"id": 276, "start": 103617, "end": 103627, "lines": ["movzx ecx, [rbp+var_64]", "mov rsi, [rbp+var_58]", "jmp short loc_194E6"], "succs": [[280, "jump"]]}, {"id": 277, "start": 103632, "end": 103637, "lines": ["cmp rax, r15", "jnb short loc_194D9"], "succs": [[278, "fall"], [279, "jump"]]}, {"id": 278, "start": 103637, "end": 103641, "lines": ["mov [r12+rax], r9b"], "succs": [[279, "fall"]]}, {"id": 279, "start": 103641, "end": 103654, "lines": ["movzx r9d, byte ptr [rsi+r13]", "add rbx, 4", "add r13, 1"], "succs": [[280, "fall"]]}, {"id": 280, "start": 103654, "end": 103664, "lines": ["mov eax, r11d", "xor eax, 1", "and al, cl", "jz short loc_1951F"], "succs": [[281, "fall"], [288, "jump"]]}, {"id": 281, "start": 103664, "end": 103669, "lines": ["cmp rbx, r15", "jnb short loc_194FA"], "succs": [[282, "fall"], [283, "jump"]]}, {"id": 282, "start": 103669, "end": 103674, "lines": ["mov byte ptr [r12+rbx], 27h ; '''"], "succs": [[283, "fall"]]}, {"id": 283, "start": 103674, "end": 103683, "lines": ["lea rdi, [rbx+1]", "cmp rdi, r15", "jnb short loc_19509"], "succs": [[284, "fall"], [285, "jump"]]}, {"id": 284, "start": 103683, "end": 103689, "lines": ["mov byte ptr [r12+rbx+1], 24h ; '$'"], "succs": [[285, "fall"]]}, {"id": 285, "start": 103689, "end": 103698, "lines": ["lea rdi, [rbx+2]", "cmp rdi, r15", "jnb short loc_19518"], "succs": [[286, "fall"], [287, "jump"]]}, {"id": 286, "start": 103698, "end": 103704, "lines": ["mov byte ptr [r12+rbx+2], 27h ; '''"], "succs": [[287, "fall"]]}, {"id": 287, "start": 103704, "end": 103711, "lines": ["add rbx, 3", "mov r11d, eax"], "succs": [[288, "fall"]]}, {"id": 288, "start": 103711, "end": 103716, "lines": ["cmp rbx, r15", "jnb short loc_19529"], "succs": [[289, "fall"], [290, "jump"]]}, {"id": 289, "start": 103716, "end": 103721, "lines": ["mov byte ptr [r12+rbx], 5Ch ; '\\'"], "succs": [[290, "fall"]]}, {"id": 290, "start": 103721, "end": 103730, "lines": ["lea rax, [rbx+1]", "cmp rax, r15", "jnb short loc_19540"], "succs": [[291, "fall"], [292, "jump"]]}, {"id": 291, "start": 103730, "end": 103744, "lines": ["mov eax, r9d", "shr al, 6", "add eax, 30h ; '0'", "mov [r12+rbx+1], al"], "succs": [[292, "fall"]]}, {"id": 292, "start": 103744, "end": 103753, "lines": ["lea rax, [rbx+2]", "cmp rax, r15", "jnb short loc_1955A"], "succs": [[293, "fall"], [294, "jump"]]}, {"id": 293, "start": 103753, "end": 103770, "lines": ["mov eax, r9d", "shr al, 3", "and eax, 7", "add eax, 30h ; '0'", "mov [r12+rbx+2], al"], "succs": [[294, "fall"]]}, {"id": 294, "start": 103770, "end": 103791, "lines": ["and r9d, 7", "lea rax, [rbx+3]", "add r9d, 30h ; '0'", "cmp r13, rdx", "jb loc_194D0"], "succs": [[277, "jump"], [295, "fall"]]}, {"id": 295, "start": 103791, "end": 103803, "lines": ["mov [rbp+var_63], 0", "mov rbx, rax", "jmp loc_18675"], "succs": [[36, "jump"]]}, {"id": 296, "start": 103808, "end": 103818, "lines": ["cmp r9b, 7Ah ; 'z'", "jg loc_19759"], "succs": [[297, "fall"], [331, "jump"]]}, {"id": 297, "start": 103818, "end": 103828, "lines": ["cmp r9b, 40h ; '@'", "jz def_18D55; jumptable 0000000000018D55 default case, cases 1-6,14-31"], "succs": [[147, "jump"], [298, "fall"]]}, {"id": 298, "start": 103828, "end": 103859, "lines": ["lea ecx, [r9-41h]", "mov eax, 1", "shl rax, cl", "mov rcx, 3FFFFFF53FFFFFFh", "test rax, rcx", "jnz loc_18D60; jumptable 0000000000018D55 cases 37,43-58"], "succs": [[144, "jump"], [299, "fall"]]}, {"id": 299, "start": 103859, "end": 103870, "lines": ["test eax, 0A4000000h", "jnz loc_18ED8; jumptable 0000000000018D55 cases 33,34,36,38,40-42,59-62"], "succs": [[158, "jump"], [300, "fall"]]}, {"id": 300, "start": 103870, "end": 103880, "lines": ["cmp [rbp+var_7C], 2", "jz loc_1933A"], "succs": [[246, "jump"], [301, "fall"]]}, {"id": 301, "start": 103880, "end": 103890, "lines": ["cmp [rbp+var_65], 0", "jnz loc_19787"], "succs": [[302, "fall"], [335, "jump"]]}, {"id": 302, "start": 103890, "end": 103909, "lines": ["movzx eax, [rbp+var_62]", "mov ecx, r9d", "xor edx, edx", "mov byte ptr [rbp+var_60], al", "xor eax, eax", "jmp loc_18FE2"], "succs": [[179, "jump"]]}, {"id": 303, "start": 103912, "end": 103927, "lines": ["mov [rbp+var_63], 0", "mov r9d, 5Ch ; '\\'", "jmp loc_187B9"], "succs": [[58, "jump"]]}, {"id": 304, "start": 103927, "end": 103941, "lines": ["mov byte ptr [rbp+var_60], 0", "mov ecx, r9d", "xor edx, edx", "jmp loc_1884C"], "succs": [[70, "jump"]]}, {"id": 305, "start": 103944, "end": 103955, "lines": ["movzx edx, [rbp+var_62]", "xor eax, eax", "jmp loc_187A4"], "succs": [[56, "jump"]]}, {"id": 306, "start": 103960, "end": 103976, "lines": ["mov byte ptr [rbp+var_60], 0", "movzx edx, [rbp+var_66]", "mov ecx, r9d", "jmp loc_18FE0"], "succs": [[178, "jump"]]}, {"id": 307, "start": 103984, "end": 103993, "lines": ["movzx edx, [rbp+var_61]", "xor dl, 1", "jz short loc_19643"], "succs": [[308, "fall"], [309, "jump"]]}, {"id": 308, "start": 103993, "end": 104003, "lines": ["cmp [rbp+var_64], 0", "jnz loc_186CD"], "succs": [[43, "jump"], [309, "fall"]]}, {"id": 309, "start": 104003, "end": 104008, "lines": ["mov eax, edx", "mov r11, rbx"], "succs": [[310, "fall"]]}, {"id": 310, "start": 104008, "end": 104020, "lines": ["mov rdi, [rbp+s2]", "test rdi, rdi", "jz short loc_19686"], "succs": [[311, "fall"], [318, "jump"]]}, {"id": 311, "start": 104020, "end": 104024, "lines": ["test al, al", "jz short loc_19686"], "succs": [[312, "fall"], [318, "jump"]]}, {"id": 312, "start": 104024, "end": 104034, "lines": ["movzx ecx, byte ptr [rdi]", "mov rax, rdi", "test cl, cl", "jz short loc_19686"], "succs": [[313, "fall"], [318, "jump"]]}, {"id": 313, "start": 104034, "end": 104047, "lines": ["mov rsi, [rbp+var_E0]", "mov rdx, r11", "sub rax, r11"], "succs": [[314, "fall"]]}, {"id": 314, "start": 104047, "end": 104052, "lines": ["cmp rdx, r15", "jnb short loc_19677"], "succs": [[315, "fall"], [316, "jump"]]}, {"id": 315, "start": 104052, "end": 104055, "lines": ["mov [rsi+rdx], cl"], "succs": [[316, "fall"]]}, {"id": 316, "start": 104055, "end": 104067, "lines": ["add rdx, 1", "movzx ecx, byte ptr [rax+rdx]", "test cl, cl", "jnz short loc_1966F"], "succs": [[314, "jump"], [317, "fall"]]}, {"id": 317, "start": 104067, "end": 104070, "lines": ["mov r11, rdx"], "succs": [[318, "fall"]]}, {"id": 318, "start": 104070, "end": 104075, "lines": ["cmp r11, r15", "jnb short loc_19697"], "succs": [[319, "fall"], [320, "jump"]]}, {"id": 319, "start": 104075, "end": 104087, "lines": ["mov rax, [rbp+var_E0]", "mov byte ptr [rax+r11], 0"], "succs": [[320, "fall"]]}, {"id": 320, "start": 104087, "end": 104106, "lines": ["mov rax, [rbp+var_38]", "sub rax, fs:28h", "jnz loc_19C3D"], "succs": [[321, "fall"], [422, "jump"]]}, {"id": 321, "start": 104106, "end": 104127, "lines": ["add rsp, 0B8h", "mov rax, r11", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 322, "start": 104127, "end": 104141, "lines": ["add r13, 1", "cmp [rbp+var_7E], 0", "jz loc_19875"], "succs": [[323, "fall"], [352, "jump"]]}, {"id": 323, "start": 104141, "end": 104171, "lines": ["mov [rbp+var_A8], r15", "movzx r11d, [rbp+var_7E]", "add rbx, 6", "xor r15d, r15d", "mov r9d, 27h ; '''", "jmp loc_18671"], "succs": [[35, "jump"]]}, {"id": 324, "start": 104171, "end": 104185, "lines": ["add r13, 1", "cmp r8, 0FFFFFFFFFFFFFFFFh", "jz loc_18693"], "succs": [[39, "jump"], [325, "fall"]]}, {"id": 325, "start": 104185, "end": 104194, "lines": ["cmp r13, r8", "jz loc_186B0"], "succs": [[40, "jump"], [326, "fall"]]}, {"id": 326, "start": 104194, "end": 104207, "lines": ["mov rax, [rbp+var_58]", "lea r10, [rax+r13]", "jmp loc_1859B"], "succs": [[13, "jump"]]}, {"id": 327, "start": 104207, "end": 104233, "lines": ["xor eax, eax", "xor ecx, ecx", "mov [rbp+var_63], 0", "add r13, 1", "xor eax, 1", "mov r9d, ecx", "and eax, r11d", "jmp loc_187B1"], "succs": [[57, "jump"]]}, {"id": 328, "start": 104233, "end": 104251, "lines": ["movzx eax, [rbp+var_64]", "mov r14, r8", "mov rbx, r12", "mov [rbp+var_65], al", "jmp loc_18800"], "succs": [[66, "jump"]]}, {"id": 329, "start": 104251, "end": 104266, "lines": ["mov r11d, eax", "mov ecx, 30h ; '0'", "xor edx, edx", "jmp loc_18FE2"], "succs": [[179, "jump"]]}, {"id": 330, "start": 104266, "end": 104281, "lines": ["mov [rbp+var_63], 0", "mov r9d, 5Ch ; '\\'", "jmp loc_1867A"], "succs": [[37, "jump"]]}, {"id": 331, "start": 104281, "end": 104298, "lines": ["movzx eax, [rbp+var_62]", "mov byte ptr [rbp+var_60], al", "cmp r9b, 7Dh ; '}'", "jz loc_1929E"], "succs": [[231, "jump"], [332, "fall"]]}, {"id": 332, "start": 104298, "end": 104304, "lines": ["jg loc_19928"], "succs": [[333, "fall"], [364, "jump"]]}, {"id": 333, "start": 104304, "end": 104314, "lines": ["cmp r9b, 7Bh ; '{'", "jz loc_1929E"], "succs": [[231, "jump"], [334, "fall"]]}, {"id": 334, "start": 104314, "end": 104327, "lines": ["xor edx, edx", "mov r9d, 7Ch ; '|'", "jmp loc_187E6"], "succs": [[64, "jump"]]}, {"id": 335, "start": 104327, "end": 104355, "lines": ["mov eax, r11d", "mov [rbp+var_63], 0", "add r13, 1", "mov r9d, 5Ch ; '\\'", "xor eax, 1", "and al, [rbp+var_64]", "jmp loc_18634"], "succs": [[25, "jump"]]}, {"id": 336, "start": 104355, "end": 104376, "lines": ["movzx eax, [rbp+var_9D]", "mov rbx, rsi", "mov r9d, 30h ; '0'", "jmp loc_1879A"], "succs": [[55, "jump"]]}, {"id": 337, "start": 104376, "end": 104388, "lines": ["movzx edx, [rbp+var_61]", "test dl, dl", "jz loc_19618"], "succs": [[306, "jump"], [338, "fall"]]}, {"id": 338, "start": 104388, "end": 104402, "lines": ["mov ecx, r9d", "cmp [rbp+var_70], 0", "jz loc_193B2"], "succs": [[257, "jump"], [339, "fall"]]}, {"id": 339, "start": 104402, "end": 104411, "lines": ["mov byte ptr [rbp+var_60], 0", "jmp loc_18861"], "succs": [[72, "jump"]]}, {"id": 340, "start": 104411, "end": 104421, "lines": ["cmp byte ptr [rbp+var_60], 0", "jz loc_19A64"], "succs": [[341, "fall"], [392, "jump"]]}, {"id": 341, "start": 104421, "end": 104442, "lines": ["mov [rbp+var_63], 0", "mov r13, rcx", "mov rbx, rsi", "mov r9d, 30h ; '0'", "jmp loc_18667"], "succs": [[33, "jump"]]}, {"id": 342, "start": 104442, "end": 104455, "lines": ["movzx eax, [rbp+var_65]", "xor edx, edx", "xor ecx, ecx", "jmp loc_18776"], "succs": [[50, "jump"]]}, {"id": 343, "start": 104455, "end": 104469, "lines": ["mov rax, [rbp+var_C8]", "xor ecx, ecx", "cmp r13, r8", "jb short loc_19829"], "succs": [[344, "fall"], [346, "jump"]]}, {"id": 344, "start": 104469, "end": 104474, "lines": ["jmp loc_19C32"], "succs": [[421, "jump"]]}, {"id": 345, "start": 104480, "end": 104489, "lines": ["add rcx, 1", "cmp rax, rcx", "jz short loc_19830"], "succs": [[346, "fall"], [347, "jump"]]}, {"id": 346, "start": 104489, "end": 104496, "lines": ["cmp byte ptr [r10+rcx], 0", "jnz short loc_19820"], "succs": [[345, "jump"], [347, "fall"]]}, {"id": 347, "start": 104496, "end": 104510, "lines": ["movzx eax, [rbp+var_65]", "cmp rcx, 1", "ja loc_19AD4"], "succs": [[348, "fall"], [401, "jump"]]}, {"id": 348, "start": 104510, "end": 104517, "lines": ["xor edx, edx", "jmp loc_18776"], "succs": [[50, "jump"]]}, {"id": 349, "start": 104517, "end": 104526, "lines": ["mov byte ptr [rbp+var_60], 0", "jmp loc_192A8"], "succs": [[232, "jump"]]}, {"id": 350, "start": 104526, "end": 104536, "lines": ["cmp [rbp+var_61], 0", "jnz loc_1943F"], "succs": [[270, "jump"], [351, "fall"]]}, {"id": 351, "start": 104536, "end": 104565, "lines": ["xor eax, eax", "mov ecx, 3Fh ; '?'", "mov [rbp+var_63], 0", "add r13, 1", "xor eax, 1", "mov r9d, ecx", "and eax, r11d", "jmp loc_187B1"], "succs": [[57, "jump"]]}, {"id": 352, "start": 104565, "end": 104590, "lines": ["mov [rbp+var_A8], r15", "add rbx, 3", "xor r11d, r11d", "xor r15d, r15d", "mov [rbp+var_7E], al", "jmp loc_1867E"], "succs": [[38, "jump"]]}, {"id": 353, "start": 104590, "end": 104619, "lines": ["xor eax, eax", "mov ecx, 7", "mov [rbp+var_63], 0", "add r13, 1", "xor eax, 1", "mov r9d, ecx", "and eax, r11d", "jmp loc_187B1"], "succs": [[57, "jump"]]}, {"id": 354, "start": 104619, "end": 104641, "lines": ["xor ecx, ecx", "xor edx, edx", "add r13, 1", "and [rbp+var_63], dl", "mov eax, r11d", "mov r9d, ecx", "jmp loc_187B1"], "succs": [[57, "jump"]]}, {"id": 355, "start": 104641, "end": 104654, "lines": ["xor edx, edx", "mov r9d, 61h ; 'a'", "jmp loc_18617"], "succs": [[22, "jump"]]}, {"id": 356, "start": 104654, "end": 104672, "lines": ["mov [rbp+var_63], 0", "mov r11d, eax", "mov r9d, 30h ; '0'", "jmp loc_18675"], "succs": [[36, "jump"]]}, {"id": 357, "start": 104672, "end": 104677, "lines": ["cmp rsi, r15", "jnb short loc_198EA"], "succs": [[358, "fall"], [359, "jump"]]}, {"id": 358, "start": 104677, "end": 104682, "lines": ["mov byte ptr [r12+rsi], 30h ; '0'"], "succs": [[359, "fall"]]}, {"id": 359, "start": 104682, "end": 104691, "lines": ["lea rax, [rbx+2]", "cmp rax, r15", "jnb short loc_198F9"], "succs": [[360, "fall"], [361, "jump"]]}, {"id": 360, "start": 104691, "end": 104697, "lines": ["mov byte ptr [r12+rbx+2], 30h ; '0'"], "succs": [[361, "fall"]]}, {"id": 361, "start": 104697, "end": 104714, "lines": ["mov rax, [rbp+var_70]", "add rbx, 3", "test rax, rax", "jz loc_19AF5"], "succs": [[362, "fall"], [403, "jump"]]}, {"id": 362, "start": 104714, "end": 104726, "lines": ["xor edx, edx", "test byte ptr [rax+6], 1", "jnz loc_19230"], "succs": [[222, "jump"], [363, "fall"]]}, {"id": 363, "start": 104726, "end": 104744, "lines": ["movzx eax, [rbp+var_9D]", "mov r9d, 30h ; '0'", "jmp loc_1879A"], "succs": [[55, "jump"]]}, {"id": 364, "start": 104744, "end": 104754, "lines": ["cmp r9b, 7Eh ; '~'", "jz loc_18A50"], "succs": [[110, "jump"], [365, "fall"]]}, {"id": 365, "start": 104754, "end": 104765, "lines": ["mov r9d, 7Fh", "jmp loc_18714"], "succs": [[48, "jump"]]}, {"id": 366, "start": 104765, "end": 104775, "lines": ["cmp rax, 1", "jz loc_19BDC"], "succs": [[367, "fall"], [419, "jump"]]}, {"id": 367, "start": 104775, "end": 104799, "lines": ["mov rax, [rbp+var_58]", "add r10, rcx", "mov rsi, 20000002Bh", "lea rdx, [rax+r13+1]", "jmp short loc_1996D"], "succs": [[369, "jump"]]}, {"id": 368, "start": 104800, "end": 104813, "lines": ["add rdx, 1", "cmp rdx, r10", "jz loc_1944A"], "succs": [[271, "jump"], [369, "fall"]]}, {"id": 369, "start": 104813, "end": 104823, "lines": ["movzx eax, byte ptr [rdx]", "sub eax, 5Bh ; '['", "cmp al, 21h ; '!'", "ja short loc_19960"], "succs": [[368, "jump"], [370, "fall"]]}, {"id": 370, "start": 104823, "end": 104829, "lines": ["bt rsi, rax", "jnb short loc_19960"], "succs": [[368, "jump"], [371, "fall"]]}, {"id": 371, "start": 104829, "end": 104834, "lines": ["jmp loc_187EC"], "succs": [[65, "jump"]]}, {"id": 372, "start": 104834, "end": 104891, "lines": ["movzx eax, [rbp+var_61]", "mov [rbp+var_62], 0", "xor ebx, ebx", "mov [rbp+var_7D], 0", "mov [rbp+var_66], al", "mov [rbp+var_67], al", "mov [rbp+var_64], al", "lea rax, aInvalidSSArgum+19h; \"'\"", "mov [rbp+var_9D], 0", "mov [rbp+n], 1", "mov [rbp+s2], rax", "jmp loc_18560"], "succs": [[8, "jump"]]}, {"id": 373, "start": 104891, "end": 104900, "lines": ["mov eax, r11d", "cmp byte ptr [rbp+var_60], 0", "jz short loc_199D2"], "succs": [[374, "fall"], [377, "jump"]]}, {"id": 374, "start": 104900, "end": 104905, "lines": ["cmp rbx, r15", "jnb short loc_199CE"], "succs": [[375, "fall"], [376, "jump"]]}, {"id": 375, "start": 104905, "end": 104910, "lines": ["mov byte ptr [r12+rbx], 5Ch ; '\\'"], "succs": [[376, "fall"]]}, {"id": 376, "start": 104910, "end": 104914, "lines": ["add rbx, 1"], "succs": [[377, "fall"]]}, {"id": 377, "start": 104914, "end": 104919, "lines": ["cmp r13, rdx", "jnb short loc_19A34"], "succs": [[378, "fall"], [388, "jump"]]}, {"id": 378, "start": 104919, "end": 104923, "lines": ["test al, al", "jz short loc_19A15"], "succs": [[379, "fall"], [386, "jump"]]}, {"id": 379, "start": 104923, "end": 104928, "lines": ["cmp rbx, r15", "jnb short loc_199E5"], "succs": [[380, "fall"], [381, "jump"]]}, {"id": 380, "start": 104928, "end": 104933, "lines": ["mov byte ptr [r12+rbx], 27h ; '''"], "succs": [[381, "fall"]]}, {"id": 381, "start": 104933, "end": 104942, "lines": ["lea rax, [rbx+1]", "cmp rax, r15", "jnb short loc_199F4"], "succs": [[382, "fall"], [383, "jump"]]}, {"id": 382, "start": 104942, "end": 104948, "lines": ["mov byte ptr [r12+rbx+1], 27h ; '''"], "succs": [[383, "fall"]]}, {"id": 383, "start": 104948, "end": 104957, "lines": ["lea rax, [rbx+2]", "cmp rax, r15", "jb short loc_19A40"], "succs": [[384, "fall"], [390, "jump"]]}, {"id": 384, "start": 104957, "end": 104979, "lines": ["mov rax, [rbp+var_58]", "add rbx, 3", "movzx r9d, byte ptr [rax+r13]", "add r13, 1", "cmp r13, rdx", "jnb short loc_19A5D"], "succs": [[385, "fall"], [391, "jump"]]}, {"id": 385, "start": 104979, "end": 104981, "lines": ["xor eax, eax"], "succs": [[386, "fall"]]}, {"id": 386, "start": 104981, "end": 104990, "lines": ["cmp rbx, r15", "jb loc_19ABA"], "succs": [[387, "fall"], [400, "jump"]]}, {"id": 387, "start": 104990, "end": 105012, "lines": ["mov rcx, [rbp+var_58]", "add rbx, 1", "movzx r9d, byte ptr [rcx+r13]", "add r13, 1", "cmp r13, rdx", "jb short loc_199D7"], "succs": [[378, "jump"], [388, "fall"]]}, {"id": 388, "start": 105012, "end": 105015, "lines": ["mov r11d, eax"], "succs": [[389, "fall"]]}, {"id": 389, "start": 105015, "end": 105024, "lines": ["and [rbp+var_63], r14b", "jmp loc_187B1"], "succs": [[57, "jump"]]}, {"id": 390, "start": 105024, "end": 105053, "lines": ["mov rax, [rbp+var_58]", "mov [r12+rbx+2], r9b", "add rbx, 3", "movzx r9d, byte ptr [rax+r13]", "add r13, 1", "xor eax, eax", "jmp loc_199D2"], "succs": [[377, "jump"]]}, {"id": 391, "start": 105053, "end": 105060, "lines": ["xor r11d, r11d", "xor eax, eax", "jmp short loc_19A37"], "succs": [[389, "jump"]]}, {"id": 392, "start": 105060, "end": 105081, "lines": ["mov [rbp+var_63], 0", "mov r13, rcx", "mov rbx, rsi", "mov r9d, 30h ; '0'", "jmp loc_18675"], "succs": [[36, "jump"]]}, {"id": 393, "start": 105081, "end": 105093, "lines": ["add r13, 1", "mov ecx, r9d", "jmp loc_18FF3"], "succs": [[180, "jump"]]}, {"id": 394, "start": 105093, "end": 105111, "lines": ["mov rdx, [rbp+var_D8]", "movzx eax, byte ptr [rdx]", "test al, al", "jz loc_18516"], "succs": [[7, "jump"], [395, "fall"]]}, {"id": 395, "start": 105111, "end": 105120, "lines": ["nop word ptr [rax+rax+00000000h]"], "succs": [[396, "fall"]]}, {"id": 396, "start": 105120, "end": 105125, "lines": ["cmp rbx, r15", "jnb short loc_19AA9"], "succs": [[397, "fall"], [398, "jump"]]}, {"id": 397, "start": 105125, "end": 105129, "lines": ["mov [r12+rbx], al"], "succs": [[398, "fall"]]}, {"id": 398, "start": 105129, "end": 105141, "lines": ["add rbx, 1", "movzx eax, byte ptr [rdx+rbx]", "test al, al", "jnz short loc_19AA0"], "succs": [[396, "jump"], [399, "fall"]]}, {"id": 399, "start": 105141, "end": 105146, "lines": ["jmp loc_18516"], "succs": [[7, "jump"]]}, {"id": 400, "start": 105146, "end": 105172, "lines": ["mov rdi, [rbp+var_58]", "mov [r12+rbx], r9b", "add rbx, 1", "movzx r9d, byte ptr [rdi+r13]", "add r13, 1", "jmp loc_199D2"], "succs": [[377, "jump"]]}, {"id": 401, "start": 105172, "end": 105180, "lines": ["xor r14d, r14d", "jmp loc_194A7"], "succs": [[274, "jump"]]}, {"id": 402, "start": 105180, "end": 105205, "lines": ["mov ecx, 7", "xor edx, edx", "add r13, 1", "and [rbp+var_63], dl", "mov eax, r11d", "mov r9d, ecx", "jmp loc_187B1"], "succs": [[57, "jump"]]}, {"id": 403, "start": 105205, "end": 105218, "lines": ["mov rsi, rbx", "cmp byte ptr [rbp+var_60], 0", "jnz loc_197E5"], "succs": [[341, "jump"], [404, "fall"]]}, {"id": 404, "start": 105218, "end": 105236, "lines": ["mov [rbp+var_63], 0", "mov r13, rcx", "mov r9d, 30h ; '0'", "jmp loc_18675"], "succs": [[36, "jump"]]}, {"id": 405, "start": 105236, "end": 105243, "lines": ["xor eax, eax", "jmp loc_194A7"], "succs": [[274, "jump"]]}, {"id": 406, "start": 105243, "end": 105262, "lines": ["mov r9d, ecx", "xor edx, edx", "mov r13, rsi", "cmp [rbp+var_70], 0", "jnz loc_185F4"], "succs": [[20, "jump"], [407, "fall"]]}, {"id": 407, "start": 105262, "end": 105274, "lines": ["xor eax, eax", "cmp byte ptr [rbp+var_60], 0", "jz loc_187A4"], "succs": [[56, "jump"], [408, "fall"]]}, {"id": 408, "start": 105274, "end": 105283, "lines": ["lea rcx, [rsi+1]", "jmp loc_18625"], "succs": [[24, "jump"]]}, {"id": 409, "start": 105283, "end": 105291, "lines": ["mov [rbp+var_7E], al", "jmp loc_193DA"], "succs": [[261, "jump"]]}, {"id": 410, "start": 105291, "end": 105317, "lines": ["cmp byte ptr [rbp+var_60], 0", "mov [rbp+var_63], 0", "mov r13, rcx", "mov rbx, rsi", "mov r9d, 30h ; '0'", "jnz loc_18667"], "succs": [[33, "jump"], [411, "fall"]]}, {"id": 411, "start": 105317, "end": 105322, "lines": ["jmp loc_18675"], "succs": [[36, "jump"]]}, {"id": 412, "start": 105322, "end": 105334, "lines": ["movzx eax, [rbp+var_7E]", "mov r11, rbx", "jmp loc_19648"], "succs": [[310, "jump"]]}, {"id": 413, "start": 105334, "end": 105359, "lines": ["mov [rbp+var_7C], 5", "mov r15, [rbp+var_A8]", "mov r14, r8", "mov rbx, r12", "jmp loc_18460"], "succs": [[1, "jump"]]}, {"id": 414, "start": 105359, "end": 105372, "lines": ["mov r11, rbx", "mov eax, 1", "jmp loc_19648"], "succs": [[310, "jump"]]}, {"id": 415, "start": 105372, "end": 105389, "lines": ["xor edx, edx", "mov r9d, 76h ; 'v'", "lea rcx, [r13+1]", "jmp loc_18625"], "succs": [[24, "jump"]]}, {"id": 416, "start": 105389, "end": 105406, "lines": ["xor edx, edx", "mov r9d, 62h ; 'b'", "lea rcx, [r13+1]", "jmp loc_18625"], "succs": [[24, "jump"]]}, {"id": 417, "start": 105406, "end": 105419, "lines": ["xor edx, edx", "mov r9d, 61h ; 'a'", "jmp loc_18621"], "succs": [[23, "jump"]]}, {"id": 418, "start": 105419, "end": 105436, "lines": ["xor edx, edx", "mov r9d, 66h ; 'f'", "lea rcx, [r13+1]", "jmp loc_18625"], "succs": [[24, "jump"]]}, {"id": 419, "start": 105436, "end": 105504, "lines": ["mov [rbp+var_C0], r8", "mov edi, [rbp+wc]; wc", "mov byte ptr [rbp+var_B8], r11b", "mov byte ptr [rbp+var_90], r9b", "mov [rbp+var_88], rax", "call cs:iswprint_ptr", "movzx r9d, byte ptr [rbp+var_90]", "movzx r11d, byte ptr [rbp+var_B8]", "test eax, eax", "mov r8, [rbp+var_C0]", "jnz loc_18ED0"], "succs": [[157, "jump"], [420, "fall"]]}, {"id": 420, "start": 105504, "end": 105522, "lines": ["movzx eax, [rbp+var_65]", "mov rcx, [rbp+var_88]", "xor edx, edx", "jmp loc_18776"], "succs": [[50, "jump"]]}, {"id": 421, "start": 105522, "end": 105533, "lines": ["movzx eax, [rbp+var_65]", "xor edx, edx", "jmp loc_18776"], "succs": [[50, "jump"]]}, {"id": 422, "start": 105533, "end": 105539, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 423, "start": 13525, "end": 13531, "lines": ["call cs:abort_ptr; jumptable 00000000000184C7 default case"], "succs": []}]}, {"name": "main", "ea": 13664, "blocks": [{"id": 0, "start": 13664, "end": 13920, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r15", "push r14", "lea r15, [rbp+longind]", "mov r14d, 0FFFFFFFFh", "push r13", "lea r13, jpt_36A2", "push r12", "mov r12d, edi", "push rbx", "sub rsp, 78h", "mov [rbp+argv], rsi", "mov rdi, fs:28h", "mov [rbp+var_38], rdi", "mov rdi, [rsi]", "call sub_181E0", "lea rsi, accept+3; locale", "mov edi, 6; category", "call cs:setlocale_ptr", "lea rsi, dirname; \"/usr/share/locale\"", "lea rdi, aGnuCoreutils+4; domainname", "call cs:bindtextdomain_ptr", "lea rdi, aGnuCoreutils+4; domainname", "call cs:textdomain_ptr", "lea rdi, sub_10580", "mov cs:status, 2", "call sub_1C890", "movdqa xmm0, cs:xmmword_21CB0", "mov [rbp+var_7D], 0", "mov cs:dword_29210, 0", "mov cs:byte_292B8, 1", "mov cs:ptr, 0", "mov [rbp+var_90], 0FFFFFFFFFFFFFFFFh", "mov [rbp+var_98], 0FFFFFFFFFFFFFFFFh", "mov dword ptr [rbp+var_70], 0FFFFFFFFh", "mov dword ptr [rbp+var_78], 0FFFFFFFFh", "mov [rbp+var_7C], 0FFFFFFFFh", "mov [rbp+s1], 0", "movaps xmmword ptr cs:tp.tv_sec, xmm0", "nop dword ptr [rax]", "nop word ptr [rax+rax+00000000h]"], "succs": [[1, "fall"]]}, {"id": 1, "start": 13920, "end": 13962, "lines": ["mov [rbp+longind], 0FFFFFFFFh", "mov rsi, [rbp+argv]; argv", "mov r8, r15; longind", "lea rcx, longopts; longopts", "lea rdx, shortopts; \"abcdfghiklmnopqrstuvw:xABCDFGHI:LNQRST:\"...", "mov edi, r12d; argc", "call cs:getopt_long_ptr", "cmp eax, 0FFFFFFFFh", "jz short loc_36DA"], "succs": [[2, "fall"], [8, "jump"]]}, {"id": 2, "start": 13962, "end": 13978, "lines": ["add eax, 83h; switch 277 cases", "cmp eax, 114h", "ja def_36A2; jumptable 00000000000036A2 default case, cases -129-48,50-64,69,74,75,77,79,80,86,87,89,91-96,101,106,121-127"], "succs": [[3, "fall"], [288, "jump"]]}, {"id": 3, "start": 13978, "end": 13989, "lines": ["movsxd rax, ds:(jpt_36A2 - 1D174h)[r13+rax*4]", "add rax, r13", "jmp rax; switch jump"], "succs": [[4, "switch"], [5, "switch"], [6, "switch"], [7, "switch"], [84, "switch"], [85, "switch"], [86, "switch"], [87, "switch"], [88, "switch"], [89, "switch"], [90, "switch"], [94, "switch"], [95, "switch"], [96, "switch"], [97, "switch"], [98, "switch"], [99, "switch"], [100, "switch"], [104, "switch"], [106, "switch"], [107, "switch"], [108, "switch"], [111, "switch"], [112, "switch"], [113, "switch"], [114, "switch"], [115, "switch"], [116, "switch"], [117, "switch"], [118, "switch"], [119, "switch"], [120, "switch"], [121, "switch"], [122, "switch"], [123, "switch"], [124, "switch"], [125, "switch"], [126, "switch"], [127, "switch"], [128, "switch"], [129, "switch"], [130, "switch"], [131, "switch"], [132, "switch"], [133, "switch"], [134, "switch"], [135, "switch"], [136, "switch"], [137, "switch"], [138, "switch"], [139, "switch"], [140, "switch"], [145, "switch"], [146, "switch"], [147, "switch"], [148, "switch"], [149, "switch"], [150, "switch"], [198, "switch"], [288, "switch"], [290, "switch"]]}, {"id": 4, "start": 13989, "end": 14021, "lines": ["test r14d, r14d; jumptable 00000000000036A2 case 145", "mov cs:byte_2801D, 0", "setnz r14b", "xor r8d, r8d", "mov cs:byte_29312, 0", "mov dword ptr [rbp+var_78], r8d", "movzx r14d, r14b"], "succs": [[5, "fall"]]}, {"id": 5, "start": 14021, "end": 14030, "lines": ["mov [rbp+var_7C], 0; jumptable 00000000000036A2 case 140", "jmp short loc_3660"], "succs": [[1, "jump"]]}, {"id": 6, "start": 14030, "end": 14037, "lines": ["mov cs:byte_28029, 0; jumptable 00000000000036A2 case 103"], "succs": [[7, "fall"]]}, {"id": 7, "start": 14037, "end": 14042, "lines": ["xor r14d, r14d; jumptable 00000000000036A2 case 108", "jmp short loc_3660"], "succs": [[1, "jump"]]}, {"id": 8, "start": 14042, "end": 14056, "lines": ["cmp cs:qword_29320, 0", "jz loc_4575"], "succs": [[9, "fall"], [180, "jump"]]}, {"id": 9, "start": 14056, "end": 14065, "lines": ["test r14d, r14d", "js loc_38D2"], "succs": [[10, "fall"], [34, "jump"]]}, {"id": 10, "start": 14065, "end": 14086, "lines": ["mov cs:dword_2933C, r14d", "sub r14d, 2", "cmp r14d, 2", "ja loc_38AD"], "succs": [[11, "fall"], [31, "jump"]]}, {"id": 11, "start": 14086, "end": 14100, "lines": ["cmp [rbp+var_90], 0FFFFFFFFFFFFFFFFh", "jz loc_4FF6"], "succs": [[12, "fall"], [265, "jump"]]}, {"id": 12, "start": 14100, "end": 14107, "lines": ["mov rax, [rbp+var_90]"], "succs": [[13, "fall"]]}, {"id": 13, "start": 14107, "end": 14153, "lines": ["xor edx, edx", "mov ecx, 3", "mov cs:qword_292B0, rax", "div rcx", "cmp rdx, 1", "sbb rax, 0FFFFFFFFFFFFFFFFh", "mov cs:qword_29200, rax", "mov eax, cs:dword_2933C", "sub eax, 2", "cmp eax, 2", "ja short loc_3760"], "succs": [[14, "fall"], [16, "jump"]]}, {"id": 14, "start": 14153, "end": 14169, "lines": ["mov rax, [rbp+var_98]", "test rax, rax", "js loc_470D"], "succs": [[15, "fall"], [202, "jump"]]}, {"id": 15, "start": 14169, "end": 14176, "lines": ["mov cs:qword_292C0, rax"], "succs": [[16, "fall"]]}, {"id": 16, "start": 14176, "end": 14193, "lines": ["mov edx, [rbp+var_7C]", "mov eax, edx", "and eax, 1", "add edx, 1", "jz loc_4759"], "succs": [[17, "fall"], [205, "jump"]]}, {"id": 17, "start": 14193, "end": 14209, "lines": ["mov cs:byte_292D8, al", "cmp dword ptr [rbp+var_78], 0", "js loc_4482"], "succs": [[18, "fall"], [165, "jump"]]}, {"id": 18, "start": 14209, "end": 14220, "lines": ["mov esi, dword ptr [rbp+var_78]", "xor edi, edi", "call sub_19EA0"], "succs": [[19, "fall"]]}, {"id": 19, "start": 14220, "end": 14245, "lines": ["xor edi, edi", "call sub_19E80", "mov r13d, eax", "mov eax, cs:dword_2933C", "test eax, eax", "jz loc_4442"], "succs": [[20, "fall"], [161, "jump"]]}, {"id": 20, "start": 14245, "end": 14257, "lines": ["sub eax, 2", "cmp eax, 1", "jbe loc_4434"], "succs": [[21, "fall"], [160, "jump"]]}, {"id": 21, "start": 14257, "end": 14289, "lines": ["mov cs:byte_293A8, 0", "xor edi, edi", "call sub_19E30", "mov cs:qword_292D0, rax", "cmp r13d, 7", "jz loc_46B3"], "succs": [[22, "fall"], [197, "jump"]]}, {"id": 22, "start": 14289, "end": 14300, "lines": ["mov eax, cs:dword_29314", "cmp eax, 1", "jbe short loc_3822"], "succs": [[23, "fall"], [26, "jump"]]}, {"id": 23, "start": 14300, "end": 14320, "lines": ["lea rdx, asc_1F23B; \"*=>@|\"", "lea r13d, [rax-2]", "movzx eax, byte ptr [rdx+r13]", "test al, al", "jz short loc_3822"], "succs": [[24, "fall"], [26, "jump"]]}, {"id": 24, "start": 14320, "end": 14336, "lines": ["add r13, rdx", "xchg ax, ax", "nop word ptr [rax+rax+00000000h]"], "succs": [[25, "fall"]]}, {"id": 25, "start": 14336, "end": 14370, "lines": ["add r13, 1", "mov rdi, cs:qword_292D0", "movsx esi, al", "mov edx, 1", "call sub_19EC0", "movzx eax, byte ptr [r13+0]", "test al, al", "jnz short loc_3800"], "succs": [[26, "fall"], [25, "jump"]]}, {"id": 26, "start": 14370, "end": 14457, "lines": ["xor edi, edi", "call sub_19E30", "mov edx, 1", "mov esi, 3Ah ; ':'", "mov cs:qword_292C8, rax", "mov rdi, rax", "call sub_19EC0", "mov edx, cs:dword_2933C", "movzx eax, cs:byte_29311", "xor eax, 1", "test edx, edx", "setz cl", "and eax, ecx", "movsx ecx, cs:byte_2801D", "and al, cs:byte_29318", "mov cs:byte_29318, al", "movzx eax, al", "cmp ecx, eax", "jl loc_5460"], "succs": [[27, "fall"], [321, "jump"]]}, {"id": 27, "start": 14457, "end": 14467, "lines": ["cmp dword ptr [rbp+var_70], 0", "js loc_4551"], "succs": [[28, "fall"], [177, "jump"]]}, {"id": 28, "start": 14467, "end": 14484, "lines": ["mov eax, dword ptr [rbp+var_70]", "mov cs:dword_29330, eax", "test edx, edx", "jnz loc_397B"], "succs": [[29, "fall"], [44, "jump"]]}, {"id": 29, "start": 14484, "end": 14497, "lines": ["xor r13d, r13d", "cmp [rbp+s1], 0", "jz short loc_38F2"], "succs": [[30, "fall"], [36, "jump"]]}, {"id": 30, "start": 14497, "end": 14509, "lines": ["mov rbx, [rbp+s1]", "jmp loc_3C37"], "succs": [[77, "jump"]]}, {"id": 31, "start": 14509, "end": 14522, "lines": ["cmp cs:byte_29312, 0", "jnz loc_3706"], "succs": [[11, "jump"], [32, "fall"]]}, {"id": 32, "start": 14522, "end": 14536, "lines": ["cmp [rbp+var_90], 0FFFFFFFFFFFFFFFFh", "jnz loc_3714"], "succs": [[12, "jump"], [33, "fall"]]}, {"id": 33, "start": 14536, "end": 14546, "lines": ["mov eax, 50h ; 'P'", "jmp loc_371B"], "succs": [[13, "jump"]]}, {"id": 34, "start": 14546, "end": 14560, "lines": ["mov eax, cs:dword_293D0", "test eax, eax", "jz loc_46FB"], "succs": [[35, "fall"], [201, "jump"]]}, {"id": 35, "start": 14560, "end": 14578, "lines": ["xor r14d, r14d", "sub eax, 1", "setz r14b", "add r14d, r14d", "jmp loc_36F1"], "succs": [[10, "jump"]]}, {"id": 36, "start": 14578, "end": 14607, "lines": ["lea rdi, name; \"TIME_STYLE\"", "call cs:getenv_ptr", "mov [rbp+s1], rax", "test rax, rax", "jnz loc_539D"], "succs": [[37, "fall"], [313, "jump"]]}, {"id": 37, "start": 14607, "end": 14621, "lines": ["lea rax, dirname+0Bh; \"locale\"", "mov [rbp+s1], rax"], "succs": [[38, "fall"]]}, {"id": 38, "start": 14621, "end": 14662, "lines": ["mov rdi, [rbp+s1]", "mov ecx, 4", "lea rdx, unk_1D780", "lea rsi, off_27680; \"full-iso\"", "call sub_F500", "test rax, rax", "js loc_51B2"], "succs": [[39, "fall"], [284, "jump"]]}, {"id": 39, "start": 14662, "end": 14672, "lines": ["cmp rax, 2", "jz loc_5379"], "succs": [[40, "fall"], [312, "jump"]]}, {"id": 40, "start": 14672, "end": 14678, "lines": ["jg loc_52BE"], "succs": [[41, "fall"], [298, "jump"]]}, {"id": 41, "start": 14678, "end": 14687, "lines": ["test rax, rax", "jz loc_535D"], "succs": [[42, "fall"], [311, "jump"]]}, {"id": 42, "start": 14687, "end": 14710, "lines": ["lea rax, aYMDHM; \"%Y-%m-%d %H:%M\"", "movq xmm0, rax", "punpcklqdq xmm0, xmm0", "movaps xmmword ptr cs:off_28040, xmm0; \"%b %e %Y\""], "succs": [[43, "fall"]]}, {"id": 43, "start": 14710, "end": 14715, "lines": ["call sub_5C10"], "succs": [[44, "fall"]]}, {"id": 44, "start": 14715, "end": 14740, "lines": ["movzx eax, cs:byte_29312", "movsxd r13, cs:optind", "mov byte ptr [rbp+var_7C], al", "test al, al", "jnz loc_4772"], "succs": [[45, "fall"], [207, "jump"]]}, {"id": 45, "start": 14740, "end": 14749, "lines": ["cmp cs:byte_292F4, 0", "jz short loc_39A4"], "succs": [[46, "fall"], [47, "jump"]]}, {"id": 46, "start": 14749, "end": 14756, "lines": ["mov cs:byte_292FD, 1"], "succs": [[47, "fall"]]}, {"id": 47, "start": 14756, "end": 14765, "lines": ["cmp cs:dword_292F8, 0", "jnz short loc_39C5"], "succs": [[48, "fall"], [50, "jump"]]}, {"id": 48, "start": 14765, "end": 14783, "lines": ["cmp cs:byte_292F5, 0", "mov eax, 1", "jz loc_45E1"], "succs": [[49, "fall"], [184, "jump"]]}, {"id": 49, "start": 14783, "end": 14789, "lines": ["mov cs:dword_292F8, eax"], "succs": [[50, "fall"]]}, {"id": 50, "start": 14789, "end": 14798, "lines": ["cmp cs:byte_292F6, 0", "jz short loc_3A1F"], "succs": [[51, "fall"], [53, "jump"]]}, {"id": 51, "start": 14798, "end": 14848, "lines": ["lea r8, free", "lea rcx, sub_5610", "xor esi, esi", "mov edi, 1Eh", "lea rdx, sub_5600", "call sub_12460", "mov cs:qword_293C8, rax", "test rax, rax", "jz loc_54D0"], "succs": [[52, "fall"], [324, "jump"]]}, {"id": 52, "start": 14848, "end": 14879, "lines": ["mov r8, cs:free_ptr", "mov rcx, cs:malloc_ptr", "xor edx, edx", "xor esi, esi", "lea rdi, unk_290E0", "call sub_17F00"], "succs": [[53, "fall"]]}, {"id": 53, "start": 14879, "end": 15014, "lines": ["lea rdi, aTz; \"TZ\"", "call cs:getenv_ptr", "mov rdi, rax", "call sub_1AAF0", "movzx edx, cs:byte_29369", "movzx ecx, cs:byte_2932C", "or cl, cs:byte_29311", "mov cs:qword_292A8, rax", "or ecx, edx", "cmp cs:dword_2933C, 0", "setz al", "or ecx, eax", "mov eax, cs:dword_29330", "sub eax, 3", "and eax, 0FFFFFFFDh", "setz al", "or dl, cs:byte_292F6", "or ecx, eax", "movzx eax, cs:byte_29312", "mov cs:byte_292A2, cl", "or edx, eax", "or dl, cs:byte_292F4", "cmp cs:dword_29314, 0", "setnz sil", "xor ecx, 1", "or edx, esi", "and edx, ecx", "mov cs:byte_292A1, dl", "test al, al", "jz short loc_3AB0"], "succs": [[54, "fall"], [55, "jump"]]}, {"id": 54, "start": 15014, "end": 15024, "lines": ["mov edi, 15h", "call sub_5640"], "succs": [[55, "fall"]]}, {"id": 55, "start": 15024, "end": 15043, "lines": ["cmp cs:byte_29318, 0", "mov cs:byte_292A0, al", "jnz loc_499A"], "succs": [[56, "fall"], [236, "jump"]]}, {"id": 56, "start": 15043, "end": 15056, "lines": ["cmp cs:byte_29311, 0", "jnz loc_4A44"], "succs": [[57, "fall"], [242, "jump"]]}, {"id": 57, "start": 15056, "end": 15114, "lines": ["mov edi, 5140h", "mov r14d, r12d", "mov cs:qword_293B8, 64h ; 'd'", "call sub_1B7F0", "sub r14d, r13d", "mov cs:qword_293C0, rax", "xor eax, eax", "mov cs:qword_293B0, rax", "call sub_79A0", "test r14d, r14d", "jle loc_44FC"], "succs": [[58, "fall"], [171, "jump"]]}, {"id": 58, "start": 15114, "end": 15120, "lines": ["mov rbx, [rbp+argv]", "xchg ax, ax"], "succs": [[59, "fall"]]}, {"id": 59, "start": 15120, "end": 15147, "lines": ["mov rdi, [rbx+r13*8]; s", "xor ecx, ecx", "mov edx, 1", "xor esi, esi", "add r13, 1", "call sub_C320", "cmp r12d, r13d", "jg short loc_3B10"], "succs": [[60, "fall"], [59, "jump"]]}, {"id": 60, "start": 15147, "end": 15161, "lines": ["cmp cs:qword_293B0, 0", "jnz loc_49DD"], "succs": [[61, "fall"], [237, "jump"]]}, {"id": 61, "start": 15161, "end": 15167, "lines": ["sub r14d, 1", "jg short loc_3B9B"], "succs": [[62, "fall"], [66, "jump"]]}, {"id": 62, "start": 15167, "end": 15172, "lines": ["jmp loc_452A"], "succs": [[174, "jump"]]}, {"id": 63, "start": 15176, "end": 15202, "lines": ["mov rax, [rbx+18h]", "mov rdi, [rbx]; name", "mov cs:ptr, rax", "mov rax, cs:qword_293C8", "test rax, rax", "jz short loc_3B6B"], "succs": [[64, "fall"], [65, "jump"]]}, {"id": 64, "start": 15202, "end": 15211, "lines": ["test rdi, rdi", "jz loc_43C6"], "succs": [[65, "fall"], [157, "jump"]]}, {"id": 65, "start": 15211, "end": 15259, "lines": ["movzx edx, byte ptr [rbx+10h]", "mov rsi, [rbx+8]", "call sub_D4D0", "mov rdi, [rbx]; ptr", "call cs:free_ptr", "mov rdi, [rbx+8]; ptr", "call cs:free_ptr", "mov rdi, rbx; ptr", "call cs:free_ptr", "mov cs:byte_292B8, 1"], "succs": [[66, "fall"]]}, {"id": 66, "start": 15259, "end": 15271, "lines": ["mov rbx, cs:ptr", "test rbx, rbx", "jnz short loc_3B48"], "succs": [[63, "jump"], [67, "fall"]]}, {"id": 67, "start": 15271, "end": 15280, "lines": ["cmp cs:byte_29312, 0", "jz short loc_3BBD"], "succs": [[68, "fall"], [69, "jump"]]}, {"id": 68, "start": 15280, "end": 15293, "lines": ["cmp cs:byte_29310, 0", "jnz loc_4605"], "succs": [[69, "fall"], [187, "jump"]]}, {"id": 69, "start": 15293, "end": 15306, "lines": ["cmp cs:byte_29318, 0", "jnz loc_4E62"], "succs": [[70, "fall"], [245, "jump"]]}, {"id": 70, "start": 15306, "end": 15318, "lines": ["mov rbx, cs:qword_293C8", "test rbx, rbx", "jz short loc_3BF1"], "succs": [[71, "fall"], [73, "jump"]]}, {"id": 71, "start": 15318, "end": 15336, "lines": ["mov rdi, rbx", "call sub_11F30", "test rax, rax", "jnz loc_3060"], "succs": [[72, "fall"], [326, "jump"]]}, {"id": 72, "start": 15336, "end": 15345, "lines": ["mov rdi, rbx; ptr", "call sub_126F0"], "succs": [[73, "fall"]]}, {"id": 73, "start": 15345, "end": 15370, "lines": ["mov eax, cs:dword_29210", "mov rdx, [rbp+var_38]", "sub rdx, fs:28h", "jnz loc_53F9"], "succs": [[74, "fall"], [317, "jump"]]}, {"id": 74, "start": 15370, "end": 15385, "lines": ["lea rsp, [rbp-28h]", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 75, "start": 15392, "end": 15411, "lines": ["mov edi, 2", "call sub_11B20", "test al, al", "jz loc_397B"], "succs": [[44, "jump"], [76, "fall"]]}, {"id": 76, "start": 15411, "end": 15415, "lines": ["add rbx, 6"], "succs": [[77, "fall"]]}, {"id": 77, "start": 15415, "end": 15440, "lines": ["mov edx, 6; n", "lea rsi, s2; \"posix-\"", "mov rdi, rbx; s1", "call cs:strncmp_ptr", "test eax, eax", "jz short loc_3C20"], "succs": [[75, "jump"], [78, "fall"]]}, {"id": 78, "start": 15440, "end": 15456, "lines": ["mov [rbp+s1], rbx", "cmp byte ptr [rbx], 2Bh ; '+'", "jnz loc_391D"], "succs": [[38, "jump"], [79, "fall"]]}, {"id": 79, "start": 15456, "end": 15483, "lines": ["lea r14, [rbx+1]", "mov esi, 0Ah; c", "mov rdi, r14; s", "call cs:strchr_ptr", "test rax, rax", "jz loc_5355"], "succs": [[80, "fall"], [310, "jump"]]}, {"id": 80, "start": 15483, "end": 15526, "lines": ["lea rcx, [rax+1]", "mov [rbp+var_78], rax", "mov esi, 0Ah; c", "mov [rbp+var_70], rcx", "mov rdi, rcx; s", "call cs:strchr_ptr", "mov rcx, [rbp+var_70]", "mov rdx, [rbp+var_78]", "test rax, rax", "jnz loc_53B5"], "succs": [[81, "fall"], [315, "jump"]]}, {"id": 81, "start": 15526, "end": 15535, "lines": ["test r13, r13", "jz loc_52B6"], "succs": [[82, "fall"], [297, "jump"]]}, {"id": 82, "start": 15535, "end": 15561, "lines": ["sub rdx, r14", "mov [rbp+var_70], rcx", "mov rdi, r14", "mov rsi, rdx", "call sub_1BF80", "mov rcx, [rbp+var_70]", "mov r14, rax"], "succs": [[83, "fall"]]}, {"id": 83, "start": 15561, "end": 15580, "lines": ["mov cs:off_28040, r14; \"%b %e %Y\"", "mov cs:off_28048, rcx; \"%b %e %H:%M\"", "jmp loc_3976"], "succs": [[43, "jump"]]}, {"id": 84, "start": 15580, "end": 15599, "lines": ["mov rax, cs:optarg; jumptable 00000000000036A2 case 144", "mov [rbp+s1], rax", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 85, "start": 15599, "end": 15675, "lines": ["lea rbx, unk_1D680; jumptable 00000000000036A2 case 143", "lea rdx, off_26FC0; \"atime\"", "push rax", "mov r8d, 4", "push 1", "mov r9, cs:off_281E8", "mov rcx, rbx", "lea rdi, aTime; \"--time\"", "mov rsi, cs:optarg", "call sub_F860", "mov cs:byte_29334, 1", "mov eax, [rbx+rax*4]", "mov cs:dword_29338, eax", "pop rax", "pop rdx", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 86, "start": 15675, "end": 15741, "lines": ["lea rbx, unk_1D6B0; jumptable 00000000000036A2 case 142", "lea rdi, aSort; \"--sort\"", "push rcx", "mov r8d, 4", "push 1", "mov rsi, cs:optarg", "mov rcx, rbx", "lea rdx, off_27020; \"none\"", "mov r9, cs:off_281E8", "call sub_F860", "mov eax, [rbx+rax*4]", "mov dword ptr [rbp+var_70], eax", "pop rsi", "pop rdi", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 87, "start": 15741, "end": 15788, "lines": ["mov cs:dword_29328, 90h; jumptable 00000000000036A2 case 141", "mov cs:dword_2931C, 90h", "mov cs:qword_29320, 1", "mov cs:qword_28020, 1", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 88, "start": 15788, "end": 15857, "lines": ["lea rbx, unk_22300; jumptable 00000000000036A2 case 139", "mov r8d, 4", "push r9", "lea rdx, off_27A00; \"literal\"", "push 1", "mov r9, cs:off_281E8", "mov rcx, rbx", "lea rdi, aQuotingStyle; \"--quoting-style\"", "mov rsi, cs:optarg", "call sub_F860", "mov eax, [rbx+rax*4]", "mov dword ptr [rbp+var_78], eax", "pop r10", "pop r11", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 89, "start": 15857, "end": 15926, "lines": ["lea rbx, aLcrcecrsnofidi+30h; jumptable 00000000000036A2 case 138", "lea rdx, off_27640; \"none\"", "push rax", "mov r8d, 4", "push 1", "mov r9, cs:off_281E8", "mov rcx, rbx", "lea rdi, aIndicatorStyle; \"--indicator-style\"", "mov rsi, cs:optarg", "call sub_F860", "mov eax, [rbx+rax*4]", "mov cs:dword_29314, eax", "pop rax", "pop rdx", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 90, "start": 15926, "end": 15942, "lines": ["mov rsi, cs:optarg; jumptable 00000000000036A2 case 137", "test rsi, rsi", "jz loc_43AF"], "succs": [[91, "fall"], [155, "jump"]]}, {"id": 91, "start": 15942, "end": 16002, "lines": ["lea rbx, unk_1D640", "lea rdx, off_26F60; \"always\"", "push rcx", "mov r8d, 4", "push 1", "lea rdi, aHyperlink; \"--hyperlink\"", "mov r9, cs:off_281E8", "mov rcx, rbx", "call sub_F860", "pop rsi", "pop rdi", "mov edx, [rbx+rax*4]", "cmp edx, 1", "jz loc_43AF"], "succs": [[92, "fall"], [155, "jump"]]}, {"id": 92, "start": 16002, "end": 16013, "lines": ["xor eax, eax", "cmp edx, 2", "jnz loc_43B4"], "succs": [[93, "fall"], [156, "jump"]]}, {"id": 93, "start": 16013, "end": 16023, "lines": ["call sub_5BE0", "jmp loc_43B4"], "succs": [[156, "jump"]]}, {"id": 94, "start": 16023, "end": 16064, "lines": ["mov edi, 10h; jumptable 00000000000036A2 case 136", "call sub_1B7F0", "movq xmm0, cs:optarg", "movhps xmm0, cs:qword_292E0", "mov cs:qword_292E0, rax", "movups xmmword ptr [rax], xmm0", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 95, "start": 16064, "end": 16076, "lines": ["mov cs:byte_292F4, 1; jumptable 00000000000036A2 case 135", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 96, "start": 16076, "end": 16098, "lines": ["lea rax, aFullIso; jumptable 00000000000036A2 case 134", "xor r14d, r14d", "mov [rbp+s1], rax", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 97, "start": 16098, "end": 16163, "lines": ["lea rbx, unk_1D6D0; jumptable 00000000000036A2 case 133", "mov r8d, 4", "lea rdx, off_27060; \"verbose\"", "push r11", "mov rcx, rbx", "push 1", "mov r9, cs:off_281E8", "lea rdi, aFormat; \"--format\"", "mov rsi, cs:optarg", "call sub_F860", "mov r14d, [rbx+rax*4]", "pop rbx", "pop rax", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 98, "start": 16163, "end": 16178, "lines": ["mov cs:dword_29314, 2; jumptable 00000000000036A2 case 132", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 99, "start": 16178, "end": 16193, "lines": ["mov cs:dword_292F8, 3; jumptable 00000000000036A2 case 131", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 100, "start": 16193, "end": 16209, "lines": ["mov rsi, cs:optarg; jumptable 00000000000036A2 case 130", "test rsi, rsi", "jz loc_4398"], "succs": [[101, "fall"], [153, "jump"]]}, {"id": 101, "start": 16209, "end": 16272, "lines": ["lea rbx, unk_1D640", "lea rdx, off_26F60; \"always\"", "push r8", "mov r8d, 4", "push 1", "mov r9, cs:off_281E8", "mov rcx, rbx", "lea rdi, aColor; \"--color\"", "call sub_F860", "pop r9", "pop r10", "mov edx, [rbx+rax*4]", "cmp edx, 1", "jz loc_4398"], "succs": [[102, "fall"], [153, "jump"]]}, {"id": 102, "start": 16272, "end": 16283, "lines": ["xor eax, eax", "cmp edx, 2", "jnz loc_439D"], "succs": [[103, "fall"], [154, "jump"]]}, {"id": 103, "start": 16283, "end": 16293, "lines": ["call sub_5BE0", "jmp loc_439D"], "succs": [[154, "jump"]]}, {"id": 104, "start": 16293, "end": 16328, "lines": ["mov rdi, cs:optarg; jumptable 00000000000036A2 case 129", "lea rdx, qword_29320", "lea rsi, dword_29328", "call sub_13D90", "test eax, eax", "jnz loc_53FF"], "succs": [[105, "fall"], [318, "jump"]]}, {"id": 105, "start": 16328, "end": 16359, "lines": ["mov eax, cs:dword_29328", "mov cs:dword_2931C, eax", "mov rax, cs:qword_29320", "mov cs:qword_28020, rax", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 106, "start": 16359, "end": 16371, "lines": ["mov cs:byte_2932E, 1; jumptable 00000000000036A2 case 128", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 107, "start": 16371, "end": 16382, "lines": ["mov r14d, 3; jumptable 00000000000036A2 case 120", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 108, "start": 16382, "end": 16411, "lines": ["mov rdi, cs:optarg; jumptable 00000000000036A2 case 119", "call sub_5B70", "mov [rbp+var_90], rax", "add rax, 1", "jnz loc_3660"], "succs": [[1, "jump"], [109, "fall"]]}, {"id": 109, "start": 16411, "end": 16466, "lines": ["mov rdi, cs:optarg", "call sub_1A960", "mov edx, 5; category", "xor edi, edi; domainname", "lea rsi, aInvalidLineWid; \"invalid line width\"", "mov rbx, rax", "call cs:dcgettext_ptr", "mov rdx, [rbp+var_38]", "sub rdx, fs:28h", "jnz loc_53F9"], "succs": [[110, "fall"], [317, "jump"]]}, {"id": 110, "start": 16466, "end": 16494, "lines": ["mov rcx, rax", "mov r8, rbx", "lea rdx, aSS; \"%s: %s\"", "xor esi, esi", "mov edi, 2", "xor eax, eax", "call error"], "succs": [[111, "fall"]]}, {"id": 111, "start": 16494, "end": 16506, "lines": ["mov dword ptr [rbp+var_70], 4; jumptable 00000000000036A2 case 118", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 112, "start": 16506, "end": 16528, "lines": ["mov cs:dword_29338, 2; jumptable 00000000000036A2 case 117", "mov cs:byte_29334, 1", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 113, "start": 16528, "end": 16540, "lines": ["mov dword ptr [rbp+var_70], 5; jumptable 00000000000036A2 case 116", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 114, "start": 16540, "end": 16552, "lines": ["mov cs:byte_2932C, 1; jumptable 00000000000036A2 case 115", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 115, "start": 16552, "end": 16564, "lines": ["mov cs:byte_2932F, 1; jumptable 00000000000036A2 case 114", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 116, "start": 16564, "end": 16576, "lines": ["mov [rbp+var_7C], 1; jumptable 00000000000036A2 case 113", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 117, "start": 16576, "end": 16591, "lines": ["mov cs:dword_29314, 1; jumptable 00000000000036A2 case 112", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 118, "start": 16591, "end": 16606, "lines": ["mov cs:byte_28028, 0; jumptable 00000000000036A2 case 111", "xor r14d, r14d", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 119, "start": 16606, "end": 16621, "lines": ["mov cs:byte_2932D, 1; jumptable 00000000000036A2 case 110", "xor r14d, r14d", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 120, "start": 16621, "end": 16632, "lines": ["mov r14d, 4; jumptable 00000000000036A2 case 109", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 121, "start": 16632, "end": 16644, "lines": ["mov cs:byte_292FC, 1; jumptable 00000000000036A2 case 105", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 122, "start": 16644, "end": 16691, "lines": ["mov cs:dword_29328, 0B0h; jumptable 00000000000036A2 case 104", "mov cs:dword_2931C, 0B0h", "mov cs:qword_29320, 1", "mov cs:qword_28020, 1", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 123, "start": 16691, "end": 16713, "lines": ["mov cs:dword_292F0, 2; jumptable 00000000000036A2 case 102", "mov dword ptr [rbp+var_70], 6", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 124, "start": 16713, "end": 16725, "lines": ["mov cs:byte_292F5, 1; jumptable 00000000000036A2 case 100", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 125, "start": 16725, "end": 16747, "lines": ["mov cs:dword_29338, 1; jumptable 00000000000036A2 case 99", "mov cs:byte_29334, 1", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 126, "start": 16747, "end": 16759, "lines": ["mov dword ptr [rbp+var_78], 7; jumptable 00000000000036A2 case 98", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 127, "start": 16759, "end": 16774, "lines": ["mov cs:dword_292F0, 2; jumptable 00000000000036A2 case 97", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 128, "start": 16774, "end": 16786, "lines": ["mov cs:byte_29369, 1; jumptable 00000000000036A2 case 90", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 129, "start": 16786, "end": 16798, "lines": ["mov dword ptr [rbp+var_70], 1; jumptable 00000000000036A2 case 88", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 130, "start": 16798, "end": 16810, "lines": ["mov dword ptr [rbp+var_70], 6; jumptable 00000000000036A2 case 85", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 131, "start": 16810, "end": 16887, "lines": ["mov edx, 5; jumptable 00000000000036A2 case 84", "lea rsi, aInvalidTabSize; \"invalid tab size\"", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "push 0", "lea r8, accept+3; \"\"", "xor edx, edx", "push 2", "mov r9, rax", "mov rdi, cs:optarg", "xor esi, esi", "mov rcx, 7FFFFFFFFFFFFFFFh", "call sub_1BD00", "mov [rbp+var_98], rax", "pop r8", "pop r9", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 132, "start": 16887, "end": 16899, "lines": ["mov dword ptr [rbp+var_70], 3; jumptable 00000000000036A2 case 83", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 133, "start": 16899, "end": 16911, "lines": ["mov cs:byte_292F6, 1; jumptable 00000000000036A2 case 82", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 134, "start": 16911, "end": 16923, "lines": ["mov dword ptr [rbp+var_78], 5; jumptable 00000000000036A2 case 81", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 135, "start": 16923, "end": 16935, "lines": ["xor r10d, r10d; jumptable 00000000000036A2 case 78", "mov dword ptr [rbp+var_78], r10d", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 136, "start": 16935, "end": 16950, "lines": ["mov cs:dword_292F8, 4; jumptable 00000000000036A2 case 76", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 137, "start": 16950, "end": 16967, "lines": ["mov rdi, cs:optarg; jumptable 00000000000036A2 case 73", "call sub_5A60", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 138, "start": 16967, "end": 16982, "lines": ["mov cs:dword_292F8, 2; jumptable 00000000000036A2 case 72", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 139, "start": 16982, "end": 16994, "lines": ["mov cs:byte_28028, 0; jumptable 00000000000036A2 case 71", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 140, "start": 16994, "end": 17006, "lines": ["mov rsi, cs:optarg; jumptable 00000000000036A2 case 70", "test rsi, rsi", "jz short loc_42BD"], "succs": [[141, "fall"], [144, "jump"]]}, {"id": 141, "start": 17006, "end": 17063, "lines": ["lea rbx, unk_1D640", "lea rdx, off_26F60; \"always\"", "mov r8d, 4", "push r11", "mov rcx, rbx", "push 1", "mov r9, cs:off_281E8", "lea rdi, aClassify; \"--classify\"", "call sub_F860", "mov eax, [rbx+rax*4]", "pop rbx", "pop rdx", "cmp eax, 1", "jz short loc_42BD"], "succs": [[142, "fall"], [144, "jump"]]}, {"id": 142, "start": 17063, "end": 17072, "lines": ["cmp eax, 2", "jnz loc_3660"], "succs": [[1, "jump"], [143, "fall"]]}, {"id": 143, "start": 17072, "end": 17085, "lines": ["call sub_5BE0", "test al, al", "jz loc_3660"], "succs": [[1, "jump"], [144, "fall"]]}, {"id": 144, "start": 17085, "end": 17100, "lines": ["mov cs:dword_29314, 3", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 145, "start": 17100, "end": 17122, "lines": ["mov cs:byte_29311, 0; jumptable 00000000000036A2 case 68", "xor r14d, r14d", "mov cs:byte_29318, 1", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 146, "start": 17122, "end": 17133, "lines": ["mov r14d, 2; jumptable 00000000000036A2 case 67", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 147, "start": 17133, "end": 17162, "lines": ["lea rdi, asc_1F170+1; jumptable 00000000000036A2 case 66", "call sub_5A60", "lea rdi, asc_1F170; \".*~\"", "call sub_5A60", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 148, "start": 17162, "end": 17177, "lines": ["mov cs:dword_292F0, 1; jumptable 00000000000036A2 case 65", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 149, "start": 17177, "end": 17193, "lines": ["test r14d, r14d; jumptable 00000000000036A2 case 49", "setnz r14b", "movzx r14d, r14b", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 150, "start": 17193, "end": 17252, "lines": ["lea rsi, aDavidMackenzie; jumptable 00000000000036A2 case -131", "mov rdi, rsi; msgid", "call sub_18270", "lea rsi, aRichardMStallm; \"Richard M. Stallman\"", "mov rbx, rax", "mov rdi, rsi; msgid", "call sub_18270", "mov edx, cs:dword_293D0", "mov rcx, cs:off_281E0; \"9.11\"", "mov r8, rax", "test edx, edx", "jz loc_4476"], "succs": [[151, "fall"], [164, "jump"]]}, {"id": 151, "start": 17252, "end": 17268, "lines": ["sub edx, 1", "lea rsi, aVdir; \"vdir\"", "jz loc_46EF"], "succs": [[152, "fall"], [200, "jump"]]}, {"id": 152, "start": 17268, "end": 17304, "lines": ["mov r9, rbx", "push rdi", "lea rdx, aGnuCoreutils; \"GNU coreutils\"", "xor eax, eax", "mov rdi, cs:stdout", "push 0", "call sub_1B630", "xor edi, edi; status", "call cs:exit_ptr"], "succs": []}, {"id": 153, "start": 17304, "end": 17309, "lines": ["mov eax, 1"], "succs": [[154, "fall"]]}, {"id": 154, "start": 17309, "end": 17327, "lines": ["mov cs:byte_29312, al", "and cs:byte_29312, 1", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 155, "start": 17327, "end": 17332, "lines": ["mov eax, 1"], "succs": [[156, "fall"]]}, {"id": 156, "start": 17332, "end": 17350, "lines": ["mov cs:byte_29311, al", "and cs:byte_29311, 1", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 157, "start": 17350, "end": 17377, "lines": ["mov rdx, cs:qword_290F8", "mov rcx, rdx", "sub rcx, cs:qword_290F0", "cmp rcx, 0Fh", "jbe loc_3080"], "succs": [[158, "fall"], [327, "jump"]]}, {"id": 158, "start": 17377, "end": 17418, "lines": ["movdqu xmm0, xmmword ptr [rdx-10h]", "lea rcx, [rdx-10h]", "mov rsi, r15", "mov rdi, rax", "mov cs:qword_290F8, rcx", "movaps xmmword ptr [rbp+longind], xmm0", "call sub_12D20", "test rax, rax", "jz loc_30A0"], "succs": [[159, "fall"], [328, "jump"]]}, {"id": 159, "start": 17418, "end": 17460, "lines": ["mov rdi, rax; ptr", "call cs:free_ptr", "mov rdi, [rbx]; ptr", "call cs:free_ptr", "mov rdi, [rbx+8]; ptr", "call cs:free_ptr", "mov rdi, rbx; ptr", "call cs:free_ptr", "jmp loc_3B9B"], "succs": [[66, "jump"]]}, {"id": 160, "start": 17460, "end": 17474, "lines": ["cmp cs:qword_292B0, 0", "jz loc_37B1"], "succs": [[21, "jump"], [161, "fall"]]}, {"id": 161, "start": 17474, "end": 17484, "lines": ["cmp r13d, 6", "ja loc_37B1"], "succs": [[21, "jump"], [162, "fall"]]}, {"id": 162, "start": 17484, "end": 17499, "lines": ["mov eax, 4Ah ; 'J'", "bt rax, r13", "jnb loc_46D4"], "succs": [[163, "fall"], [199, "jump"]]}, {"id": 163, "start": 17499, "end": 17526, "lines": ["mov cs:byte_293A8, 1", "xor edi, edi", "call sub_19E30", "mov cs:qword_292D0, rax", "jmp loc_37D1"], "succs": [[22, "jump"]]}, {"id": 164, "start": 17526, "end": 17538, "lines": ["lea rsi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_4374"], "succs": [[152, "jump"]]}, {"id": 165, "start": 17538, "end": 17559, "lines": ["lea rdi, aQuotingStyle_0; \"QUOTING_STYLE\"", "call cs:getenv_ptr", "mov r13, rax", "test rax, rax", "jz short loc_44CF"], "succs": [[166, "fall"], [168, "jump"]]}, {"id": 166, "start": 17559, "end": 17598, "lines": ["lea r14, unk_22300", "mov ecx, 4", "lea rsi, off_27A00; \"literal\"", "mov rdi, rax", "mov rdx, r14", "call sub_F500", "test eax, eax", "js loc_5499"], "succs": [[167, "fall"], [323, "jump"]]}, {"id": 167, "start": 17598, "end": 17615, "lines": ["cdqe", "mov eax, [r14+rax*4]", "mov dword ptr [rbp+var_78], eax", "test eax, eax", "jns loc_3781"], "succs": [[18, "jump"], [168, "fall"]]}, {"id": 168, "start": 17615, "end": 17635, "lines": ["cmp cs:dword_293D0, 0", "mov dword ptr [rbp+var_78], 7", "jnz loc_3781"], "succs": [[18, "jump"], [169, "fall"]]}, {"id": 169, "start": 17635, "end": 17648, "lines": ["call sub_5BE0", "test al, al", "jz loc_378C"], "succs": [[19, "jump"], [170, "fall"]]}, {"id": 170, "start": 17648, "end": 17660, "lines": ["mov dword ptr [rbp+var_78], 3", "jmp loc_3781"], "succs": [[18, "jump"]]}, {"id": 171, "start": 17660, "end": 17673, "lines": ["cmp cs:byte_292F5, 0", "jnz loc_4696"], "succs": [[172, "fall"], [196, "jump"]]}, {"id": 172, "start": 17673, "end": 17692, "lines": ["mov edx, 1", "xor esi, esi", "lea rdi, asc_1F91A; \".\"", "call sub_5FD0"], "succs": [[173, "fall"]]}, {"id": 173, "start": 17692, "end": 17706, "lines": ["cmp cs:qword_293B0, 0", "jnz loc_49DD"], "succs": [[174, "fall"], [237, "jump"]]}, {"id": 174, "start": 17706, "end": 17722, "lines": ["mov rbx, cs:ptr", "test rbx, rbx", "jz loc_3BA7"], "succs": [[67, "jump"], [175, "fall"]]}, {"id": 175, "start": 17722, "end": 17733, "lines": ["cmp qword ptr [rbx+18h], 0", "jnz loc_3B48"], "succs": [[63, "jump"], [176, "fall"]]}, {"id": 176, "start": 17733, "end": 17745, "lines": ["mov cs:byte_292B8, 0", "jmp loc_3B48"], "succs": [[63, "jump"]]}, {"id": 177, "start": 17745, "end": 17753, "lines": ["test edx, edx", "jz loc_4689"], "succs": [[178, "fall"], [195, "jump"]]}, {"id": 178, "start": 17753, "end": 17766, "lines": ["cmp cs:byte_29334, 0", "jz loc_51A5"], "succs": [[179, "fall"], [283, "jump"]]}, {"id": 179, "start": 17766, "end": 17781, "lines": ["mov cs:dword_29330, 5", "jmp loc_397B"], "succs": [[44, "jump"]]}, {"id": 180, "start": 17781, "end": 17829, "lines": ["lea rdi, aLsBlockSize; \"LS_BLOCK_SIZE\"", "call cs:getenv_ptr", "lea rdx, qword_29320", "lea rsi, dword_29328", "mov r13, rax", "mov rdi, rax", "call sub_13D90", "test r13, r13", "jz loc_533A"], "succs": [[181, "fall"], [308, "jump"]]}, {"id": 181, "start": 17829, "end": 17855, "lines": ["mov eax, cs:dword_29328", "mov cs:dword_2931C, eax", "mov rax, cs:qword_29320", "mov cs:qword_28020, rax"], "succs": [[182, "fall"]]}, {"id": 182, "start": 17855, "end": 17865, "lines": ["cmp [rbp+var_7D], 0", "jz loc_36E8"], "succs": [[9, "jump"], [183, "fall"]]}, {"id": 183, "start": 17865, "end": 17889, "lines": ["mov cs:qword_29320, 400h", "xor esi, esi", "mov cs:dword_29328, esi", "jmp loc_36E8"], "succs": [[9, "jump"]]}, {"id": 184, "start": 17889, "end": 17902, "lines": ["cmp cs:dword_29314, 3", "jz loc_39BF"], "succs": [[49, "jump"], [185, "fall"]]}, {"id": 185, "start": 17902, "end": 17915, "lines": ["cmp cs:dword_2933C, 0", "jz loc_39BF"], "succs": [[49, "jump"], [186, "fall"]]}, {"id": 186, "start": 17915, "end": 17925, "lines": ["mov eax, 3", "jmp loc_39BF"], "succs": [[49, "jump"]]}, {"id": 187, "start": 17925, "end": 17935, "lines": ["cmp cs:qword_28060, 2", "jnz short loc_4621"], "succs": [[188, "fall"], [189, "jump"]]}, {"id": 188, "start": 17935, "end": 17953, "lines": ["mov rax, cs:off_28068; \"\\x1B[\"", "cmp word ptr [rax], 5B1Bh", "jz loc_5281"], "succs": [[189, "fall"], [292, "jump"]]}, {"id": 189, "start": 17953, "end": 17977, "lines": ["lea rdi, qword_28060", "call sub_6E20", "lea rdi, qword_28070", "call sub_6E20"], "succs": [[190, "fall"]]}, {"id": 190, "start": 17977, "end": 18007, "lines": ["mov rdi, cs:stdout; stream", "call cs:fflush_unlocked_ptr", "xor edi, edi", "call sub_6B60", "mov ebx, cs:dword_29214", "test ebx, ebx", "jz short loc_4670"], "succs": [[191, "fall"], [193, "jump"]]}, {"id": 191, "start": 18007, "end": 18016, "lines": ["nop word ptr [rax+rax+00000000h]"], "succs": [[192, "fall"]]}, {"id": 192, "start": 18016, "end": 18032, "lines": ["mov edi, 13h; sig", "call cs:raise_ptr", "sub ebx, 1", "jnz short loc_4660"], "succs": [[193, "fall"], [192, "jump"]]}, {"id": 193, "start": 18032, "end": 18046, "lines": ["mov edi, cs:sig; sig", "test edi, edi", "jz loc_3BBD"], "succs": [[69, "jump"], [194, "fall"]]}, {"id": 194, "start": 18046, "end": 18057, "lines": ["call cs:raise_ptr", "jmp loc_3BBD"], "succs": [[69, "jump"]]}, {"id": 195, "start": 18057, "end": 18070, "lines": ["xor edx, edx", "mov cs:dword_29330, edx", "jmp loc_3894"], "succs": [[29, "jump"]]}, {"id": 196, "start": 18070, "end": 18099, "lines": ["xor ecx, ecx", "mov edx, 1", "mov esi, 3", "lea rdi, asc_1F91A; \".\"", "call sub_C320", "jmp loc_451C"], "succs": [[173, "jump"]]}, {"id": 197, "start": 18099, "end": 18123, "lines": ["mov edx, 1", "mov esi, 20h ; ' '", "mov rdi, rax", "call sub_19EC0", "jmp loc_37D1"], "succs": [[22, "jump"]]}, {"id": 198, "start": 18123, "end": 18132, "lines": ["mov [rbp+var_7D], 1; jumptable 00000000000036A2 case 107", "jmp loc_3660"], "succs": [[1, "jump"]]}, {"id": 199, "start": 18132, "end": 18159, "lines": ["mov cs:byte_293A8, 0", "xor edi, edi", "call sub_19E30", "mov cs:qword_292D0, rax", "jmp loc_37D1"], "succs": [[22, "jump"]]}, {"id": 200, "start": 18159, "end": 18171, "lines": ["lea rsi, aVdir+1; \"dir\"", "jmp loc_4374"], "succs": [[152, "jump"]]}, {"id": 201, "start": 18171, "end": 18189, "lines": ["call sub_5BE0", "movzx r14d, al", "add r14d, 1", "jmp loc_36F1"], "succs": [[10, "jump"]]}, {"id": 202, "start": 18189, "end": 18225, "lines": ["mov cs:qword_292C0, 8", "lea rdi, aTabsize; \"TABSIZE\"", "call cs:getenv_ptr", "mov r13, rax", "test rax, rax", "jz loc_3760"], "succs": [[16, "jump"], [203, "fall"]]}, {"id": 203, "start": 18225, "end": 18256, "lines": ["xor edx, edx", "xor esi, esi", "lea r8, accept+3; \"\"", "mov rcx, r15", "mov rdi, rax", "call sub_1C0C0", "test eax, eax", "jnz loc_5429"], "succs": [[204, "fall"], [320, "jump"]]}, {"id": 204, "start": 18256, "end": 18265, "lines": ["mov rax, qword ptr [rbp+longind]", "jmp loc_3759"], "succs": [[15, "jump"]]}, {"id": 205, "start": 18265, "end": 18280, "lines": ["xor eax, eax", "cmp cs:dword_293D0, 0", "jnz loc_3771"], "succs": [[17, "jump"], [206, "fall"]]}, {"id": 206, "start": 18280, "end": 18290, "lines": ["call sub_5BE0", "jmp loc_3771"], "succs": [[17, "jump"]]}, {"id": 207, "start": 18290, "end": 18316, "lines": ["lea rdi, aLsColors; \"LS_COLORS\"", "call cs:getenv_ptr", "mov [rbp+var_58], rax", "test rax, rax", "jz loc_4EE5"], "succs": [[208, "fall"], [248, "jump"]]}, {"id": 208, "start": 18316, "end": 18325, "lines": ["cmp byte ptr [rax], 0", "jz loc_4EE5"], "succs": [[209, "fall"], [248, "jump"]]}, {"id": 209, "start": 18325, "end": 18356, "lines": ["mov rdi, rax", "call sub_1BC60", "lea r9, aLcrcecrsnofidi; \"lcrcecrsnofidilnpisobdcdmiorexdosusgsto\"...", "mov cs:qword_29300, rax", "lea r11, [r9+1]", "mov qword ptr [rbp+longind], rax"], "succs": [[210, "fall"]]}, {"id": 210, "start": 18356, "end": 18372, "lines": ["mov rax, [rbp+var_58]", "movzx edx, byte ptr [rax]", "cmp dl, 2Ah ; '*'", "jz loc_509F"], "succs": [[211, "fall"], [273, "jump"]]}, {"id": 211, "start": 18372, "end": 18381, "lines": ["cmp dl, 3Ah ; ':'", "jz loc_5187"], "succs": [[212, "fall"], [281, "jump"]]}, {"id": 212, "start": 18381, "end": 18389, "lines": ["test dl, dl", "jnz loc_489E"], "succs": [[213, "fall"], [227, "jump"]]}, {"id": 213, "start": 18389, "end": 18405, "lines": ["mov rax, cs:qword_29308", "test rax, rax", "jz loc_514C"], "succs": [[214, "fall"], [278, "jump"]]}, {"id": 214, "start": 18405, "end": 18426, "lines": ["mov dword ptr [rbp+s1], r13d", "mov [rbp+var_90], r15", "mov dword ptr [rbp+var_98], r12d"], "succs": [[215, "fall"]]}, {"id": 215, "start": 18426, "end": 18442, "lines": ["mov r13, rax", "mov rax, [rax+28h]", "test rax, rax", "jz loc_5137"], "succs": [[216, "fall"], [277, "jump"]]}, {"id": 216, "start": 18442, "end": 18458, "lines": ["mov byte ptr [rbp+var_78], 0", "mov rbx, rax", "mov r12, r13", "mov [rbp+var_70], rax", "jmp short loc_4829"], "succs": [[218, "jump"]]}, {"id": 217, "start": 18464, "end": 18473, "lines": ["mov rbx, [rbx+28h]", "test rbx, rbx", "jz short loc_4895"], "succs": [[218, "fall"], [226, "jump"]]}, {"id": 218, "start": 18473, "end": 18482, "lines": ["mov r15, [rbx]", "cmp r15, 0FFFFFFFFFFFFFFFFh", "jz short loc_4820"], "succs": [[217, "jump"], [219, "fall"]]}, {"id": 219, "start": 18482, "end": 18488, "lines": ["cmp r15, [r12]", "jnz short loc_4820"], "succs": [[217, "jump"], [220, "fall"]]}, {"id": 220, "start": 18488, "end": 18516, "lines": ["mov r14, [rbx+8]", "mov r13, [r12+8]", "mov rdx, r15; n", "mov rsi, r14; s2", "mov rdi, r13; s1", "call cs:memcmp_ptr", "test eax, eax", "jnz short loc_485D"], "succs": [[221, "fall"], [222, "jump"]]}, {"id": 221, "start": 18516, "end": 18525, "lines": ["mov qword ptr [rbx], 0FFFFFFFFFFFFFFFFh", "jmp short loc_4820"], "succs": [[217, "jump"]]}, {"id": 222, "start": 18525, "end": 18544, "lines": ["mov rdx, r15", "mov rsi, r14", "mov rdi, r13", "call sub_FAA0", "test eax, eax", "jnz short loc_4820"], "succs": [[217, "jump"], [223, "fall"]]}, {"id": 223, "start": 18544, "end": 18554, "lines": ["cmp byte ptr [rbp+var_78], 0", "jnz loc_4ED2"], "succs": [[224, "fall"], [247, "jump"]]}, {"id": 224, "start": 18554, "end": 18569, "lines": ["mov rdx, [r12+10h]; n", "cmp rdx, [rbx+10h]", "jz loc_4EBB"], "succs": [[225, "fall"], [246, "jump"]]}, {"id": 225, "start": 18569, "end": 18581, "lines": ["mov byte ptr [r12+20h], 1", "mov byte ptr [rbx+20h], 1", "jmp short loc_4820"], "succs": [[217, "jump"]]}, {"id": 226, "start": 18581, "end": 18590, "lines": ["mov rax, [rbp+var_70]", "jmp loc_47FA"], "succs": [[215, "jump"]]}, {"id": 227, "start": 18590, "end": 18612, "lines": ["lea rdx, [rax+1]", "mov [rbp+var_58], rdx", "movzx r14d, byte ptr [rax+1]", "test r14b, r14b", "jz loc_495E"], "succs": [[228, "fall"], [235, "jump"]]}, {"id": 228, "start": 18612, "end": 18633, "lines": ["lea rdx, [rax+3]", "movzx ebx, byte ptr [rax]", "mov [rbp+var_58], rdx", "cmp byte ptr [rax+2], 3Dh ; '='", "jnz loc_495E"], "succs": [[229, "fall"], [235, "jump"]]}, {"id": 229, "start": 18633, "end": 18637, "lines": ["xor eax, eax", "jmp short loc_48DA"], "succs": [[231, "jump"]]}, {"id": 230, "start": 18640, "end": 18650, "lines": ["add rax, 1", "cmp rax, 18h", "jz short loc_4920"], "succs": [[231, "fall"], [234, "jump"]]}, {"id": 231, "start": 18650, "end": 18656, "lines": ["cmp bl, [r9+rax*2]", "jnz short loc_48D0"], "succs": [[230, "jump"], [232, "fall"]]}, {"id": 232, "start": 18656, "end": 18662, "lines": ["cmp r14b, [r11+rax*2]", "jnz short loc_48D0"], "succs": [[230, "jump"], [233, "fall"]]}, {"id": 233, "start": 18662, "end": 18720, "lines": ["movsxd rcx, eax", "lea rax, qword_28060", "xor edx, edx", "mov rdi, r15", "shl rcx, 4", "lea rsi, [rbp+var_58]", "add rcx, rax", "mov rax, qword ptr [rbp+longind]", "mov [rcx+8], rax", "call sub_56A0", "lea r9, aLcrcecrsnofidi; \"lcrcecrsnofidilnpisobdcdmiorexdosusgsto\"...", "test al, al", "lea r11, [r9+1]", "jnz loc_47B4"], "succs": [[210, "jump"], [234, "fall"]]}, {"id": 234, "start": 18720, "end": 18782, "lines": ["mov [rbp+var_3B], r14b", "lea rdi, [rbp+var_3C]", "mov [rbp+var_3C], bl", "mov [rbp+var_3A], 0", "call sub_1A960", "mov edx, 5; category", "lea rsi, aUnrecognizedPr; \"unrecognized prefix: %s\"", "xor edi, edi; domainname", "mov r14, rax", "call cs:dcgettext_ptr", "mov rcx, r14", "xor esi, esi", "xor edi, edi", "mov rdx, rax", "xor eax, eax", "call error"], "succs": [[235, "fall"]]}, {"id": 235, "start": 18782, "end": 18842, "lines": ["mov edx, 5; category", "lea rsi, aUnparsableValu; \"unparsable value for LS_COLORS environm\"...", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "xor esi, esi", "xor edi, edi", "mov rdx, rax", "xor eax, eax", "call error", "mov rdi, cs:qword_29300; ptr", "call cs:free_ptr", "mov rdi, cs:qword_29308", "jmp loc_5329"], "succs": [[306, "jump"]]}, {"id": 236, "start": 18842, "end": 18909, "lines": ["xor edx, edx", "xor esi, esi", "mov r8, cs:free_ptr", "mov rcx, cs:malloc_ptr", "lea rdi, unk_291A0", "call sub_17F00", "mov r8, cs:free_ptr", "xor edx, edx", "xor esi, esi", "mov rcx, cs:malloc_ptr", "lea rdi, unk_29140", "call sub_17F00", "jmp loc_3AC3"], "succs": [[56, "jump"]]}, {"id": 237, "start": 18909, "end": 18927, "lines": ["call sub_83D0", "cmp cs:byte_292F5, 0", "jz loc_5194"], "succs": [[238, "fall"], [282, "jump"]]}, {"id": 238, "start": 18927, "end": 18941, "lines": ["cmp cs:qword_293B0, 0", "jz loc_3B39"], "succs": [[61, "jump"], [239, "fall"]]}, {"id": 239, "start": 18941, "end": 18960, "lines": ["call sub_BEE0", "cmp cs:ptr, 0", "jz loc_3BA7"], "succs": [[67, "jump"], [240, "fall"]]}, {"id": 240, "start": 18960, "end": 18989, "lines": ["mov rdi, cs:stdout; _IO_FILE *", "add cs:qword_291F8, 1", "mov rax, [rdi+28h]", "cmp rax, [rdi+30h]", "jnb loc_53A5"], "succs": [[241, "fall"], [314, "jump"]]}, {"id": 241, "start": 18989, "end": 19012, "lines": ["lea rdx, [rax+1]", "mov rbx, cs:ptr", "mov [rdi+28h], rdx", "mov byte ptr [rax], 0Ah", "jmp loc_3B48"], "succs": [[63, "jump"]]}, {"id": 242, "start": 19012, "end": 19072, "lines": ["movdqa xmm13, cs:xmmword_21D10", "lea rax, unk_28FE0", "movdqa xmm4, cs:xmmword_21CA0", "pcmpeqd xmm12, xmm12", "movdqa xmm14, cs:xmmword_21D00", "lea rdx, [rax+100h]", "psubd xmm13, cs:xmmword_21D20", "nop word ptr [rax+rax+00h]"], "succs": [[243, "fall"]]}, {"id": 243, "start": 19072, "end": 20034, "lines": ["movdqa xmm1, xmm4", "movdqa xmm2, xmm14", "mov ecx, 5Bh ; '['", "mov esi, 7Eh ; '~'", "pcmpgtd xmm2, xmm4", "movd xmm6, ecx", "movdqa xmm7, xmm4", "add rax, 10h", "mov ecx, 40h ; '@'", "pshufd xmm6, xmm6, 0", "pcmpgtd xmm1, cs:xmmword_21CF0", "movdqa xmm11, xmm4", "movd xmm10, ecx", "mov ecx, 0FFFFFFD3h", "movdqa xmm5, cs:xmmword_21CC0", "movdqa xmm0, cs:xmmword_21CD0", "pshufd xmm10, xmm10, 0", "pcmpgtd xmm7, xmm10", "mov ebx, 10h", "movdqa xmm3, cs:xmmword_21CE0", "pand xmm1, xmm2", "movdqa xmm2, xmm6", "paddd xmm5, xmm4", "pcmpgtd xmm2, xmm4", "movdqa xmm15, xmm5", "paddd xmm0, xmm4", "pcmpgtd xmm15, xmm10", "paddd xmm3, xmm4", "pand xmm2, xmm7", "movdqa xmm7, xmm13", "por xmm1, xmm2", "movd xmm2, ecx", "mov ecx, 60h ; '`'", "pshufd xmm2, xmm2, 0", "paddd xmm2, xmm4", "movd xmm9, ecx", "psubd xmm2, cs:xmmword_21D20", "mov ecx, 7Bh ; '{'", "pshufd xmm9, xmm9, 0", "pcmpgtd xmm7, xmm2", "movd xmm8, ecx", "movdqa xmm2, xmm4", "mov ecx, 0FFFFFFD7h", "pshufd xmm8, xmm8, 0", "pcmpgtd xmm2, xmm9", "por xmm1, xmm7", "movdqa xmm7, xmm8", "pcmpgtd xmm7, xmm4", "pand xmm2, xmm7", "movd xmm7, esi", "mov esi, 0FFFFFFDBh", "pshufd xmm7, xmm7, 0", "pcmpeqd xmm11, xmm7", "por xmm2, xmm11", "movdqa xmm11, xmm5", "pcmpgtd xmm11, cs:xmmword_21CF0", "por xmm1, xmm2", "movdqa xmm2, xmm14", "pcmpgtd xmm2, xmm5", "pxor xmm1, xmm12", "pand xmm11, xmm2", "movdqa xmm2, xmm6", "pcmpgtd xmm2, xmm5", "pand xmm2, xmm15", "movdqa xmm15, xmm13", "por xmm11, xmm2", "movd xmm2, ecx", "mov ecx, 0FFFFFFDFh", "pshufd xmm2, xmm2, 0", "paddd xmm2, xmm4", "psubd xmm2, cs:xmmword_21D20", "pcmpgtd xmm15, xmm2", "movdqa xmm2, xmm11", "movdqa xmm11, xmm5", "pcmpgtd xmm11, xmm9", "por xmm2, xmm15", "movdqa xmm15, xmm8", "pcmpgtd xmm15, xmm5", "pand xmm11, xmm15", "movdqa xmm15, xmm5", "pcmpeqd xmm15, xmm7", "por xmm11, xmm15", "movdqa xmm15, xmm0", "pcmpgtd xmm15, cs:xmmword_21CF0", "por xmm2, xmm11", "movdqa xmm11, xmm1", "pxor xmm2, xmm12", "punpcklwd xmm1, xmm2", "punpckhwd xmm11, xmm2", "movdqa xmm2, xmm1", "punpcklwd xmm1, xmm11", "punpckhwd xmm2, xmm11", "movdqa xmm11, xmm0", "punpcklwd xmm1, xmm2", "pcmpgtd xmm11, xmm10", "movdqa xmm2, xmm14", "pcmpgtd xmm2, xmm0", "pand xmm1, cs:xmmword_21D30", "pand xmm15, xmm2", "movdqa xmm2, xmm6", "pcmpgtd xmm2, xmm0", "pcmpgtd xmm6, xmm3", "pand xmm2, xmm11", "movd xmm11, esi", "mov esi, 5Fh ; '_'", "pshufd xmm11, xmm11, 0", "paddd xmm11, xmm4", "por xmm15, xmm2", "psubd xmm11, cs:xmmword_21D20", "movdqa xmm2, xmm13", "pcmpgtd xmm2, xmm11", "movdqa xmm11, xmm0", "pcmpgtd xmm11, xmm9", "por xmm2, xmm15", "movdqa xmm15, xmm8", "pcmpgtd xmm15, xmm0", "pcmpgtd xmm8, xmm3", "pand xmm11, xmm15", "movdqa xmm15, xmm0", "pcmpeqd xmm15, xmm7", "pcmpeqd xmm7, xmm3", "por xmm11, xmm15", "movdqa xmm15, xmm14", "por xmm2, xmm11", "pcmpgtd xmm15, xmm3", "movdqa xmm11, xmm3", "pcmpgtd xmm11, cs:xmmword_21CF0", "pxor xmm2, xmm12", "pand xmm11, xmm15", "movdqa xmm15, xmm3", "pcmpgtd xmm15, xmm10", "movd xmm10, ecx", "pshufd xmm10, xmm10, 0", "paddd xmm10, xmm4", "psubd xmm10, cs:xmmword_21D20", "pand xmm6, xmm15", "por xmm6, xmm11", "movdqa xmm11, xmm13", "pcmpgtd xmm11, xmm10", "movdqa xmm10, xmm3", "pcmpgtd xmm10, xmm9", "por xmm6, xmm11", "pand xmm8, xmm10", "por xmm7, xmm8", "por xmm7, xmm6", "movdqa xmm6, xmm2", "pxor xmm7, xmm12", "punpcklwd xmm2, xmm7", "punpckhwd xmm6, xmm7", "movdqa xmm7, xmm2", "punpcklwd xmm2, xmm6", "punpckhwd xmm7, xmm6", "movdqa xmm6, xmm12", "punpcklwd xmm2, xmm7", "pand xmm2, cs:xmmword_21D30", "movd xmm7, esi", "pshufd xmm7, xmm7, 0", "pcmpeqd xmm5, xmm7", "psrld xmm6, 1Fh", "pcmpeqd xmm0, xmm7", "pcmpeqd xmm3, xmm7", "packuswb xmm1, xmm2", "movdqa xmm2, xmm4", "pcmpeqd xmm2, xmm7", "pand xmm5, xmm6", "pand xmm3, xmm6", "pand xmm0, xmm6", "pand xmm2, xmm6", "movdqa xmm8, xmm2", "punpcklwd xmm2, xmm5", "punpckhwd xmm8, xmm5", "movdqa xmm5, xmm2", "punpckhwd xmm5, xmm8", "punpcklwd xmm2, xmm8", "punpcklwd xmm2, xmm5", "movdqa xmm5, xmm0", "punpcklwd xmm0, xmm3", "punpckhwd xmm5, xmm3", "movdqa xmm3, xmm0", "pand xmm2, cs:xmmword_21D30", "punpckhwd xmm3, xmm5", "punpcklwd xmm0, xmm5", "punpcklwd xmm0, xmm3", "pand xmm0, cs:xmmword_21D30", "packuswb xmm2, xmm0", "movd xmm0, ebx", "pand xmm2, xmm1", "pandn xmm1, cs:xmmword_21D40", "pshufd xmm0, xmm0, 0", "paddd xmm4, xmm0", "por xmm1, xmm2", "por xmm1, xmmword ptr [rax-10h]", "movaps xmmword ptr [rax-10h], xmm1", "cmp rdx, rax", "jnz loc_4A80"], "succs": [[244, "fall"], [243, "jump"]]}, {"id": 244, "start": 20034, "end": 20066, "lines": ["call sub_1BE50", "lea rdx, accept+3; \"\"", "test rax, rax", "cmovz rax, rdx", "mov cs:qword_29388, rax", "jmp loc_3AD0"], "succs": [[57, "jump"]]}, {"id": 245, "start": 20066, "end": 20155, "lines": ["lea rsi, unk_291A0", "lea rdi, aDired; \"//DIRED//\"", "call sub_6550", "lea rsi, unk_29140", "lea rdi, aSubdired; \"//SUBDIRED//\"", "call sub_6550", "mov rdi, cs:qword_292D0", "call sub_19E80", "lea rdx, off_27A00; \"literal\"", "mov edi, 2", "lea rsi, aDiredOptionsQu; \"//DIRED-OPTIONS// --quoting-style=%s\\n\"", "mov eax, eax", "mov rdx, [rdx+rax*8]", "xor eax, eax", "call cs:__printf_chk_ptr", "jmp loc_3BCA"], "succs": [[70, "jump"]]}, {"id": 246, "start": 20155, "end": 20178, "lines": ["mov rsi, [rbx+18h]; s2", "mov rdi, [r12+18h]; s1", "call cs:memcmp_ptr", "test eax, eax", "jnz loc_4889"], "succs": [[225, "jump"], [247, "fall"]]}, {"id": 247, "start": 20178, "end": 20197, "lines": ["movzx eax, byte ptr [rbp+var_7C]", "mov qword ptr [rbx], 0FFFFFFFFFFFFFFFFh", "mov byte ptr [rbp+var_78], al", "jmp loc_4820"], "succs": [[217, "jump"]]}, {"id": 248, "start": 20197, "end": 20215, "lines": ["lea rdi, aColorterm; \"COLORTERM\"", "call cs:getenv_ptr", "test rax, rax", "jz short loc_4F69"], "succs": [[249, "fall"], [257, "jump"]]}, {"id": 249, "start": 20215, "end": 20220, "lines": ["cmp byte ptr [rax], 0", "jz short loc_4F69"], "succs": [[250, "fall"], [257, "jump"]]}, {"id": 250, "start": 20220, "end": 20233, "lines": ["cmp cs:byte_29312, 0", "jz loc_3994"], "succs": [[45, "jump"], [251, "fall"]]}, {"id": 251, "start": 20233, "end": 20257, "lines": ["cmp cs:byte_292F4, 0", "mov cs:qword_292C0, 0", "jnz loc_399D"], "succs": [[46, "jump"], [252, "fall"]]}, {"id": 252, "start": 20257, "end": 20275, "lines": ["mov edi, 0Dh", "call sub_5640", "test al, al", "jnz loc_399D"], "succs": [[46, "jump"], [253, "fall"]]}, {"id": 253, "start": 20275, "end": 20293, "lines": ["mov edi, 0Eh", "call sub_5640", "test al, al", "jnz loc_52A4"], "succs": [[254, "fall"], [295, "jump"]]}, {"id": 254, "start": 20293, "end": 20311, "lines": ["mov edi, 0Ch", "call sub_5640", "test al, al", "jz loc_39A4"], "succs": [[47, "jump"], [255, "fall"]]}, {"id": 255, "start": 20311, "end": 20324, "lines": ["cmp cs:dword_2933C, 0", "jz loc_399D"], "succs": [[46, "jump"], [256, "fall"]]}, {"id": 256, "start": 20324, "end": 20329, "lines": ["jmp loc_39A4"], "succs": [[47, "jump"]]}, {"id": 257, "start": 20329, "end": 20351, "lines": ["lea rdi, aColorterm+5; name", "call cs:getenv_ptr", "test rax, rax", "jz loc_5310"], "succs": [[258, "fall"], [304, "jump"]]}, {"id": 258, "start": 20351, "end": 20360, "lines": ["cmp byte ptr [rax], 0", "jz loc_5310"], "succs": [[259, "fall"], [304, "jump"]]}, {"id": 259, "start": 20360, "end": 20382, "lines": ["lea rbx, s; \"# Configuration file for dircolors, a u\"...", "mov dword ptr [rbp+var_70], r13d", "mov r14d, r12d", "mov r12, rax", "mov r13, rbx", "jmp short loc_4FAC"], "succs": [[261, "jump"]]}, {"id": 260, "start": 20382, "end": 20396, "lines": ["mov rdi, r13; s", "call cs:strlen_ptr", "lea r13, [r13+rax+1]"], "succs": [[261, "fall"]]}, {"id": 261, "start": 20396, "end": 20414, "lines": ["mov rax, r13", "sub rax, rbx", "cmp rax, 15EFh", "ja loc_5309"], "succs": [[262, "fall"], [303, "jump"]]}, {"id": 262, "start": 20414, "end": 20439, "lines": ["mov edx, 5; n", "lea rsi, aTerm; \"TERM \"", "mov rdi, r13; s1", "call cs:strncmp_ptr", "test eax, eax", "jnz short loc_4F9E"], "succs": [[260, "jump"], [263, "fall"]]}, {"id": 263, "start": 20439, "end": 20458, "lines": ["xor edx, edx; flags", "lea rdi, [r13+5]; pattern", "mov rsi, r12; name", "call cs:fnmatch_ptr", "test eax, eax", "jnz short loc_4F9E"], "succs": [[260, "jump"], [264, "fall"]]}, {"id": 264, "start": 20458, "end": 20470, "lines": ["movsxd r13, dword ptr [rbp+var_70]", "mov r12d, r14d", "jmp loc_4EFC"], "succs": [[250, "jump"]]}, {"id": 265, "start": 20470, "end": 20479, "lines": ["call sub_5BE0", "test al, al", "jz short loc_502D"], "succs": [[266, "fall"], [269, "jump"]]}, {"id": 266, "start": 20479, "end": 20504, "lines": ["xor eax, eax", "mov rdx, r15", "mov esi, 5413h; request", "mov edi, 1; fd", "call cs:ioctl_ptr", "test eax, eax", "js short loc_502D"], "succs": [[267, "fall"], [269, "jump"]]}, {"id": 267, "start": 20504, "end": 20513, "lines": ["movzx eax, word ptr [rbp+longind+2]", "test ax, ax", "jz short loc_502D"], "succs": [[268, "fall"], [269, "jump"]]}, {"id": 268, "start": 20513, "end": 20525, "lines": ["mov [rbp+var_90], rax", "jmp loc_3714"], "succs": [[12, "jump"]]}, {"id": 269, "start": 20525, "end": 20550, "lines": ["lea rdi, aColumns; \"COLUMNS\"", "call cs:getenv_ptr", "mov r13, rax", "test rax, rax", "jz loc_38C8"], "succs": [[33, "jump"], [270, "fall"]]}, {"id": 270, "start": 20550, "end": 20559, "lines": ["cmp byte ptr [rax], 0", "jz loc_38C8"], "succs": [[33, "jump"], [271, "fall"]]}, {"id": 271, "start": 20559, "end": 20584, "lines": ["mov rdi, rax", "call sub_5B70", "mov [rbp+var_90], rax", "add rax, 1", "jnz loc_3714"], "succs": [[12, "jump"], [272, "fall"]]}, {"id": 272, "start": 20584, "end": 20639, "lines": ["mov rdi, r13", "call sub_1A960", "xor edi, edi; domainname", "mov edx, 5; category", "lea rsi, aIgnoringInvali; \"ignoring invalid width in environment v\"...", "mov r13, rax", "call cs:dcgettext_ptr", "mov rcx, r13", "xor esi, esi", "xor edi, edi", "mov rdx, rax", "xor eax, eax", "call error", "jmp loc_38C8"], "succs": [[33, "jump"]]}, {"id": 273, "start": 20639, "end": 20724, "lines": ["mov edi, 30h ; '0'", "call sub_1B7F0", "lea rsi, [rbp+var_58]", "mov edx, 1", "mov rdi, r15", "mov rbx, rax", "mov rax, cs:qword_29308", "add [rbp+var_58], 1", "mov byte ptr [rbx+20h], 0", "mov rcx, rbx", "mov [rbx+28h], rax", "mov rax, qword ptr [rbp+longind]", "mov [rbp+var_70], rsi", "mov [rbx+8], rax", "mov cs:qword_29308, rbx", "call sub_56A0", "mov rsi, [rbp+var_70]", "test al, al", "jz loc_495E"], "succs": [[235, "jump"], [274, "fall"]]}, {"id": 274, "start": 20724, "end": 20745, "lines": ["mov rax, [rbp+var_58]", "lea rdx, [rax+1]", "mov [rbp+var_58], rdx", "cmp byte ptr [rax], 3Dh ; '='", "jnz loc_495E"], "succs": [[235, "jump"], [275, "fall"]]}, {"id": 275, "start": 20745, "end": 20786, "lines": ["mov rax, qword ptr [rbp+longind]", "xor edx, edx", "lea rcx, [rbx+10h]", "mov rdi, r15", "mov [rbx+18h], rax", "call sub_56A0", "lea r9, aLcrcecrsnofidi; \"lcrcecrsnofidilnpisobdcdmiorexdosusgsto\"...", "test al, al", "lea r11, [r9+1]", "jnz loc_47B4"], "succs": [[210, "jump"], [276, "fall"]]}, {"id": 276, "start": 20786, "end": 20791, "lines": ["jmp loc_495E"], "succs": [[235, "jump"]]}, {"id": 277, "start": 20791, "end": 20812, "lines": ["movsxd r13, dword ptr [rbp+s1]", "mov r15, [rbp+var_90]", "mov r12d, dword ptr [rbp+var_98]"], "succs": [[278, "fall"]]}, {"id": 278, "start": 20812, "end": 20826, "lines": ["cmp cs:qword_280D0, 6", "jnz loc_4EFC"], "succs": [[250, "jump"], [279, "fall"]]}, {"id": 279, "start": 20826, "end": 20859, "lines": ["mov rdi, cs:off_280D8; s1", "mov edx, 6; n", "lea rsi, aTarget; \"target\"", "call cs:strncmp_ptr", "test eax, eax", "jnz loc_4EFC"], "succs": [[250, "jump"], [280, "fall"]]}, {"id": 280, "start": 20859, "end": 20871, "lines": ["mov cs:byte_29390, 1", "jmp loc_4EFC"], "succs": [[250, "jump"]]}, {"id": 281, "start": 20871, "end": 20884, "lines": ["add rax, 1", "mov [rbp+var_58], rax", "jmp loc_47B4"], "succs": [[210, "jump"]]}, {"id": 282, "start": 20884, "end": 20901, "lines": ["mov esi, 1", "xor edi, edi", "call sub_8B90", "jmp loc_49EF"], "succs": [[238, "jump"]]}, {"id": 283, "start": 20901, "end": 20914, "lines": ["xor ecx, ecx", "mov cs:dword_29330, ecx", "jmp loc_397B"], "succs": [[44, "jump"]]}, {"id": 284, "start": 20914, "end": 20985, "lines": ["mov rdx, rax", "mov rsi, [rbp+s1]", "lea rdi, aTimeStyle_0; \"time style\"", "call sub_F680", "mov rbx, cs:stderr", "mov edx, 5; category", "xor edi, edi; domainname", "lea rsi, aValidArguments; \"Valid arguments are:\\n\"", "call cs:dcgettext_ptr", "mov rsi, rbx; stream", "lea rbx, off_27680; \"full-iso\"", "mov rdi, rax; s", "call cs:fputs_unlocked_ptr", "jmp short loc_521B"], "succs": [[286, "jump"]]}, {"id": 285, "start": 20985, "end": 21019, "lines": ["add rbx, 8", "lea rcx, aPosix_0; \"[posix-]\"", "mov rdi, r12", "xor eax, eax", "lea rdx, aSS_0; \" - %s%s\\n\"", "mov esi, 2", "call cs:__fprintf_chk_ptr"], "succs": [[286, "fall"]]}, {"id": 286, "start": 21019, "end": 21034, "lines": ["mov r8, [rbx]", "mov r12, cs:stderr", "test r8, r8", "jnz short loc_51F9"], "succs": [[285, "jump"], [287, "fall"]]}, {"id": 287, "start": 21034, "end": 21066, "lines": ["lea rsi, aFormatEGHMForA; \" - +FORMAT (e.g., +%H:%M) for a 'date'\"...", "xor edi, edi; domainname", "mov edx, 5; category", "call cs:dcgettext_ptr", "mov rsi, r12; stream", "mov rdi, rax; s", "call cs:fputs_unlocked_ptr"], "succs": [[288, "fall"]]}, {"id": 288, "start": 21066, "end": 21085, "lines": ["mov rax, [rbp+var_38]; jumptable 00000000000036A2 default case, cases -129-48,50-64,69,74,75,77,79,80,86,87,89,91-96,101,106,121-127", "sub rax, fs:28h", "jnz loc_53F9"], "succs": [[289, "fall"], [317, "jump"]]}, {"id": 289, "start": 21085, "end": 21095, "lines": ["mov edi, 2; status", "call sub_DC00"], "succs": []}, {"id": 290, "start": 21095, "end": 21114, "lines": ["mov rax, [rbp+var_38]; jumptable 00000000000036A2 case -130", "sub rax, fs:28h", "jnz loc_53F9"], "succs": [[291, "fall"], [317, "jump"]]}, {"id": 291, "start": 21114, "end": 21121, "lines": ["xor edi, edi; status", "call sub_DC00"], "succs": []}, {"id": 292, "start": 21121, "end": 21135, "lines": ["cmp cs:qword_28070, 1", "jnz loc_4621"], "succs": [[189, "jump"], [293, "fall"]]}, {"id": 293, "start": 21135, "end": 21151, "lines": ["mov rax, cs:off_28078; \"m\\x1B[\"", "cmp byte ptr [rax], 6Dh ; 'm'", "jnz loc_4621"], "succs": [[189, "jump"], [294, "fall"]]}, {"id": 294, "start": 21151, "end": 21156, "lines": ["jmp loc_4639"], "succs": [[190, "jump"]]}, {"id": 295, "start": 21156, "end": 21169, "lines": ["cmp cs:byte_29390, 0", "jnz loc_399D"], "succs": [[46, "jump"], [296, "fall"]]}, {"id": 296, "start": 21169, "end": 21174, "lines": ["jmp loc_4F45"], "succs": [[254, "jump"]]}, {"id": 297, "start": 21174, "end": 21182, "lines": ["mov byte ptr [rdx], 0", "jmp loc_3CC9"], "succs": [[83, "jump"]]}, {"id": 298, "start": 21182, "end": 21192, "lines": ["cmp rax, 3", "jnz loc_3976"], "succs": [[43, "jump"], [299, "fall"]]}, {"id": 299, "start": 21192, "end": 21211, "lines": ["mov edi, 2", "call sub_11B20", "test al, al", "jz loc_3976"], "succs": [[43, "jump"], [300, "fall"]]}, {"id": 300, "start": 21211, "end": 21222, "lines": ["lea r13, off_28040; \"%b %e %Y\"", "lea r14, [r13+10h]"], "succs": [[301, "fall"]]}, {"id": 301, "start": 21222, "end": 21252, "lines": ["mov rsi, [r13+0]; msgid", "mov edx, 2; category", "xor edi, edi; domainname", "add r13, 8", "call cs:dcgettext_ptr", "mov [r13-8], rax", "cmp r13, r14", "jnz short loc_52E6"], "succs": [[302, "fall"], [301, "jump"]]}, {"id": 302, "start": 21252, "end": 21257, "lines": ["jmp loc_3976"], "succs": [[43, "jump"]]}, {"id": 303, "start": 21257, "end": 21264, "lines": ["movsxd r13, dword ptr [rbp+var_70]", "mov r12d, r14d"], "succs": [[304, "fall"]]}, {"id": 304, "start": 21264, "end": 21276, "lines": ["mov cs:byte_29312, 0", "jmp loc_4EFC"], "succs": [[250, "jump"]]}, {"id": 305, "start": 21276, "end": 21289, "lines": ["mov rbx, [rdi+28h]", "call cs:free_ptr", "mov rdi, rbx; ptr"], "succs": [[306, "fall"]]}, {"id": 306, "start": 21289, "end": 21294, "lines": ["test rdi, rdi", "jnz short loc_531C"], "succs": [[305, "jump"], [307, "fall"]]}, {"id": 307, "start": 21294, "end": 21306, "lines": ["mov cs:byte_29312, 0", "jmp loc_514C"], "succs": [[278, "jump"]]}, {"id": 308, "start": 21306, "end": 21328, "lines": ["lea rdi, aLsBlockSize+3; name", "call cs:getenv_ptr", "test rax, rax", "jnz loc_45A5"], "succs": [[181, "jump"], [309, "fall"]]}, {"id": 309, "start": 21328, "end": 21333, "lines": ["jmp loc_45BF"], "succs": [[182, "jump"]]}, {"id": 310, "start": 21333, "end": 21341, "lines": ["mov rcx, r14", "jmp loc_3CC9"], "succs": [[83, "jump"]]}, {"id": 311, "start": 21341, "end": 21369, "lines": ["lea rax, aYMDHMSNZ; \"%Y-%m-%d %H:%M:%S.%N %z\"", "movq xmm0, rax", "punpcklqdq xmm0, xmm0", "movaps xmmword ptr cs:off_28040, xmm0; \"%b %e %Y\"", "jmp loc_3976"], "succs": [[43, "jump"]]}, {"id": 312, "start": 21369, "end": 21405, "lines": ["movq xmm0, cs:off_276D8; \"%Y-%m-%d \"", "lea rax, aYMDHM+3; \"%m-%d %H:%M\"", "movq xmm4, rax", "punpcklqdq xmm0, xmm4", "movaps xmmword ptr cs:off_28040, xmm0; \"%b %e %Y\"", "jmp loc_3976"], "succs": [[43, "jump"]]}, {"id": 313, "start": 21405, "end": 21413, "lines": ["mov r13, rax", "jmp loc_38A1"], "succs": [[30, "jump"]]}, {"id": 314, "start": 21413, "end": 21429, "lines": ["mov esi, 0Ah; int", "call cs:__overflow_ptr", "jmp loc_3B9B"], "succs": [[66, "jump"]]}, {"id": 315, "start": 21429, "end": 21476, "lines": ["mov rdi, r14", "call sub_1A960", "mov edx, 5; category", "xor edi, edi; domainname", "lea rsi, aInvalidTimeSty; \"invalid time style format %s\"", "mov rbx, rax", "call cs:dcgettext_ptr", "mov rdx, [rbp+var_38]", "sub rdx, fs:28h", "jnz short loc_53F9"], "succs": [[316, "fall"], [317, "jump"]]}, {"id": 316, "start": 21476, "end": 21497, "lines": ["mov rdx, rax", "mov rcx, rbx", "xor esi, esi", "mov edi, 2", "xor eax, eax", "call error"], "succs": [[317, "fall"]]}, {"id": 317, "start": 21497, "end": 21503, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 318, "start": 21503, "end": 21518, "lines": ["mov rdx, [rbp+var_38]", "sub rdx, fs:28h", "jnz short loc_53F9"], "succs": [[317, "jump"], [319, "fall"]]}, {"id": 319, "start": 21518, "end": 21545, "lines": ["mov r8, cs:optarg", "mov esi, [rbp+longind]", "xor edx, edx", "mov edi, eax", "lea rcx, longopts", "call sub_1BFE0"], "succs": []}, {"id": 320, "start": 21545, "end": 21600, "lines": ["mov rdi, r13", "call sub_1A960", "xor edi, edi; domainname", "mov edx, 5; category", "lea rsi, aIgnoringInvali_0; \"ignoring invalid tab size in environmen\"...", "mov r13, rax", "call cs:dcgettext_ptr", "mov rcx, r13", "xor esi, esi", "xor edi, edi", "mov rdx, rax", "xor eax, eax", "call error", "jmp loc_3760"], "succs": [[16, "jump"]]}, {"id": 321, "start": 21600, "end": 21639, "lines": ["mov edx, 5; category", "xor edi, edi; domainname", "lea rsi, aDiredAndZeroAr; \"--dired and --zero are incompatible\"", "call cs:dcgettext_ptr", "mov rdx, [rbp+var_38]", "sub rdx, fs:28h", "jnz loc_53F9"], "succs": [[317, "jump"], [322, "fall"]]}, {"id": 322, "start": 21639, "end": 21657, "lines": ["mov rdx, rax", "xor esi, esi", "mov edi, 2", "xor eax, eax", "call error"], "succs": [[323, "fall"]]}, {"id": 323, "start": 21657, "end": 21712, "lines": ["mov rdi, r13", "call sub_1A960", "xor edi, edi; domainname", "mov edx, 5; category", "lea rsi, aIgnoringInvali_1; \"ignoring invalid value of environment v\"...", "mov r13, rax", "call cs:dcgettext_ptr", "mov rcx, r13", "xor esi, esi", "xor edi, edi", "mov rdx, rax", "xor eax, eax", "call error", "jmp loc_44CF"], "succs": [[168, "jump"]]}, {"id": 324, "start": 21712, "end": 21731, "lines": ["mov rax, [rbp+var_38]", "sub rax, fs:28h", "jnz loc_53F9"], "succs": [[317, "jump"], [325, "fall"]]}, {"id": 325, "start": 21731, "end": 21737, "lines": ["call sub_1BCB0"], "succs": []}, {"id": 326, "start": 12384, "end": 12416, "lines": ["lea rcx, aMain; \"main\"", "mov edx, 741h; line", "lea rsi, file; \"src/ls.c\"", "lea rdi, aHashGetNEntrie; \"hash_get_n_entries (active_dir_set) == \"...", "call cs:__assert_fail_ptr"], "succs": []}, {"id": 327, "start": 12416, "end": 12448, "lines": ["lea rcx, aDevInoPop; \"dev_ino_pop\"", "mov edx, 43Ah; line", "lea rsi, file; \"src/ls.c\"", "lea rdi, aDevInoSizeExte; \"dev_ino_size <= __extension__ ({ struct\"...", "call cs:__assert_fail_ptr"], "succs": []}, {"id": 328, "start": 12448, "end": 12480, "lines": ["lea rcx, aMain; \"main\"", "mov edx, 70Eh; line", "lea rsi, file; \"src/ls.c\"", "lea rdi, aFound; \"found\"", "call cs:__assert_fail_ptr"], "succs": []}]}, {"name": "sub_DC00", "ea": 56320, "blocks": [{"id": 0, "start": 56320, "end": 56369, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r14", "push r13", "push r12", "push rbx", "sub rsp, 0D0h", "mov rbx, cs:qword_29430", "mov r13, fs:28h", "mov [rbp+var_28], r13", "mov r13d, edi", "test edi, edi", "jz short loc_DC68"], "succs": [[1, "fall"], [3, "jump"]]}, {"id": 1, "start": 56369, "end": 56415, "lines": ["mov edx, 5; category", "lea rsi, aTrySHelpForMor; \"Try '%s --help' for more information.\\n\"", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rdi, cs:stderr", "mov rcx, rbx", "mov esi, 2", "mov rdx, rax", "xor eax, eax", "call cs:__fprintf_chk_ptr"], "succs": [[2, "fall"]]}, {"id": 2, "start": 56415, "end": 56424, "lines": ["mov edi, r13d; status", "call cs:exit_ptr"], "succs": []}, {"id": 3, "start": 56424, "end": 56697, "lines": ["lea rax, aTestInvocation; \"test invocation\"", "mov edx, 5; category", "xor edi, edi; domainname", "movq xmm1, cs:off_276A8; \"[\"", "movq xmm6, rax", "lea rax, aSha2Utilities; \"sha2 utilities\"", "movq xmm2, cs:off_276B0; \"sha224sum\"", "movq xmm3, cs:off_276B8; \"sha256sum\"", "movq xmm0, rax", "punpcklqdq xmm1, xmm6", "lea rsi, aUsageSOptionFi; \"Usage: %s [OPTION]... [FILE]...\\n\"", "movq xmm4, cs:off_276C0; \"sha384sum\"", "punpcklqdq xmm2, xmm0", "punpcklqdq xmm3, xmm0", "movq xmm5, cs:off_276C8; \"sha512sum\"", "movaps [rbp+var_F0], xmm1", "punpcklqdq xmm4, xmm0", "movaps [rbp+var_E0], xmm2", "punpcklqdq xmm5, xmm0", "movaps [rbp+var_D0], xmm3", "movaps [rbp+var_C0], xmm4", "movaps [rbp+var_B0], xmm5", "call cs:dcgettext_ptr", "mov rdx, rbx", "mov edi, 2", "mov rsi, rax", "xor eax, eax", "call cs:__printf_chk_ptr", "mov rbx, cs:stdout", "mov edx, 5; category", "xor edi, edi; domainname", "lea rsi, aListInformatio; \"List information about the FILEs (the c\"...", "call cs:dcgettext_ptr", "mov rsi, rbx; stream", "mov rdi, rax; s", "call cs:fputs_unlocked_ptr", "mov rbx, cs:stdout", "mov edx, 5; category", "xor edi, edi; domainname", "lea rsi, aMandatoryArgum; \"\\nMandatory arguments to long options a\"...", "call cs:dcgettext_ptr", "mov rsi, rbx; stream", "mov rdi, rax; s", "call cs:fputs_unlocked_ptr", "lea rsi, aAAllDoNotIgnor; \" -a, --all\\n do not ignore ent\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jnz loc_ED24"], "succs": [[4, "fall"], [132, "jump"]]}, {"id": 4, "start": 56697, "end": 56704, "lines": ["lea rdi, aGnuCoreutils+0Bh; s1"], "succs": [[5, "fall"]]}, {"id": 5, "start": 56704, "end": 56746, "lines": ["call sub_6600", "lea rsi, aAAlmostAllDoNo; \" -A, --almost-all\\n do not lis\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_F004"], "succs": [[6, "fall"], [193, "jump"]]}, {"id": 6, "start": 56746, "end": 56762, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F2D4"], "succs": [[7, "fall"], [253, "jump"]]}, {"id": 7, "start": 56762, "end": 56804, "lines": ["call sub_6600", "lea rsi, aAuthorWithLPri; \" --author\\n with -l, print\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EFF8"], "succs": [[8, "fall"], [192, "jump"]]}, {"id": 8, "start": 56804, "end": 56820, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F2C8"], "succs": [[9, "fall"], [252, "jump"]]}, {"id": 9, "start": 56820, "end": 56862, "lines": ["call sub_6600", "lea rsi, aBEscapePrintCS; \" -b, --escape\\n print C-style \"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EFEC"], "succs": [[10, "fall"], [191, "jump"]]}, {"id": 10, "start": 56862, "end": 56878, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F2BC"], "succs": [[11, "fall"], [251, "jump"]]}, {"id": 11, "start": 56878, "end": 56920, "lines": ["call sub_6600", "lea rsi, aBlockSizeSizeW; \" --block-size=SIZE\\n with \"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EFE0"], "succs": [[12, "fall"], [190, "jump"]]}, {"id": 12, "start": 56920, "end": 56936, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F2B0"], "succs": [[13, "fall"], [250, "jump"]]}, {"id": 13, "start": 56936, "end": 56978, "lines": ["call sub_6600", "lea rsi, aBIgnoreBackups; \" -B, --ignore-backups\\n do not\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EFD4"], "succs": [[14, "fall"], [189, "jump"]]}, {"id": 14, "start": 56978, "end": 56994, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F2A4"], "succs": [[15, "fall"], [249, "jump"]]}, {"id": 15, "start": 56994, "end": 57036, "lines": ["call sub_6600", "lea rsi, aCWithLtSortByA; \" -c\\n with -lt: sort by, and s\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EFC8"], "succs": [[16, "fall"], [188, "jump"]]}, {"id": 16, "start": 57036, "end": 57052, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F298"], "succs": [[17, "fall"], [248, "jump"]]}, {"id": 17, "start": 57052, "end": 57094, "lines": ["call sub_6600", "lea rsi, aCListEntriesBy; \" -C\\n list entries by columns\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EFBC"], "succs": [[18, "fall"], [187, "jump"]]}, {"id": 18, "start": 57094, "end": 57110, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F28C"], "succs": [[19, "fall"], [247, "jump"]]}, {"id": 19, "start": 57110, "end": 57152, "lines": ["call sub_6600", "lea rsi, aColorWhenColor; \" --color[=WHEN]\\n color th\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EFB0"], "succs": [[20, "fall"], [186, "jump"]]}, {"id": 20, "start": 57152, "end": 57168, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F280"], "succs": [[21, "fall"], [246, "jump"]]}, {"id": 21, "start": 57168, "end": 57210, "lines": ["call sub_6600", "lea rsi, aDDirectoryList; \" -d, --directory\\n list direct\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EFA4"], "succs": [[22, "fall"], [185, "jump"]]}, {"id": 22, "start": 57210, "end": 57226, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F274"], "succs": [[23, "fall"], [245, "jump"]]}, {"id": 23, "start": 57226, "end": 57268, "lines": ["call sub_6600", "lea rsi, aDDiredGenerate; \" -D, --dired\\n generate output\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EF98"], "succs": [[24, "fall"], [184, "jump"]]}, {"id": 24, "start": 57268, "end": 57284, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F268"], "succs": [[25, "fall"], [244, "jump"]]}, {"id": 25, "start": 57284, "end": 57326, "lines": ["call sub_6600", "lea rsi, aFSameAsAU; \" -f\\n same as -a -U\\n\"", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EF8C"], "succs": [[26, "fall"], [183, "jump"]]}, {"id": 26, "start": 57326, "end": 57342, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F25C"], "succs": [[27, "fall"], [243, "jump"]]}, {"id": 27, "start": 57342, "end": 57384, "lines": ["call sub_6600", "lea rsi, aFClassifyWhenA; \" -F, --classify[=WHEN]\\n appen\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EF80"], "succs": [[28, "fall"], [182, "jump"]]}, {"id": 28, "start": 57384, "end": 57400, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F250"], "succs": [[29, "fall"], [242, "jump"]]}, {"id": 29, "start": 57400, "end": 57442, "lines": ["call sub_6600", "lea rsi, aFileTypeLikeFE; \" --file-type\\n like -F, ex\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EF74"], "succs": [[30, "fall"], [181, "jump"]]}, {"id": 30, "start": 57442, "end": 57458, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F244"], "succs": [[31, "fall"], [241, "jump"]]}, {"id": 31, "start": 57458, "end": 57500, "lines": ["call sub_6600", "lea rsi, aFormatWordAcro; \" --format=WORD\\n across,ho\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EF68"], "succs": [[32, "fall"], [180, "jump"]]}, {"id": 32, "start": 57500, "end": 57516, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F238"], "succs": [[33, "fall"], [240, "jump"]]}, {"id": 33, "start": 57516, "end": 57558, "lines": ["call sub_6600", "lea rsi, aFullTimeLikeLT; \" --full-time\\n like -l --t\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EF5C"], "succs": [[34, "fall"], [179, "jump"]]}, {"id": 34, "start": 57558, "end": 57574, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F22C"], "succs": [[35, "fall"], [239, "jump"]]}, {"id": 35, "start": 57574, "end": 57616, "lines": ["call sub_6600", "lea rsi, aGLikeLButDoNot; \" -g\\n like -l, but do not list\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EF50"], "succs": [[36, "fall"], [178, "jump"]]}, {"id": 36, "start": 57616, "end": 57632, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F220"], "succs": [[37, "fall"], [238, "jump"]]}, {"id": 37, "start": 57632, "end": 57674, "lines": ["call sub_6600", "lea rsi, aGroupDirectori; \" --group-directories-first\\n \"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EF44"], "succs": [[38, "fall"], [177, "jump"]]}, {"id": 38, "start": 57674, "end": 57690, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F214"], "succs": [[39, "fall"], [237, "jump"]]}, {"id": 39, "start": 57690, "end": 57732, "lines": ["call sub_6600", "lea rsi, aGNoGroupInALon; \" -G, --no-group\\n in a long li\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EF38"], "succs": [[40, "fall"], [176, "jump"]]}, {"id": 40, "start": 57732, "end": 57748, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F208"], "succs": [[41, "fall"], [236, "jump"]]}, {"id": 41, "start": 57748, "end": 57790, "lines": ["call sub_6600", "lea rsi, aHHumanReadable; \" -h, --human-readable\\n with -\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EF2C"], "succs": [[42, "fall"], [175, "jump"]]}, {"id": 42, "start": 57790, "end": 57806, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F1FC"], "succs": [[43, "fall"], [235, "jump"]]}, {"id": 43, "start": 57806, "end": 57848, "lines": ["call sub_6600", "lea rsi, aSiLikewiseButU; \" --si\\n likewise, but use \"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EF20"], "succs": [[44, "fall"], [174, "jump"]]}, {"id": 44, "start": 57848, "end": 57864, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F1F0"], "succs": [[45, "fall"], [234, "jump"]]}, {"id": 45, "start": 57864, "end": 57906, "lines": ["call sub_6600", "lea rsi, aHDereferenceCo; \" -H, --dereference-command-line\\n \"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EF14"], "succs": [[46, "fall"], [173, "jump"]]}, {"id": 46, "start": 57906, "end": 57922, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F1E4"], "succs": [[47, "fall"], [233, "jump"]]}, {"id": 47, "start": 57922, "end": 57964, "lines": ["call sub_6600", "lea rsi, aDereferenceCom; \" --dereference-command-line-symlin\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EF08"], "succs": [[48, "fall"], [172, "jump"]]}, {"id": 48, "start": 57964, "end": 57980, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F1D8"], "succs": [[49, "fall"], [232, "jump"]]}, {"id": 49, "start": 57980, "end": 58022, "lines": ["call sub_6600", "lea rsi, aHidePatternDoN; \" --hide=PATTERN\\n do not l\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EEFC"], "succs": [[50, "fall"], [171, "jump"]]}, {"id": 50, "start": 58022, "end": 58038, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F1CC"], "succs": [[51, "fall"], [231, "jump"]]}, {"id": 51, "start": 58038, "end": 58080, "lines": ["call sub_6600", "lea rsi, aHyperlinkWhenH; \" --hyperlink[=WHEN]\\n hype\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EEF0"], "succs": [[52, "fall"], [170, "jump"]]}, {"id": 52, "start": 58080, "end": 58096, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F1C0"], "succs": [[53, "fall"], [230, "jump"]]}, {"id": 53, "start": 58096, "end": 58138, "lines": ["call sub_6600", "lea rsi, aIndicatorStyle_0; \" --indicator-style=WORD\\n \"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EEE4"], "succs": [[54, "fall"], [169, "jump"]]}, {"id": 54, "start": 58138, "end": 58154, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F1B4"], "succs": [[55, "fall"], [229, "jump"]]}, {"id": 55, "start": 58154, "end": 58196, "lines": ["call sub_6600", "lea rsi, aIInodePrintThe; \" -i, --inode\\n print the index\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EED8"], "succs": [[56, "fall"], [168, "jump"]]}, {"id": 56, "start": 58196, "end": 58212, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F1A8"], "succs": [[57, "fall"], [228, "jump"]]}, {"id": 57, "start": 58212, "end": 58254, "lines": ["call sub_6600", "lea rsi, aIIgnorePattern; \" -I, --ignore=PATTERN\\n do not\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EECC"], "succs": [[58, "fall"], [167, "jump"]]}, {"id": 58, "start": 58254, "end": 58270, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F19C"], "succs": [[59, "fall"], [227, "jump"]]}, {"id": 59, "start": 58270, "end": 58312, "lines": ["call sub_6600", "lea rsi, aKKibibytesDefa; \" -k, --kibibytes\\n default to \"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EEC0"], "succs": [[60, "fall"], [166, "jump"]]}, {"id": 60, "start": 58312, "end": 58328, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F190"], "succs": [[61, "fall"], [226, "jump"]]}, {"id": 61, "start": 58328, "end": 58370, "lines": ["call sub_6600", "lea rsi, aLUseALongListi; \" -l\\n use a long listing forma\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EEB4"], "succs": [[62, "fall"], [165, "jump"]]}, {"id": 62, "start": 58370, "end": 58386, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F184"], "succs": [[63, "fall"], [225, "jump"]]}, {"id": 63, "start": 58386, "end": 58428, "lines": ["call sub_6600", "lea rsi, aLDereferenceWh; \" -L, --dereference\\n when show\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EEA8"], "succs": [[64, "fall"], [164, "jump"]]}, {"id": 64, "start": 58428, "end": 58444, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F178"], "succs": [[65, "fall"], [224, "jump"]]}, {"id": 65, "start": 58444, "end": 58486, "lines": ["call sub_6600", "lea rsi, aMFillWidthWith; \" -m\\n fill width with a comma \"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EE9C"], "succs": [[66, "fall"], [163, "jump"]]}, {"id": 66, "start": 58486, "end": 58502, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F16C"], "succs": [[67, "fall"], [223, "jump"]]}, {"id": 67, "start": 58502, "end": 58544, "lines": ["call sub_6600", "lea rsi, aNNumericUidGid; \" -n, --numeric-uid-gid\\n like \"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EE90"], "succs": [[68, "fall"], [162, "jump"]]}, {"id": 68, "start": 58544, "end": 58560, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F160"], "succs": [[69, "fall"], [222, "jump"]]}, {"id": 69, "start": 58560, "end": 58602, "lines": ["call sub_6600", "lea rsi, aNLiteralPrintE; \" -N, --literal\\n print entry n\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EE84"], "succs": [[70, "fall"], [161, "jump"]]}, {"id": 70, "start": 58602, "end": 58618, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F154"], "succs": [[71, "fall"], [221, "jump"]]}, {"id": 71, "start": 58618, "end": 58660, "lines": ["call sub_6600", "lea rsi, aOLikeLButDoNot; \" -o\\n like -l, but do not list\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EE78"], "succs": [[72, "fall"], [160, "jump"]]}, {"id": 72, "start": 58660, "end": 58676, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F148"], "succs": [[73, "fall"], [220, "jump"]]}, {"id": 73, "start": 58676, "end": 58718, "lines": ["call sub_6600", "lea rsi, aPIndicatorStyl; \" -p, --indicator-style=slash\\n \"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EE6C"], "succs": [[74, "fall"], [159, "jump"]]}, {"id": 74, "start": 58718, "end": 58734, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F13C"], "succs": [[75, "fall"], [219, "jump"]]}, {"id": 75, "start": 58734, "end": 58776, "lines": ["call sub_6600", "lea rsi, aQHideControlCh; \" -q, --hide-control-chars\\n pr\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EE60"], "succs": [[76, "fall"], [158, "jump"]]}, {"id": 76, "start": 58776, "end": 58792, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F130"], "succs": [[77, "fall"], [218, "jump"]]}, {"id": 77, "start": 58792, "end": 58834, "lines": ["call sub_6600", "lea rsi, aShowControlCha; \" --show-control-chars\\n sh\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EE54"], "succs": [[78, "fall"], [157, "jump"]]}, {"id": 78, "start": 58834, "end": 58850, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F124"], "succs": [[79, "fall"], [217, "jump"]]}, {"id": 79, "start": 58850, "end": 58892, "lines": ["call sub_6600", "lea rsi, aQQuoteNameEncl; \" -Q, --quote-name\\n enclose en\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EE48"], "succs": [[80, "fall"], [156, "jump"]]}, {"id": 80, "start": 58892, "end": 58908, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F118"], "succs": [[81, "fall"], [216, "jump"]]}, {"id": 81, "start": 58908, "end": 58950, "lines": ["call sub_6600", "lea rsi, aQuotingStyleWo; \" --quoting-style=WORD\\n us\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EE3C"], "succs": [[82, "fall"], [155, "jump"]]}, {"id": 82, "start": 58950, "end": 58966, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F10C"], "succs": [[83, "fall"], [215, "jump"]]}, {"id": 83, "start": 58966, "end": 59008, "lines": ["call sub_6600", "lea rsi, aRReverseRevers; \" -r, --reverse\\n reverse order\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EE30"], "succs": [[84, "fall"], [154, "jump"]]}, {"id": 84, "start": 59008, "end": 59024, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F100"], "succs": [[85, "fall"], [214, "jump"]]}, {"id": 85, "start": 59024, "end": 59066, "lines": ["call sub_6600", "lea rsi, aRRecursiveList; \" -R, --recursive\\n list subdir\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EE24"], "succs": [[86, "fall"], [153, "jump"]]}, {"id": 86, "start": 59066, "end": 59082, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F0F4"], "succs": [[87, "fall"], [213, "jump"]]}, {"id": 87, "start": 59082, "end": 59124, "lines": ["call sub_6600", "lea rsi, aSSizePrintTheA; \" -s, --size\\n print the alloca\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EE18"], "succs": [[88, "fall"], [152, "jump"]]}, {"id": 88, "start": 59124, "end": 59140, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F0E8"], "succs": [[89, "fall"], [212, "jump"]]}, {"id": 89, "start": 59140, "end": 59182, "lines": ["call sub_6600", "lea rsi, aSSortByFileSiz; \" -S\\n sort by file size, large\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EE0C"], "succs": [[90, "fall"], [151, "jump"]]}, {"id": 90, "start": 59182, "end": 59198, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F0DC"], "succs": [[91, "fall"], [211, "jump"]]}, {"id": 91, "start": 59198, "end": 59240, "lines": ["call sub_6600", "lea rsi, aSortWordChange; \" --sort=WORD\\n change defa\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EE00"], "succs": [[92, "fall"], [150, "jump"]]}, {"id": 92, "start": 59240, "end": 59256, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F0D0"], "succs": [[93, "fall"], [210, "jump"]]}, {"id": 93, "start": 59256, "end": 59298, "lines": ["call sub_6600", "lea rsi, aTimeWordSelect; \" --time=WORD\\n select whic\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EDF4"], "succs": [[94, "fall"], [149, "jump"]]}, {"id": 94, "start": 59298, "end": 59314, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F0C4"], "succs": [[95, "fall"], [209, "jump"]]}, {"id": 95, "start": 59314, "end": 59356, "lines": ["call sub_6600", "lea rsi, aTimeStyleTimeS; \" --time-style=TIME_STYLE\\n \"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EDE8"], "succs": [[96, "fall"], [148, "jump"]]}, {"id": 96, "start": 59356, "end": 59372, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F0B8"], "succs": [[97, "fall"], [208, "jump"]]}, {"id": 97, "start": 59372, "end": 59414, "lines": ["call sub_6600", "lea rsi, aTSortByTimeNew; \" -t\\n sort by time, newest fir\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EDDC"], "succs": [[98, "fall"], [147, "jump"]]}, {"id": 98, "start": 59414, "end": 59430, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F0AC"], "succs": [[99, "fall"], [207, "jump"]]}, {"id": 99, "start": 59430, "end": 59472, "lines": ["call sub_6600", "lea rsi, aTTabsizeColsAs; \" -T, --tabsize=COLS\\n assume t\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EDD0"], "succs": [[100, "fall"], [146, "jump"]]}, {"id": 100, "start": 59472, "end": 59488, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F0A0"], "succs": [[101, "fall"], [206, "jump"]]}, {"id": 101, "start": 59488, "end": 59530, "lines": ["call sub_6600", "lea rsi, aUWithLtSortByA; \" -u\\n with -lt: sort by, and s\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EDC4"], "succs": [[102, "fall"], [145, "jump"]]}, {"id": 102, "start": 59530, "end": 59546, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F094"], "succs": [[103, "fall"], [205, "jump"]]}, {"id": 103, "start": 59546, "end": 59588, "lines": ["call sub_6600", "lea rsi, aUDoNotSortDire; \" -U\\n do not sort directory en\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EDB8"], "succs": [[104, "fall"], [144, "jump"]]}, {"id": 104, "start": 59588, "end": 59604, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F088"], "succs": [[105, "fall"], [204, "jump"]]}, {"id": 105, "start": 59604, "end": 59646, "lines": ["call sub_6600", "lea rsi, aVNaturalSortOf; \" -v\\n natural sort of (version\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EDAC"], "succs": [[106, "fall"], [143, "jump"]]}, {"id": 106, "start": 59646, "end": 59662, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F07C"], "succs": [[107, "fall"], [203, "jump"]]}, {"id": 107, "start": 59662, "end": 59704, "lines": ["call sub_6600", "lea rsi, aWWidthColsSetO; \" -w, --width=COLS\\n set output\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_EDA0"], "succs": [[108, "fall"], [142, "jump"]]}, {"id": 108, "start": 59704, "end": 59720, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F070"], "succs": [[109, "fall"], [202, "jump"]]}, {"id": 109, "start": 59720, "end": 59762, "lines": ["call sub_6600", "lea rsi, aXListEntriesBy; \" -x\\n list entries by lines in\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_ED94"], "succs": [[110, "fall"], [141, "jump"]]}, {"id": 110, "start": 59762, "end": 59778, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F064"], "succs": [[111, "fall"], [201, "jump"]]}, {"id": 111, "start": 59778, "end": 59820, "lines": ["call sub_6600", "lea rsi, aXSortAlphabeti; \" -X\\n sort alphabetically by e\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_ED88"], "succs": [[112, "fall"], [140, "jump"]]}, {"id": 112, "start": 59820, "end": 59836, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F058"], "succs": [[113, "fall"], [200, "jump"]]}, {"id": 113, "start": 59836, "end": 59878, "lines": ["call sub_6600", "lea rsi, aZContextPrintA; \" -Z, --context\\n print any sec\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_ED7C"], "succs": [[114, "fall"], [139, "jump"]]}, {"id": 114, "start": 59878, "end": 59894, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F04C"], "succs": [[115, "fall"], [199, "jump"]]}, {"id": 115, "start": 59894, "end": 59936, "lines": ["call sub_6600", "lea rsi, aZeroEndEachOut; \" --zero\\n end each output \"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_ED70"], "succs": [[116, "fall"], [138, "jump"]]}, {"id": 116, "start": 59936, "end": 59952, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F040"], "succs": [[117, "fall"], [198, "jump"]]}, {"id": 117, "start": 59952, "end": 59994, "lines": ["call sub_6600", "lea rsi, a1ListOneFilePe; \" -1\\n list one file per line\\n\"", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_ED64"], "succs": [[118, "fall"], [137, "jump"]]}, {"id": 118, "start": 59994, "end": 60010, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F034"], "succs": [[119, "fall"], [197, "jump"]]}, {"id": 119, "start": 60010, "end": 60052, "lines": ["call sub_6600", "lea rsi, aHelpDisplayThi; \" --help\\n display this hel\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_ED58"], "succs": [[120, "fall"], [136, "jump"]]}, {"id": 120, "start": 60052, "end": 60068, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F028"], "succs": [[121, "fall"], [196, "jump"]]}, {"id": 121, "start": 60068, "end": 60110, "lines": ["call sub_6600", "lea rsi, aVersionOutputV; \" --version\\n output versio\"...", "mov edx, 5; category", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rsi, rax; ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_ED4C"], "succs": [[122, "fall"], [135, "jump"]]}, {"id": 122, "start": 60110, "end": 60126, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jz loc_F01C"], "succs": [[123, "fall"], [195, "jump"]]}, {"id": 123, "start": 60126, "end": 60340, "lines": ["call sub_6600", "mov rbx, cs:stdout", "mov edx, 5; category", "xor edi, edi; domainname", "lea rsi, aTheSizeArgumen; \"\\nThe SIZE argument is an integer and o\"...", "call cs:dcgettext_ptr", "mov rsi, rbx; stream", "mov rdi, rax; s", "call cs:fputs_unlocked_ptr", "mov rbx, cs:stdout", "mov edx, 5; category", "xor edi, edi; domainname", "lea rsi, aTheTimeStyleAr; \"\\nThe TIME_STYLE argument can be full-i\"...", "call cs:dcgettext_ptr", "mov rsi, rbx; stream", "mov rdi, rax; s", "call cs:fputs_unlocked_ptr", "mov rbx, cs:stdout", "mov edx, 5; category", "xor edi, edi; domainname", "lea rsi, aTheWhenArgumen; \"\\nThe WHEN argument defaults to 'always\"...", "call cs:dcgettext_ptr", "mov rsi, rbx; stream", "mov rdi, rax; s", "call cs:fputs_unlocked_ptr", "mov rbx, cs:stdout", "mov edx, 5; category", "xor edi, edi; domainname", "lea rsi, aUsingColorToDi; \"\\nUsing color to distinguish file types\"...", "call cs:dcgettext_ptr", "mov rsi, rbx; stream", "mov rdi, rax; s", "call cs:fputs_unlocked_ptr", "mov rbx, cs:stdout", "mov edx, 5; category", "xor edi, edi; domainname", "lea rsi, aExitStatus0IfO; \"\\nExit status:\\n 0 if OK,\\n 1 if mino\"...", "call cs:dcgettext_ptr", "mov rsi, rbx; stream", "mov rdi, rax; s", "call cs:fputs_unlocked_ptr", "mov eax, cs:dword_293D0", "test eax, eax", "jz loc_ED40"], "succs": [[124, "fall"], [134, "jump"]]}, {"id": 124, "start": 60340, "end": 60356, "lines": ["sub eax, 1", "lea r12, aVdir; \"vdir\"", "jz loc_F010"], "succs": [[125, "fall"], [194, "jump"]]}, {"id": 125, "start": 60356, "end": 60474, "lines": ["movdqa xmm7, [rbp+var_F0]", "lea rax, aMultiCallInvoc; \"Multi-call invocation\"", "movq xmm0, cs:off_276D0; \"coreutils\"", "lea rsi, asc_1F0C8; \"[\"", "movq xmm6, rax", "movdqa xmm1, [rbp+var_B0]", "lea rbx, [rbp+var_A0]", "movaps [rbp+var_A0], xmm7", "movdqa xmm7, [rbp+var_E0]", "punpcklqdq xmm0, xmm6", "movdqa xmm6, [rbp+var_D0]", "movaps [rbp+var_90], xmm0", "pxor xmm0, xmm0", "movaps [rbp+var_80], xmm7", "movdqa xmm7, [rbp+var_C0]", "movaps [rbp+var_70], xmm6", "movaps [rbp+var_60], xmm7", "movaps [rbp+var_50], xmm1", "movaps [rbp+var_40], xmm0", "jmp short loc_EC4D"], "succs": [[127, "jump"]]}, {"id": 126, "start": 60480, "end": 60493, "lines": ["mov rsi, [rbx+10h]; s2", "add rbx, 10h", "test rsi, rsi", "jz short loc_EC5A"], "succs": [[127, "fall"], [128, "jump"]]}, {"id": 127, "start": 60493, "end": 60506, "lines": ["mov rdi, r12; s1", "call cs:strcmp_ptr", "test eax, eax", "jnz short loc_EC40"], "succs": [[126, "jump"], [128, "fall"]]}, {"id": 128, "start": 60506, "end": 60541, "lines": ["mov rbx, [rbx+8]", "test rbx, rbx", "cmovz rbx, r12", "call sub_1B710", "xor esi, esi; locale", "mov edi, 5; category", "call cs:setlocale_ptr", "test rax, rax", "jz short loc_EC9A"], "succs": [[129, "fall"], [130, "jump"]]}, {"id": 129, "start": 60541, "end": 60570, "lines": ["mov edx, 3; n", "lea rsi, aEn; \"en_\"", "mov rdi, rax; s1", "call cs:strncmp_ptr", "test eax, eax", "jnz loc_F2EC"], "succs": [[130, "fall"], [255, "jump"]]}, {"id": 130, "start": 60570, "end": 60661, "lines": ["lea rsi, asc_1F0C8; \"[\"", "mov rdi, r12; s1", "lea r14, aTest; \"test\"", "call cs:strcmp_ptr", "mov edx, 5; category", "lea rsi, aFullDocumentat; \"Full documentation <%s%s>\\n\"", "test eax, eax", "cmovnz r14, r12", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "lea rdx, aHttpsWwwGnuOrg; \"https://www.gnu.org/software/coreutils/\"", "mov edi, 2", "mov rcx, r14", "mov rsi, rax", "lea r14, accept+3; \"\"", "xor eax, eax", "call cs:__printf_chk_ptr", "cmp r12, rbx", "jz loc_F2E0"], "succs": [[131, "fall"], [254, "jump"]]}, {"id": 131, "start": 60661, "end": 60708, "lines": ["xor edi, edi; domainname", "mov edx, 5; category", "lea rsi, aOrAvailableLoc; \"or available locally via: info '(coreut\"...", "call cs:dcgettext_ptr", "mov rcx, r14", "mov rdx, rbx", "mov edi, 2", "mov rsi, rax", "xor eax, eax", "call cs:__printf_chk_ptr", "jmp loc_DC5F"], "succs": [[2, "jump"]]}, {"id": 132, "start": 60708, "end": 60724, "lines": ["sub eax, 1", "lea rdi, aVdir; \"vdir\"", "jnz loc_DD80"], "succs": [[5, "jump"], [133, "fall"]]}, {"id": 133, "start": 60724, "end": 60736, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_DD80"], "succs": [[5, "jump"]]}, {"id": 134, "start": 60736, "end": 60748, "lines": ["lea r12, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_EBC4"], "succs": [[125, "jump"]]}, {"id": 135, "start": 60748, "end": 60760, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_EADE"], "succs": [[123, "jump"]]}, {"id": 136, "start": 60760, "end": 60772, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_EAA4"], "succs": [[121, "jump"]]}, {"id": 137, "start": 60772, "end": 60784, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_EA6A"], "succs": [[119, "jump"]]}, {"id": 138, "start": 60784, "end": 60796, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_EA30"], "succs": [[117, "jump"]]}, {"id": 139, "start": 60796, "end": 60808, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E9F6"], "succs": [[115, "jump"]]}, {"id": 140, "start": 60808, "end": 60820, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E9BC"], "succs": [[113, "jump"]]}, {"id": 141, "start": 60820, "end": 60832, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E982"], "succs": [[111, "jump"]]}, {"id": 142, "start": 60832, "end": 60844, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E948"], "succs": [[109, "jump"]]}, {"id": 143, "start": 60844, "end": 60856, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E90E"], "succs": [[107, "jump"]]}, {"id": 144, "start": 60856, "end": 60868, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E8D4"], "succs": [[105, "jump"]]}, {"id": 145, "start": 60868, "end": 60880, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E89A"], "succs": [[103, "jump"]]}, {"id": 146, "start": 60880, "end": 60892, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E860"], "succs": [[101, "jump"]]}, {"id": 147, "start": 60892, "end": 60904, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E826"], "succs": [[99, "jump"]]}, {"id": 148, "start": 60904, "end": 60916, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E7EC"], "succs": [[97, "jump"]]}, {"id": 149, "start": 60916, "end": 60928, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E7B2"], "succs": [[95, "jump"]]}, {"id": 150, "start": 60928, "end": 60940, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E778"], "succs": [[93, "jump"]]}, {"id": 151, "start": 60940, "end": 60952, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E73E"], "succs": [[91, "jump"]]}, {"id": 152, "start": 60952, "end": 60964, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E704"], "succs": [[89, "jump"]]}, {"id": 153, "start": 60964, "end": 60976, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E6CA"], "succs": [[87, "jump"]]}, {"id": 154, "start": 60976, "end": 60988, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E690"], "succs": [[85, "jump"]]}, {"id": 155, "start": 60988, "end": 61000, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E656"], "succs": [[83, "jump"]]}, {"id": 156, "start": 61000, "end": 61012, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E61C"], "succs": [[81, "jump"]]}, {"id": 157, "start": 61012, "end": 61024, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E5E2"], "succs": [[79, "jump"]]}, {"id": 158, "start": 61024, "end": 61036, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E5A8"], "succs": [[77, "jump"]]}, {"id": 159, "start": 61036, "end": 61048, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E56E"], "succs": [[75, "jump"]]}, {"id": 160, "start": 61048, "end": 61060, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E534"], "succs": [[73, "jump"]]}, {"id": 161, "start": 61060, "end": 61072, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E4FA"], "succs": [[71, "jump"]]}, {"id": 162, "start": 61072, "end": 61084, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E4C0"], "succs": [[69, "jump"]]}, {"id": 163, "start": 61084, "end": 61096, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E486"], "succs": [[67, "jump"]]}, {"id": 164, "start": 61096, "end": 61108, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E44C"], "succs": [[65, "jump"]]}, {"id": 165, "start": 61108, "end": 61120, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E412"], "succs": [[63, "jump"]]}, {"id": 166, "start": 61120, "end": 61132, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E3D8"], "succs": [[61, "jump"]]}, {"id": 167, "start": 61132, "end": 61144, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E39E"], "succs": [[59, "jump"]]}, {"id": 168, "start": 61144, "end": 61156, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E364"], "succs": [[57, "jump"]]}, {"id": 169, "start": 61156, "end": 61168, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E32A"], "succs": [[55, "jump"]]}, {"id": 170, "start": 61168, "end": 61180, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E2F0"], "succs": [[53, "jump"]]}, {"id": 171, "start": 61180, "end": 61192, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E2B6"], "succs": [[51, "jump"]]}, {"id": 172, "start": 61192, "end": 61204, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E27C"], "succs": [[49, "jump"]]}, {"id": 173, "start": 61204, "end": 61216, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E242"], "succs": [[47, "jump"]]}, {"id": 174, "start": 61216, "end": 61228, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E208"], "succs": [[45, "jump"]]}, {"id": 175, "start": 61228, "end": 61240, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E1CE"], "succs": [[43, "jump"]]}, {"id": 176, "start": 61240, "end": 61252, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E194"], "succs": [[41, "jump"]]}, {"id": 177, "start": 61252, "end": 61264, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E15A"], "succs": [[39, "jump"]]}, {"id": 178, "start": 61264, "end": 61276, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E120"], "succs": [[37, "jump"]]}, {"id": 179, "start": 61276, "end": 61288, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E0E6"], "succs": [[35, "jump"]]}, {"id": 180, "start": 61288, "end": 61300, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E0AC"], "succs": [[33, "jump"]]}, {"id": 181, "start": 61300, "end": 61312, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E072"], "succs": [[31, "jump"]]}, {"id": 182, "start": 61312, "end": 61324, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_E038"], "succs": [[29, "jump"]]}, {"id": 183, "start": 61324, "end": 61336, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_DFFE"], "succs": [[27, "jump"]]}, {"id": 184, "start": 61336, "end": 61348, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_DFC4"], "succs": [[25, "jump"]]}, {"id": 185, "start": 61348, "end": 61360, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_DF8A"], "succs": [[23, "jump"]]}, {"id": 186, "start": 61360, "end": 61372, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_DF50"], "succs": [[21, "jump"]]}, {"id": 187, "start": 61372, "end": 61384, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_DF16"], "succs": [[19, "jump"]]}, {"id": 188, "start": 61384, "end": 61396, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_DEDC"], "succs": [[17, "jump"]]}, {"id": 189, "start": 61396, "end": 61408, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_DEA2"], "succs": [[15, "jump"]]}, {"id": 190, "start": 61408, "end": 61420, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_DE68"], "succs": [[13, "jump"]]}, {"id": 191, "start": 61420, "end": 61432, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_DE2E"], "succs": [[11, "jump"]]}, {"id": 192, "start": 61432, "end": 61444, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_DDF4"], "succs": [[9, "jump"]]}, {"id": 193, "start": 61444, "end": 61456, "lines": ["lea rdi, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_DDBA"], "succs": [[7, "jump"]]}, {"id": 194, "start": 61456, "end": 61468, "lines": ["lea r12, aVdir+1; \"dir\"", "jmp loc_EBC4"], "succs": [[125, "jump"]]}, {"id": 195, "start": 61468, "end": 61480, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_EADE"], "succs": [[123, "jump"]]}, {"id": 196, "start": 61480, "end": 61492, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_EAA4"], "succs": [[121, "jump"]]}, {"id": 197, "start": 61492, "end": 61504, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_EA6A"], "succs": [[119, "jump"]]}, {"id": 198, "start": 61504, "end": 61516, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_EA30"], "succs": [[117, "jump"]]}, {"id": 199, "start": 61516, "end": 61528, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E9F6"], "succs": [[115, "jump"]]}, {"id": 200, "start": 61528, "end": 61540, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E9BC"], "succs": [[113, "jump"]]}, {"id": 201, "start": 61540, "end": 61552, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E982"], "succs": [[111, "jump"]]}, {"id": 202, "start": 61552, "end": 61564, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E948"], "succs": [[109, "jump"]]}, {"id": 203, "start": 61564, "end": 61576, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E90E"], "succs": [[107, "jump"]]}, {"id": 204, "start": 61576, "end": 61588, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E8D4"], "succs": [[105, "jump"]]}, {"id": 205, "start": 61588, "end": 61600, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E89A"], "succs": [[103, "jump"]]}, {"id": 206, "start": 61600, "end": 61612, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E860"], "succs": [[101, "jump"]]}, {"id": 207, "start": 61612, "end": 61624, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E826"], "succs": [[99, "jump"]]}, {"id": 208, "start": 61624, "end": 61636, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E7EC"], "succs": [[97, "jump"]]}, {"id": 209, "start": 61636, "end": 61648, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E7B2"], "succs": [[95, "jump"]]}, {"id": 210, "start": 61648, "end": 61660, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E778"], "succs": [[93, "jump"]]}, {"id": 211, "start": 61660, "end": 61672, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E73E"], "succs": [[91, "jump"]]}, {"id": 212, "start": 61672, "end": 61684, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E704"], "succs": [[89, "jump"]]}, {"id": 213, "start": 61684, "end": 61696, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E6CA"], "succs": [[87, "jump"]]}, {"id": 214, "start": 61696, "end": 61708, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E690"], "succs": [[85, "jump"]]}, {"id": 215, "start": 61708, "end": 61720, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E656"], "succs": [[83, "jump"]]}, {"id": 216, "start": 61720, "end": 61732, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E61C"], "succs": [[81, "jump"]]}, {"id": 217, "start": 61732, "end": 61744, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E5E2"], "succs": [[79, "jump"]]}, {"id": 218, "start": 61744, "end": 61756, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E5A8"], "succs": [[77, "jump"]]}, {"id": 219, "start": 61756, "end": 61768, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E56E"], "succs": [[75, "jump"]]}, {"id": 220, "start": 61768, "end": 61780, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E534"], "succs": [[73, "jump"]]}, {"id": 221, "start": 61780, "end": 61792, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E4FA"], "succs": [[71, "jump"]]}, {"id": 222, "start": 61792, "end": 61804, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E4C0"], "succs": [[69, "jump"]]}, {"id": 223, "start": 61804, "end": 61816, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E486"], "succs": [[67, "jump"]]}, {"id": 224, "start": 61816, "end": 61828, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E44C"], "succs": [[65, "jump"]]}, {"id": 225, "start": 61828, "end": 61840, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E412"], "succs": [[63, "jump"]]}, {"id": 226, "start": 61840, "end": 61852, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E3D8"], "succs": [[61, "jump"]]}, {"id": 227, "start": 61852, "end": 61864, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E39E"], "succs": [[59, "jump"]]}, {"id": 228, "start": 61864, "end": 61876, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E364"], "succs": [[57, "jump"]]}, {"id": 229, "start": 61876, "end": 61888, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E32A"], "succs": [[55, "jump"]]}, {"id": 230, "start": 61888, "end": 61900, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E2F0"], "succs": [[53, "jump"]]}, {"id": 231, "start": 61900, "end": 61912, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E2B6"], "succs": [[51, "jump"]]}, {"id": 232, "start": 61912, "end": 61924, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E27C"], "succs": [[49, "jump"]]}, {"id": 233, "start": 61924, "end": 61936, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E242"], "succs": [[47, "jump"]]}, {"id": 234, "start": 61936, "end": 61948, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E208"], "succs": [[45, "jump"]]}, {"id": 235, "start": 61948, "end": 61960, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E1CE"], "succs": [[43, "jump"]]}, {"id": 236, "start": 61960, "end": 61972, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E194"], "succs": [[41, "jump"]]}, {"id": 237, "start": 61972, "end": 61984, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E15A"], "succs": [[39, "jump"]]}, {"id": 238, "start": 61984, "end": 61996, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E120"], "succs": [[37, "jump"]]}, {"id": 239, "start": 61996, "end": 62008, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E0E6"], "succs": [[35, "jump"]]}, {"id": 240, "start": 62008, "end": 62020, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E0AC"], "succs": [[33, "jump"]]}, {"id": 241, "start": 62020, "end": 62032, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E072"], "succs": [[31, "jump"]]}, {"id": 242, "start": 62032, "end": 62044, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_E038"], "succs": [[29, "jump"]]}, {"id": 243, "start": 62044, "end": 62056, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_DFFE"], "succs": [[27, "jump"]]}, {"id": 244, "start": 62056, "end": 62068, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_DFC4"], "succs": [[25, "jump"]]}, {"id": 245, "start": 62068, "end": 62080, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_DF8A"], "succs": [[23, "jump"]]}, {"id": 246, "start": 62080, "end": 62092, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_DF50"], "succs": [[21, "jump"]]}, {"id": 247, "start": 62092, "end": 62104, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_DF16"], "succs": [[19, "jump"]]}, {"id": 248, "start": 62104, "end": 62116, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_DEDC"], "succs": [[17, "jump"]]}, {"id": 249, "start": 62116, "end": 62128, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_DEA2"], "succs": [[15, "jump"]]}, {"id": 250, "start": 62128, "end": 62140, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_DE68"], "succs": [[13, "jump"]]}, {"id": 251, "start": 62140, "end": 62152, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_DE2E"], "succs": [[11, "jump"]]}, {"id": 252, "start": 62152, "end": 62164, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_DDF4"], "succs": [[9, "jump"]]}, {"id": 253, "start": 62164, "end": 62176, "lines": ["lea rdi, aVdir+1; \"dir\"", "jmp loc_DDBA"], "succs": [[7, "jump"]]}, {"id": 254, "start": 62176, "end": 62188, "lines": ["lea r14, aMultiCallInvoc+0Ah; \" invocation\"", "jmp loc_ECF5"], "succs": [[131, "jump"]]}, {"id": 255, "start": 62188, "end": 62232, "lines": ["mov r14, cs:stdout", "xor edi, edi; domainname", "mov edx, 5; category", "lea rsi, aReportAnyTrans; \"Report any translation bugs to <https:/\"...", "call cs:dcgettext_ptr", "mov rdi, rax; s", "mov rsi, r14; stream", "call cs:fputs_unlocked_ptr", "jmp loc_EC9A"], "succs": [[130, "jump"]]}]}, {"name": "sub_C320", "ea": 49952, "blocks": [{"id": 0, "start": 49952, "end": 50023, "lines": ["push rbp", "mov rbp, rsp", "push r15", "push r14", "push r13", "mov r13d, edx", "push r12", "mov r12, rdi", "push rbx", "mov ebx, esi", "sub rsp, 3B8h", "mov rdx, cs:qword_293B0", "cmp rdx, cs:qword_293B8", "mov r14, fs:28h", "mov [rbp+var_38], r14", "mov r14, rcx", "mov rdi, cs:qword_293C0", "jz loc_CC90"], "succs": [[1, "fall"], [126, "jump"]]}, {"id": 1, "start": 50023, "end": 50121, "lines": ["imul rdx, 0D0h", "xor eax, eax", "lea r15, [rdi+rdx]", "lea rdi, [r15+8]", "mov rcx, r15", "mov qword ptr [r15], 0", "mov qword ptr [r15+0C8h], 0", "and rdi, 0FFFFFFFFFFFFFFF8h", "sub rcx, rdi", "add ecx, 0D0h", "shr ecx, 3", "rep stosq", "lea rax, unk_2802A", "mov [r15+0A8h], ebx", "mov [r15+0B0h], rax", "cmp cs:byte_293A9, 0", "mov dword ptr [r15+0C4h], 0FFFFFFFFh", "jnz short loc_C3D6"], "succs": [[2, "fall"], [3, "jump"]]}, {"id": 2, "start": 50121, "end": 50134, "lines": ["cmp cs:byte_293A8, 0", "jnz loc_CCC8"], "succs": [[3, "fall"], [127, "jump"]]}, {"id": 3, "start": 50134, "end": 50143, "lines": ["test r13b, r13b", "jz loc_C748"], "succs": [[4, "fall"], [48, "jump"]]}, {"id": 4, "start": 50143, "end": 50154, "lines": ["cmp byte ptr [r12], 2Fh ; '/'", "jz loc_D28E"], "succs": [[5, "fall"], [197, "jump"]]}, {"id": 5, "start": 50154, "end": 50163, "lines": ["test r14, r14", "jz loc_D28E"], "succs": [[6, "fall"], [197, "jump"]]}, {"id": 6, "start": 50163, "end": 50176, "lines": ["mov esi, 1", "nop dword ptr [rax+rax+00000000h]"], "succs": [[7, "fall"]]}, {"id": 7, "start": 50176, "end": 50246, "lines": ["mov dword ptr [rbp+var_3C0], esi", "mov rdi, r12; s", "call cs:strlen_ptr", "mov rdi, r14; s", "mov [rbp+src], rax", "call cs:strlen_ptr", "mov rsi, [rbp+src]", "mov rdx, rsp", "lea rax, [rsi+rax+19h]", "mov esi, dword ptr [rbp+var_3C0]", "mov rcx, rax", "and rcx, 0FFFFFFFFFFFFF000h", "sub rdx, rcx", "cmp rsp, rdx", "jz short loc_C45B"], "succs": [[8, "fall"], [9, "jump"]]}, {"id": 8, "start": 50246, "end": 50267, "lines": ["sub rsp, 1000h", "or [rsp+13E0h+var_3E8], 0", "cmp rsp, rdx", "jnz short loc_C446"], "succs": [[9, "fall"], [8, "jump"]]}, {"id": 9, "start": 50267, "end": 50284, "lines": ["and eax, 0FF0h", "sub rsp, rax", "test rax, rax", "jnz loc_D180"], "succs": [[10, "fall"], [177, "jump"]]}, {"id": 10, "start": 50284, "end": 50316, "lines": ["lea rdx, [rsp+13E0h+var_13D1]", "movzx ecx, byte ptr [r14]", "mov rax, rdx", "and rax, 0FFFFFFFFFFFFFFF0h", "mov [rbp+src], rax", "cmp cl, 2Eh ; '.'", "jz loc_CDB0"], "succs": [[11, "fall"], [135, "jump"]]}, {"id": 11, "start": 50316, "end": 50327, "lines": ["mov rax, [rbp+src]", "test cl, cl", "jz short loc_C4E7"], "succs": [[12, "fall"], [17, "jump"]]}, {"id": 12, "start": 50327, "end": 50368, "lines": ["mov rax, rdx", "mov rdx, r14", "and rax, 0FFFFFFFFFFFFFFF0h", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]"], "succs": [[13, "fall"]]}, {"id": 13, "start": 50368, "end": 50389, "lines": ["mov rdi, rax", "add rdx, 1", "add rax, 1", "mov [rax-1], cl", "movzx ecx, byte ptr [rdx]", "test cl, cl", "jnz short loc_C4C0"], "succs": [[14, "fall"], [13, "jump"]]}, {"id": 14, "start": 50389, "end": 50394, "lines": ["cmp r14, rdx", "jnb short loc_C4E7"], "succs": [[15, "fall"], [17, "jump"]]}, {"id": 15, "start": 50394, "end": 50400, "lines": ["cmp byte ptr [rdx-1], 2Fh ; '/'", "jz short loc_C4E7"], "succs": [[16, "fall"], [17, "jump"]]}, {"id": 16, "start": 50400, "end": 50407, "lines": ["mov byte ptr [rax], 2Fh ; '/'", "lea rax, [rdi+2]"], "succs": [[17, "fall"]]}, {"id": 17, "start": 50407, "end": 50419, "lines": ["movzx edx, byte ptr [r12]", "mov rcx, r12", "test dl, dl", "jz short loc_C511"], "succs": [[18, "fall"], [20, "jump"]]}, {"id": 18, "start": 50419, "end": 50432, "lines": ["xchg ax, ax", "nop word ptr [rax+rax+00000000h]"], "succs": [[19, "fall"]]}, {"id": 19, "start": 50432, "end": 50449, "lines": ["add rcx, 1", "mov [rax], dl", "add rax, 1", "movzx edx, byte ptr [rcx]", "test dl, dl", "jnz short loc_C500"], "succs": [[20, "fall"], [19, "jump"]]}, {"id": 20, "start": 50449, "end": 50460, "lines": ["mov byte ptr [rax], 0", "test esi, esi", "jnz loc_D295"], "succs": [[21, "fall"], [198, "jump"]]}, {"id": 21, "start": 50460, "end": 50501, "lines": ["cmp ebx, 3", "movzx r8d, cs:byte_29369", "movzx edi, cs:byte_292A0", "setz cl", "cmp cs:dword_292F8, 4", "setz sil", "test r13b, r13b", "jnz loc_C9A0"], "succs": [[22, "fall"], [89, "jump"]]}, {"id": 22, "start": 50501, "end": 50543, "lines": ["cmp ebx, 5", "mov ecx, cs:dword_2933C", "setz r14b", "and r14d, edi", "cmp ebx, 6", "setz al", "test ecx, ecx", "setz dl", "mov [rbp+var_3C9], al", "or r8b, dl", "jnz loc_C9E4"], "succs": [[23, "fall"], [94, "jump"]]}, {"id": 23, "start": 50543, "end": 50552, "lines": ["test r14b, r14b", "jnz loc_C9E4"], "succs": [[24, "fall"], [94, "jump"]]}, {"id": 24, "start": 50552, "end": 50561, "lines": ["cmp cs:byte_292FD, 0", "jz short loc_C590"], "succs": [[25, "fall"], [27, "jump"]]}, {"id": 25, "start": 50561, "end": 50569, "lines": ["test al, al", "jnz loc_CB77"], "succs": [[26, "fall"], [109, "jump"]]}, {"id": 26, "start": 50569, "end": 50576, "lines": ["nop dword ptr [rax+00000000h]"], "succs": [[27, "fall"]]}, {"id": 27, "start": 50576, "end": 50593, "lines": ["cmp cs:byte_2932C, 0", "mov r13, [r15+58h]", "jz loc_CC11"], "succs": [[28, "fall"], [118, "jump"]]}, {"id": 28, "start": 50593, "end": 50649, "lines": ["mov r8, cs:qword_29320", "mov edx, cs:dword_29328", "mov ecx, 200h", "mov rdi, r13", "lea rsi, [rbp+var_2D0]", "call sub_13000", "mov esi, 3", "mov rdi, rax", "call sub_14C90", "cmp eax, cs:dword_29360", "jle short loc_C5DF"], "succs": [[29, "fall"], [30, "jump"]]}, {"id": 29, "start": 50649, "end": 50655, "lines": ["mov cs:dword_29360, eax"], "succs": [[30, "fall"]]}, {"id": 30, "start": 50655, "end": 50669, "lines": ["mov edx, cs:dword_2933C", "test edx, edx", "jnz loc_CC11"], "succs": [[31, "fall"], [118, "jump"]]}, {"id": 31, "start": 50669, "end": 50682, "lines": ["cmp cs:byte_28029, 0", "jnz loc_CEB0"], "succs": [[32, "fall"], [146, "jump"]]}, {"id": 32, "start": 50682, "end": 50695, "lines": ["cmp cs:byte_28028, 0", "jnz loc_CE60"], "succs": [[33, "fall"], [142, "jump"]]}, {"id": 33, "start": 50695, "end": 50708, "lines": ["cmp cs:byte_2932E, 0", "jnz loc_CE38"], "succs": [[34, "fall"], [140, "jump"]]}, {"id": 34, "start": 50708, "end": 50721, "lines": ["cmp cs:byte_29369, 0", "jnz loc_CC1A"], "succs": [[35, "fall"], [119, "jump"]]}, {"id": 35, "start": 50721, "end": 50735, "lines": ["mov eax, cs:dword_2933C", "test eax, eax", "jnz loc_CC43"], "succs": [[36, "fall"], [122, "jump"]]}, {"id": 36, "start": 50735, "end": 50769, "lines": ["mov rdi, [r15+28h]", "lea rsi, [rbp+var_2F0]", "call sub_14440", "mov rdi, rax; s", "call cs:strlen_ptr", "cmp eax, cs:dword_2935C", "jle short loc_C657"], "succs": [[37, "fall"], [38, "jump"]]}, {"id": 37, "start": 50769, "end": 50775, "lines": ["mov cs:dword_2935C, eax"], "succs": [[38, "fall"]]}, {"id": 38, "start": 50775, "end": 50787, "lines": ["sub ebx, 2", "and ebx, 0FFFFFFFDh", "jnz loc_CDF0"], "succs": [[39, "fall"], [138, "jump"]]}, {"id": 39, "start": 50787, "end": 50845, "lines": ["mov rdi, [r15+40h]", "lea rsi, [rbp+var_2D0]", "mov rax, rdi", "shr rdi, 20h", "shr rax, 8", "and edi, 0FFFFF000h", "and eax, 0FFFh", "or edi, eax", "call sub_14440", "mov rdi, rax; s", "call cs:strlen_ptr", "cmp eax, cs:dword_29348", "jle short loc_C6A3"], "succs": [[40, "fall"], [41, "jump"]]}, {"id": 40, "start": 50845, "end": 50851, "lines": ["mov cs:dword_29348, eax"], "succs": [[41, "fall"]]}, {"id": 41, "start": 50851, "end": 50903, "lines": ["mov rdi, [r15+40h]", "lea rsi, [rbp+var_2D0]", "movzx eax, dil", "shr rdi, 0Ch", "xor dil, dil", "or edi, eax", "call sub_14440", "mov rdi, rax; s", "call cs:strlen_ptr", "mov rdx, rax", "mov eax, cs:dword_29344", "cmp edx, eax", "jle short loc_C6DF"], "succs": [[42, "fall"], [43, "jump"]]}, {"id": 42, "start": 50903, "end": 50911, "lines": ["mov cs:dword_29344, edx", "mov eax, edx"], "succs": [[43, "fall"]]}, {"id": 43, "start": 50911, "end": 50933, "lines": ["mov edx, cs:dword_29348", "lea eax, [rax+rdx+2]", "cmp eax, cs:dword_29340", "jle loc_CC43"], "succs": [[44, "fall"], [122, "jump"]]}, {"id": 44, "start": 50933, "end": 50952, "lines": ["cmp cs:byte_292FC, 0", "mov cs:dword_29340, eax", "jz loc_CC50"], "succs": [[45, "fall"], [123, "jump"]]}, {"id": 45, "start": 50952, "end": 50960, "lines": ["nop dword ptr [rax+rax+00000000h]"], "succs": [[46, "fall"]]}, {"id": 46, "start": 50960, "end": 50998, "lines": ["mov rdi, [r15+20h]", "lea rsi, [rbp+var_2D0]", "call sub_14440", "mov rdi, rax; s", "call cs:strlen_ptr", "cmp eax, cs:dword_29364", "jle loc_CC50"], "succs": [[47, "fall"], [123, "jump"]]}, {"id": 47, "start": 50998, "end": 51009, "lines": ["mov cs:dword_29364, eax", "jmp loc_CC50"], "succs": [[123, "jump"]]}, {"id": 48, "start": 51016, "end": 51029, "lines": ["cmp cs:byte_29311, 0", "jz loc_C840"], "succs": [[49, "fall"], [62, "jump"]]}, {"id": 49, "start": 51029, "end": 51036, "lines": ["cmp byte ptr [r12], 2Fh ; '/'", "jz short loc_C76A"], "succs": [[50, "fall"], [51, "jump"]]}, {"id": 50, "start": 51036, "end": 51050, "lines": ["mov esi, 1", "test r14, r14", "jnz loc_C400"], "succs": [[7, "jump"], [51, "fall"]]}, {"id": 51, "start": 51050, "end": 51057, "lines": ["mov [rbp+src], r12"], "succs": [[52, "fall"]]}, {"id": 52, "start": 51057, "end": 51088, "lines": ["mov rdi, [rbp+src]; src", "mov esi, 2", "call sub_FB40", "mov [r15+10h], rax", "test rax, rax", "jz loc_D49A"], "succs": [[53, "fall"], [232, "jump"]]}, {"id": 53, "start": 51088, "end": 51105, "lines": ["mov r14d, cs:dword_292F8", "cmp r14d, 3", "ja loc_CFD7"], "succs": [[54, "fall"], [158, "jump"]]}, {"id": 54, "start": 51105, "end": 51115, "lines": ["cmp r14d, 1", "jbe loc_C8E0"], "succs": [[55, "fall"], [77, "jump"]]}, {"id": 55, "start": 51115, "end": 51124, "lines": ["test r13b, r13b", "jz loc_C8E0"], "succs": [[56, "fall"], [77, "jump"]]}, {"id": 56, "start": 51124, "end": 51164, "lines": ["call sub_5AA0", "lea rbx, [r15+18h]", "xor ecx, ecx", "mov edi, 0FFFFFF9Ch", "mov rsi, [rbp+src]", "mov r8d, eax", "mov rdx, rbx", "call sub_6040", "cmp r14d, 2", "jz short loc_C7FA"], "succs": [[57, "fall"], [59, "jump"]]}, {"id": 57, "start": 51164, "end": 51172, "lines": ["test eax, eax", "js loc_D3E0"], "succs": [[58, "fall"], [223, "jump"]]}, {"id": 58, "start": 51172, "end": 51194, "lines": ["mov edx, [r15+30h]", "and edx, 0F000h", "cmp edx, 4000h", "jnz loc_C92F"], "succs": [[59, "fall"], [85, "jump"]]}, {"id": 59, "start": 51194, "end": 51205, "lines": ["mov esi, r13d", "test eax, eax", "jz loc_C95A"], "succs": [[60, "fall"], [87, "jump"]]}, {"id": 60, "start": 51205, "end": 51248, "lines": ["mov edx, 5; category", "lea rsi, aCannotAccessS; \"cannot access %s\"", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rdx, [rbp+src]", "mov edi, 1", "mov rsi, rax", "call sub_6A80", "nop dword ptr [rax]"], "succs": [[61, "fall"]]}, {"id": 61, "start": 51248, "end": 51256, "lines": ["xor r13d, r13d", "jmp loc_CC64"], "succs": [[124, "jump"]]}, {"id": 62, "start": 51264, "end": 51277, "lines": ["cmp cs:byte_292A2, 0", "jnz loc_C900"], "succs": [[63, "fall"], [81, "jump"]]}, {"id": 63, "start": 51277, "end": 51293, "lines": ["movzx edx, cs:byte_292A1", "test ebx, ebx", "setz al", "test dl, dl", "jz short loc_C865"], "succs": [[64, "fall"], [65, "jump"]]}, {"id": 64, "start": 51293, "end": 51301, "lines": ["test al, al", "jnz loc_C900"], "succs": [[65, "fall"], [81, "jump"]]}, {"id": 65, "start": 51301, "end": 51310, "lines": ["cmp ebx, 3", "jz loc_D1A0"], "succs": [[66, "fall"], [180, "jump"]]}, {"id": 66, "start": 51310, "end": 51318, "lines": ["test al, al", "jnz loc_D1A0"], "succs": [[67, "fall"], [180, "jump"]]}, {"id": 67, "start": 51318, "end": 51329, "lines": ["movzx ecx, cs:byte_292FC", "test cl, cl", "jnz short loc_C8F0"], "succs": [[68, "fall"], [78, "jump"]]}, {"id": 68, "start": 51329, "end": 51337, "lines": ["test dl, dl", "jz loc_D2D8"], "succs": [[69, "fall"], [202, "jump"]]}, {"id": 69, "start": 51337, "end": 51346, "lines": ["cmp ebx, 6", "jnz loc_D2D8"], "succs": [[70, "fall"], [202, "jump"]]}, {"id": 70, "start": 51346, "end": 51361, "lines": ["mov edx, cs:dword_292F8", "cmp edx, 4", "jz loc_CFB2"], "succs": [[71, "fall"], [154, "jump"]]}, {"id": 71, "start": 51361, "end": 51370, "lines": ["cmp cs:byte_29390, 0", "jnz short loc_C8BB"], "succs": [[72, "fall"], [74, "jump"]]}, {"id": 72, "start": 51370, "end": 51379, "lines": ["cmp cs:byte_292FD, 0", "jnz short loc_C8BB"], "succs": [[73, "fall"], [74, "jump"]]}, {"id": 73, "start": 51379, "end": 51387, "lines": ["test cl, cl", "jz loc_D2D8"], "succs": [[74, "fall"], [202, "jump"]]}, {"id": 74, "start": 51387, "end": 51394, "lines": ["cmp byte ptr [r12], 2Fh ; '/'", "jz short loc_C8D0"], "succs": [[75, "fall"], [76, "jump"]]}, {"id": 75, "start": 51394, "end": 51408, "lines": ["mov esi, 1", "test r14, r14", "jnz loc_C400"], "succs": [[7, "jump"], [76, "fall"]]}, {"id": 76, "start": 51408, "end": 51424, "lines": ["mov [rbp+src], r12", "nop word ptr [rax+rax+00000000h]"], "succs": [[77, "fall"]]}, {"id": 77, "start": 51424, "end": 51430, "lines": ["lea rbx, [r15+18h]", "jmp short loc_C92F"], "succs": [[85, "jump"]]}, {"id": 78, "start": 51440, "end": 51445, "lines": ["cmp ebx, 6", "jz short loc_C892"], "succs": [[70, "jump"], [79, "fall"]]}, {"id": 79, "start": 51445, "end": 51449, "lines": ["test al, al", "jnz short loc_C892"], "succs": [[70, "jump"], [80, "fall"]]}, {"id": 80, "start": 51449, "end": 51456, "lines": ["nop dword ptr [rax+00000000h]"], "succs": [[81, "fall"]]}, {"id": 81, "start": 51456, "end": 51463, "lines": ["cmp byte ptr [r12], 2Fh ; '/'", "jz short loc_C915"], "succs": [[82, "fall"], [83, "jump"]]}, {"id": 82, "start": 51463, "end": 51477, "lines": ["mov esi, 1", "test r14, r14", "jnz loc_C400"], "succs": [[7, "jump"], [83, "fall"]]}, {"id": 83, "start": 51477, "end": 51492, "lines": ["mov eax, cs:dword_292F8", "cmp eax, 3", "ja loc_CFD0"], "succs": [[84, "fall"], [157, "jump"]]}, {"id": 84, "start": 51492, "end": 51503, "lines": ["mov [rbp+src], r12", "lea rbx, [r15+18h]"], "succs": [[85, "fall"]]}, {"id": 85, "start": 51503, "end": 51538, "lines": ["call sub_5AA0", "mov rsi, [rbp+src]", "mov ecx, 100h", "mov rdx, rbx", "mov r8d, eax", "mov edi, 0FFFFFF9Ch", "call sub_6040", "xor esi, esi"], "succs": [[86, "fall"]]}, {"id": 86, "start": 51538, "end": 51546, "lines": ["test eax, eax", "jnz loc_D0B0"], "succs": [[87, "fall"], [169, "jump"]]}, {"id": 87, "start": 51546, "end": 51612, "lines": ["mov eax, [r15+30h]", "lea rdx, unk_1D7A0", "mov byte ptr [r15+0B8h], 1", "movzx r8d, cs:byte_29369", "movzx edi, cs:byte_292A0", "shr eax, 0Ch", "and eax, 0Fh", "movsx ebx, byte ptr [rdx+rax]", "cmp ebx, 3", "mov [r15+0A8h], ebx", "setz cl", "test r13b, r13b", "jz loc_C545"], "succs": [[22, "jump"], [88, "fall"]]}, {"id": 88, "start": 51612, "end": 51616, "lines": ["nop dword ptr [rax+00h]"], "succs": [[89, "fall"]]}, {"id": 89, "start": 51616, "end": 51624, "lines": ["test cl, cl", "jz loc_C545"], "succs": [[22, "jump"], [90, "fall"]]}, {"id": 90, "start": 51624, "end": 51638, "lines": ["cmp cs:byte_292F5, 0", "mov ebx, 3", "jnz short loc_C9C6"], "succs": [[91, "fall"], [92, "jump"]]}, {"id": 91, "start": 51638, "end": 51654, "lines": ["mov dword ptr [r15+0A8h], 9", "mov ebx, 9"], "succs": [[92, "fall"]]}, {"id": 92, "start": 51654, "end": 51674, "lines": ["mov ecx, cs:dword_2933C", "test ecx, ecx", "setz al", "or r8b, al", "jz loc_C590"], "succs": [[27, "jump"], [93, "fall"]]}, {"id": 93, "start": 51674, "end": 51684, "lines": ["mov [rbp+var_3C9], 0", "xor r14d, r14d"], "succs": [[94, "fall"]]}, {"id": 94, "start": 51684, "end": 51756, "lines": ["movzx edi, byte ptr [r15+0B8h]", "mov byte ptr [rbp+var_3D0], r8b", "mov byte ptr [rbp+var_3D8], sil", "mov [rbp+var_3DC], ecx", "mov byte ptr [rbp+var_3C8], dil", "call cs:__errno_location_ptr", "cmp byte ptr [rbp+var_3C8], 0", "movzx esi, byte ptr [rbp+var_3D8]", "mov [rbp+var_3C0], rax", "movzx r8d, byte ptr [rbp+var_3D0]", "jz short loc_CA4F"], "succs": [[95, "fall"], [97, "jump"]]}, {"id": 95, "start": 51756, "end": 51768, "lines": ["mov rax, cs:qword_282E8", "test rax, rax", "jz short loc_CA4F"], "succs": [[96, "fall"], [97, "jump"]]}, {"id": 96, "start": 51768, "end": 51791, "lines": ["mov rcx, cs:qword_282E0", "cmp [r15+18h], rcx", "mov ecx, [rbp+var_3DC]", "jz loc_CD20"], "succs": [[97, "fall"], [129, "jump"]]}, {"id": 97, "start": 51791, "end": 51898, "lines": ["movzx eax, sil", "movzx edx, r8b", "lea rcx, unk_1D8A0", "mov rsi, [rbp+var_3C0]", "shl edx, 10h", "shl eax, 11h", "mov rdi, [rbp+src]", "or eax, edx", "mov edx, ebx", "mov dword ptr [rsi], 0", "lea rsi, [rbp+var_3B0]", "movzx edx, byte ptr [rcx+rdx]", "mov [rbp+var_3C8], rsi", "or eax, edx", "mov edx, eax", "mov dword ptr [rbp+var_3D8], eax", "call sub_10DD0", "mov edx, [rbp+var_398]", "mov ecx, cs:dword_2933C", "mov esi, eax", "cmp byte ptr [r15+0B8h], 0", "jz loc_CD70"], "succs": [[98, "fall"], [130, "jump"]]}, {"id": 98, "start": 51898, "end": 51913, "lines": ["mov eax, 3", "xor edi, edi", "test esi, esi", "jle loc_CF10"], "succs": [[99, "fall"], [150, "jump"]]}, {"id": 99, "start": 51913, "end": 51919, "lines": ["mov r8d, 1"], "succs": [[100, "fall"]]}, {"id": 100, "start": 51919, "end": 51937, "lines": ["or cs:byte_29368, r8b", "mov [r15+0BCh], eax", "test ecx, ecx", "jnz short loc_CAEE"], "succs": [[101, "fall"], [103, "jump"]]}, {"id": 101, "start": 51937, "end": 51941, "lines": ["test esi, esi", "jns short loc_CAEE"], "succs": [[102, "fall"], [103, "jump"]]}, {"id": 102, "start": 51941, "end": 51950, "lines": ["test dil, dil", "jz loc_D431"], "succs": [[103, "fall"], [230, "jump"]]}, {"id": 103, "start": 51950, "end": 51971, "lines": ["cmp edx, 5Fh ; '_'", "setnz al", "test edx, edx", "setnz cl", "and eax, ecx", "and al, cs:byte_29369", "jz short loc_CB0C"], "succs": [[104, "fall"], [105, "jump"]]}, {"id": 104, "start": 51971, "end": 51980, "lines": ["cmp edx, 3Dh ; '='", "jnz loc_D467"], "succs": [[105, "fall"], [231, "jump"]]}, {"id": 105, "start": 51980, "end": 51985, "lines": ["test r14b, r14b", "jz short loc_CB2D"], "succs": [[106, "fall"], [107, "jump"]]}, {"id": 106, "start": 51985, "end": 52013, "lines": ["mov rdi, [rbp+var_3C8]", "lea rsi, aSecurityCapabi; \"security.capability\"", "call sub_10640", "test al, al", "jnz loc_D000"], "succs": [[107, "fall"], [159, "jump"]]}, {"id": 107, "start": 52013, "end": 52074, "lines": ["mov rax, [rbp+var_3A0]", "mov rdi, [rbp+var_3C8]", "mov [r15+0B0h], rax", "mov [rbp+var_3A0], 0", "call sub_10820", "mov eax, cs:dword_2933C", "test eax, eax", "setz dl", "or dl, cs:byte_292FD", "jz loc_CBF8"], "succs": [[108, "fall"], [116, "jump"]]}, {"id": 108, "start": 52074, "end": 52087, "lines": ["cmp [rbp+var_3C9], 0", "jz loc_CBF8"], "succs": [[109, "fall"], [116, "jump"]]}, {"id": 109, "start": 52087, "end": 52120, "lines": ["mov rsi, [r15+48h]", "mov rdi, [rbp+src]", "call sub_F360", "mov [r15+8], rax", "mov r14, rax", "test rax, rax", "jz loc_CED0"], "succs": [[110, "fall"], [148, "jump"]]}, {"id": 110, "start": 52120, "end": 52135, "lines": ["mov ecx, [r15+0C4h]", "test ecx, ecx", "jz loc_D100"], "succs": [[111, "fall"], [171, "jump"]]}, {"id": 111, "start": 52135, "end": 52144, "lines": ["cmp cs:dword_29314, 1", "ja short loc_CBB9"], "succs": [[112, "fall"], [113, "jump"]]}, {"id": 112, "start": 52144, "end": 52153, "lines": ["cmp cs:byte_292FD, 0", "jz short loc_CBF2"], "succs": [[113, "fall"], [115, "jump"]]}, {"id": 113, "start": 52153, "end": 52189, "lines": ["mov rsi, [rbp+src]", "xor ecx, ecx", "mov edi, 0FFFFFF9Ch", "lea rdx, [rbp+var_3B0]", "mov r8d, 2", "call sub_6040", "test eax, eax", "jnz short loc_CBF2"], "succs": [[114, "fall"], [115, "jump"]]}, {"id": 114, "start": 52189, "end": 52210, "lines": ["mov eax, [rbp+var_398]", "mov byte ptr [r15+0B9h], 1", "mov [r15+0ACh], eax"], "succs": [[115, "fall"]]}, {"id": 115, "start": 52210, "end": 52216, "lines": ["mov eax, cs:dword_2933C"], "succs": [[116, "fall"]]}, {"id": 116, "start": 52216, "end": 52228, "lines": ["mov r13, [r15+58h]", "test eax, eax", "jz loc_C5A1"], "succs": [[28, "jump"], [117, "fall"]]}, {"id": 117, "start": 52228, "end": 52241, "lines": ["cmp cs:byte_2932C, 0", "jnz loc_C5A1"], "succs": [[28, "jump"], [118, "fall"]]}, {"id": 118, "start": 52241, "end": 52250, "lines": ["cmp cs:byte_29369, 0", "jz short loc_CC43"], "succs": [[119, "fall"], [122, "jump"]]}, {"id": 119, "start": 52250, "end": 52271, "lines": ["mov rdi, [r15+0B0h]; s", "call cs:strlen_ptr", "cmp eax, cs:dword_29358", "jle short loc_CC35"], "succs": [[120, "fall"], [121, "jump"]]}, {"id": 120, "start": 52271, "end": 52277, "lines": ["mov cs:dword_29358, eax"], "succs": [[121, "fall"]]}, {"id": 121, "start": 52277, "end": 52291, "lines": ["mov eax, cs:dword_2933C", "test eax, eax", "jz loc_C62F"], "succs": [[36, "jump"], [122, "fall"]]}, {"id": 122, "start": 52291, "end": 52304, "lines": ["cmp cs:byte_292FC, 0", "jnz loc_C710"], "succs": [[46, "jump"], [123, "fall"]]}, {"id": 123, "start": 52304, "end": 52324, "lines": ["mov rdi, r12", "call sub_1BC60", "add cs:qword_293B0, 1", "mov [r15], rax"], "succs": [[124, "fall"]]}, {"id": 124, "start": 52324, "end": 52343, "lines": ["mov rax, [rbp+var_38]", "sub rax, fs:28h", "jnz loc_D42B"], "succs": [[125, "fall"], [229, "jump"]]}, {"id": 125, "start": 52343, "end": 52361, "lines": ["lea rsp, [rbp-28h]", "mov rax, r13", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 126, "start": 52368, "end": 52421, "lines": ["mov edx, 1", "mov r8d, 0D0h", "mov rcx, 0FFFFFFFFFFFFFFFFh", "lea rsi, qword_293B8", "call sub_1BA20", "mov rdx, cs:qword_293B0", "mov cs:qword_293C0, rax", "mov rdi, rax", "jmp loc_C367"], "succs": [[1, "jump"]]}, {"id": 127, "start": 52424, "end": 52479, "lines": ["mov rdx, r12", "mov r8, cs:qword_292D0", "lea rdi, [rbp+var_2D0]", "mov rcx, 0FFFFFFFFFFFFFFFFh", "mov esi, 2", "call sub_19F60", "mov rdx, rax", "movzx eax, [rbp+var_2D0]", "cmp [r12], al", "jz loc_D150"], "succs": [[128, "fall"], [175, "jump"]]}, {"id": 128, "start": 52479, "end": 52502, "lines": ["mov dword ptr [r15+0C4h], 1", "mov cs:byte_293A9, 1", "jmp loc_C3D6"], "succs": [[3, "jump"]]}, {"id": 129, "start": 52512, "end": 52592, "lines": ["lea rdx, [rbp+var_394]", "mov [rbp+var_3A0], rax", "mov rax, [rbp+var_3C0]", "mov [rbp+var_3B0], rdx", "mov edx, cs:dword_282D8", "mov [rbp+var_3A8], 0", "mov esi, cs:dword_282D4", "mov [rbp+var_398], edx", "mov dword ptr [rax], 5Fh ; '_'", "lea rax, [rbp+var_3B0]", "mov [rbp+var_3C8], rax", "nop dword ptr [rax]"], "succs": [[130, "fall"]]}, {"id": 130, "start": 52592, "end": 52600, "lines": ["xor edi, edi", "xor eax, eax", "test esi, esi", "jns short loc_CD94"], "succs": [[131, "fall"], [132, "jump"]]}, {"id": 131, "start": 52600, "end": 52628, "lines": ["mov rax, [rbp+var_3C0]", "mov eax, [rax]", "cmp eax, 0Dh", "setz dil", "cmp eax, 2", "setz al", "or edi, eax", "movzx eax, dil"], "succs": [[132, "fall"]]}, {"id": 132, "start": 52628, "end": 52638, "lines": ["test esi, esi", "setle r8b", "test edx, edx", "jz short loc_CDD0"], "succs": [[133, "fall"], [137, "jump"]]}, {"id": 133, "start": 52638, "end": 52643, "lines": ["test r8b, r8b", "jz short loc_CDD0"], "succs": [[134, "fall"], [137, "jump"]]}, {"id": 134, "start": 52643, "end": 52655, "lines": ["mov r8d, eax", "and r8d, 1", "jmp loc_CACF"], "succs": [[100, "jump"]]}, {"id": 135, "start": 52656, "end": 52674, "lines": ["mov rax, rdx", "and rax, 0FFFFFFFFFFFFFFF0h", "cmp byte ptr [r14+1], 0", "jz loc_C4E7"], "succs": [[17, "jump"], [136, "fall"]]}, {"id": 136, "start": 52674, "end": 52679, "lines": ["jmp loc_C497"], "succs": [[12, "jump"]]}, {"id": 137, "start": 52688, "end": 52711, "lines": ["xor eax, eax", "test edx, edx", "setz al", "and r8d, eax", "mov eax, 3", "sub eax, r8d", "jmp loc_CAC9"], "succs": [[99, "jump"]]}, {"id": 138, "start": 52720, "end": 52781, "lines": ["mov rdi, [r15+48h]", "mov r8, cs:qword_28020", "lea rsi, [rbp+var_2D0]", "mov ecx, 1", "mov edx, cs:dword_2931C", "call sub_13000", "mov esi, 3", "mov rdi, rax", "call sub_14C90", "cmp eax, cs:dword_29340", "jle loc_CC43"], "succs": [[122, "jump"], [139, "fall"]]}, {"id": 139, "start": 52781, "end": 52786, "lines": ["jmp loc_C6F5"], "succs": [[44, "jump"]]}, {"id": 140, "start": 52792, "end": 52813, "lines": ["mov edi, [r15+34h]", "call sub_7D60", "cmp eax, cs:dword_2934C", "jle loc_C614"], "succs": [[34, "jump"], [141, "fall"]]}, {"id": 141, "start": 52813, "end": 52824, "lines": ["mov cs:dword_2934C, eax", "jmp loc_C614"], "succs": [[34, "jump"]]}, {"id": 142, "start": 52832, "end": 52849, "lines": ["cmp cs:byte_2932D, 0", "mov r14d, [r15+38h]", "jz loc_D2B0"], "succs": [[143, "fall"], [200, "jump"]]}, {"id": 143, "start": 52849, "end": 52883, "lines": ["mov r9d, r14d", "lea r8, aJu; \"%ju\"", "xor esi, esi", "xor edi, edi", "mov rcx, 0FFFFFFFFFFFFFFFFh", "mov edx, 2", "xor eax, eax", "call cs:__snprintf_chk_ptr"], "succs": [[144, "fall"]]}, {"id": 144, "start": 52883, "end": 52895, "lines": ["cmp cs:dword_29350, eax", "jge loc_C607"], "succs": [[33, "jump"], [145, "fall"]]}, {"id": 145, "start": 52895, "end": 52906, "lines": ["mov cs:dword_29350, eax", "jmp loc_C607"], "succs": [[33, "jump"]]}, {"id": 146, "start": 52912, "end": 52933, "lines": ["mov edi, [r15+34h]", "call sub_7D60", "cmp eax, cs:dword_29354", "jle loc_C5FA"], "succs": [[32, "jump"], [147, "fall"]]}, {"id": 147, "start": 52933, "end": 52944, "lines": ["mov cs:dword_29354, eax", "jmp loc_C5FA"], "succs": [[32, "jump"]]}, {"id": 148, "start": 52944, "end": 52996, "lines": ["mov edx, 5; category", "lea rsi, aCannotReadSymb; \"cannot read symbolic link %s\"", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov rdx, [rbp+src]", "movzx edi, r13b", "mov rsi, rax", "call sub_6A80", "mov r14, [r15+8]", "test r14, r14", "jz loc_CBF2"], "succs": [[115, "jump"], [149, "fall"]]}, {"id": 149, "start": 52996, "end": 53001, "lines": ["jmp loc_CB98"], "succs": [[110, "jump"]]}, {"id": 150, "start": 53008, "end": 53067, "lines": ["mov [rbp+var_3DC], esi", "mov rsi, [rbp+var_3C0]", "mov [rbp+var_3E0], ecx", "mov [rbp+var_3D0], edx", "mov edi, [rsi]", "call sub_F320", "mov edx, [rbp+var_3D0]", "mov esi, [rbp+var_3DC]", "test al, al", "mov ecx, [rbp+var_3E0]", "jnz loc_CD70"], "succs": [[130, "jump"], [151, "fall"]]}, {"id": 151, "start": 53067, "end": 53076, "lines": ["test byte ptr [rbp+var_3D8+2], 1", "jz short loc_CF88"], "succs": [[152, "fall"], [153, "jump"]]}, {"id": 152, "start": 53076, "end": 53128, "lines": ["mov [rbp+var_3DC], ecx", "mov edi, edx", "mov [rbp+var_3D0], esi", "mov dword ptr [rbp+var_3D8], edx", "call sub_F320", "mov edx, dword ptr [rbp+var_3D8]", "mov esi, [rbp+var_3D0]", "test al, al", "mov ecx, [rbp+var_3DC]", "jnz loc_CD70"], "succs": [[130, "jump"], [153, "fall"]]}, {"id": 153, "start": 53128, "end": 53170, "lines": ["mov rax, [rbp+var_3A0]", "mov cs:dword_282D4, esi", "mov cs:dword_282D8, edx", "mov cs:qword_282E8, rax", "mov rax, [r15+18h]", "mov cs:qword_282E0, rax", "jmp loc_CD70"], "succs": [[130, "jump"]]}, {"id": 154, "start": 53170, "end": 53177, "lines": ["cmp byte ptr [r12], 2Fh ; '/'", "jz short loc_CFD0"], "succs": [[155, "fall"], [157, "jump"]]}, {"id": 155, "start": 53177, "end": 53191, "lines": ["mov esi, 1", "test r14, r14", "jnz loc_C400"], "succs": [[7, "jump"], [156, "fall"]]}, {"id": 156, "start": 53191, "end": 53200, "lines": ["nop word ptr [rax+rax+00000000h]"], "succs": [[157, "fall"]]}, {"id": 157, "start": 53200, "end": 53207, "lines": ["mov [rbp+src], r12"], "succs": [[158, "fall"]]}, {"id": 158, "start": 53207, "end": 53248, "lines": ["call sub_5AA0", "mov edi, 0FFFFFF9Ch", "lea rdx, [r15+18h]", "xor ecx, ecx", "mov rsi, [rbp+src]", "mov r8d, eax", "call sub_6040", "mov esi, 1", "jmp loc_C952"], "succs": [[86, "jump"]]}, {"id": 159, "start": 53248, "end": 53258, "lines": ["cmp byte ptr [r15+0B8h], 0", "jz short loc_D038"], "succs": [[160, "fall"], [164, "jump"]]}, {"id": 160, "start": 53258, "end": 53267, "lines": ["cmp cs:byte_282D0, 0", "jz short loc_D038"], "succs": [[161, "fall"], [164, "jump"]]}, {"id": 161, "start": 53267, "end": 53280, "lines": ["mov rax, cs:qword_282C8", "cmp [r15+18h], rax", "jnz short loc_D038"], "succs": [[162, "fall"], [164, "jump"]]}, {"id": 162, "start": 53280, "end": 53296, "lines": ["mov rax, [rbp+var_3C0]", "mov dword ptr [rax], 5Fh ; '_'", "nop dword ptr [rax]"], "succs": [[163, "fall"]]}, {"id": 163, "start": 53296, "end": 53300, "lines": ["xor eax, eax", "jmp short loc_D09F"], "succs": [[168, "jump"]]}, {"id": 164, "start": 53304, "end": 53329, "lines": ["mov rdi, [rbp+src]", "call cs:cap_get_file_ptr", "mov r14, rax", "test rax, rax", "jz loc_D250"], "succs": [[165, "fall"], [194, "jump"]]}, {"id": 165, "start": 53329, "end": 53372, "lines": ["xor esi, esi", "mov rdi, rax", "call cs:cap_to_text_ptr", "mov rdi, r14", "mov [rbp+var_3D8], rax", "call cs:cap_free_ptr", "mov rdx, [rbp+var_3D8]", "test rdx, rdx", "jz loc_D250"], "succs": [[166, "fall"], [194, "jump"]]}, {"id": 166, "start": 53372, "end": 53401, "lines": ["movzx r14d, byte ptr [rdx]", "mov rdi, rdx", "call cs:cap_free_ptr", "movzx eax, byte ptr [r15+0B8h]", "test al, al", "jnz loc_D318"], "succs": [[167, "fall"], [206, "jump"]]}, {"id": 167, "start": 53401, "end": 53407, "lines": ["test r14b, r14b", "setnz al"], "succs": [[168, "fall"]]}, {"id": 168, "start": 53407, "end": 53419, "lines": ["mov [r15+0C0h], al", "jmp loc_CB2D"], "succs": [[107, "jump"]]}, {"id": 169, "start": 53424, "end": 53472, "lines": ["xor edi, edi; domainname", "mov edx, 5; category", "lea rsi, aCannotAccessS; \"cannot access %s\"", "call cs:dcgettext_ptr", "mov rdx, [rbp+src]", "movzx edi, r13b", "mov rsi, rax", "call sub_6A80", "test r13b, r13b", "jnz loc_C830"], "succs": [[61, "jump"], [170, "fall"]]}, {"id": 170, "start": 53472, "end": 53497, "lines": ["mov rdi, r12", "call sub_1BC60", "add cs:qword_293B0, 1", "mov [r15], rax", "jmp loc_C830"], "succs": [[61, "jump"]]}, {"id": 171, "start": 53504, "end": 53554, "lines": ["mov r8, cs:qword_292D0", "lea rdi, [rbp+var_2D0]", "mov rdx, r14", "mov esi, 2", "mov rcx, 0FFFFFFFFFFFFFFFFh", "call sub_19F60", "mov r13, rax", "movzx eax, [rbp+var_2D0]", "cmp [r14], al", "jz short loc_D190"], "succs": [[172, "fall"], [178, "jump"]]}, {"id": 172, "start": 53554, "end": 53565, "lines": ["mov dword ptr [r15+0C4h], 0FFFFFFFFh"], "succs": [[173, "fall"]]}, {"id": 173, "start": 53565, "end": 53576, "lines": ["cmp qword ptr [r15+8], 0", "jnz loc_CBA7"], "succs": [[111, "jump"], [174, "fall"]]}, {"id": 174, "start": 53576, "end": 53581, "lines": ["jmp loc_CBF2"], "succs": [[115, "jump"]]}, {"id": 175, "start": 53584, "end": 53613, "lines": ["mov [rbp+src], rdx", "mov rdi, r12; s", "call cs:strlen_ptr", "cmp [rbp+src], rax", "jnz loc_CCFF"], "succs": [[128, "jump"], [176, "fall"]]}, {"id": 176, "start": 53613, "end": 53629, "lines": ["mov dword ptr [r15+0C4h], 0", "jmp loc_C3D6"], "succs": [[3, "jump"]]}, {"id": 177, "start": 53632, "end": 53643, "lines": ["or [rsp+rax+13E0h+var_13E8], 0", "jmp loc_C46C"], "succs": [[10, "jump"]]}, {"id": 178, "start": 53648, "end": 53662, "lines": ["mov rdi, r14; s", "call cs:strlen_ptr", "cmp r13, rax", "jnz short loc_D132"], "succs": [[172, "jump"], [179, "fall"]]}, {"id": 179, "start": 53662, "end": 53664, "lines": ["jmp short loc_D13D"], "succs": [[173, "jump"]]}, {"id": 180, "start": 53664, "end": 53677, "lines": ["cmp cs:byte_29312, 0", "jz loc_C876"], "succs": [[67, "jump"], [181, "fall"]]}, {"id": 181, "start": 53677, "end": 53689, "lines": ["mov rcx, cs:qword_28190", "test rcx, rcx", "jz short loc_D1DE"], "succs": [[182, "fall"], [185, "jump"]]}, {"id": 182, "start": 53689, "end": 53699, "lines": ["cmp rcx, 2", "ja loc_C900"], "succs": [[81, "jump"], [183, "fall"]]}, {"id": 183, "start": 53699, "end": 53717, "lines": ["mov rsi, cs:off_28198; \"34;4237;4430;4337;4101;3501;3201;3301;3\"...", "cmp byte ptr [rsi+rcx-1], 30h ; '0'", "jnz loc_C900"], "succs": [[81, "jump"], [184, "fall"]]}, {"id": 184, "start": 53717, "end": 53726, "lines": ["cmp byte ptr [rsi], 30h ; '0'", "jnz loc_C900"], "succs": [[81, "jump"], [185, "fall"]]}, {"id": 185, "start": 53726, "end": 53738, "lines": ["mov rcx, cs:qword_28180", "test rcx, rcx", "jz short loc_D20F"], "succs": [[186, "fall"], [189, "jump"]]}, {"id": 186, "start": 53738, "end": 53748, "lines": ["cmp rcx, 2", "ja loc_C900"], "succs": [[81, "jump"], [187, "fall"]]}, {"id": 187, "start": 53748, "end": 53766, "lines": ["mov rsi, cs:off_28188; \"37;4430;4337;4101;3501;3201;3301;3301;3\"...", "cmp byte ptr [rsi+rcx-1], 30h ; '0'", "jnz loc_C900"], "succs": [[81, "jump"], [188, "fall"]]}, {"id": 188, "start": 53766, "end": 53775, "lines": ["cmp byte ptr [rsi], 30h ; '0'", "jnz loc_C900"], "succs": [[81, "jump"], [189, "fall"]]}, {"id": 189, "start": 53775, "end": 53791, "lines": ["mov rcx, cs:qword_281A0", "test rcx, rcx", "jz loc_C876"], "succs": [[67, "jump"], [190, "fall"]]}, {"id": 190, "start": 53791, "end": 53801, "lines": ["cmp rcx, 2", "ja loc_C900"], "succs": [[81, "jump"], [191, "fall"]]}, {"id": 191, "start": 53801, "end": 53819, "lines": ["mov rsi, cs:off_281A8; \"30;4234;4237;4430;4337;4101;3501;3201;3\"...", "cmp byte ptr [rsi+rcx-1], 30h ; '0'", "jnz loc_C900"], "succs": [[81, "jump"], [192, "fall"]]}, {"id": 192, "start": 53819, "end": 53828, "lines": ["cmp byte ptr [rsi], 30h ; '0'", "jz loc_C876"], "succs": [[67, "jump"], [193, "fall"]]}, {"id": 193, "start": 53828, "end": 53833, "lines": ["jmp loc_C900"], "succs": [[81, "jump"]]}, {"id": 194, "start": 53840, "end": 53854, "lines": ["cmp byte ptr [r15+0B8h], 0", "jz loc_D030"], "succs": [[163, "jump"], [195, "fall"]]}, {"id": 195, "start": 53854, "end": 53877, "lines": ["mov rax, [rbp+var_3C0]", "mov edi, [rax]", "call sub_F320", "test al, al", "jnz loc_D030"], "succs": [[163, "jump"], [196, "fall"]]}, {"id": 196, "start": 53877, "end": 53902, "lines": ["mov rax, [r15+18h]", "mov cs:byte_282D0, 1", "mov cs:qword_282C8, rax", "xor eax, eax", "jmp loc_D09F"], "succs": [[168, "jump"]]}, {"id": 197, "start": 53902, "end": 53909, "lines": ["mov [rbp+src], r12"], "succs": [[198, "fall"]]}, {"id": 198, "start": 53909, "end": 53922, "lines": ["cmp cs:byte_29311, 0", "jz loc_C790"], "succs": [[53, "jump"], [199, "fall"]]}, {"id": 199, "start": 53922, "end": 53927, "lines": ["jmp loc_C771"], "succs": [[52, "jump"]]}, {"id": 200, "start": 53936, "end": 53957, "lines": ["mov edi, r14d", "call sub_14160", "mov rdi, rax", "test rax, rax", "jz loc_CE71"], "succs": [[143, "jump"], [201, "fall"]]}, {"id": 201, "start": 53957, "end": 53973, "lines": ["mov esi, 3", "call sub_14C90", "jmp loc_CE93"], "succs": [[144, "jump"]]}, {"id": 202, "start": 53976, "end": 53981, "lines": ["cmp ebx, 5", "jz short loc_D326"], "succs": [[203, "fall"], [208, "jump"]]}, {"id": 203, "start": 53981, "end": 53985, "lines": ["test al, al", "jnz short loc_D326"], "succs": [[204, "fall"], [208, "jump"]]}, {"id": 204, "start": 53985, "end": 54011, "lines": ["movzx eax, cs:byte_29369", "movzx edi, cs:byte_292A0", "mov r8d, eax", "or r8b, dil", "jnz loc_D3FF"], "succs": [[205, "fall"], [226, "jump"]]}, {"id": 205, "start": 54011, "end": 54036, "lines": ["cmp cs:dword_292F8, 4", "mov [rbp+src], r12", "setz sil", "xor edi, edi", "jmp loc_C545"], "succs": [[22, "jump"]]}, {"id": 206, "start": 54040, "end": 54049, "lines": ["test r14b, r14b", "jnz loc_D09F"], "succs": [[168, "jump"], [207, "fall"]]}, {"id": 207, "start": 54049, "end": 54054, "lines": ["jmp loc_D25E"], "succs": [[195, "jump"]]}, {"id": 208, "start": 54054, "end": 54067, "lines": ["cmp cs:dword_29314, 3", "jz loc_C900"], "succs": [[81, "jump"], [209, "fall"]]}, {"id": 209, "start": 54067, "end": 54076, "lines": ["cmp cs:byte_29312, 0", "jz short loc_D2E1"], "succs": [[204, "jump"], [210, "fall"]]}, {"id": 210, "start": 54076, "end": 54088, "lines": ["mov rax, cs:qword_28140", "test rax, rax", "jz short loc_D36D"], "succs": [[211, "fall"], [214, "jump"]]}, {"id": 211, "start": 54088, "end": 54098, "lines": ["cmp rax, 2", "ja loc_C900"], "succs": [[81, "jump"], [212, "fall"]]}, {"id": 212, "start": 54098, "end": 54116, "lines": ["mov rdx, cs:off_28148; \"01;3201;3301;3301;353301;3601;340m\\x1B[\"", "cmp byte ptr [rdx+rax-1], 30h ; '0'", "jnz loc_C900"], "succs": [[81, "jump"], [213, "fall"]]}, {"id": 213, "start": 54116, "end": 54125, "lines": ["cmp byte ptr [rdx], 30h ; '0'", "jnz loc_C900"], "succs": [[81, "jump"], [214, "fall"]]}, {"id": 214, "start": 54125, "end": 54137, "lines": ["mov rax, cs:qword_28160", "test rax, rax", "jz short loc_D39E"], "succs": [[215, "fall"], [218, "jump"]]}, {"id": 215, "start": 54137, "end": 54147, "lines": ["cmp rax, 2", "ja loc_C900"], "succs": [[81, "jump"], [216, "fall"]]}, {"id": 216, "start": 54147, "end": 54165, "lines": ["mov rdx, cs:off_28168; \"37;4101;3501;3201;3301;3301;353301;3601\"...", "cmp byte ptr [rdx+rax-1], 30h ; '0'", "jnz loc_C900"], "succs": [[81, "jump"], [217, "fall"]]}, {"id": 217, "start": 54165, "end": 54174, "lines": ["cmp byte ptr [rdx], 30h ; '0'", "jnz loc_C900"], "succs": [[81, "jump"], [218, "fall"]]}, {"id": 218, "start": 54174, "end": 54190, "lines": ["mov rax, cs:qword_28170", "test rax, rax", "jz loc_D2E1"], "succs": [[204, "jump"], [219, "fall"]]}, {"id": 219, "start": 54190, "end": 54200, "lines": ["cmp rax, 2", "ja loc_C900"], "succs": [[81, "jump"], [220, "fall"]]}, {"id": 220, "start": 54200, "end": 54218, "lines": ["mov rdx, cs:off_28178; \"30;4337;4101;3501;3201;3301;3301;353301\"...", "cmp byte ptr [rdx+rax-1], 30h ; '0'", "jnz loc_C900"], "succs": [[81, "jump"], [221, "fall"]]}, {"id": 221, "start": 54218, "end": 54227, "lines": ["cmp byte ptr [rdx], 30h ; '0'", "jz loc_D2E1"], "succs": [[204, "jump"], [222, "fall"]]}, {"id": 222, "start": 54227, "end": 54232, "lines": ["jmp loc_C900"], "succs": [[81, "jump"]]}, {"id": 223, "start": 54240, "end": 54257, "lines": ["call cs:__errno_location_ptr", "mov eax, [rax]", "cmp eax, 2", "jz loc_C92F"], "succs": [[85, "jump"], [224, "fall"]]}, {"id": 224, "start": 54257, "end": 54266, "lines": ["cmp eax, 28h ; '('", "jnz loc_C805"], "succs": [[60, "jump"], [225, "fall"]]}, {"id": 225, "start": 54266, "end": 54271, "lines": ["jmp loc_C92F"], "succs": [[85, "jump"]]}, {"id": 226, "start": 54271, "end": 54278, "lines": ["cmp byte ptr [r12], 2Fh ; '/'", "jz short loc_D411"], "succs": [[227, "fall"], [228, "jump"]]}, {"id": 227, "start": 54278, "end": 54289, "lines": ["xor esi, esi", "test r14, r14", "jnz loc_C400"], "succs": [[7, "jump"], [228, "fall"]]}, {"id": 228, "start": 54289, "end": 54315, "lines": ["cmp cs:dword_292F8, 4", "mov [rbp+src], r12", "mov r8d, eax", "setz sil", "jmp loc_C545"], "succs": [[22, "jump"]]}, {"id": 229, "start": 54315, "end": 54321, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 230, "start": 54321, "end": 54375, "lines": ["mov rdx, [rbp+src]", "xor edi, edi", "mov esi, 3", "call sub_1A610", "lea rdx, aS_1+2; \"%s\"", "xor edi, edi", "mov rcx, rax", "mov rax, [rbp+var_3C0]", "mov esi, [rax]", "xor eax, eax", "call error", "jmp loc_CB0C"], "succs": [[105, "jump"]]}, {"id": 231, "start": 54375, "end": 54426, "lines": ["mov rdx, [rbp+src]", "xor edi, edi", "mov esi, 3", "call sub_1A610", "mov esi, [rbp+var_398]", "lea rdx, aS_1+2; \"%s\"", "xor edi, edi", "mov rcx, rax", "xor eax, eax", "call error", "jmp loc_CB0C"], "succs": [[105, "jump"]]}, {"id": 232, "start": 54426, "end": 54470, "lines": ["xor edi, edi; domainname", "mov edx, 5; category", "lea rsi, aErrorCanonical; \"error canonicalizing %s\"", "call cs:dcgettext_ptr", "mov rdx, [rbp+src]", "movzx edi, r13b", "mov rsi, rax", "call sub_6A80", "jmp loc_C790"], "succs": [[53, "jump"]]}]}, {"name": "sub_13000", "ea": 77824, "blocks": [{"id": 0, "start": 77824, "end": 78054, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r15", "push r14", "mov r14, rcx", "push r13", "push r12", "push rbx", "mov rbx, rdi", "sub rsp, 0A8h", "mov [rbp+s], rsi", "mov [rbp+var_98], r8", "mov [rbp+var_78], edx", "mov rax, fs:28h", "mov [rbp+var_38], rax", "mov eax, edx", "and edx, 20h", "mov [rbp+var_A0], edx", "and eax, 3", "cmp edx, 1", "mov dword ptr [rbp+src], eax", "sbb eax, eax", "and eax, 0FFFFFFE8h", "add eax, 400h", "mov [rbp+var_9C], eax", "call cs:localeconv_ptr", "mov r15, [rax]", "mov r13, rax", "mov rdi, r15; s", "call cs:strlen_ptr", "mov rdi, [r13+10h]", "mov r13, [r13+8]", "lea rdx, [rax-1]", "cmp rdx, 0Fh", "mov edx, 1", "mov [rbp+var_B0], rdi", "mov rdi, r13; s", "cmovbe rdx, rax", "lea rax, asc_1F91A; \".\"", "cmova r15, rax", "mov r12, rdx", "call cs:strlen_ptr", "mov rsi, [rbp+var_98]", "cmp rax, 10h", "lea rax, accept+3; \"\"", "cmovbe rax, r13", "mov [rbp+var_A8], rax", "mov rax, [rbp+s]", "add rax, 287h", "mov [rbp+var_80], rax", "cmp r14, rsi", "jb loc_135D0"], "succs": [[1, "fall"], [64, "jump"]]}, {"id": 1, "start": 78054, "end": 78067, "lines": ["mov rax, r14", "xor edx, edx", "div rsi", "test rdx, rdx", "jnz short loc_130FF"], "succs": [[2, "fall"], [3, "jump"]]}, {"id": 2, "start": 78067, "end": 78079, "lines": ["mul rbx", "mov rcx, rax", "jno loc_13898"], "succs": [[3, "fall"], [95, "jump"]]}, {"id": 3, "start": 78079, "end": 78101, "lines": ["mov qword ptr [rbp+var_C0], r14", "fild qword ptr [rbp+var_C0]", "test r14, r14", "js loc_133E0"], "succs": [[4, "fall"], [40, "jump"]]}, {"id": 4, "start": 78101, "end": 78130, "lines": ["mov rax, [rbp+var_98]", "mov qword ptr [rbp+var_C0], rax", "fild qword ptr [rbp+var_C0]", "test rax, rax", "js loc_133D0"], "succs": [[5, "fall"], [39, "jump"]]}, {"id": 5, "start": 78130, "end": 78154, "lines": ["mov qword ptr [rbp+var_C0], rbx", "fdivp st(1), st", "fild qword ptr [rbp+var_C0]", "test rbx, rbx", "js loc_133B8"], "succs": [[6, "fall"], [37, "jump"]]}, {"id": 6, "start": 78154, "end": 78166, "lines": ["fmulp st(1), st", "test byte ptr [rbp+var_78], 10h", "jz loc_133F0"], "succs": [[7, "fall"], [41, "jump"]]}, {"id": 7, "start": 78166, "end": 78179, "lines": ["fild [rbp+var_9C]", "xor r14d, r14d", "fld st", "jmp short loc_13184"], "succs": [[9, "jump"]]}, {"id": 8, "start": 78208, "end": 78212, "lines": ["fstp st(1)", "fxch st(2)"], "succs": [[9, "fall"]]}, {"id": 9, "start": 78212, "end": 78226, "lines": ["fld st", "add r14d, 1", "fmul st, st(2)", "fxch st(3)", "fcomi st, st(3)", "jb short loc_131A0"], "succs": [[10, "fall"], [12, "jump"]]}, {"id": 10, "start": 78226, "end": 78232, "lines": ["cmp r14d, 0Ah", "jnz short loc_13180"], "succs": [[8, "jump"], [11, "fall"]]}, {"id": 11, "start": 78232, "end": 78238, "lines": ["fstp st(2)", "fstp st(2)", "jmp short loc_131A4"], "succs": [[13, "jump"]]}, {"id": 12, "start": 78240, "end": 78244, "lines": ["fstp st(2)", "fstp st(2)"], "succs": [[13, "fall"]]}, {"id": 13, "start": 78244, "end": 78278, "lines": ["cmp [rbp+var_A0], 1", "mov rbx, r12", "lea r15, [r12+1]", "fdivrp st(1), st", "adc rbx, 2", "cmp dword ptr [rbp+src], 1", "jz loc_134E8"], "succs": [[14, "fall"], [53, "jump"]]}, {"id": 14, "start": 78278, "end": 78292, "lines": ["fld cs:tbyte_21D60", "fcomip st, st(1)", "jbe loc_134E8"], "succs": [[15, "fall"], [53, "jump"]]}, {"id": 15, "start": 78292, "end": 78308, "lines": ["fld cs:dword_1D014", "fxch st(1)", "fcomi st, st(1)", "jnb loc_139D8"], "succs": [[16, "fall"], [116, "jump"]]}, {"id": 16, "start": 78308, "end": 78345, "lines": ["fstp st(1)", "fnstcw [rbp+var_72]", "movzx eax, [rbp+var_72]", "or ah, 0Ch", "mov [rbp+var_74], ax", "fld st", "fldcw [rbp+var_74]", "fistp qword ptr [rbp+var_C0]", "fldcw [rbp+var_72]", "mov rax, qword ptr [rbp+var_C0]"], "succs": [[17, "fall"]]}, {"id": 17, "start": 78345, "end": 78355, "lines": ["mov edx, dword ptr [rbp+src]", "test edx, edx", "jnz short loc_1323C"], "succs": [[18, "fall"], [20, "jump"]]}, {"id": 18, "start": 78355, "end": 78377, "lines": ["mov qword ptr [rbp+var_C0], rax", "fild qword ptr [rbp+var_C0]", "test rax, rax", "js loc_13AC8"], "succs": [[19, "fall"], [123, "jump"]]}, {"id": 19, "start": 78377, "end": 78396, "lines": ["xor edx, edx", "mov ecx, 1", "fucomip st, st(1)", "setp dl", "cmovnz rdx, rcx", "add rax, rdx"], "succs": [[20, "fall"]]}, {"id": 20, "start": 78396, "end": 78414, "lines": ["mov qword ptr [rbp+var_C0], rax", "fild qword ptr [rbp+var_C0]", "test rax, rax", "jns short loc_13260"], "succs": [[21, "fall"], [22, "jump"]]}, {"id": 21, "start": 78414, "end": 78424, "lines": ["fadd cs:dword_1D010", "fxch st(1)", "jmp short loc_13262"], "succs": [[23, "jump"]]}, {"id": 22, "start": 78432, "end": 78434, "lines": ["fxch st(1)"], "succs": [[23, "fall"]]}, {"id": 23, "start": 78434, "end": 78514, "lines": ["fstp [rbp+var_C0]", "mov r12, [rbp+s]", "xor eax, eax", "sub rsp, 10h", "mov rdx, 0FFFFFFFFFFFFFFFFh", "lea rcx, a1lf; \"%.1Lf\"", "mov esi, 2", "mov rdi, r12", "fstp [rsp+0E0h+var_E0]", "call cs:__sprintf_chk_ptr", "mov rdi, r12; s", "call cs:strlen_ptr", "fld [rbp+var_C0]", "pop r13", "mov rdx, rax", "pop rax", "cmp rbx, rdx", "jnb loc_13539"], "succs": [[24, "fall"], [54, "jump"]]}, {"id": 24, "start": 78514, "end": 78522, "lines": ["fld cs:flt_1D018", "fmul st(1), st"], "succs": [[25, "fall"]]}, {"id": 25, "start": 78522, "end": 78536, "lines": ["fld cs:tbyte_21D60", "fcomip st, st(2)", "jbe loc_13370"], "succs": [[26, "fall"], [36, "jump"]]}, {"id": 26, "start": 78536, "end": 78552, "lines": ["fld cs:dword_1D014", "fxch st(2)", "fcomi st, st(2)", "jnb loc_13A90"], "succs": [[27, "fall"], [122, "jump"]]}, {"id": 27, "start": 78552, "end": 78591, "lines": ["fstp st(2)", "fxch st(1)", "fnstcw [rbp+var_72]", "movzx eax, [rbp+var_72]", "or ah, 0Ch", "mov [rbp+var_74], ax", "fld st", "fldcw [rbp+var_74]", "fistp qword ptr [rbp+var_C0]", "fldcw [rbp+var_72]", "mov rax, qword ptr [rbp+var_C0]"], "succs": [[28, "fall"]]}, {"id": 28, "start": 78591, "end": 78603, "lines": ["mov r12d, dword ptr [rbp+src]", "test r12d, r12d", "jnz short loc_13340"], "succs": [[29, "fall"], [32, "jump"]]}, {"id": 29, "start": 78603, "end": 78621, "lines": ["mov [rbp+src], rax", "fild [rbp+src]", "test rax, rax", "jns short loc_13323"], "succs": [[30, "fall"], [31, "jump"]]}, {"id": 30, "start": 78621, "end": 78627, "lines": ["fadd cs:dword_1D010"], "succs": [[31, "fall"]]}, {"id": 31, "start": 78627, "end": 78650, "lines": ["xor edx, edx", "mov ecx, 1", "fucomip st, st(1)", "fstp st", "setp dl", "cmovnz rdx, rcx", "add rax, rdx", "jmp short loc_13342"], "succs": [[33, "jump"]]}, {"id": 32, "start": 78656, "end": 78658, "lines": ["fstp st"], "succs": [[33, "fall"]]}, {"id": 33, "start": 78658, "end": 78676, "lines": ["mov [rbp+src], rax", "fild [rbp+src]", "test rax, rax", "jns short loc_13360"], "succs": [[34, "fall"], [35, "jump"]]}, {"id": 34, "start": 78676, "end": 78686, "lines": ["fadd cs:dword_1D010", "fxch st(1)", "jmp short loc_13370"], "succs": [[36, "jump"]]}, {"id": 35, "start": 78688, "end": 78704, "lines": ["fxch st(1)", "nop dword ptr [rax]", "nop word ptr [rax+rax+00000000h]"], "succs": [[36, "fall"]]}, {"id": 36, "start": 78704, "end": 78773, "lines": ["fdivp st(1), st", "mov rbx, [rbp+s]", "sub rsp, 10h", "xor eax, eax", "mov rdx, 0FFFFFFFFFFFFFFFFh", "lea rcx, a0lf; \"%.0Lf\"", "mov esi, 2", "mov rdi, rbx", "fstp [rsp+0E0h+var_E0]", "call cs:__sprintf_chk_ptr", "mov rdi, rbx; s", "call cs:strlen_ptr", "pop r11", "pop rbx", "mov rdx, rax", "mov rbx, rax", "jmp loc_13558"], "succs": [[58, "jump"]]}, {"id": 37, "start": 78776, "end": 78794, "lines": ["fadd cs:dword_1D010", "fmulp st(1), st", "test byte ptr [rbp+var_78], 10h", "jnz loc_13156"], "succs": [[7, "jump"], [38, "fall"]]}, {"id": 38, "start": 78794, "end": 78796, "lines": ["jmp short loc_133F0"], "succs": [[41, "jump"]]}, {"id": 39, "start": 78800, "end": 78811, "lines": ["fadd cs:dword_1D010", "jmp loc_13132"], "succs": [[5, "jump"]]}, {"id": 40, "start": 78816, "end": 78827, "lines": ["fadd cs:dword_1D010", "jmp loc_13115"], "succs": [[4, "jump"]]}, {"id": 41, "start": 78832, "end": 78845, "lines": ["cmp dword ptr [rbp+src], 1", "jz loc_134A0"], "succs": [[42, "fall"], [52, "jump"]]}, {"id": 42, "start": 78845, "end": 78859, "lines": ["fld cs:tbyte_21D60", "fcomip st, st(1)", "jbe loc_134A0"], "succs": [[43, "fall"], [52, "jump"]]}, {"id": 43, "start": 78859, "end": 78875, "lines": ["fld cs:dword_1D014", "fxch st(1)", "fcomi st, st(1)", "jnb loc_13A60"], "succs": [[44, "fall"], [121, "jump"]]}, {"id": 44, "start": 78875, "end": 78912, "lines": ["fstp st(1)", "fnstcw [rbp+var_72]", "movzx eax, [rbp+var_72]", "or ah, 0Ch", "mov [rbp+var_74], ax", "fld st", "fldcw [rbp+var_74]", "fistp qword ptr [rbp+var_C0]", "fldcw [rbp+var_72]", "mov rax, qword ptr [rbp+var_C0]"], "succs": [[45, "fall"]]}, {"id": 45, "start": 78912, "end": 78922, "lines": ["mov edi, dword ptr [rbp+src]", "test edi, edi", "jnz short loc_13480"], "succs": [[46, "fall"], [49, "jump"]]}, {"id": 46, "start": 78922, "end": 78940, "lines": ["mov [rbp+src], rax", "fild [rbp+src]", "test rax, rax", "jns short loc_13462"], "succs": [[47, "fall"], [48, "jump"]]}, {"id": 47, "start": 78940, "end": 78946, "lines": ["fadd cs:dword_1D010"], "succs": [[48, "fall"]]}, {"id": 48, "start": 78946, "end": 78969, "lines": ["xor edx, edx", "mov ecx, 1", "fucomip st, st(1)", "fstp st", "setp dl", "cmovnz rdx, rcx", "add rax, rdx", "jmp short loc_13482"], "succs": [[50, "jump"]]}, {"id": 49, "start": 78976, "end": 78978, "lines": ["fstp st"], "succs": [[50, "fall"]]}, {"id": 50, "start": 78978, "end": 78996, "lines": ["mov [rbp+src], rax", "fild [rbp+src]", "test rax, rax", "jns short loc_134A0"], "succs": [[51, "fall"], [52, "jump"]]}, {"id": 51, "start": 78996, "end": 79008, "lines": ["fadd cs:dword_1D010", "nop word ptr [rax+rax+00h]"], "succs": [[52, "fall"]]}, {"id": 52, "start": 79008, "end": 79077, "lines": ["mov rbx, [rbp+s]", "sub rsp, 10h", "xor eax, eax", "mov rdx, 0FFFFFFFFFFFFFFFFh", "fstp [rsp+0E0h+var_E0]", "lea rcx, a0lf; \"%.0Lf\"", "mov esi, 2", "mov r14d, 0FFFFFFFFh", "mov rdi, rbx", "call cs:__sprintf_chk_ptr", "mov rdi, rbx; s", "call cs:strlen_ptr", "pop rcx", "pop rsi", "mov rdx, rax", "mov rbx, rax", "jmp short loc_13558"], "succs": [[58, "jump"]]}, {"id": 53, "start": 79080, "end": 79161, "lines": ["sub rsp, 10h", "mov r12, [rbp+s]", "xor eax, eax", "lea rcx, a1lf; \"%.1Lf\"", "fld st", "fstp [rsp+0E0h+var_E0]", "mov rdx, 0FFFFFFFFFFFFFFFFh", "mov esi, 2", "mov rdi, r12", "fstp [rbp+var_C0]", "call cs:__sprintf_chk_ptr", "mov rdi, r12; s", "call cs:strlen_ptr", "fld [rbp+var_C0]", "mov rdx, rax; n", "pop rax", "cmp rbx, rdx", "pop rcx", "jb loc_13958"], "succs": [[54, "fall"], [107, "jump"]]}, {"id": 54, "start": 79161, "end": 79171, "lines": ["test byte ptr [rbp+var_78], 8", "jnz loc_13868"], "succs": [[55, "fall"], [92, "jump"]]}, {"id": 55, "start": 79171, "end": 79175, "lines": ["fstp st", "jmp short loc_13552"], "succs": [[57, "jump"]]}, {"id": 56, "start": 79184, "end": 79186, "lines": ["fstp st"], "succs": [[57, "fall"]]}, {"id": 57, "start": 79186, "end": 79192, "lines": ["mov rbx, rdx", "sub rbx, r15"], "succs": [[58, "fall"]]}, {"id": 58, "start": 79192, "end": 79228, "lines": ["mov r15, [rbp+var_80]", "mov rsi, [rbp+s]; src", "sub r15, rdx", "mov rdi, r15; dest", "add rbx, r15", "call cs:memmove_ptr", "test byte ptr [rbp+var_78], 4", "jnz loc_136F8"], "succs": [[59, "fall"], [79, "jump"]]}, {"id": 59, "start": 79228, "end": 79235, "lines": ["mov eax, [rbp+var_78]", "test al, 80h", "jz short loc_135A0"], "succs": [[60, "fall"], [62, "jump"]]}, {"id": 60, "start": 79235, "end": 79253, "lines": ["mov ecx, eax", "and ecx, 100h", "cmp r14d, 0FFFFFFFFh", "jz loc_138B8"], "succs": [[61, "fall"], [97, "jump"]]}, {"id": 61, "start": 79253, "end": 79264, "lines": ["mov eax, r14d", "or eax, ecx", "jnz loc_13990"], "succs": [[62, "fall"], [110, "jump"]]}, {"id": 62, "start": 79264, "end": 79290, "lines": ["mov rax, [rbp+var_80]", "mov byte ptr [rax], 0", "mov rax, [rbp+var_38]", "sub rax, fs:28h", "jnz loc_13D61"], "succs": [[63, "fall"], [171, "jump"]]}, {"id": 63, "start": 79290, "end": 79308, "lines": ["lea rsp, [rbp-28h]", "mov rax, r15", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 64, "start": 79312, "end": 79321, "lines": ["test r14, r14", "jz loc_130FF"], "succs": [[3, "jump"], [65, "fall"]]}, {"id": 65, "start": 79321, "end": 79345, "lines": ["mov rax, [rbp+var_98]", "xor edx, edx", "div r14", "mov r8, rax", "test rdx, rdx", "jnz loc_130FF"], "succs": [[3, "jump"], [66, "fall"]]}, {"id": 66, "start": 79345, "end": 79382, "lines": ["mov rax, rbx", "xor edx, edx", "div r8", "mov rcx, rax", "lea rax, [rdx+rdx*4]", "xor edx, edx", "add rax, rax", "div r8", "add rdx, rdx", "mov edi, eax", "cmp rdx, r8", "jnb loc_139C0"], "succs": [[67, "fall"], [115, "jump"]]}, {"id": 67, "start": 79382, "end": 79391, "lines": ["xor esi, esi", "test rdx, rdx", "setnz sil"], "succs": [[68, "fall"]]}, {"id": 68, "start": 79391, "end": 79405, "lines": ["mov r8d, [rbp+var_78]", "and r8d, 10h", "jz loc_138AA"], "succs": [[69, "fall"], [96, "jump"]]}, {"id": 69, "start": 79405, "end": 79427, "lines": ["mov r10d, [rbp+var_9C]", "xor r14d, r14d", "mov r9, r10", "cmp rcx, r10", "jnb loc_13829"], "succs": [[70, "fall"], [90, "jump"]]}, {"id": 70, "start": 79427, "end": 79440, "lines": ["cmp dword ptr [rbp+src], 1", "jz loc_13968"], "succs": [[71, "fall"], [108, "jump"]]}, {"id": 71, "start": 79440, "end": 79452, "lines": ["mov r9d, dword ptr [rbp+src]", "test r9d, r9d", "jnz short loc_13680"], "succs": [[72, "fall"], [76, "jump"]]}, {"id": 72, "start": 79452, "end": 79459, "lines": ["lea eax, [rsi+rdi]", "test eax, eax", "jle short loc_13680"], "succs": [[73, "fall"], [76, "jump"]]}, {"id": 73, "start": 79459, "end": 79468, "lines": ["add rcx, 1", "test r8d, r8d", "jz short loc_13680"], "succs": [[74, "fall"], [76, "jump"]]}, {"id": 74, "start": 79468, "end": 79483, "lines": ["mov eax, [rbp+var_9C]", "cmp rax, rcx", "jz loc_13AD3"], "succs": [[75, "fall"], [124, "jump"]]}, {"id": 75, "start": 79483, "end": 79488, "lines": ["nop dword ptr [rax+rax+00h]"], "succs": [[76, "fall"]]}, {"id": 76, "start": 79488, "end": 79552, "lines": ["mov rsi, 0CCCCCCCCCCCCCCCDh", "mov r15, [rbp+var_80]", "nop word ptr [rax+rax+00h]", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]"], "succs": [[77, "fall"]]}, {"id": 77, "start": 79552, "end": 79594, "lines": ["mov rax, rcx", "sub r15, 1", "mul rsi", "mov rax, rcx", "shr rdx, 3", "lea rdi, [rdx+rdx*4]", "add rdi, rdi", "sub rax, rdi", "add eax, 30h ; '0'", "cmp rcx, 9", "mov rcx, rdx", "mov [r15], al", "ja short loc_136C0"], "succs": [[78, "fall"], [77, "jump"]]}, {"id": 78, "start": 79594, "end": 79608, "lines": ["mov rbx, [rbp+var_80]", "test byte ptr [rbp+var_78], 4", "jz loc_1357C"], "succs": [[59, "jump"], [79, "fall"]]}, {"id": 79, "start": 79608, "end": 79705, "lines": ["mov r12, rbx", "mov rdi, [rbp+var_A8]; s", "call cs:strlen_ptr", "sub r12, r15", "lea rdi, [rbp+var_70]", "mov rsi, r15", "mov ecx, 29h ; ')'", "mov rdx, r12", "mov [rbp+n], rax", "mov [rbp+src], rdi", "call cs:__memcpy_chk_ptr", "mov dword ptr [rbp+var_C0], r14d", "mov rcx, rbx", "mov r13, [rbp+var_B0]", "mov rbx, r12", "mov r15, [rbp+n]", "mov r12, [rbp+var_A8]", "mov r14, 0FFFFFFFFFFFFFFFFh", "jmp short loc_137A5"], "succs": [[83, "jump"]]}, {"id": 80, "start": 79712, "end": 79733, "lines": ["cmp r14, rbx", "mov rax, [rbp+src]", "cmova r14, rbx", "sub rbx, r14", "lea rsi, [rax+rbx]; src"], "succs": [[81, "fall"]]}, {"id": 81, "start": 79733, "end": 79760, "lines": ["sub rcx, r14", "mov rdx, r14; n", "mov rdi, rcx; dest", "call cs:memcpy_ptr", "mov rcx, rax", "test rbx, rbx", "jz loc_13A10"], "succs": [[82, "fall"], [117, "jump"]]}, {"id": 82, "start": 79760, "end": 79781, "lines": ["sub rcx, r15", "mov rdx, r15; n", "mov rsi, r12; src", "mov rdi, rcx; dest", "call cs:memcpy_ptr", "mov rcx, rax"], "succs": [[83, "fall"]]}, {"id": 83, "start": 79781, "end": 79790, "lines": ["movsx rax, byte ptr [r13+0]", "test al, al", "jz short loc_13760"], "succs": [[80, "jump"], [84, "fall"]]}, {"id": 84, "start": 79790, "end": 79794, "lines": ["cmp al, 7Eh ; '~'", "jbe short loc_137E0"], "succs": [[85, "fall"], [86, "jump"]]}, {"id": 85, "start": 79794, "end": 79837, "lines": ["mov r12, rbx", "mov rbx, rcx", "mov r14d, dword ptr [rbp+var_C0]", "mov rsi, [rbp+src]; src", "sub rbx, r12", "mov rdx, r12; n", "mov r15, rbx", "mov rdi, rbx; dest", "call cs:memcpy_ptr", "jmp loc_1357C"], "succs": [[59, "jump"]]}, {"id": 86, "start": 79840, "end": 79873, "lines": ["cmp rax, rbx", "cmova rax, rbx", "add r13, 1", "sub rbx, rax", "mov r14, rax", "mov rax, [rbp+src]", "lea rsi, [rax+rbx]", "jmp loc_13775"], "succs": [[81, "jump"]]}, {"id": 87, "start": 79880, "end": 79890, "lines": ["test esi, esi", "setnz sil", "movzx esi, sil"], "succs": [[88, "fall"]]}, {"id": 88, "start": 79890, "end": 79903, "lines": ["add r14d, 1", "cmp r11, r10", "jb loc_13B20"], "succs": [[89, "fall"], [129, "jump"]]}, {"id": 89, "start": 79903, "end": 79913, "lines": ["cmp r14d, 0Ah", "jz loc_13643"], "succs": [[70, "jump"], [90, "fall"]]}, {"id": 90, "start": 79913, "end": 79954, "lines": ["mov rax, rcx", "xor edx, edx", "mov ecx, esi", "div r10", "sar ecx, 1", "mov r11, rax", "lea eax, [rdx+rdx*4]", "xor edx, edx", "lea eax, [rdi+rax*2]", "div r9d", "lea edx, [rcx+rdx*2]", "mov edi, eax", "mov rcx, r11", "add esi, edx", "cmp edx, r9d", "jb short loc_13808"], "succs": [[87, "jump"], [91, "fall"]]}, {"id": 91, "start": 79954, "end": 79970, "lines": ["cmp r9d, esi", "setb sil", "movzx esi, sil", "add esi, 2", "jmp short loc_13812"], "succs": [[88, "jump"]]}, {"id": 92, "start": 79976, "end": 79994, "lines": ["mov rax, [rbp+s]", "cmp byte ptr [rax+rdx-1], 30h ; '0'", "jnz loc_13550"], "succs": [[56, "jump"], [93, "fall"]]}, {"id": 93, "start": 79994, "end": 80015, "lines": ["fld cs:flt_1D018", "fmul st(1), st", "cmp dword ptr [rbp+src], 1", "jnz loc_132BA"], "succs": [[25, "jump"], [94, "fall"]]}, {"id": 94, "start": 80015, "end": 80020, "lines": ["jmp loc_13370"], "succs": [[36, "jump"]]}, {"id": 95, "start": 80024, "end": 80042, "lines": ["mov r8d, [rbp+var_78]", "xor esi, esi", "xor edi, edi", "and r8d, 10h", "jnz loc_1362D"], "succs": [[69, "jump"], [96, "fall"]]}, {"id": 96, "start": 80042, "end": 80053, "lines": ["mov r14d, 0FFFFFFFFh", "jmp loc_13643"], "succs": [[70, "jump"]]}, {"id": 97, "start": 80056, "end": 80073, "lines": ["mov rsi, [rbp+var_98]", "cmp rsi, 1", "jbe loc_13C0F"], "succs": [[98, "fall"], [149, "jump"]]}, {"id": 98, "start": 80073, "end": 80096, "lines": ["mov edx, [rbp+var_9C]", "mov r14d, 1", "mov eax, 1", "nop word ptr [rax+rax+00h]"], "succs": [[99, "fall"]]}, {"id": 99, "start": 80096, "end": 80105, "lines": ["imul rax, rdx", "cmp rax, rsi", "jnb short loc_138F3"], "succs": [[100, "fall"], [101, "jump"]]}, {"id": 100, "start": 80105, "end": 80115, "lines": ["add r14d, 1", "cmp r14d, 0Ah", "jnz short loc_138E0"], "succs": [[99, "jump"], [101, "fall"]]}, {"id": 101, "start": 80115, "end": 80121, "lines": ["test byte ptr [rbp+var_78], 40h", "jz short loc_13912"], "succs": [[102, "fall"], [103, "jump"]]}, {"id": 102, "start": 80121, "end": 80146, "lines": ["mov rax, [rbp+s]", "lea rbx, [rax+288h]", "mov byte ptr [rax+287h], 20h ; ' '", "mov [rbp+var_80], rbx"], "succs": [[103, "fall"]]}, {"id": 103, "start": 80146, "end": 80160, "lines": ["mov rax, [rbp+var_80]", "add rax, 1", "cmp r14d, 1", "jnz short loc_1392E"], "succs": [[104, "fall"], [105, "jump"]]}, {"id": 104, "start": 80160, "end": 80174, "lines": ["mov edi, [rbp+var_A0]", "test edi, edi", "jz loc_13BB8"], "succs": [[105, "fall"], [140, "jump"]]}, {"id": 105, "start": 80174, "end": 80203, "lines": ["movsxd r9, r14d", "lea rdx, unk_21DB8", "mov rbx, [rbp+var_80]", "movzx edx, byte ptr [rdx+r9]", "mov [rbx], dl", "test ecx, ecx", "jnz loc_13A20"], "succs": [[106, "fall"], [118, "jump"]]}, {"id": 106, "start": 80203, "end": 80212, "lines": ["mov [rbp+var_80], rax", "jmp loc_135A0"], "succs": [[62, "jump"]]}, {"id": 107, "start": 80216, "end": 80229, "lines": ["fld cs:flt_1D018", "fmul st(1), st", "jmp loc_13370"], "succs": [[36, "jump"]]}, {"id": 108, "start": 80232, "end": 80261, "lines": ["mov rdx, rcx", "movsxd rax, esi", "and edx, 1", "add rdx, rax", "setnz al", "movzx eax, al", "add eax, edi", "cmp eax, 5", "jg loc_13663"], "succs": [[73, "jump"], [109, "fall"]]}, {"id": 109, "start": 80261, "end": 80266, "lines": ["jmp loc_13680"], "succs": [[76, "jump"]]}, {"id": 110, "start": 80272, "end": 80282, "lines": ["test byte ptr [rbp+var_78], 40h", "jnz loc_13A40"], "succs": [[111, "fall"], [120, "jump"]]}, {"id": 111, "start": 80282, "end": 80291, "lines": ["test r14d, r14d", "jnz loc_13912"], "succs": [[103, "jump"], [112, "fall"]]}, {"id": 112, "start": 80291, "end": 80299, "lines": ["test ecx, ecx", "jz loc_135A0"], "succs": [[62, "jump"], [113, "fall"]]}, {"id": 113, "start": 80299, "end": 80303, "lines": ["mov rax, [rbp+var_80]"], "succs": [[114, "fall"]]}, {"id": 114, "start": 80303, "end": 80319, "lines": ["lea rsi, [rax+1]", "mov byte ptr [rax], 42h ; 'B'", "mov [rbp+var_80], rsi", "jmp loc_135A0"], "succs": [[62, "jump"]]}, {"id": 115, "start": 80320, "end": 80337, "lines": ["xor esi, esi", "cmp r8, rdx", "setb sil", "add esi, 2", "jmp loc_1361F"], "succs": [[68, "jump"]]}, {"id": 116, "start": 80344, "end": 80391, "lines": ["fnstcw [rbp+var_72]", "fsubr st(1), st", "fxch st(1)", "movzx eax, [rbp+var_72]", "or ah, 0Ch", "mov [rbp+var_74], ax", "fldcw [rbp+var_74]", "fistp qword ptr [rbp+var_C0]", "fldcw [rbp+var_72]", "mov rax, qword ptr [rbp+var_C0]", "btc rax, 3Fh ; '?'", "jmp loc_13209"], "succs": [[17, "jump"]]}, {"id": 117, "start": 80400, "end": 80415, "lines": ["mov r14d, dword ptr [rbp+var_C0]", "mov r15, rax", "jmp loc_1357C"], "succs": [[59, "jump"]]}, {"id": 118, "start": 80416, "end": 80426, "lines": ["mov esi, [rbp+var_A0]", "test esi, esi", "jz short loc_139AF"], "succs": [[114, "jump"], [119, "fall"]]}, {"id": 119, "start": 80426, "end": 80443, "lines": ["mov rbx, [rbp+var_80]", "mov byte ptr [rbx+1], 69h ; 'i'", "lea rax, [rbx+2]", "jmp loc_139AF"], "succs": [[114, "jump"]]}, {"id": 120, "start": 80448, "end": 80478, "lines": ["mov rax, [rbp+s]", "lea rbx, [rax+288h]", "mov byte ptr [rax+287h], 20h ; ' '", "mov [rbp+var_80], rbx", "jmp loc_1399A"], "succs": [[111, "jump"]]}, {"id": 121, "start": 80480, "end": 80527, "lines": ["fnstcw [rbp+var_72]", "fsubr st(1), st", "fxch st(1)", "movzx eax, [rbp+var_72]", "or ah, 0Ch", "mov [rbp+var_74], ax", "fldcw [rbp+var_74]", "fistp qword ptr [rbp+var_C0]", "fldcw [rbp+var_72]", "mov rax, qword ptr [rbp+var_C0]", "btc rax, 3Fh ; '?'", "jmp loc_13440"], "succs": [[45, "jump"]]}, {"id": 122, "start": 80528, "end": 80577, "lines": ["fnstcw [rbp+var_72]", "fsubr st(2), st", "fxch st(2)", "movzx eax, [rbp+var_72]", "or ah, 0Ch", "mov [rbp+var_74], ax", "fldcw [rbp+var_74]", "fistp qword ptr [rbp+var_C0]", "fldcw [rbp+var_72]", "fxch st(1)", "mov rax, qword ptr [rbp+var_C0]", "btc rax, 3Fh ; '?'", "jmp loc_132FF"], "succs": [[28, "jump"]]}, {"id": 123, "start": 80584, "end": 80595, "lines": ["fadd cs:dword_1D010", "jmp loc_13229"], "succs": [[19, "jump"]]}, {"id": 124, "start": 80595, "end": 80605, "lines": ["cmp r14d, 0Ah", "jz loc_13680"], "succs": [[76, "jump"], [125, "fall"]]}, {"id": 125, "start": 80605, "end": 80628, "lines": ["mov rbx, [rbp+var_80]", "add r14d, 1", "mov ecx, 1", "test byte ptr [rbp+var_78], 8", "jz loc_13CC8"], "succs": [[126, "fall"], [161, "jump"]]}, {"id": 126, "start": 80628, "end": 80648, "lines": ["add ecx, 30h ; '0'", "lea r15, [rbx-1]", "mov [rbx-1], cl", "test byte ptr [rbp+var_78], 4", "jnz loc_136F8"], "succs": [[79, "jump"], [127, "fall"]]}, {"id": 127, "start": 80648, "end": 80659, "lines": ["mov eax, [rbp+var_78]", "test al, 80h", "jz loc_135A0"], "succs": [[62, "jump"], [128, "fall"]]}, {"id": 128, "start": 80659, "end": 80672, "lines": ["mov ecx, eax", "and ecx, 100h", "jmp loc_13595"], "succs": [[61, "jump"]]}, {"id": 129, "start": 80672, "end": 80682, "lines": ["cmp r11, 9", "ja loc_13643"], "succs": [[70, "jump"], [130, "fall"]]}, {"id": 130, "start": 80682, "end": 80695, "lines": ["cmp dword ptr [rbp+src], 1", "jz loc_13BCC"], "succs": [[131, "fall"], [142, "jump"]]}, {"id": 131, "start": 80695, "end": 80711, "lines": ["mov r10d, dword ptr [rbp+src]", "test r10d, r10d", "jnz loc_13BFC"], "succs": [[132, "fall"], [146, "jump"]]}, {"id": 132, "start": 80711, "end": 80719, "lines": ["test esi, esi", "jz loc_13BFC"], "succs": [[133, "fall"], [146, "jump"]]}, {"id": 133, "start": 80719, "end": 80728, "lines": ["cmp eax, 9", "jz loc_13C8D"], "succs": [[134, "fall"], [156, "jump"]]}, {"id": 134, "start": 80728, "end": 80731, "lines": ["add eax, 31h ; '1'"], "succs": [[135, "fall"]]}, {"id": 135, "start": 80731, "end": 80770, "lines": ["mov rsi, [rbp+s]", "mov [rsi+286h], al", "mov rax, rsi", "sub rax, r12", "lea rbx, [rax+286h]", "mov eax, r12d", "cmp r12d, 8", "jnb loc_13C3F"], "succs": [[136, "fall"], [152, "jump"]]}, {"id": 136, "start": 80770, "end": 80780, "lines": ["test r12b, 4", "jnz loc_13D4E"], "succs": [[137, "fall"], [170, "jump"]]}, {"id": 137, "start": 80780, "end": 80789, "lines": ["test r12d, r12d", "jz loc_13AF4"], "succs": [[126, "jump"], [138, "fall"]]}, {"id": 138, "start": 80789, "end": 80805, "lines": ["movzx edx, byte ptr [r15]", "and r12d, 2", "mov [rbx], dl", "jz loc_13AF4"], "succs": [[126, "jump"], [139, "fall"]]}, {"id": 139, "start": 80805, "end": 80821, "lines": ["movzx edx, word ptr [r15+rax-2]", "mov [rbx+rax-2], dx", "jmp loc_13AF4"], "succs": [[126, "jump"]]}, {"id": 140, "start": 80824, "end": 80839, "lines": ["mov rsi, [rbp+var_80]", "mov byte ptr [rsi], 6Bh ; 'k'", "test ecx, ecx", "jnz loc_139AF"], "succs": [[114, "jump"], [141, "fall"]]}, {"id": 141, "start": 80839, "end": 80844, "lines": ["jmp loc_1394B"], "succs": [[106, "jump"]]}, {"id": 142, "start": 80844, "end": 80860, "lines": ["mov edx, eax", "and edx, 1", "add edx, esi", "cmp edx, 2", "jg loc_13B4F"], "succs": [[133, "jump"], [143, "fall"]]}, {"id": 143, "start": 80860, "end": 80868, "lines": ["test eax, eax", "jnz loc_13CC0"], "succs": [[144, "fall"], [160, "jump"]]}, {"id": 144, "start": 80868, "end": 80882, "lines": ["mov rbx, [rbp+var_80]", "test byte ptr [rbp+var_78], 8", "jnz loc_13AF4"], "succs": [[126, "jump"], [145, "fall"]]}, {"id": 145, "start": 80882, "end": 80892, "lines": ["mov eax, 30h ; '0'", "jmp loc_13B5B"], "succs": [[135, "jump"]]}, {"id": 146, "start": 80892, "end": 80900, "lines": ["test eax, eax", "jnz loc_13CC0"], "succs": [[147, "fall"], [160, "jump"]]}, {"id": 147, "start": 80900, "end": 80906, "lines": ["test byte ptr [rbp+var_78], 8", "jz short loc_13BF2"], "succs": [[145, "jump"], [148, "fall"]]}, {"id": 148, "start": 80906, "end": 80911, "lines": ["jmp loc_13650"], "succs": [[71, "jump"]]}, {"id": 149, "start": 80911, "end": 80919, "lines": ["test ecx, ecx", "jz loc_135A0"], "succs": [[62, "jump"], [150, "fall"]]}, {"id": 150, "start": 80919, "end": 80933, "lines": ["mov rax, [rbp+var_80]", "test byte ptr [rbp+var_78], 40h", "jz loc_139AF"], "succs": [[114, "jump"], [151, "fall"]]}, {"id": 151, "start": 80933, "end": 80959, "lines": ["mov rsi, [rbp+s]", "mov byte ptr [rsi+287h], 20h ; ' '", "lea rax, [rsi+288h]", "jmp loc_139AF"], "succs": [[114, "jump"]]}, {"id": 152, "start": 80959, "end": 81010, "lines": ["mov rax, [r15]", "mov [rbx], rax", "mov eax, r12d", "mov rdx, [r15+rax-8]", "mov [rbx+rax-8], rdx", "lea rdx, [rbx+8]", "mov rax, rbx", "and rdx, 0FFFFFFFFFFFFFFF8h", "sub rax, rdx", "sub r15, rax", "add eax, r12d", "and eax, 0FFFFFFF8h", "cmp eax, 8", "jb loc_13AF4"], "succs": [[126, "jump"], [153, "fall"]]}, {"id": 153, "start": 81010, "end": 81015, "lines": ["and eax, 0FFFFFFF8h", "xor esi, esi"], "succs": [[154, "fall"]]}, {"id": 154, "start": 81015, "end": 81032, "lines": ["mov edi, esi", "add esi, 8", "mov r8, [r15+rdi]", "mov [rdx+rdi], r8", "cmp esi, eax", "jb short loc_13C77"], "succs": [[155, "fall"], [154, "jump"]]}, {"id": 155, "start": 81032, "end": 81037, "lines": ["jmp loc_13AF4"], "succs": [[126, "jump"]]}, {"id": 156, "start": 81037, "end": 81051, "lines": ["lea rcx, [r11+1]", "cmp r11, 9", "jz loc_13680"], "succs": [[76, "jump"], [157, "fall"]]}, {"id": 157, "start": 81051, "end": 81061, "lines": ["test byte ptr [rbp+var_78], 8", "jz loc_13BF2"], "succs": [[145, "jump"], [158, "fall"]]}, {"id": 158, "start": 81061, "end": 81078, "lines": ["mov rbx, [rbp+var_80]", "cmp dword ptr [rbp+src], 1", "jz loc_13AF4"], "succs": [[126, "jump"], [159, "fall"]]}, {"id": 159, "start": 81078, "end": 81087, "lines": ["xor esi, esi", "xor edi, edi", "jmp loc_1365C"], "succs": [[72, "jump"]]}, {"id": 160, "start": 81088, "end": 81096, "lines": ["add eax, 30h ; '0'", "jmp loc_13B5B"], "succs": [[135, "jump"]]}, {"id": 161, "start": 81096, "end": 81128, "lines": ["mov rax, [rbp+s]", "mov r11, r12", "not r11", "mov byte ptr [rax+286h], 30h ; '0'", "add rbx, r11", "mov eax, r12d", "cmp r12d, 8", "jnb short loc_13D07"], "succs": [[162, "fall"], [166, "jump"]]}, {"id": 162, "start": 81128, "end": 81134, "lines": ["test r12b, 4", "jnz short loc_13D67"], "succs": [[163, "fall"], [172, "jump"]]}, {"id": 163, "start": 81134, "end": 81139, "lines": ["test r12d, r12d", "jz short loc_13CFD"], "succs": [[164, "fall"], [165, "jump"]]}, {"id": 164, "start": 81139, "end": 81149, "lines": ["movzx edx, byte ptr [r15]", "mov [rbx], dl", "test al, 2", "jnz short loc_13D77"], "succs": [[165, "fall"], [173, "jump"]]}, {"id": 165, "start": 81149, "end": 81159, "lines": ["mov ecx, 1", "jmp loc_13AF4"], "succs": [[126, "jump"]]}, {"id": 166, "start": 81159, "end": 81206, "lines": ["mov rax, [r15]", "lea rcx, [rbx+8]", "and rcx, 0FFFFFFFFFFFFFFF8h", "mov [rbx], rax", "mov eax, r12d", "mov rdx, [r15+rax-8]", "mov [rbx+rax-8], rdx", "mov rax, rbx", "sub rax, rcx", "sub r15, rax", "add eax, r12d", "and eax, 0FFFFFFF8h", "cmp eax, 8", "jb short loc_13CFD"], "succs": [[165, "jump"], [167, "fall"]]}, {"id": 167, "start": 81206, "end": 81211, "lines": ["and eax, 0FFFFFFF8h", "xor edx, edx"], "succs": [[168, "fall"]]}, {"id": 168, "start": 81211, "end": 81228, "lines": ["mov esi, edx", "add edx, 8", "mov rdi, [r15+rsi]", "mov [rcx+rsi], rdi", "cmp edx, eax", "jb short loc_13D3B"], "succs": [[169, "fall"], [168, "jump"]]}, {"id": 169, "start": 81228, "end": 81230, "lines": ["jmp short loc_13CFD"], "succs": [[165, "jump"]]}, {"id": 170, "start": 81230, "end": 81249, "lines": ["mov edx, [r15]", "mov [rbx], edx", "mov edx, [r15+rax-4]", "mov [rbx+rax-4], edx", "jmp loc_13AF4"], "succs": [[126, "jump"]]}, {"id": 171, "start": 81249, "end": 81255, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 172, "start": 81255, "end": 81271, "lines": ["mov edx, [r15]", "mov [rbx], edx", "mov edx, [r15+rax-4]", "mov [rbx+rax-4], edx", "jmp short loc_13CFD"], "succs": [[165, "jump"]]}, {"id": 173, "start": 81271, "end": 81287, "lines": ["movzx edx, word ptr [r15+rax-2]", "mov [rbx+rax-2], dx", "jmp loc_13CFD"], "succs": [[165, "jump"]]}]}, {"name": "sub_FB40", "ea": 64320, "blocks": [{"id": 0, "start": 64320, "end": 64462, "lines": ["endbr64", "push rbp", "mov edx, esi", "and edx, 3", "mov rbp, rsp", "push r15", "push r14", "lea rax, [rbp+var_850]", "push r13", "push r12", "push rbx", "sub rsp, 0D38h", "mov r12, fs:28h", "mov [rbp+var_38], r12", "lea r12, [rbp+buf]", "mov [rbp+var_D08], rax", "mov [rbp+var_860], rax", "lea rax, [rbp+var_440]", "mov [rbp+var_D10], rax", "mov [rbp+ptr], rax", "lea eax, [rdx-1]", "mov [rbp+var_C68], 400h", "mov [rbp+var_858], 400h", "mov [rbp+var_C70], r12", "mov [rbp+var_448], 400h", "test eax, edx", "jnz loc_FCC0"], "succs": [[1, "fall"], [18, "jump"]]}, {"id": 1, "start": 64462, "end": 64474, "lines": ["mov r15, rdi", "test rdi, rdi", "jz loc_FCC0"], "succs": [[2, "fall"], [18, "jump"]]}, {"id": 2, "start": 64474, "end": 64485, "lines": ["movzx ecx, byte ptr [rdi]", "test cl, cl", "jz loc_FE40"], "succs": [[3, "fall"], [46, "jump"]]}, {"id": 3, "start": 64485, "end": 64511, "lines": ["mov r10d, esi", "mov rbx, r12", "mov esi, 400h; size", "mov r13d, edx", "mov r14d, r10d", "cmp cl, 2Fh ; '/'", "jz loc_FCD0"], "succs": [[4, "fall"], [19, "jump"]]}, {"id": 4, "start": 64511, "end": 64529, "lines": ["mov rdi, rbx; buf", "call cs:getcwd_ptr", "test rax, rax", "jnz loc_10040"], "succs": [[5, "fall"], [83, "jump"]]}, {"id": 5, "start": 64529, "end": 64546, "lines": ["call cs:__errno_location_ptr", "mov eax, [rax]", "cmp eax, 0Ch", "jz loc_FE21"], "succs": [[6, "fall"], [44, "jump"]]}, {"id": 6, "start": 64546, "end": 64551, "lines": ["cmp eax, 22h ; '\"'", "jz short loc_FC90"], "succs": [[7, "fall"], [16, "jump"]]}, {"id": 7, "start": 64551, "end": 64553, "lines": ["xor ebx, ebx"], "succs": [[8, "fall"]]}, {"id": 8, "start": 64553, "end": 64569, "lines": ["mov rdi, [rbp+ptr]; ptr", "cmp rdi, [rbp+var_D10]", "jz short loc_FC3F"], "succs": [[9, "fall"], [10, "jump"]]}, {"id": 9, "start": 64569, "end": 64575, "lines": ["call cs:free_ptr"], "succs": [[10, "fall"]]}, {"id": 10, "start": 64575, "end": 64591, "lines": ["mov rdi, [rbp+var_860]; ptr", "cmp rdi, [rbp+var_D08]", "jz short loc_FC55"], "succs": [[11, "fall"], [12, "jump"]]}, {"id": 11, "start": 64591, "end": 64597, "lines": ["call cs:free_ptr"], "succs": [[12, "fall"]]}, {"id": 12, "start": 64597, "end": 64609, "lines": ["mov rdi, [rbp+var_C70]; ptr", "cmp rdi, r12", "jz short loc_FC67"], "succs": [[13, "fall"], [14, "jump"]]}, {"id": 13, "start": 64609, "end": 64615, "lines": ["call cs:free_ptr"], "succs": [[14, "fall"]]}, {"id": 14, "start": 64615, "end": 64634, "lines": ["mov rax, [rbp+var_38]", "sub rax, fs:28h", "jnz loc_1053A"], "succs": [[15, "fall"], [134, "jump"]]}, {"id": 15, "start": 64634, "end": 64655, "lines": ["add rsp, 0D38h", "mov rax, rbx", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 16, "start": 64656, "end": 64677, "lines": ["lea rdi, [rbp+var_C70]", "call sub_119C0", "test al, al", "jz loc_FE21"], "succs": [[17, "fall"], [44, "jump"]]}, {"id": 17, "start": 64677, "end": 64696, "lines": ["mov rbx, [rbp+var_C70]", "mov rsi, [rbp+var_C68]", "jmp loc_FBFF"], "succs": [[4, "jump"]]}, {"id": 18, "start": 64704, "end": 64720, "lines": ["call cs:__errno_location_ptr", "xor ebx, ebx", "mov dword ptr [rax], 16h", "jmp short loc_FC55"], "succs": [[12, "jump"]]}, {"id": 19, "start": 64720, "end": 64734, "lines": ["mov [rbp+buf], 2Fh ; '/'", "lea r14, [rbp+dest]"], "succs": [[20, "fall"]]}, {"id": 20, "start": 64734, "end": 64781, "lines": ["mov [rbp+var_D41], 0", "mov r11, r15", "mov r13, r12", "mov [rbp+var_D48], 0", "mov [rbp+var_D40], edx", "mov [rbp+var_D20], 0", "mov [rbp+var_D3C], r10d"], "succs": [[21, "fall"]]}, {"id": 21, "start": 64781, "end": 64786, "lines": ["cmp cl, 2Fh ; '/'", "jnz short loc_FD36"], "succs": [[22, "fall"], [25, "jump"]]}, {"id": 22, "start": 64786, "end": 64800, "lines": ["nop dword ptr [rax]", "nop word ptr [rax+rax+00000000h]"], "succs": [[23, "fall"]]}, {"id": 23, "start": 64800, "end": 64814, "lines": ["movzx ecx, byte ptr [r11+1]", "add r11, 1", "cmp cl, 2Fh ; '/'", "jz short loc_FD20"], "succs": [[24, "fall"], [23, "jump"]]}, {"id": 24, "start": 64814, "end": 64822, "lines": ["test cl, cl", "jz loc_FF40"], "succs": [[25, "fall"], [64, "jump"]]}, {"id": 25, "start": 64822, "end": 64829, "lines": ["mov [rbp+var_D18], r13"], "succs": [[26, "fall"]]}, {"id": 26, "start": 64829, "end": 64832, "lines": ["mov r12, r11"], "succs": [[27, "fall"]]}, {"id": 27, "start": 64832, "end": 64849, "lines": ["mov r10, r12", "movzx eax, byte ptr [r12+1]", "add r12, 1", "test al, al", "jz short loc_FD55"], "succs": [[28, "fall"], [29, "jump"]]}, {"id": 28, "start": 64849, "end": 64853, "lines": ["cmp al, 2Fh ; '/'", "jnz short loc_FD40"], "succs": [[27, "jump"], [29, "fall"]]}, {"id": 29, "start": 64853, "end": 64865, "lines": ["mov rdx, r12", "sub rdx, r11", "jz loc_103DD"], "succs": [[30, "fall"], [119, "jump"]]}, {"id": 30, "start": 64865, "end": 64871, "lines": ["cmp rdx, 1", "jz short loc_FDA0"], "succs": [[31, "fall"], [37, "jump"]]}, {"id": 31, "start": 64871, "end": 64877, "lines": ["cmp rdx, 2", "jnz short loc_FDA9"], "succs": [[32, "fall"], [38, "jump"]]}, {"id": 32, "start": 64877, "end": 64882, "lines": ["cmp cl, 2Eh ; '.'", "jnz short loc_FDA9"], "succs": [[33, "fall"], [38, "jump"]]}, {"id": 33, "start": 64882, "end": 64889, "lines": ["cmp byte ptr [r11+1], 2Eh ; '.'", "jnz short loc_FDA9"], "succs": [[34, "fall"], [38, "jump"]]}, {"id": 34, "start": 64889, "end": 64902, "lines": ["lea rdi, [rbx+1]", "cmp rdi, r14", "jb loc_10100"], "succs": [[35, "fall"], [90, "jump"]]}, {"id": 35, "start": 64902, "end": 64917, "lines": ["mov r13, [rbp+var_D18]", "test al, al", "jz loc_104CA"], "succs": [[36, "fall"], [131, "jump"]]}, {"id": 36, "start": 64917, "end": 64922, "lines": ["mov r11, r12", "jmp short loc_FD20"], "succs": [[23, "jump"]]}, {"id": 37, "start": 64928, "end": 64937, "lines": ["cmp cl, 2Eh ; '.'", "jz loc_FF30"], "succs": [[38, "fall"], [62, "jump"]]}, {"id": 38, "start": 64937, "end": 64944, "lines": ["cmp byte ptr [r14-1], 2Fh ; '/'", "jz short loc_FDB8"], "succs": [[39, "fall"], [40, "jump"]]}, {"id": 39, "start": 64944, "end": 64952, "lines": ["mov byte ptr [r14], 2Fh ; '/'", "add r14, 1"], "succs": [[40, "fall"]]}, {"id": 40, "start": 64952, "end": 64978, "lines": ["mov rax, [rbp+var_C68]", "lea r13, [rdx+2]", "add rax, rbx", "sub rax, r14", "cmp rax, r13", "jnb loc_FE6D"], "succs": [[41, "fall"], [48, "jump"]]}, {"id": 41, "start": 64978, "end": 65001, "lines": ["mov [rbp+n], rdx", "mov [rbp+var_D30], r10", "mov [rbp+var_D38], r11", "jmp short loc_FE10"], "succs": [[43, "jump"]]}, {"id": 42, "start": 65008, "end": 65040, "lines": ["mov rcx, r14", "mov rax, [rbp+var_C68]", "sub rcx, rbx", "mov rbx, [rbp+var_C70]", "sub rax, rcx", "lea r14, [rbx+rcx]", "cmp rax, r13", "jnb short loc_FE58"], "succs": [[43, "fall"], [47, "jump"]]}, {"id": 43, "start": 65040, "end": 65057, "lines": ["lea rdi, [rbp+var_C70]", "call sub_11A40", "test al, al", "jnz short loc_FDF0"], "succs": [[42, "jump"], [44, "fall"]]}, {"id": 44, "start": 65057, "end": 65076, "lines": ["mov rax, [rbp+var_38]", "sub rax, fs:28h", "jnz loc_1053A"], "succs": [[45, "fall"], [134, "jump"]]}, {"id": 45, "start": 65076, "end": 65082, "lines": ["call sub_1BCB0"], "succs": []}, {"id": 46, "start": 65088, "end": 65107, "lines": ["call cs:__errno_location_ptr", "xor ebx, ebx", "mov dword ptr [rax], 2", "jmp loc_FC55"], "succs": [[12, "jump"]]}, {"id": 47, "start": 65112, "end": 65133, "lines": ["mov rdx, [rbp+n]; n", "mov r10, [rbp+var_D30]", "mov r11, [rbp+var_D38]"], "succs": [[48, "fall"]]}, {"id": 48, "start": 65133, "end": 65192, "lines": ["mov [rbp+var_D30], r10", "mov rsi, r11; src", "mov rdi, r14; dest", "mov [rbp+n], r11", "call cs:mempcpy_ptr", "test byte ptr [rbp+var_D3C], 4", "mov r11, [rbp+n]", "mov byte ptr [rax], 0", "mov r10, [rbp+var_D30]", "mov r14, rax", "jz loc_100A0"], "succs": [[49, "fall"], [86, "jump"]]}, {"id": 49, "start": 65192, "end": 65205, "lines": ["cmp [rbp+var_D40], 2", "jz loc_1001A"], "succs": [[50, "fall"], [79, "jump"]]}, {"id": 50, "start": 65205, "end": 65212, "lines": ["cmp byte ptr [r12], 2Fh ; '/'", "jnz short loc_FF0D"], "succs": [[51, "fall"], [60, "jump"]]}, {"id": 51, "start": 65212, "end": 65216, "lines": ["mov rax, r12", "nop"], "succs": [[52, "fall"]]}, {"id": 52, "start": 65216, "end": 65232, "lines": ["mov rcx, rax", "movzx edx, byte ptr [rax+1]", "add rax, 1", "cmp dl, 2Fh ; '/'", "jz short loc_FEC0"], "succs": [[53, "fall"], [52, "jump"]]}, {"id": 53, "start": 65232, "end": 65240, "lines": ["test dl, dl", "jz loc_10165"], "succs": [[54, "fall"], [98, "jump"]]}, {"id": 54, "start": 65240, "end": 65245, "lines": ["cmp dl, 2Eh ; '.'", "jnz short loc_FF00"], "succs": [[55, "fall"], [59, "jump"]]}, {"id": 55, "start": 65245, "end": 65257, "lines": ["movzx edx, byte ptr [rax+1]", "test dl, dl", "jz loc_10165"], "succs": [[56, "fall"], [98, "jump"]]}, {"id": 56, "start": 65257, "end": 65266, "lines": ["cmp dl, 2Eh ; '.'", "jz loc_10155"], "succs": [[57, "fall"], [96, "jump"]]}, {"id": 57, "start": 65266, "end": 65275, "lines": ["lea rax, [rcx+2]", "cmp dl, 2Fh ; '/'", "jz short loc_FEC0"], "succs": [[52, "jump"], [58, "fall"]]}, {"id": 58, "start": 65275, "end": 65280, "lines": ["nop dword ptr [rax+rax+00h]"], "succs": [[59, "fall"]]}, {"id": 59, "start": 65280, "end": 65293, "lines": ["test byte ptr [rbp+var_D3C], 4", "jz loc_FFB7"], "succs": [[60, "fall"], [73, "jump"]]}, {"id": 60, "start": 65293, "end": 65306, "lines": ["movzx ecx, byte ptr [r12]", "test cl, cl", "jz loc_10361"], "succs": [[61, "fall"], [112, "jump"]]}, {"id": 61, "start": 65306, "end": 65321, "lines": ["mov r13, [rbp+var_D18]", "mov r11, r12", "jmp loc_FD0D"], "succs": [[21, "jump"]]}, {"id": 62, "start": 65328, "end": 65343, "lines": ["mov r13, [rbp+var_D18]", "test al, al", "jnz loc_FD95"], "succs": [[36, "jump"], [63, "fall"]]}, {"id": 63, "start": 65343, "end": 65344, "lines": ["nop"], "succs": [[64, "fall"]]}, {"id": 64, "start": 65344, "end": 65358, "lines": ["mov r8, [rbp+var_D20]", "mov r12, r13", "lea rdi, [rbx+1]"], "succs": [[65, "fall"]]}, {"id": 65, "start": 65358, "end": 65363, "lines": ["cmp rdi, r14", "jnb short loc_FF5E"], "succs": [[66, "fall"], [67, "jump"]]}, {"id": 66, "start": 65363, "end": 65374, "lines": ["cmp byte ptr [r14-1], 2Fh ; '/'", "jz loc_103C0"], "succs": [[67, "fall"], [116, "jump"]]}, {"id": 67, "start": 65374, "end": 65383, "lines": ["lea r15, [r14+1]", "test r8, r8", "jz short loc_FF70"], "succs": [[68, "fall"], [69, "jump"]]}, {"id": 68, "start": 65383, "end": 65392, "lines": ["mov rdi, r8; ptr", "call sub_126F0"], "succs": [[69, "fall"]]}, {"id": 69, "start": 65392, "end": 65417, "lines": ["sub r15, rbx", "mov byte ptr [r14], 0", "mov rdi, r15; size", "call cs:malloc_ptr", "test rax, rax", "jz loc_FE21"], "succs": [[44, "jump"], [70, "fall"]]}, {"id": 70, "start": 65417, "end": 65443, "lines": ["mov rsi, rbx", "mov rcx, r15", "mov rdx, r15", "mov rdi, rax", "call cs:__memcpy_chk_ptr", "mov rbx, rax", "jmp loc_FC29"], "succs": [[8, "jump"]]}, {"id": 71, "start": 65443, "end": 65452, "lines": ["cmp [rbp+var_D40], 2", "jz short loc_1001A"], "succs": [[72, "fall"], [79, "jump"]]}, {"id": 72, "start": 65452, "end": 65463, "lines": ["cmp byte ptr [r12], 2Fh ; '/'", "jz loc_FEBC"], "succs": [[51, "jump"], [73, "fall"]]}, {"id": 73, "start": 65463, "end": 65489, "lines": ["mov [rbp+n], r10", "call cs:__errno_location_ptr", "mov r10, [rbp+n]", "cmp dword ptr [rax], 16h", "setnz al"], "succs": [[74, "fall"]]}, {"id": 74, "start": 65489, "end": 65493, "lines": ["test al, al", "jz short loc_1001A"], "succs": [[75, "fall"], [79, "jump"]]}, {"id": 75, "start": 65493, "end": 65506, "lines": ["cmp [rbp+var_D40], 1", "jnz loc_10130"], "succs": [[76, "fall"], [94, "jump"]]}, {"id": 76, "start": 65506, "end": 65528, "lines": ["mov [rbp+n], r10", "call cs:__errno_location_ptr", "cmp dword ptr [rax], 2", "jnz loc_10130"], "succs": [[77, "fall"], [94, "jump"]]}, {"id": 77, "start": 65528, "end": 65555, "lines": ["lea rsi, aDired+8; accept", "mov rdi, r12; s", "call cs:strspn_ptr", "cmp byte ptr [r12+rax], 0", "jnz loc_10130"], "succs": [[78, "fall"], [94, "jump"]]}, {"id": 78, "start": 65555, "end": 65562, "lines": ["mov r10, [rbp+n]"], "succs": [[79, "fall"]]}, {"id": 79, "start": 65562, "end": 65570, "lines": ["movzx ecx, byte ptr [r10+1]", "mov r11, r12"], "succs": [[80, "fall"]]}, {"id": 80, "start": 65570, "end": 65578, "lines": ["test cl, cl", "jz loc_103DD"], "succs": [[81, "fall"], [119, "jump"]]}, {"id": 81, "start": 65578, "end": 65587, "lines": ["cmp cl, 2Fh ; '/'", "jnz loc_FD3D"], "succs": [[26, "jump"], [82, "fall"]]}, {"id": 82, "start": 65587, "end": 65599, "lines": ["mov r13, [rbp+var_D18]", "jmp loc_FD20"], "succs": [[23, "jump"]]}, {"id": 83, "start": 65600, "end": 65650, "lines": ["mov dword ptr [rbp+var_D18], r14d", "xor esi, esi; c", "mov rdi, rbx; s", "mov dword ptr [rbp+var_D20], r13d", "call cs:rawmemchr_ptr", "movzx ecx, byte ptr [r15]", "mov r10d, dword ptr [rbp+var_D18]", "mov edx, r13d", "mov r14, rax", "test cl, cl", "jnz loc_FCDE"], "succs": [[20, "jump"], [84, "fall"]]}, {"id": 84, "start": 65650, "end": 65667, "lines": ["lea rcx, [rbx+1]", "lea r15, [rax+1]", "cmp rcx, rax", "jnb loc_FF70"], "succs": [[69, "jump"], [85, "fall"]]}, {"id": 85, "start": 65667, "end": 65692, "lines": ["cmp byte ptr [rax-1], 2Fh ; '/'", "lea rcx, [rax-1]", "cmovz r15, rax", "cmp byte ptr [rax-1], 2Fh ; '/'", "cmovz r14, rcx", "jmp loc_FF70"], "succs": [[69, "jump"]]}, {"id": 86, "start": 65696, "end": 65728, "lines": ["mov [rbp+n], r12", "mov [rbp+var_D30], rax", "mov [rbp+var_D38], r10", "mov [rbp+var_D50], r11", "nop dword ptr [rax+00h]"], "succs": [[87, "fall"]]}, {"id": 87, "start": 65728, "end": 65770, "lines": ["mov rax, [rbp+var_448]", "mov r13, [rbp+ptr]", "mov rdi, rbx; path", "lea r14, [rax-1]", "mov rsi, r13; buf", "mov rdx, r14; len", "call cs:readlink_ptr", "cmp r14, rax", "jg loc_1019D"], "succs": [[88, "fall"], [99, "jump"]]}, {"id": 88, "start": 65770, "end": 65787, "lines": ["lea rdi, [rbp+ptr]", "call sub_119C0", "test al, al", "jnz short loc_100C0"], "succs": [[87, "jump"], [89, "fall"]]}, {"id": 89, "start": 65787, "end": 65792, "lines": ["jmp loc_FE21"], "succs": [[44, "jump"]]}, {"id": 90, "start": 65792, "end": 65805, "lines": ["sub r14, 1", "cmp rbx, r14", "jnb loc_FD86"], "succs": [[35, "jump"], [91, "fall"]]}, {"id": 91, "start": 65805, "end": 65812, "lines": ["cmp byte ptr [r14-1], 2Fh ; '/'", "jz short loc_1011D"], "succs": [[92, "fall"], [93, "jump"]]}, {"id": 92, "start": 65812, "end": 65821, "lines": ["sub r14, 1", "cmp r14, rbx", "jnz short loc_1010D"], "succs": [[91, "jump"], [93, "fall"]]}, {"id": 93, "start": 65821, "end": 65831, "lines": ["mov ecx, eax", "mov r11, r12", "jmp loc_10022"], "succs": [[80, "jump"]]}, {"id": 94, "start": 65840, "end": 65863, "lines": ["mov r8, [rbp+var_D20]", "mov r12, [rbp+var_D18]", "test r8, r8", "jz loc_FC27"], "succs": [[7, "jump"], [95, "fall"]]}, {"id": 95, "start": 65863, "end": 65877, "lines": ["mov rdi, r8; ptr", "call sub_126F0", "jmp loc_FC27"], "succs": [[7, "jump"]]}, {"id": 96, "start": 65877, "end": 65885, "lines": ["movzx eax, byte ptr [rax+2]", "cmp al, 2Fh ; '/'", "jz short loc_10165"], "succs": [[97, "fall"], [98, "jump"]]}, {"id": 97, "start": 65885, "end": 65893, "lines": ["test al, al", "jnz loc_FF00"], "succs": [[59, "jump"], [98, "fall"]]}, {"id": 98, "start": 65893, "end": 65949, "lines": ["xor edx, edx; type", "mov ecx, 200h; flag", "mov rsi, rbx; file", "mov edi, 0FFFFFF9Ch; fd", "movzx eax, cs:word_21D80", "mov [rbp+n], r10", "mov [r14], ax", "call cs:faccessat_ptr", "mov r10, [rbp+n]", "test eax, eax", "setnz al", "jmp loc_FFD1"], "succs": [[74, "jump"]]}, {"id": 99, "start": 65949, "end": 65989, "lines": ["mov r12, [rbp+n]", "mov r14, [rbp+var_D30]", "mov r9, rax", "mov r10, [rbp+var_D38]", "mov r11, [rbp+var_D50]", "test rax, rax", "js loc_FFA3"], "succs": [[71, "jump"], [100, "fall"]]}, {"id": 100, "start": 65989, "end": 66002, "lines": ["cmp [rbp+var_D48], 13h", "jle loc_10482"], "succs": [[101, "fall"], [128, "jump"]]}, {"id": 101, "start": 66002, "end": 66012, "lines": ["cmp byte ptr [r11], 0", "jz loc_102BE"], "succs": [[102, "fall"], [106, "jump"]]}, {"id": 102, "start": 66012, "end": 66097, "lines": ["mov rdx, r11", "mov [rbp+var_D50], rax", "lea rdi, asc_1F91A; \".\"", "lea rax, [rbp+var_D00]", "sub rdx, r12", "mov [rbp+var_D38], r11", "mov rsi, rax; buf", "add rdx, r14", "mov [rbp+n], rax", "mov byte ptr [rdx], 0", "cmp byte ptr [rbx], 0", "cmovnz rdi, rbx; file", "mov [rbp+var_D30], rdx", "mov [rbp+var_D58], r10", "call cs:stat_ptr", "test eax, eax", "jnz loc_10130"], "succs": [[94, "jump"], [103, "fall"]]}, {"id": 103, "start": 66097, "end": 66145, "lines": ["mov r11, [rbp+var_D38]", "mov rdx, [rbp+var_D30]", "cmp [rbp+var_D20], 0", "mov r9, [rbp+var_D50]", "movzx eax, byte ptr [r11]", "mov r10, [rbp+var_D58]", "mov [rdx], al", "jz loc_104D9"], "succs": [[104, "fall"], [132, "jump"]]}, {"id": 104, "start": 66145, "end": 66204, "lines": ["mov [rbp+var_D38], r10", "mov rdx, [rbp+n]", "mov rsi, r11", "mov [rbp+var_D50], r9", "mov rdi, [rbp+var_D20]", "mov [rbp+var_D30], r11", "call sub_10F10", "mov r10, [rbp+var_D38]", "test al, al", "jnz loc_10391"], "succs": [[105, "fall"], [114, "jump"]]}, {"id": 105, "start": 66204, "end": 66238, "lines": ["mov rdx, [rbp+n]", "mov rsi, [rbp+var_D30]", "mov rdi, [rbp+var_D20]", "call sub_10E80", "mov r9, [rbp+var_D50]"], "succs": [[106, "fall"]]}, {"id": 106, "start": 66238, "end": 66315, "lines": ["mov byte ptr [r13+r9+0], 0", "mov r8, [rbp+var_860]", "mov rdi, r12; s", "mov [rbp+var_D30], r9", "mov [rbp+n], r8", "call cs:strlen_ptr", "mov r9, [rbp+var_D30]", "cmp [rbp+var_D41], 0", "mov rcx, rax", "mov r8, [rbp+n]", "lea rdx, [r9+rax]", "mov rax, [rbp+var_858]", "jnz loc_103F4"], "succs": [[107, "fall"], [120, "jump"]]}, {"id": 107, "start": 66315, "end": 66326, "lines": ["xor esi, esi", "cmp rdx, rax", "jb loc_10407"], "succs": [[108, "fall"], [122, "jump"]]}, {"id": 108, "start": 66326, "end": 66366, "lines": ["mov [rbp+n], r12", "mov r12, rdx", "mov [rbp+var_D30], rbx", "mov [rbp+var_D38], rsi", "mov [rbp+var_D50], r9", "mov [rbp+var_D58], rcx", "jmp short loc_1034B"], "succs": [[110, "jump"]]}, {"id": 109, "start": 66366, "end": 66379, "lines": ["cmp r12, [rbp+var_858]", "jb loc_1048E"], "succs": [[110, "fall"], [129, "jump"]]}, {"id": 110, "start": 66379, "end": 66396, "lines": ["lea rdi, [rbp+var_860]", "call sub_11A40", "test al, al", "jnz short loc_1033E"], "succs": [[109, "jump"], [111, "fall"]]}, {"id": 111, "start": 66396, "end": 66401, "lines": ["jmp loc_FE21"], "succs": [[44, "jump"]]}, {"id": 112, "start": 66401, "end": 66444, "lines": ["xor edx, edx; type", "mov ecx, 200h; flag", "mov rsi, rbx; file", "mov edi, 0FFFFFF9Ch; fd", "mov [rbp+n], r10", "call cs:faccessat_ptr", "mov r10, [rbp+n]", "test eax, eax", "jnz loc_FFD5"], "succs": [[75, "jump"], [113, "fall"]]}, {"id": 113, "start": 66444, "end": 66449, "lines": ["jmp loc_1001A"], "succs": [[79, "jump"]]}, {"id": 114, "start": 66449, "end": 66462, "lines": ["cmp [rbp+var_D40], 2", "jz loc_1001A"], "succs": [[79, "jump"], [115, "fall"]]}, {"id": 115, "start": 66462, "end": 66493, "lines": ["call cs:__errno_location_ptr", "mov r12, [rbp+var_D18]", "mov r8, [rbp+var_D20]", "mov dword ptr [rax], 28h ; '('", "jmp loc_10147"], "succs": [[95, "jump"]]}, {"id": 116, "start": 66496, "end": 66505, "lines": ["lea r13, [r14-1]", "test r8, r8", "jz short loc_103D2"], "succs": [[117, "fall"], [118, "jump"]]}, {"id": 117, "start": 66505, "end": 66514, "lines": ["mov rdi, r8; ptr", "call sub_126F0"], "succs": [[118, "fall"]]}, {"id": 118, "start": 66514, "end": 66525, "lines": ["mov r15, r14", "mov r14, r13", "jmp loc_FF70"], "succs": [[69, "jump"]]}, {"id": 119, "start": 66525, "end": 66548, "lines": ["mov r8, [rbp+var_D20]", "mov r12, [rbp+var_D18]", "lea rdi, [rbx+1]", "jmp loc_FF4E"], "succs": [[65, "jump"]]}, {"id": 120, "start": 66548, "end": 66563, "lines": ["mov rsi, r12", "sub rsi, r8", "cmp rdx, rax", "jnb loc_10316"], "succs": [[108, "jump"], [121, "fall"]]}, {"id": 121, "start": 66563, "end": 66567, "lines": ["lea r12, [r8+rsi]"], "succs": [[122, "fall"]]}, {"id": 122, "start": 66567, "end": 66639, "lines": ["lea rdx, [rcx+1]; n", "lea rdi, [r8+r9]; dest", "mov rsi, r12; src", "mov [rbp+var_D30], r9", "mov [rbp+n], r8", "call cs:memmove_ptr", "mov rdi, [rbp+n]; dest", "mov rdx, [rbp+var_D30]; n", "mov rsi, r13; src", "call cs:memcpy_ptr", "lea rdi, [rbx+1]", "mov r11, rax", "cmp byte ptr [r13+0], 2Fh ; '/'", "jz loc_10540"], "succs": [[123, "fall"], [135, "jump"]]}, {"id": 123, "start": 66639, "end": 66644, "lines": ["cmp rdi, r14", "jb short loc_10463"], "succs": [[124, "fall"], [125, "jump"]]}, {"id": 124, "start": 66644, "end": 66659, "lines": ["mov [rbp+var_D41], 1", "movzx ecx, byte ptr [rax]", "jmp loc_10022"], "succs": [[80, "jump"]]}, {"id": 125, "start": 66659, "end": 66668, "lines": ["sub r14, 1", "cmp rbx, r14", "jz short loc_10473"], "succs": [[126, "fall"], [127, "jump"]]}, {"id": 126, "start": 66668, "end": 66675, "lines": ["cmp byte ptr [r14-1], 2Fh ; '/'", "jnz short loc_10463"], "succs": [[125, "jump"], [127, "fall"]]}, {"id": 127, "start": 66675, "end": 66690, "lines": ["mov [rbp+var_D41], 1", "movzx ecx, byte ptr [rax]", "jmp loc_10022"], "succs": [[80, "jump"]]}, {"id": 128, "start": 66690, "end": 66702, "lines": ["add [rbp+var_D48], 1", "jmp loc_102BE"], "succs": [[106, "jump"]]}, {"id": 129, "start": 66702, "end": 66757, "lines": ["mov r12, [rbp+n]", "mov rbx, [rbp+var_D30]", "mov rsi, [rbp+var_D38]", "mov r9, [rbp+var_D50]", "mov rcx, [rbp+var_D58]", "mov r8, [rbp+var_860]", "cmp [rbp+var_D41], 0", "jz loc_10407"], "succs": [[122, "jump"], [130, "fall"]]}, {"id": 130, "start": 66757, "end": 66762, "lines": ["jmp loc_10403"], "succs": [[121, "jump"]]}, {"id": 131, "start": 66762, "end": 66777, "lines": ["mov r8, [rbp+var_D20]", "mov r12, r13", "jmp loc_FF4E"], "succs": [[65, "jump"]]}, {"id": 132, "start": 66777, "end": 66869, "lines": ["mov [rbp+var_D50], r11", "xor esi, esi", "lea r8, sub_12F50", "mov edi, 7", "mov [rbp+var_D38], r9", "lea rcx, sub_12F00", "mov [rbp+var_D30], r10", "lea rdx, sub_12ED0", "call sub_12460", "mov r10, [rbp+var_D30]", "mov r9, [rbp+var_D38]", "test rax, rax", "mov [rbp+var_D20], rax", "mov r11, [rbp+var_D50]", "jnz loc_10261"], "succs": [[104, "jump"], [133, "fall"]]}, {"id": 133, "start": 66869, "end": 66874, "lines": ["jmp loc_FE21"], "succs": [[44, "jump"]]}, {"id": 134, "start": 66874, "end": 66880, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 135, "start": 66880, "end": 66901, "lines": ["mov byte ptr [rbx], 2Fh ; '/'", "mov r14, rdi", "movzx ecx, byte ptr [rax]", "mov [rbp+var_D41], 1", "jmp loc_10022"], "succs": [[80, "jump"]]}]}, {"name": "sub_AE70", "ea": 44656, "blocks": [{"id": 0, "start": 44656, "end": 44717, "lines": ["push rbp", "mov rbp, rsp", "push r15", "push r14", "push r13", "push r12", "push rbx", "sub rsp, 1000h", "or [rsp+1028h+var_1028], 0", "sub rsp, 338h", "mov r12, fs:28h", "mov [rbp+var_38], r12", "mov r12, rdi", "cmp byte ptr [rdi+0B8h], 0", "jz loc_B340"], "succs": [[1, "fall"], [50, "jump"]]}, {"id": 1, "start": 44717, "end": 44758, "lines": ["lea rax, [rbp+var_129C]", "lea rdi, [r12+18h]", "mov [rbp+s], rax", "mov rsi, rax", "call sub_11100", "cmp cs:byte_29368, 0", "jnz loc_B39A"], "succs": [[2, "fall"], [51, "jump"]]}, {"id": 2, "start": 44758, "end": 44765, "lines": ["mov [rbp+var_1292], 0"], "succs": [[3, "fall"]]}, {"id": 3, "start": 44765, "end": 44780, "lines": ["mov eax, cs:dword_29338", "cmp eax, 2", "jz loc_B5E0"], "succs": [[4, "fall"], [73, "jump"]]}, {"id": 4, "start": 44780, "end": 44786, "lines": ["ja loc_B5B0"], "succs": [[5, "fall"], [72, "jump"]]}, {"id": 5, "start": 44786, "end": 44794, "lines": ["test eax, eax", "jnz loc_B3D0"], "succs": [[6, "fall"], [55, "jump"]]}, {"id": 6, "start": 44794, "end": 44808, "lines": ["mov [rbp+var_1349], 1", "movdqu xmm0, xmmword ptr [r12+70h]"], "succs": [[7, "fall"]]}, {"id": 7, "start": 44808, "end": 44828, "lines": ["cmp cs:byte_292FC, 0", "movaps [rbp+var_1330], xmm0", "jz loc_B3F5"], "succs": [[8, "fall"], [56, "jump"]]}, {"id": 8, "start": 44828, "end": 44846, "lines": ["lea r9, asc_1F000; \"?\"", "cmp byte ptr [r12+0B8h], 0", "jz short loc_AF3C"], "succs": [[9, "fall"], [10, "jump"]]}, {"id": 9, "start": 44846, "end": 44860, "lines": ["mov rdi, [r12+20h]", "test rdi, rdi", "jnz loc_B7E0"], "succs": [[10, "fall"], [92, "jump"]]}, {"id": 10, "start": 44860, "end": 44941, "lines": ["lea r13, [rbp+var_E80]", "xor eax, eax", "mov r8d, cs:dword_29364", "lea rcx, aSS_1+3; \"%*s \"", "mov edx, 0E3Bh", "mov esi, 2", "mov rdi, r13", "mov ebx, 0E3Bh", "call cs:__sprintf_chk_ptr", "mov r10d, 0E3Bh", "movsxd r11, eax", "cmp r11, r10", "lea r15, [r13+r11+0]", "cmovnb r10, r11", "sub r10, r11", "cmp r10, rbx", "mov r14, r10", "cmovnb rbx, r10"], "succs": [[11, "fall"]]}, {"id": 11, "start": 44941, "end": 44954, "lines": ["cmp cs:byte_2932C, 0", "jz loc_B087"], "succs": [[12, "fall"], [20, "jump"]]}, {"id": 12, "start": 44954, "end": 44976, "lines": ["lea rbx, asc_1F000; \"?\"", "cmp byte ptr [r12+0B8h], 0", "jnz loc_B9B0"], "succs": [[13, "fall"], [100, "jump"]]}, {"id": 13, "start": 44976, "end": 44994, "lines": ["mov esi, 3", "mov rdi, rbx", "call sub_14C90", "test eax, eax", "js short loc_B03A"], "succs": [[14, "fall"], [18, "jump"]]}, {"id": 14, "start": 44994, "end": 45006, "lines": ["mov esi, cs:dword_29360", "sub esi, eax", "test esi, esi", "jle short loc_B03A"], "succs": [[15, "fall"], [18, "jump"]]}, {"id": 15, "start": 45006, "end": 45056, "lines": ["lea edi, [rsi-1]", "mov rcx, r15", "add rsi, r15", "nop dword ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]"], "succs": [[16, "fall"]]}, {"id": 16, "start": 45056, "end": 45109, "lines": ["mov eax, 0E3Bh", "lea r10, [r14-1]", "cmp r14, rax", "cmovnb rax, r14", "mov rdx, rax", "sub rdx, r14", "add rdx, 1", "cmp rdx, rax", "cmovb rdx, rax", "sub r10, rax", "add rcx, 1", "lea r14, [rdx+r10]", "mov byte ptr [rcx-1], 20h ; ' '", "cmp rcx, rsi", "jnz short loc_B000"], "succs": [[17, "fall"], [16, "jump"]]}, {"id": 17, "start": 45109, "end": 45114, "lines": ["lea r15, [r15+rdi+1]"], "succs": [[18, "fall"]]}, {"id": 18, "start": 45114, "end": 45174, "lines": ["mov eax, 0E3Bh", "add rbx, 1", "lea r10, [r14-1]", "cmp r14, rax", "cmovnb rax, r14", "mov rdx, rax", "sub rdx, r14", "add rdx, 1", "cmp rdx, rax", "cmovb rdx, rax", "sub r10, rax", "movzx eax, byte ptr [rbx-1]", "add r15, 1", "lea r14, [rdx+r10]", "mov [r15-1], al", "test al, al", "jnz short loc_B03A"], "succs": [[19, "fall"], [18, "jump"]]}, {"id": 19, "start": 45174, "end": 45191, "lines": ["mov ebx, 0E3Bh", "mov byte ptr [r15-1], 20h ; ' '", "cmp r14, rbx", "cmovnb rbx, r14"], "succs": [[20, "fall"]]}, {"id": 20, "start": 45191, "end": 45213, "lines": ["lea rax, asc_1F000; \"?\"", "cmp byte ptr [r12+0B8h], 0", "jnz loc_B4E0"], "succs": [[21, "fall"], [64, "jump"]]}, {"id": 21, "start": 45213, "end": 45288, "lines": ["mov edx, 0E3Bh", "mov rdi, r15", "mov r8, [rbp+s]", "mov r9d, cs:dword_2935C", "cmp r14, rdx", "lea rcx, aSS_1; \"%s %*s \"", "mov esi, 2", "cmovbe rdx, r14", "sub rsp, 8", "push rax", "xor eax, eax", "call cs:__sprintf_chk_ptr", "pop rdi", "pop r8", "cdqe", "add r15, rax", "cmp cs:byte_29318, 0", "jnz loc_B4B8"], "succs": [[22, "fall"], [63, "jump"]]}, {"id": 22, "start": 45288, "end": 45297, "lines": ["cmp cs:byte_28029, 0", "jnz short loc_B110"], "succs": [[23, "fall"], [26, "jump"]]}, {"id": 23, "start": 45297, "end": 45306, "lines": ["cmp cs:byte_28028, 0", "jnz short loc_B110"], "succs": [[24, "fall"], [26, "jump"]]}, {"id": 24, "start": 45306, "end": 45319, "lines": ["cmp cs:byte_2932E, 0", "jz loc_B6E0"], "succs": [[25, "fall"], [84, "jump"]]}, {"id": 25, "start": 45319, "end": 45328, "lines": ["nop word ptr [rax+rax+00000000h]"], "succs": [[26, "fall"]]}, {"id": 26, "start": 45328, "end": 45355, "lines": ["mov rsi, r15", "mov rdi, r13", "sub rsi, r13", "call sub_6450", "cmp cs:byte_28029, 0", "jnz loc_B580"], "succs": [[27, "fall"], [70, "jump"]]}, {"id": 27, "start": 45355, "end": 45368, "lines": ["cmp cs:byte_28028, 0", "jnz loc_B500"], "succs": [[28, "fall"], [65, "jump"]]}, {"id": 28, "start": 45368, "end": 45381, "lines": ["cmp cs:byte_2932E, 0", "jnz loc_B533"], "succs": [[29, "fall"], [67, "jump"]]}, {"id": 29, "start": 45381, "end": 45394, "lines": ["cmp cs:byte_29369, 0", "jnz loc_B566"], "succs": [[30, "fall"], [69, "jump"]]}, {"id": 30, "start": 45394, "end": 45408, "lines": ["mov r14d, 0E3Bh", "mov ebx, 0E3Bh", "mov r15, r13"], "succs": [[31, "fall"]]}, {"id": 31, "start": 45408, "end": 45423, "lines": ["cmp byte ptr [r12+0B8h], 0", "jz loc_B410"], "succs": [[32, "fall"], [57, "jump"]]}, {"id": 32, "start": 45423, "end": 45444, "lines": ["mov eax, [r12+30h]", "and eax, 0B000h", "cmp eax, 2000h", "jz loc_B7F8"], "succs": [[33, "fall"], [93, "jump"]]}, {"id": 33, "start": 45444, "end": 45483, "lines": ["mov rdi, [r12+48h]", "mov r8, cs:qword_28020", "lea rsi, [rbp+var_1270]", "mov ecx, 1", "mov edx, cs:dword_2931C", "call sub_13000", "mov r14, rax"], "succs": [[34, "fall"]]}, {"id": 34, "start": 45483, "end": 45501, "lines": ["mov esi, 3", "mov rdi, r14", "call sub_14C90", "test eax, eax", "js short loc_B23C"], "succs": [[35, "fall"], [39, "jump"]]}, {"id": 35, "start": 45501, "end": 45516, "lines": ["mov r8d, cs:dword_29340", "sub r8d, eax", "test r8d, r8d", "jle short loc_B23C"], "succs": [[36, "fall"], [39, "jump"]]}, {"id": 36, "start": 45516, "end": 45568, "lines": ["lea r9d, [r8-1]", "mov rsi, r15", "add r8, r15", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]"], "succs": [[37, "fall"]]}, {"id": 37, "start": 45568, "end": 45623, "lines": ["mov eax, 0E3Bh", "cmp rbx, rax", "cmovnb rax, rbx", "mov rdx, rax", "sub rdx, rbx", "add rdx, 1", "cmp rdx, rax", "mov rcx, rdx", "cmovb rcx, rax", "sub rbx, 1", "add rsi, 1", "sub rbx, rax", "add rbx, rcx", "mov byte ptr [rsi-1], 20h ; ' '", "cmp rsi, r8", "jnz short loc_B200"], "succs": [[38, "fall"], [37, "jump"]]}, {"id": 38, "start": 45623, "end": 45628, "lines": ["lea r15, [r15+r9+1]"], "succs": [[39, "fall"]]}, {"id": 39, "start": 45628, "end": 45691, "lines": ["mov eax, 0E3Bh", "add r14, 1", "cmp rbx, rax", "cmovnb rax, rbx", "mov rdx, rax", "sub rdx, rbx", "add rdx, 1", "cmp rdx, rax", "mov rcx, rdx", "cmovb rcx, rax", "sub rbx, 1", "add r15, 1", "sub rbx, rax", "movzx eax, byte ptr [r14-1]", "add rbx, rcx", "mov [r15-1], al", "test al, al", "jnz short loc_B23C"], "succs": [[40, "fall"], [39, "jump"]]}, {"id": 40, "start": 45691, "end": 45696, "lines": ["mov byte ptr [r15-1], 20h ; ' '"], "succs": [[41, "fall"]]}, {"id": 41, "start": 45696, "end": 45707, "lines": ["cmp byte ptr [r12+0B8h], 0", "jz short loc_B298"], "succs": [[42, "fall"], [43, "jump"]]}, {"id": 42, "start": 45707, "end": 45720, "lines": ["cmp [rbp+var_1349], 0", "jnz loc_B8A0"], "succs": [[43, "fall"], [94, "jump"]]}, {"id": 43, "start": 45720, "end": 45727, "lines": ["lea r14, asc_1F000; \"?\""], "succs": [[44, "fall"]]}, {"id": 44, "start": 45727, "end": 45743, "lines": ["mov r8d, cs:dword_28018", "test r8d, r8d", "js loc_B5F8"], "succs": [[45, "fall"], [74, "jump"]]}, {"id": 45, "start": 45743, "end": 45789, "lines": ["mov eax, 0E3Bh", "mov rdi, r15", "mov r9, r14", "mov esi, 2", "cmp rbx, rax", "lea rcx, aSS_1+3; \"%*s \"", "cmovbe rax, rbx", "mov rdx, rax", "xor eax, eax", "call cs:__sprintf_chk_ptr", "cdqe", "add r15, rax"], "succs": [[46, "fall"]]}, {"id": 46, "start": 45789, "end": 45840, "lines": ["sub r15, r13", "mov rdi, r13", "mov rsi, r15", "call sub_6450", "mov rcx, r15", "xor esi, esi", "mov rdi, r12", "lea rdx, unk_291A0", "call sub_A810", "mov edx, [r12+0A8h]", "cmp edx, 6", "jz loc_B420"], "succs": [[47, "fall"], [58, "jump"]]}, {"id": 47, "start": 45840, "end": 45854, "lines": ["mov eax, cs:dword_29314", "test eax, eax", "jnz loc_B6B0"], "succs": [[48, "fall"], [81, "jump"]]}, {"id": 48, "start": 45854, "end": 45873, "lines": ["mov rax, [rbp+var_38]", "sub rax, fs:28h", "jnz loc_BAA3"], "succs": [[49, "fall"], [109, "jump"]]}, {"id": 49, "start": 45873, "end": 45888, "lines": ["lea rsp, [rbp-28h]", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 50, "start": 45888, "end": 45978, "lines": ["mov eax, [r12+0A8h]", "lea rdx, aPcdbLswd; \"?pcdb-lswd\"", "mov r9d, 3F3Fh", "cmp cs:byte_29368, 0", "mov [rbp-1293h], r9w", "movzx eax, byte ptr [rdx+rax]", "mov [rbp+var_1291], 0", "mov [rbp+var_129C], al", "mov rax, 3F3F3F3F3F3F3F3Fh", "mov [rbp+var_129B], rax", "lea rax, [rbp+var_129C]", "mov [rbp+s], rax", "jz loc_AED6"], "succs": [[2, "jump"], [51, "fall"]]}, {"id": 51, "start": 45978, "end": 45995, "lines": ["mov eax, [r12+0BCh]", "cmp eax, 2", "jz loc_B6D0"], "succs": [[52, "fall"], [83, "jump"]]}, {"id": 52, "start": 45995, "end": 46004, "lines": ["cmp eax, 3", "jz loc_B9E0"], "succs": [[53, "fall"], [101, "jump"]]}, {"id": 53, "start": 46004, "end": 46013, "lines": ["cmp eax, 1", "jnz loc_AEDD"], "succs": [[3, "jump"], [54, "fall"]]}, {"id": 54, "start": 46013, "end": 46025, "lines": ["mov [rbp+var_1292], 3Fh ; '?'", "jmp loc_AEDD"], "succs": [[3, "jump"]]}, {"id": 55, "start": 46032, "end": 46069, "lines": ["cmp cs:byte_292FC, 0", "mov [rbp+var_1349], 1", "movdqu xmm0, xmmword ptr [r12+80h]", "movaps [rbp+var_1330], xmm0", "jnz loc_AF1C"], "succs": [[8, "jump"], [56, "fall"]]}, {"id": 56, "start": 46069, "end": 46095, "lines": ["lea r13, [rbp+var_E80]", "mov ebx, 0E3Bh", "mov r14d, 0E3Bh", "mov r15, r13", "jmp loc_AF8D"], "succs": [[11, "jump"]]}, {"id": 57, "start": 46096, "end": 46108, "lines": ["lea r14, asc_1F000; \"?\"", "jmp loc_B1AB"], "succs": [[34, "jump"]]}, {"id": 58, "start": 46112, "end": 46124, "lines": ["cmp qword ptr [r12+8], 0", "jz loc_B31E"], "succs": [[48, "jump"], [59, "fall"]]}, {"id": 59, "start": 46124, "end": 46189, "lines": ["mov esi, 4", "lea rdi, asc_1F019; \" -> \"", "mov [rbp+s], rax", "call sub_6450", "xor edx, edx", "mov esi, 1", "mov rdi, r12", "mov rax, [rbp+s]", "lea rcx, [r15+rax+4]", "call sub_A810", "mov edx, cs:dword_29314", "test edx, edx", "jz loc_B31E"], "succs": [[48, "jump"], [60, "fall"]]}, {"id": 60, "start": 46189, "end": 46217, "lines": ["mov esi, [r12+0ACh]", "xor edx, edx", "mov edi, 1", "call sub_5940", "test al, al", "jz loc_B31E"], "succs": [[48, "jump"], [61, "fall"]]}, {"id": 61, "start": 46217, "end": 46246, "lines": ["mov rdi, cs:stdout; _IO_FILE *", "add cs:qword_291F8, 1", "mov rdx, [rdi+28h]", "cmp rdx, [rdi+30h]", "jnb loc_BA95"], "succs": [[62, "fall"], [108, "jump"]]}, {"id": 62, "start": 46246, "end": 46261, "lines": ["lea rcx, [rdx+1]", "mov [rdi+28h], rcx", "mov [rdx], al", "jmp loc_B31E"], "succs": [[48, "jump"]]}, {"id": 63, "start": 46264, "end": 46300, "lines": ["mov esi, 2", "lea rdi, asc_1F00A; \" \"", "mov [rbp+s], rax", "call sub_6450", "mov rax, [rbp+s]", "jmp loc_B0E8"], "succs": [[22, "jump"]]}, {"id": 64, "start": 46304, "end": 46327, "lines": ["mov rdi, [r12+28h]", "lea rsi, [rbp+var_1270]", "call sub_14440", "jmp loc_B09D"], "succs": [[21, "jump"]]}, {"id": 65, "start": 46336, "end": 46369, "lines": ["mov edx, cs:dword_29350", "mov esi, [r12+38h]", "lea rdi, asc_1F000; \"?\"", "cmp byte ptr [r12+0B8h], 0", "jnz loc_B7A0"], "succs": [[66, "fall"], [90, "jump"]]}, {"id": 66, "start": 46369, "end": 46387, "lines": ["call sub_88D0", "cmp cs:byte_2932E, 0", "jz loc_B145"], "succs": [[29, "jump"], [67, "fall"]]}, {"id": 67, "start": 46387, "end": 46420, "lines": ["mov edx, cs:dword_2934C", "mov esi, [r12+34h]", "lea rdi, asc_1F000; \"?\"", "cmp byte ptr [r12+0B8h], 0", "jnz loc_B720"], "succs": [[68, "fall"], [86, "jump"]]}, {"id": 68, "start": 46420, "end": 46438, "lines": ["call sub_88D0", "cmp cs:byte_29369, 0", "jz loc_B152"], "succs": [[30, "jump"], [69, "fall"]]}, {"id": 69, "start": 46438, "end": 46464, "lines": ["mov rdi, [r12+0B0h]; s", "mov edx, cs:dword_29358", "xor esi, esi", "call sub_88D0", "jmp loc_B152"], "succs": [[30, "jump"]]}, {"id": 70, "start": 46464, "end": 46497, "lines": ["mov edx, cs:dword_29354", "mov esi, [r12+34h]", "lea rdi, asc_1F000; \"?\"", "cmp byte ptr [r12+0B8h], 0", "jnz loc_B760"], "succs": [[71, "fall"], [88, "jump"]]}, {"id": 71, "start": 46497, "end": 46507, "lines": ["call sub_88D0", "jmp loc_B12B"], "succs": [[27, "jump"]]}, {"id": 72, "start": 46512, "end": 46553, "lines": ["movdqu xmm0, xmmword ptr [r12+70h]", "movdqa xmm1, xmm0", "psrldq xmm1, 8", "pand xmm1, xmm0", "movq rax, xmm1", "cmp rax, 0FFFFFFFFFFFFFFFFh", "setnz [rbp+var_1349]", "jmp loc_AF08"], "succs": [[7, "jump"]]}, {"id": 73, "start": 46560, "end": 46579, "lines": ["mov [rbp+var_1349], 1", "movdqu xmm0, xmmword ptr [r12+60h]", "jmp loc_AF08"], "succs": [[7, "jump"]]}, {"id": 74, "start": 46584, "end": 46644, "lines": ["lea rcx, [rbp+var_12E0]", "mov rdi, cs:qword_292A8", "mov [rbp+var_1338], 0", "lea rsi, [rbp+var_1338]", "mov [rbp+s], rcx", "mov rdx, rcx", "call sub_1AE70", "mov rcx, [rbp+s]", "test rax, rax", "jz short loc_B689"], "succs": [[75, "fall"], [78, "jump"]]}, {"id": 75, "start": 46644, "end": 46664, "lines": ["cmp cs:byte_283C8, 0", "mov r8, cs:qword_292A8", "jz loc_BA1B"], "succs": [[76, "fall"], [104, "jump"]]}, {"id": 76, "start": 46664, "end": 46685, "lines": ["movsxd rdx, [rbp+var_12D0]", "lea rax, unk_283E0", "shl rdx, 7", "add rdx, rax"], "succs": [[77, "fall"]]}, {"id": 77, "start": 46685, "end": 46729, "lines": ["lea rdi, [rbp+var_1270]", "xor r9d, r9d", "mov esi, 3E9h", "mov [rbp+s], rdi", "call sub_17BA0", "mov rdi, [rbp+s]; s", "test rax, rax", "jg loc_BA3A"], "succs": [[78, "fall"], [106, "jump"]]}, {"id": 78, "start": 46729, "end": 46736, "lines": ["mov r8d, cs:dword_28018"], "succs": [[79, "fall"]]}, {"id": 79, "start": 46736, "end": 46745, "lines": ["test r8d, r8d", "jns loc_B2AF"], "succs": [[45, "jump"], [80, "fall"]]}, {"id": 80, "start": 46745, "end": 46763, "lines": ["mov cs:dword_28018, 0", "xor r8d, r8d", "jmp loc_B2AF"], "succs": [[45, "jump"]]}, {"id": 81, "start": 46768, "end": 46795, "lines": ["movzx edi, byte ptr [r12+0B8h]", "mov esi, [r12+30h]", "call sub_5940", "test al, al", "jz loc_B31E"], "succs": [[48, "jump"], [82, "fall"]]}, {"id": 82, "start": 46795, "end": 46800, "lines": ["jmp loc_B489"], "succs": [[61, "jump"]]}, {"id": 83, "start": 46800, "end": 46812, "lines": ["mov [rbp+var_1292], 2Eh ; '.'", "jmp loc_AEDD"], "succs": [[3, "jump"]]}, {"id": 84, "start": 46816, "end": 46829, "lines": ["cmp cs:byte_29369, 0", "jnz loc_B110"], "succs": [[26, "jump"], [85, "fall"]]}, {"id": 85, "start": 46829, "end": 46876, "lines": ["add rax, rbx", "mov r10, r14", "mov rdx, rax", "sub rdx, r14", "cmp rdx, rbx", "cmovb rdx, rbx", "sub r10, rax", "lea rbx, [rdx+r10]", "mov r10d, 0E3Bh", "cmp rbx, r10", "cmovnb r10, rbx", "mov r14, r10", "jmp loc_B160"], "succs": [[31, "jump"]]}, {"id": 86, "start": 46880, "end": 46895, "lines": ["xor edi, edi", "cmp cs:byte_2932D, 0", "jnz loc_B554"], "succs": [[68, "jump"], [87, "fall"]]}, {"id": 87, "start": 46895, "end": 46937, "lines": ["mov edi, esi", "mov [rbp+var_1358], rsi", "mov dword ptr [rbp+s], edx", "call sub_13F60", "mov rsi, [rbp+var_1358]", "mov edx, dword ptr [rbp+s]", "mov rdi, rax", "jmp loc_B554"], "succs": [[68, "jump"]]}, {"id": 88, "start": 46944, "end": 46959, "lines": ["xor edi, edi", "cmp cs:byte_2932D, 0", "jnz loc_B5A1"], "succs": [[71, "jump"], [89, "fall"]]}, {"id": 89, "start": 46959, "end": 47001, "lines": ["mov edi, esi", "mov [rbp+var_1358], rsi", "mov dword ptr [rbp+s], edx", "call sub_13F60", "mov rsi, [rbp+var_1358]", "mov edx, dword ptr [rbp+s]", "mov rdi, rax", "jmp loc_B5A1"], "succs": [[71, "jump"]]}, {"id": 90, "start": 47008, "end": 47023, "lines": ["xor edi, edi", "cmp cs:byte_2932D, 0", "jnz loc_B521"], "succs": [[66, "jump"], [91, "fall"]]}, {"id": 91, "start": 47023, "end": 47065, "lines": ["mov edi, esi", "mov [rbp+var_1358], rsi", "mov dword ptr [rbp+s], edx", "call sub_14160", "mov rsi, [rbp+var_1358]", "mov edx, dword ptr [rbp+s]", "mov rdi, rax", "jmp loc_B521"], "succs": [[66, "jump"]]}, {"id": 92, "start": 47072, "end": 47093, "lines": ["lea rsi, [rbp+var_1270]", "call sub_14440", "mov r9, rax", "jmp loc_AF3C"], "succs": [[10, "jump"]]}, {"id": 93, "start": 47096, "end": 47261, "lines": ["mov rax, [r12+40h]", "mov edi, cs:dword_29348", "mov r8d, cs:dword_29344", "mov edx, cs:dword_29340", "mov rcx, rax", "mov r9, rax", "movzx r11d, al", "lea esi, [rdi+r8+2]", "shr rcx, 8", "shr r9, 20h", "and ecx, 0FFFh", "and r9d, 0FFFFF000h", "sub edx, esi", "mov esi, 0", "cmovs edx, esi", "mov esi, 0E3Bh", "cmp rbx, rsi", "cmovbe rsi, rbx", "shr rax, 0Ch", "or r9d, ecx", "lea rcx, aJuJu; \"%*ju, %*ju \"", "xor al, al", "or eax, r11d", "push rax", "xor eax, eax", "push r8", "lea r8d, [rdx+rdi]", "mov rdx, rsi", "mov rdi, r15", "mov esi, 2", "call cs:__sprintf_chk_ptr", "mov rcx, r14", "cdqe", "lea rsi, [rax+r14]", "mov rdx, rsi", "sub rdx, rbx", "cmp rdx, r14", "cmovnb rcx, rdx", "sub rbx, rsi", "add r15, rax", "add rbx, rcx", "pop rcx", "pop rsi", "jmp loc_B280"], "succs": [[41, "jump"]]}, {"id": 94, "start": 47264, "end": 47300, "lines": ["mov rdi, cs:qword_292A8", "lea rsi, [rbp+var_1330]", "lea rdx, [rbp+var_1320]", "call sub_1AE70", "test rax, rax", "jz loc_B9F0"], "succs": [[95, "fall"], [102, "jump"]]}, {"id": 95, "start": 47300, "end": 47375, "lines": ["xor r8d, r8d", "xor eax, eax", "mov r9, qword ptr [rbp+var_1330+8]", "cmp r9, cs:tp.tv_nsec", "setl r8b", "mov rcx, cs:tp.tv_sec", "mov rdx, qword ptr [rbp+var_1330]", "setnle al", "mov esi, r8d", "xor edi, edi", "xor r10d, r10d", "sub esi, eax", "cmp rdx, rcx", "setl dil", "setnle r10b", "sub edi, r10d", "lea edi, [rsi+rdi*2]", "test edi, edi", "js loc_BA56"], "succs": [[96, "fall"], [107, "jump"]]}, {"id": 96, "start": 47375, "end": 47453, "lines": ["cmp rcx, rdx", "lea rdi, [rcx-0F0C2ACh]", "setnle r10b", "setl cl", "sub eax, r8d", "mov r8, cs:qword_292A8", "movzx ecx, cl", "movzx r10d, r10b", "sub ecx, r10d", "cmp rdi, rdx", "setnle dl", "lea eax, [rax+rcx*2]", "setl cl", "movzx edx, dl", "movzx ecx, cl", "sub edx, ecx", "lea edx, [rsi+rdx*2]", "and eax, edx", "shr eax, 1Fh", "cmp cs:byte_283C8, 0", "jz loc_BA27"], "succs": [[97, "fall"], [105, "jump"]]}, {"id": 97, "start": 47453, "end": 47488, "lines": ["shl rax, 3Fh", "movsxd rdx, [rbp+var_1310]", "sar rax, 3Fh", "and eax, 0Ch", "add rdx, rax", "lea rax, unk_283E0", "shl rdx, 7", "add rdx, rax"], "succs": [[98, "fall"]]}, {"id": 98, "start": 47488, "end": 47514, "lines": ["lea rcx, [rbp+var_1320]", "mov esi, 3E9h", "mov rdi, r15", "call sub_17BA0", "test rax, rax", "js short loc_B9F0"], "succs": [[99, "fall"], [102, "jump"]]}, {"id": 99, "start": 47514, "end": 47529, "lines": ["add rax, r15", "mov byte ptr [rax], 20h ; ' '", "lea r15, [rax+1]", "jmp loc_B2DD"], "succs": [[46, "jump"]]}, {"id": 100, "start": 47536, "end": 47580, "lines": ["mov rdi, [r12+58h]", "mov r8, cs:qword_29320", "lea rsi, [rbp+var_1270]", "mov ecx, 200h", "mov edx, cs:dword_29328", "call sub_13000", "mov rbx, rax", "jmp loc_AFB0"], "succs": [[13, "jump"]]}, {"id": 101, "start": 47584, "end": 47596, "lines": ["mov [rbp+var_1292], 2Bh ; '+'", "jmp loc_AEDD"], "succs": [[3, "jump"]]}, {"id": 102, "start": 47600, "end": 47615, "lines": ["cmp byte ptr [r12+0B8h], 0", "jz loc_B298"], "succs": [[43, "jump"], [103, "fall"]]}, {"id": 103, "start": 47615, "end": 47643, "lines": ["mov rdi, qword ptr [rbp+var_1330]", "lea rsi, [rbp+var_1290]", "call sub_14380", "mov r14, rax", "jmp loc_B29F"], "succs": [[44, "jump"]]}, {"id": 104, "start": 47643, "end": 47655, "lines": ["mov rdx, cs:off_28040; \"%b %e %Y\"", "jmp loc_B65D"], "succs": [[77, "jump"]]}, {"id": 105, "start": 47655, "end": 47674, "lines": ["and eax, 1", "lea rdx, off_28040; \"%b %e %Y\"", "mov rdx, [rdx+rax*8]", "jmp loc_B980"], "succs": [[98, "jump"]]}, {"id": 106, "start": 47674, "end": 47702, "lines": ["mov edx, 3", "mov rsi, rax", "call sub_14AE0", "mov cs:dword_28018, eax", "mov r8d, eax", "jmp loc_B690"], "succs": [[79, "jump"]]}, {"id": 107, "start": 47702, "end": 47765, "lines": ["lea rdi, tp; tp", "call sub_11960", "xor r8d, r8d", "xor eax, eax", "mov r9, qword ptr [rbp+var_1330+8]", "cmp cs:tp.tv_nsec, r9", "mov rcx, cs:tp.tv_sec", "setnle r8b", "setl al", "mov rdx, qword ptr [rbp+var_1330]", "mov esi, r8d", "sub esi, eax", "jmp loc_B90F"], "succs": [[96, "jump"]]}, {"id": 108, "start": 47765, "end": 47779, "lines": ["movsx esi, al; int", "call cs:__overflow_ptr", "jmp loc_B31E"], "succs": [[48, "jump"]]}, {"id": 109, "start": 47779, "end": 47785, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_144B0", "ea": 83120, "blocks": [{"id": 0, "start": 83120, "end": 83163, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r14", "push r13", "push r12", "push rbx", "sub rsp, 20h", "mov rax, fs:28h", "mov [rbp+var_28], rax", "xor eax, eax", "test rsi, rsi", "jz loc_14718"], "succs": [[1, "fall"], [41, "jump"]]}, {"id": 1, "start": 83163, "end": 83178, "lines": ["mov r12, rdi", "mov rbx, rsi", "test rdx, rdx", "jz loc_14870"], "succs": [[2, "fall"], [65, "jump"]]}, {"id": 2, "start": 83178, "end": 83209, "lines": ["test rcx, rcx", "lea rax, unk_29428", "cmovnz rax, rcx", "mov r13, rax", "mov eax, cs:dword_281F4", "test eax, eax", "js loc_14730"], "succs": [[3, "fall"], [42, "jump"]]}, {"id": 3, "start": 83209, "end": 83217, "lines": ["test eax, eax", "jz loc_14751"], "succs": [[4, "fall"], [44, "jump"]]}, {"id": 4, "start": 83217, "end": 83237, "lines": ["mov eax, [r13+0]", "mov r9d, eax", "mov r8d, eax", "and r9d, 7", "and r8d, 7", "jnz short loc_14570"], "succs": [[5, "fall"], [12, "jump"]]}, {"id": 5, "start": 83237, "end": 83250, "lines": ["movsx ecx, byte ptr [rbx]", "mov eax, ecx", "test cl, cl", "jns loc_14828"], "succs": [[6, "fall"], [58, "jump"]]}, {"id": 6, "start": 83250, "end": 83259, "lines": ["cmp cl, 0C1h", "jbe loc_146D0"], "succs": [[7, "fall"], [37, "jump"]]}, {"id": 7, "start": 83259, "end": 83268, "lines": ["cmp cl, 0DFh", "ja loc_14620"], "succs": [[8, "fall"], [20, "jump"]]}, {"id": 8, "start": 83268, "end": 83278, "lines": ["cmp rdx, 1", "jz loc_149E0"], "succs": [[9, "fall"], [97, "jump"]]}, {"id": 9, "start": 83278, "end": 83294, "lines": ["movzx edx, byte ptr [rbx+1]", "add edx, 0FFFFFF80h", "cmp dl, 3Fh ; '?'", "ja loc_146D0"], "succs": [[10, "fall"], [37, "jump"]]}, {"id": 10, "start": 83294, "end": 83303, "lines": ["test r12, r12", "jnz loc_148F0"], "succs": [[11, "fall"], [75, "jump"]]}, {"id": 11, "start": 83303, "end": 83308, "lines": ["jmp loc_14901"], "succs": [[76, "jump"]]}, {"id": 12, "start": 83312, "end": 83331, "lines": ["mov r11d, eax", "sar r11d, 8", "movsxd rsi, r11d", "cmp r9, rsi", "jnb loc_14810"], "succs": [[13, "fall"], [57, "jump"]]}, {"id": 13, "start": 83331, "end": 83341, "lines": ["cmp rsi, 4", "ja loc_14810"], "succs": [[14, "fall"], [57, "jump"]]}, {"id": 14, "start": 83341, "end": 83387, "lines": ["mov r10d, [r13+4]", "lea ecx, [rsi+rsi*2-3]", "mov edi, 100h", "add ecx, ecx", "mov r14d, r10d", "shr r14d, cl", "mov ecx, r11d", "sar edi, cl", "neg edi", "or edi, r14d", "mov [rbp+var_2C], dil", "movzx edi, byte ptr [rbx]", "test al, 6", "jz loc_14880"], "succs": [[15, "fall"], [66, "jump"]]}, {"id": 15, "start": 83387, "end": 83417, "lines": ["lea ecx, [rsi+rsi*2-6]", "mov eax, r10d", "add ecx, ecx", "shr eax, cl", "and eax, 3Fh", "or eax, 0FFFFFF80h", "mov [rbp+var_2B], al", "cmp r8d, 2", "jle loc_14880"], "succs": [[16, "fall"], [66, "jump"]]}, {"id": 16, "start": 83417, "end": 83458, "lines": ["lea ecx, [rsi+rsi*2-9]", "add ecx, ecx", "shr r10d, cl", "and r10d, 3Fh", "or r10d, 0FFFFFF80h", "mov [rbp+var_2A], r10b", "mov [rbp+r9+var_2C], dil", "movzx eax, [rbp+var_2C]", "movsx ecx, al", "test al, al", "jns loc_14828"], "succs": [[17, "fall"], [58, "jump"]]}, {"id": 17, "start": 83458, "end": 83466, "lines": ["cmp al, 0C1h", "jbe loc_146D0"], "succs": [[18, "fall"], [37, "jump"]]}, {"id": 18, "start": 83466, "end": 83474, "lines": ["cmp al, 0DFh", "jbe loc_149A4"], "succs": [[19, "fall"], [91, "jump"]]}, {"id": 19, "start": 83474, "end": 83488, "lines": ["lea rdx, [r9+1]", "lea rbx, [rbp+var_2C]", "nop word ptr [rax+rax+00h]"], "succs": [[20, "fall"]]}, {"id": 20, "start": 83488, "end": 83496, "lines": ["cmp al, 0EFh", "jbe loc_14910"], "succs": [[21, "fall"], [77, "jump"]]}, {"id": 21, "start": 83496, "end": 83504, "lines": ["cmp al, 0F4h", "ja loc_146D0"], "succs": [[22, "fall"], [37, "jump"]]}, {"id": 22, "start": 83504, "end": 83514, "lines": ["cmp rdx, 1", "jz loc_14A28"], "succs": [[23, "fall"], [102, "jump"]]}, {"id": 23, "start": 83514, "end": 83531, "lines": ["movzx ecx, byte ptr [rbx+1]", "lea esi, [rcx-80h]", "cmp sil, 3Fh ; '?'", "ja loc_146D0"], "succs": [[24, "fall"], [37, "jump"]]}, {"id": 24, "start": 83531, "end": 83535, "lines": ["cmp al, 0F0h", "jnz short loc_14654"], "succs": [[25, "fall"], [26, "jump"]]}, {"id": 25, "start": 83535, "end": 83540, "lines": ["cmp cl, 8Fh", "jbe short loc_146D0"], "succs": [[26, "fall"], [37, "jump"]]}, {"id": 26, "start": 83540, "end": 83544, "lines": ["cmp al, 0F4h", "jnz short loc_1465D"], "succs": [[27, "fall"], [28, "jump"]]}, {"id": 27, "start": 83544, "end": 83549, "lines": ["cmp cl, 8Fh", "ja short loc_146D0"], "succs": [[28, "fall"], [37, "jump"]]}, {"id": 28, "start": 83549, "end": 83559, "lines": ["cmp rdx, 2", "jz loc_14A94"], "succs": [[29, "fall"], [105, "jump"]]}, {"id": 29, "start": 83559, "end": 83571, "lines": ["movzx edi, byte ptr [rbx+2]", "lea ecx, [rdi-80h]", "cmp cl, 3Fh ; '?'", "ja short loc_146D0"], "succs": [[30, "fall"], [37, "jump"]]}, {"id": 30, "start": 83571, "end": 83581, "lines": ["cmp rdx, 3", "jz loc_14A61"], "succs": [[31, "fall"], [104, "jump"]]}, {"id": 31, "start": 83581, "end": 83593, "lines": ["movzx edx, byte ptr [rbx+3]", "add edx, 0FFFFFF80h", "cmp dl, 3Fh ; '?'", "ja short loc_146D0"], "succs": [[32, "fall"], [37, "jump"]]}, {"id": 32, "start": 83593, "end": 83598, "lines": ["test r12, r12", "jz short loc_146B0"], "succs": [[33, "fall"], [34, "jump"]]}, {"id": 33, "start": 83598, "end": 83632, "lines": ["shl eax, 12h", "movsx edx, dl", "movsx esi, sil", "movsx ecx, cl", "shl esi, 0Ch", "and eax, 1C0000h", "shl ecx, 6", "or eax, edx", "or eax, esi", "or eax, ecx", "mov [r12], eax"], "succs": [[34, "fall"]]}, {"id": 34, "start": 83632, "end": 83647, "lines": ["mov eax, 4", "mov edx, 4", "jmp loc_1483D"], "succs": [[61, "jump"]]}, {"id": 35, "start": 83648, "end": 83663, "lines": ["mov rdx, rsi", "lea rbx, [rbp+var_2C]", "cmp al, 0F4h", "jbe loc_1463A"], "succs": [[23, "jump"], [36, "fall"]]}, {"id": 36, "start": 83663, "end": 83664, "lines": ["nop"], "succs": [[37, "fall"]]}, {"id": 37, "start": 83664, "end": 83676, "lines": ["call cs:__errno_location_ptr", "mov dword ptr [rax], 54h ; 'T'"], "succs": [[38, "fall"]]}, {"id": 38, "start": 83676, "end": 83696, "lines": ["mov rdx, 0FFFFFFFFFFFFFFFFh", "xchg ax, ax", "nop word ptr [rax+rax+00000000h]"], "succs": [[39, "fall"]]}, {"id": 39, "start": 83696, "end": 83715, "lines": ["mov rax, [rbp+var_28]", "sub rax, fs:28h", "jnz loc_14AC2"], "succs": [[40, "fall"], [107, "jump"]]}, {"id": 40, "start": 83715, "end": 83731, "lines": ["add rsp, 20h", "mov rax, rdx", "pop rbx", "pop r12", "pop r13", "pop r14", "pop rbp", "retn"], "succs": []}, {"id": 41, "start": 83736, "end": 83756, "lines": ["xor r12d, r12d", "mov edx, 1", "lea rbx, accept+3; \"\"", "jmp loc_144EA"], "succs": [[2, "jump"]]}, {"id": 42, "start": 83760, "end": 83783, "lines": ["mov [rbp+n], rdx", "call sub_1C6D0", "mov rdx, [rbp+n]; n", "cmp byte ptr [rax], 55h ; 'U'", "jz loc_147D0"], "succs": [[43, "fall"], [52, "jump"]]}, {"id": 43, "start": 83783, "end": 83793, "lines": ["mov cs:dword_281F4, 0"], "succs": [[44, "fall"]]}, {"id": 44, "start": 83793, "end": 83814, "lines": ["mov rcx, r13; p", "mov rsi, rbx; s", "mov rdi, r12; pc32", "call cs:mbrtoc32_ptr", "cmp rax, 0FFFFFFFFFFFFFFFCh", "jbe short loc_147A0"], "succs": [[45, "fall"], [50, "jump"]]}, {"id": 45, "start": 83814, "end": 83824, "lines": ["cmp rax, 0FFFFFFFFFFFFFFFDh", "jz loc_34C9"], "succs": [[46, "fall"], [108, "jump"]]}, {"id": 46, "start": 83824, "end": 83848, "lines": ["xor edi, edi", "mov [rbp+n], rax", "call sub_11B20", "mov rdx, [rbp+n]", "test al, al", "jnz loc_146F0"], "succs": [[39, "jump"], [47, "fall"]]}, {"id": 47, "start": 83848, "end": 83853, "lines": ["test r12, r12", "jz short loc_14794"], "succs": [[48, "fall"], [49, "jump"]]}, {"id": 48, "start": 83853, "end": 83860, "lines": ["movzx eax, byte ptr [rbx]", "mov [r12], eax"], "succs": [[49, "fall"]]}, {"id": 49, "start": 83860, "end": 83870, "lines": ["mov edx, 1", "jmp loc_146F0"], "succs": [[39, "jump"]]}, {"id": 50, "start": 83872, "end": 83897, "lines": ["mov [rbp+n], rax", "mov rdi, r13; ps", "call cs:mbsinit_ptr", "mov rdx, [rbp+n]", "test eax, eax", "jnz loc_146F0"], "succs": [[39, "jump"], [51, "fall"]]}, {"id": 51, "start": 83897, "end": 83910, "lines": ["mov qword ptr [r13+0], 0", "jmp loc_146F0"], "succs": [[39, "jump"]]}, {"id": 52, "start": 83920, "end": 83930, "lines": ["cmp byte ptr [rax+1], 54h ; 'T'", "jnz loc_14747"], "succs": [[43, "jump"], [53, "fall"]]}, {"id": 53, "start": 83930, "end": 83940, "lines": ["cmp byte ptr [rax+2], 46h ; 'F'", "jnz loc_14747"], "succs": [[43, "jump"], [54, "fall"]]}, {"id": 54, "start": 83940, "end": 83950, "lines": ["cmp byte ptr [rax+3], 2Dh ; '-'", "jnz loc_14747"], "succs": [[43, "jump"], [55, "fall"]]}, {"id": 55, "start": 83950, "end": 83960, "lines": ["cmp byte ptr [rax+4], 38h ; '8'", "jnz loc_14747"], "succs": [[43, "jump"], [56, "fall"]]}, {"id": 56, "start": 83960, "end": 83981, "lines": ["cmp byte ptr [rax+5], 0", "setz al", "movzx eax, al", "mov cs:dword_281F4, eax", "jmp loc_14509"], "succs": [[3, "jump"]]}, {"id": 57, "start": 83984, "end": 84001, "lines": ["call cs:__errno_location_ptr", "mov dword ptr [rax], 16h", "jmp loc_146DC"], "succs": [[38, "jump"]]}, {"id": 58, "start": 84008, "end": 84013, "lines": ["test r12, r12", "jz short loc_14831"], "succs": [[59, "fall"], [60, "jump"]]}, {"id": 59, "start": 84013, "end": 84017, "lines": ["mov [r12], ecx"], "succs": [[60, "fall"]]}, {"id": 60, "start": 84017, "end": 84029, "lines": ["cmp al, 1", "mov eax, 1", "sbb edx, edx", "add edx, 1"], "succs": [[61, "fall"]]}, {"id": 61, "start": 84029, "end": 84038, "lines": ["cmp r9, rax", "jnb loc_34C9"], "succs": [[62, "fall"], [108, "jump"]]}, {"id": 62, "start": 84038, "end": 84057, "lines": ["sub edx, r8d", "mov dword ptr [r13+0], 0", "movsxd rdx, edx", "jmp loc_146F0"], "succs": [[39, "jump"]]}, {"id": 63, "start": 84057, "end": 84073, "lines": ["mov dword ptr [r13+0], 301h", "shl eax, 0Ch", "and eax, 0F000h"], "succs": [[64, "fall"]]}, {"id": 64, "start": 84073, "end": 84080, "lines": ["mov [r13+4], eax", "nop dword ptr [rax]"], "succs": [[65, "fall"]]}, {"id": 65, "start": 84080, "end": 84092, "lines": ["mov rdx, 0FFFFFFFFFFFFFFFEh", "jmp loc_146F0"], "succs": [[39, "jump"]]}, {"id": 66, "start": 84096, "end": 84118, "lines": ["mov [rbp+r9+var_2C], dil", "movzx eax, [rbp+var_2C]", "movsx ecx, al", "cmp rdx, 1", "jz loc_149B0"], "succs": [[67, "fall"], [92, "jump"]]}, {"id": 67, "start": 84118, "end": 84141, "lines": ["movzx edi, byte ptr [rbx+1]", "lea rsi, [r9+2]", "mov [rbp+r9+var_2B], dil", "cmp rdx, 2", "jz loc_14990"], "succs": [[68, "fall"], [88, "jump"]]}, {"id": 68, "start": 84141, "end": 84151, "lines": ["cmp rsi, 4", "jz loc_14990"], "succs": [[69, "fall"], [88, "jump"]]}, {"id": 69, "start": 84151, "end": 84166, "lines": ["movzx edx, byte ptr [rbx+2]", "mov [rbp+var_29], dl", "test al, al", "jns loc_14828"], "succs": [[58, "jump"], [70, "fall"]]}, {"id": 70, "start": 84166, "end": 84174, "lines": ["cmp al, 0C1h", "jbe loc_146D0"], "succs": [[37, "jump"], [71, "fall"]]}, {"id": 71, "start": 84174, "end": 84182, "lines": ["cmp al, 0DFh", "ja loc_14A00"], "succs": [[72, "fall"], [98, "jump"]]}, {"id": 72, "start": 84182, "end": 84198, "lines": ["movzx ebx, [rbp+var_2B]", "lea edx, [rbx-80h]", "cmp dl, 3Fh ; '?'", "ja loc_146D0"], "succs": [[37, "jump"], [73, "fall"]]}, {"id": 73, "start": 84198, "end": 84207, "lines": ["test r12, r12", "jz loc_14AB8"], "succs": [[74, "fall"], [106, "jump"]]}, {"id": 74, "start": 84207, "end": 84208, "lines": ["nop"], "succs": [[75, "fall"]]}, {"id": 75, "start": 84208, "end": 84225, "lines": ["shl eax, 6", "movsx edx, dl", "and eax, 7C0h", "or eax, edx", "mov [r12], eax"], "succs": [[76, "fall"]]}, {"id": 76, "start": 84225, "end": 84240, "lines": ["mov eax, 2", "mov edx, 2", "jmp loc_1483D"], "succs": [[61, "jump"]]}, {"id": 77, "start": 84240, "end": 84250, "lines": ["cmp rdx, 1", "jz loc_14859"], "succs": [[63, "jump"], [78, "fall"]]}, {"id": 78, "start": 84250, "end": 84267, "lines": ["movzx ecx, byte ptr [rbx+1]", "lea esi, [rcx-80h]", "cmp sil, 3Fh ; '?'", "ja loc_146D0"], "succs": [[37, "jump"], [79, "fall"]]}, {"id": 79, "start": 84267, "end": 84271, "lines": ["cmp al, 0E0h", "jnz short loc_14938"], "succs": [[80, "fall"], [81, "jump"]]}, {"id": 80, "start": 84271, "end": 84280, "lines": ["cmp cl, 9Fh", "jbe loc_146D0"], "succs": [[37, "jump"], [81, "fall"]]}, {"id": 81, "start": 84280, "end": 84284, "lines": ["cmp al, 0EDh", "jnz short loc_14945"], "succs": [[82, "fall"], [83, "jump"]]}, {"id": 82, "start": 84284, "end": 84293, "lines": ["cmp cl, 9Fh", "ja loc_146D0"], "succs": [[37, "jump"], [83, "fall"]]}, {"id": 83, "start": 84293, "end": 84303, "lines": ["cmp rdx, 2", "jz loc_14A3D"], "succs": [[84, "fall"], [103, "jump"]]}, {"id": 84, "start": 84303, "end": 84319, "lines": ["movzx edx, byte ptr [rbx+2]", "add edx, 0FFFFFF80h", "cmp dl, 3Fh ; '?'", "ja loc_146D0"], "succs": [[37, "jump"], [85, "fall"]]}, {"id": 85, "start": 84319, "end": 84324, "lines": ["test r12, r12", "jz short loc_1497E"], "succs": [[86, "fall"], [87, "jump"]]}, {"id": 86, "start": 84324, "end": 84350, "lines": ["shl eax, 0Ch", "movsx edx, dl", "movsx esi, sil", "and eax, 0F000h", "shl esi, 6", "or eax, edx", "or eax, esi", "mov [r12], eax"], "succs": [[87, "fall"]]}, {"id": 87, "start": 84350, "end": 84365, "lines": ["mov eax, 3", "mov edx, 3", "jmp loc_1483D"], "succs": [[61, "jump"]]}, {"id": 88, "start": 84368, "end": 84376, "lines": ["test al, al", "jns loc_14828"], "succs": [[58, "jump"], [89, "fall"]]}, {"id": 89, "start": 84376, "end": 84384, "lines": ["cmp al, 0C1h", "jbe loc_146D0"], "succs": [[37, "jump"], [90, "fall"]]}, {"id": 90, "start": 84384, "end": 84388, "lines": ["cmp al, 0DFh", "ja short loc_149C8"], "succs": [[91, "fall"], [95, "jump"]]}, {"id": 91, "start": 84388, "end": 84397, "lines": ["lea rbx, [rbp+var_2C]", "jmp loc_1454E"], "succs": [[9, "jump"]]}, {"id": 92, "start": 84400, "end": 84408, "lines": ["test al, al", "jns loc_14828"], "succs": [[58, "jump"], [93, "fall"]]}, {"id": 93, "start": 84408, "end": 84416, "lines": ["cmp al, 0C1h", "jbe loc_146D0"], "succs": [[37, "jump"], [94, "fall"]]}, {"id": 94, "start": 84416, "end": 84424, "lines": ["lea rsi, [r9+1]", "cmp al, 0DFh", "jbe short loc_149A4"], "succs": [[91, "jump"], [95, "fall"]]}, {"id": 95, "start": 84424, "end": 84432, "lines": ["cmp al, 0EFh", "ja loc_146C0"], "succs": [[35, "jump"], [96, "fall"]]}, {"id": 96, "start": 84432, "end": 84444, "lines": ["mov rdx, rsi", "lea rbx, [rbp+var_2C]", "jmp loc_1491A"], "succs": [[78, "jump"]]}, {"id": 97, "start": 84448, "end": 84474, "lines": ["shl ecx, 6", "mov dword ptr [r13+0], 201h", "and ecx, 7C0h", "mov [r13+4], ecx", "jmp loc_14870"], "succs": [[65, "jump"]]}, {"id": 98, "start": 84480, "end": 84484, "lines": ["cmp al, 0EFh", "ja short loc_14A12"], "succs": [[99, "fall"], [100, "jump"]]}, {"id": 99, "start": 84484, "end": 84498, "lines": ["lea rbx, [rbp+var_2C]", "mov edx, 4", "jmp loc_1491A"], "succs": [[78, "jump"]]}, {"id": 100, "start": 84498, "end": 84515, "lines": ["lea rbx, [rbp+var_2C]", "mov edx, 4", "cmp al, 0F4h", "jbe loc_1463A"], "succs": [[23, "jump"], [101, "fall"]]}, {"id": 101, "start": 84515, "end": 84520, "lines": ["jmp loc_146D0"], "succs": [[37, "jump"]]}, {"id": 102, "start": 84520, "end": 84541, "lines": ["shl eax, 12h", "mov dword ptr [r13+0], 401h", "and eax, 1C0000h", "jmp loc_14869"], "succs": [[64, "jump"]]}, {"id": 103, "start": 84541, "end": 84577, "lines": ["mov dword ptr [r13+0], 302h", "movzx edx, byte ptr [rbx+1]", "shl eax, 0Ch", "and eax, 0F000h", "shl edx, 6", "and edx, 0FC0h", "or eax, edx", "jmp loc_14869"], "succs": [[64, "jump"]]}, {"id": 104, "start": 84577, "end": 84628, "lines": ["mov dword ptr [r13+0], 403h", "movzx edx, byte ptr [rbx+1]", "shl eax, 12h", "movzx ecx, byte ptr [rbx+2]", "and eax, 1C0000h", "shl edx, 0Ch", "shl ecx, 6", "and edx, 3F000h", "and ecx, 0FC0h", "or edx, ecx", "or eax, edx", "jmp loc_14869"], "succs": [[64, "jump"]]}, {"id": 105, "start": 84628, "end": 84664, "lines": ["mov dword ptr [r13+0], 402h", "movzx edx, byte ptr [rbx+1]", "shl eax, 12h", "and eax, 1C0000h", "shl edx, 0Ch", "and edx, 3F000h", "or eax, edx", "jmp loc_14869"], "succs": [[64, "jump"]]}, {"id": 106, "start": 84664, "end": 84674, "lines": ["mov edx, 2", "jmp loc_14846"], "succs": [[62, "jump"]]}, {"id": 107, "start": 84674, "end": 84680, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 108, "start": 13513, "end": 13519, "lines": ["call cs:abort_ptr"], "succs": []}]}, {"name": "sub_A810", "ea": 43024, "blocks": [{"id": 0, "start": 43024, "end": 43066, "lines": ["push rbp", "mov r9, rdx", "mov rbp, rsp", "push r15", "mov r15d, esi", "push r14", "push r13", "push r12", "mov r12, rdi", "push rbx", "sub rsp, 18h", "mov [rbp+var_38], rcx", "movzx eax, cs:byte_29312", "test sil, sil", "jz short loc_A890"], "succs": [[1, "fall"], [5, "jump"]]}, {"id": 1, "start": 43066, "end": 43078, "lines": ["mov r14, [rdi+8]", "test al, al", "jnz loc_A950"], "succs": [[2, "fall"], [18, "jump"]]}, {"id": 2, "start": 43078, "end": 43093, "lines": ["mov edx, [r12+0C4h]", "mov rsi, cs:qword_292D0"], "succs": [[3, "fall"]]}, {"id": 3, "start": 43093, "end": 43130, "lines": ["sub rsp, 8", "push qword ptr [r12+10h]", "xor r15d, 1", "xor ecx, ecx", "movzx r8d, r15b", "mov rdi, r14", "call sub_A410", "pop rcx", "pop rsi", "mov rbx, rax", "call sub_7C60"], "succs": [[4, "fall"]]}, {"id": 4, "start": 43130, "end": 43148, "lines": ["lea rsp, [rbp-28h]", "mov rax, rbx", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 5, "start": 43152, "end": 43159, "lines": ["mov r14, [rdi]", "test al, al", "jz short loc_A846"], "succs": [[2, "jump"], [6, "fall"]]}, {"id": 6, "start": 43159, "end": 43179, "lines": ["cmp cs:byte_29390, 0", "movzx eax, byte ptr [rdi+0B9h]", "jnz loc_A9A0"], "succs": [[7, "fall"], [24, "jump"]]}, {"id": 7, "start": 43179, "end": 43184, "lines": ["mov esi, [r12+30h]"], "succs": [[8, "fall"]]}, {"id": 8, "start": 43184, "end": 43199, "lines": ["cmp byte ptr [r12+0B8h], 0", "jnz loc_A9C9"], "succs": [[9, "fall"], [27, "jump"]]}, {"id": 9, "start": 43199, "end": 43226, "lines": ["mov ecx, [r12+0A8h]", "lea rdx, asc_1D600; \"\\r\"", "mov ecx, [rdx+rcx*4]", "cmp ecx, 5", "jz loc_AB78"], "succs": [[10, "fall"], [48, "jump"]]}, {"id": 10, "start": 43226, "end": 43235, "lines": ["cmp ecx, 7", "jnz loc_ACC8"], "succs": [[11, "fall"], [75, "jump"]]}, {"id": 11, "start": 43235, "end": 43243, "lines": ["test eax, eax", "jnz loc_ACC8"], "succs": [[12, "fall"], [75, "jump"]]}, {"id": 12, "start": 43243, "end": 43261, "lines": ["cmp cs:byte_29390, 0", "mov ecx, 0D0h", "jnz loc_AA40"], "succs": [[13, "fall"], [35, "jump"]]}, {"id": 13, "start": 43261, "end": 43282, "lines": ["mov rax, cs:qword_28130", "mov ecx, 70h ; 'p'", "test rax, rax", "jz loc_AA40"], "succs": [[14, "fall"], [35, "jump"]]}, {"id": 14, "start": 43282, "end": 43297, "lines": ["mov ecx, 0D0h", "cmp rax, 2", "ja loc_AA40"], "succs": [[15, "fall"], [35, "jump"]]}, {"id": 15, "start": 43297, "end": 43311, "lines": ["mov rdx, cs:qword_28138", "cmp byte ptr [rdx+rax-1], 30h ; '0'", "jnz short loc_A93D"], "succs": [[16, "fall"], [17, "jump"]]}, {"id": 16, "start": 43311, "end": 43325, "lines": ["mov ecx, 70h ; 'p'", "cmp byte ptr [rdx], 30h ; '0'", "jz loc_AA40"], "succs": [[17, "fall"], [35, "jump"]]}, {"id": 17, "start": 43325, "end": 43335, "lines": ["mov ecx, 0D0h", "jmp loc_AA40"], "succs": [[35, "jump"]]}, {"id": 18, "start": 43344, "end": 43359, "lines": ["mov esi, [rdi+0ACh]", "cmp byte ptr [rdi+0B9h], 0", "jnz short loc_A9B8"], "succs": [[19, "fall"], [26, "jump"]]}, {"id": 19, "start": 43359, "end": 43371, "lines": ["mov rax, cs:qword_28120", "test rax, rax", "jz short loc_A990"], "succs": [[20, "fall"], [23, "jump"]]}, {"id": 20, "start": 43371, "end": 43381, "lines": ["cmp rax, 2", "ja loc_AA38"], "succs": [[21, "fall"], [34, "jump"]]}, {"id": 21, "start": 43381, "end": 43399, "lines": ["mov rdx, cs:qword_28128", "cmp byte ptr [rdx+rax-1], 30h ; '0'", "jnz loc_AA38"], "succs": [[22, "fall"], [34, "jump"]]}, {"id": 22, "start": 43399, "end": 43408, "lines": ["cmp byte ptr [rdx], 30h ; '0'", "jnz loc_AA38"], "succs": [[23, "fall"], [34, "jump"]]}, {"id": 23, "start": 43408, "end": 43418, "lines": ["mov eax, 0FFFFFFFFh", "jmp loc_A8B0"], "succs": [[8, "jump"]]}, {"id": 24, "start": 43424, "end": 43432, "lines": ["test al, al", "jz loc_A8AB"], "succs": [[7, "jump"], [25, "fall"]]}, {"id": 25, "start": 43432, "end": 43443, "lines": ["mov esi, [rdi+0ACh]", "jmp loc_A8B0"], "succs": [[8, "jump"]]}, {"id": 26, "start": 43448, "end": 43465, "lines": ["xor eax, eax", "cmp byte ptr [r12+0B8h], 0", "jz loc_A8BF"], "succs": [[9, "jump"], [27, "fall"]]}, {"id": 27, "start": 43465, "end": 43485, "lines": ["mov edx, esi", "and edx, 0F000h", "cmp edx, 8000h", "jz loc_ABF8"], "succs": [[28, "fall"], [56, "jump"]]}, {"id": 28, "start": 43485, "end": 43497, "lines": ["cmp edx, 4000h", "jz loc_AD20"], "succs": [[29, "fall"], [82, "jump"]]}, {"id": 29, "start": 43497, "end": 43509, "lines": ["cmp edx, 0A000h", "jz loc_AE00"], "succs": [[30, "fall"], [99, "jump"]]}, {"id": 30, "start": 43509, "end": 43522, "lines": ["mov ecx, 80h", "cmp edx, 1000h", "jz short loc_AA40"], "succs": [[31, "fall"], [35, "jump"]]}, {"id": 31, "start": 43522, "end": 43535, "lines": ["mov ecx, 90h", "cmp edx, 0C000h", "jz short loc_AA40"], "succs": [[32, "fall"], [35, "jump"]]}, {"id": 32, "start": 43535, "end": 43548, "lines": ["mov ecx, 0A0h", "cmp edx, 6000h", "jz short loc_AA40"], "succs": [[33, "fall"], [35, "jump"]]}, {"id": 33, "start": 43548, "end": 43570, "lines": ["cmp edx, 2000h", "mov ecx, 0D0h", "mov eax, 0B0h", "cmovz rcx, rax", "jmp short loc_AA40"], "succs": [[35, "jump"]]}, {"id": 34, "start": 43576, "end": 43584, "lines": ["mov ecx, 0C0h", "nop dword ptr [rax]"], "succs": [[35, "fall"]]}, {"id": 35, "start": 43584, "end": 43594, "lines": ["lea rax, qword_28060", "add rcx, rax"], "succs": [[36, "fall"]]}, {"id": 36, "start": 43594, "end": 43632, "lines": ["mov r8d, r15d", "mov rax, [r12+10h]", "mov edx, [r12+0C4h]", "xor r8d, 1", "mov rsi, cs:qword_292D0", "movzx r8d, r8b", "cmp qword ptr [rcx+8], 0", "jz short loc_AAE8"], "succs": [[37, "fall"], [43, "jump"]]}, {"id": 37, "start": 43632, "end": 43655, "lines": ["sub rsp, 8", "mov rdi, r14", "push rax", "call sub_A410", "mov rbx, rax", "pop rax", "pop rdx", "call sub_7C60"], "succs": [[38, "fall"]]}, {"id": 38, "start": 43655, "end": 43669, "lines": ["cmp cs:qword_28088, 0", "jz loc_AB48"], "succs": [[39, "fall"], [47, "jump"]]}, {"id": 39, "start": 43669, "end": 43681, "lines": ["lea rdi, unk_28080", "call sub_6E20"], "succs": [[40, "fall"]]}, {"id": 40, "start": 43681, "end": 43697, "lines": ["mov rcx, cs:qword_292B0", "test rcx, rcx", "jz loc_A87A"], "succs": [[4, "jump"], [41, "fall"]]}, {"id": 41, "start": 43697, "end": 43732, "lines": ["mov rax, [rbp+var_38]", "xor edx, edx", "div rcx", "xor edx, edx", "mov rsi, rax", "mov rax, [rbp+var_38]", "lea rax, [rbx+rax-1]", "div rcx", "cmp rsi, rax", "jz loc_A87A"], "succs": [[4, "jump"], [42, "fall"]]}, {"id": 42, "start": 43732, "end": 43749, "lines": ["lea rdi, unk_281D0", "call sub_6E20", "jmp loc_A87A"], "succs": [[4, "jump"]]}, {"id": 43, "start": 43752, "end": 43768, "lines": ["mov rcx, cs:qword_280A0", "test rcx, rcx", "jz loc_A855"], "succs": [[3, "jump"], [44, "fall"]]}, {"id": 44, "start": 43768, "end": 43778, "lines": ["cmp rcx, 2", "ja loc_ADF8"], "succs": [[45, "fall"], [98, "jump"]]}, {"id": 45, "start": 43778, "end": 43838, "lines": ["mov rdi, cs:qword_280A8", "cmp byte ptr [rdi+rcx-1], 30h ; '0'", "setnz r12b", "cmp byte ptr [rdi], 30h ; '0'", "mov rdi, r14", "setnz cl", "sub rsp, 8", "push rax", "or r12d, ecx", "xor ecx, ecx", "call sub_A410", "pop rdi", "pop r8", "mov rbx, rax", "call sub_7C60", "test r12b, r12b", "jz loc_A87A"], "succs": [[4, "jump"], [46, "fall"]]}, {"id": 46, "start": 43838, "end": 43843, "lines": ["jmp loc_AA87"], "succs": [[38, "jump"]]}, {"id": 47, "start": 43848, "end": 43889, "lines": ["lea rdi, qword_28060", "call sub_6E20", "lea rdi, unk_28090", "call sub_6E20", "lea rdi, qword_28070", "call sub_6E20", "jmp loc_AAA1"], "succs": [[40, "jump"]]}, {"id": 48, "start": 43896, "end": 43912, "lines": ["mov rbx, cs:qword_29308", "test rbx, rbx", "jz loc_ACD8"], "succs": [[49, "fall"], [76, "jump"]]}, {"id": 49, "start": 43912, "end": 43934, "lines": ["mov [rbp+var_40], r9", "mov rdi, r14; s", "call cs:strlen_ptr", "mov r9, [rbp+var_40]", "mov r13, rax", "jmp short loc_ABBB"], "succs": [[52, "jump"]]}, {"id": 50, "start": 43936, "end": 43950, "lines": ["call cs:strncmp_ptr", "mov r9, [rbp+var_40]", "test eax, eax", "jz short loc_ABE8"], "succs": [[51, "fall"], [55, "jump"]]}, {"id": 51, "start": 43950, "end": 43963, "lines": ["mov rbx, [rbx+28h]", "test rbx, rbx", "jz loc_ACD8"], "succs": [[52, "fall"], [76, "jump"]]}, {"id": 52, "start": 43963, "end": 43971, "lines": ["mov rdx, [rbx]; n", "cmp r13, rdx", "jb short loc_ABAE"], "succs": [[51, "jump"], [53, "fall"]]}, {"id": 53, "start": 43971, "end": 43994, "lines": ["mov rdi, r13", "mov [rbp+var_40], r9", "mov rsi, [rbx+8]; s2", "sub rdi, rdx", "add rdi, r14; s1", "cmp byte ptr [rbx+20h], 0", "jnz short loc_ABA0"], "succs": [[50, "jump"], [54, "fall"]]}, {"id": 54, "start": 43994, "end": 44008, "lines": ["call sub_FAA0", "mov r9, [rbp+var_40]", "test eax, eax", "jnz short loc_ABAE"], "succs": [[51, "jump"], [55, "fall"]]}, {"id": 55, "start": 44008, "end": 44017, "lines": ["lea rcx, [rbx+10h]", "jmp loc_AA4A"], "succs": [[36, "jump"]]}, {"id": 56, "start": 44024, "end": 44032, "lines": ["test esi, 800h", "jz short loc_AC30"], "succs": [[57, "fall"], [62, "jump"]]}, {"id": 57, "start": 44032, "end": 44044, "lines": ["mov rax, cs:qword_28160", "test rax, rax", "jz short loc_AC30"], "succs": [[58, "fall"], [62, "jump"]]}, {"id": 58, "start": 44044, "end": 44050, "lines": ["cmp rax, 2", "ja short loc_AC25"], "succs": [[59, "fall"], [61, "jump"]]}, {"id": 59, "start": 44050, "end": 44064, "lines": ["mov rdx, cs:off_28168; \"37;4101;3501;3201;3301;3301;353301;3601\"...", "cmp byte ptr [rdx+rax-1], 30h ; '0'", "jnz short loc_AC25"], "succs": [[60, "fall"], [61, "jump"]]}, {"id": 60, "start": 44064, "end": 44069, "lines": ["cmp byte ptr [rdx], 30h ; '0'", "jz short loc_AC30"], "succs": [[61, "fall"], [62, "jump"]]}, {"id": 61, "start": 44069, "end": 44079, "lines": ["mov ecx, 100h", "jmp loc_AA40"], "succs": [[35, "jump"]]}, {"id": 62, "start": 44080, "end": 44092, "lines": ["test esi, 400h", "jnz loc_ACE8"], "succs": [[63, "fall"], [77, "jump"]]}, {"id": 63, "start": 44092, "end": 44107, "lines": ["cmp byte ptr [r12+0C0h], 0", "jnz loc_AE40"], "succs": [[64, "fall"], [104, "jump"]]}, {"id": 64, "start": 44107, "end": 44112, "lines": ["and esi, 49h", "jz short loc_AC81"], "succs": [[65, "fall"], [69, "jump"]]}, {"id": 65, "start": 44112, "end": 44124, "lines": ["mov rax, cs:qword_28140", "test rax, rax", "jz short loc_AC81"], "succs": [[66, "fall"], [69, "jump"]]}, {"id": 66, "start": 44124, "end": 44134, "lines": ["cmp rax, 2", "ja loc_AE4A"], "succs": [[67, "fall"], [105, "jump"]]}, {"id": 67, "start": 44134, "end": 44152, "lines": ["mov rdx, cs:off_28148; \"01;3201;3301;3301;353301;3601;340m\\x1B[\"", "cmp byte ptr [rdx+rax-1], 30h ; '0'", "jnz loc_AE4A"], "succs": [[68, "fall"], [105, "jump"]]}, {"id": 68, "start": 44152, "end": 44161, "lines": ["cmp byte ptr [rdx], 30h ; '0'", "jnz loc_AE4A"], "succs": [[69, "fall"], [105, "jump"]]}, {"id": 69, "start": 44161, "end": 44173, "lines": ["cmp qword ptr [r12+28h], 1", "jbe loc_AB78"], "succs": [[48, "jump"], [70, "fall"]]}, {"id": 70, "start": 44173, "end": 44189, "lines": ["mov rax, cs:qword_281C0", "test rax, rax", "jz loc_AB78"], "succs": [[48, "jump"], [71, "fall"]]}, {"id": 71, "start": 44189, "end": 44195, "lines": ["cmp rax, 2", "ja short loc_ACBA"], "succs": [[72, "fall"], [74, "jump"]]}, {"id": 72, "start": 44195, "end": 44209, "lines": ["mov rdx, cs:qword_281C8", "cmp byte ptr [rdx+rax-1], 30h ; '0'", "jnz short loc_ACBA"], "succs": [[73, "fall"], [74, "jump"]]}, {"id": 73, "start": 44209, "end": 44218, "lines": ["cmp byte ptr [rdx], 30h ; '0'", "jz loc_AB78"], "succs": [[48, "jump"], [74, "fall"]]}, {"id": 74, "start": 44218, "end": 44228, "lines": ["mov ecx, 160h", "jmp loc_AA40"], "succs": [[35, "jump"]]}, {"id": 75, "start": 44232, "end": 44241, "lines": ["shl rcx, 4", "jmp loc_AA40"], "succs": [[35, "jump"]]}, {"id": 76, "start": 44248, "end": 44258, "lines": ["mov ecx, 50h ; 'P'", "jmp loc_AA40"], "succs": [[35, "jump"]]}, {"id": 77, "start": 44264, "end": 44280, "lines": ["mov rax, cs:qword_28170", "test rax, rax", "jz loc_AC3C"], "succs": [[63, "jump"], [78, "fall"]]}, {"id": 78, "start": 44280, "end": 44286, "lines": ["cmp rax, 2", "ja short loc_AD15"], "succs": [[79, "fall"], [81, "jump"]]}, {"id": 79, "start": 44286, "end": 44300, "lines": ["mov rdx, cs:off_28178; \"30;4337;4101;3501;3201;3301;3301;353301\"...", "cmp byte ptr [rdx+rax-1], 30h ; '0'", "jnz short loc_AD15"], "succs": [[80, "fall"], [81, "jump"]]}, {"id": 80, "start": 44300, "end": 44309, "lines": ["cmp byte ptr [rdx], 30h ; '0'", "jz loc_AC3C"], "succs": [[63, "jump"], [81, "fall"]]}, {"id": 81, "start": 44309, "end": 44319, "lines": ["mov ecx, 110h", "jmp loc_AA40"], "succs": [[35, "jump"]]}, {"id": 82, "start": 44320, "end": 44333, "lines": ["mov eax, esi", "and eax, 200h", "jz loc_AE18"], "succs": [[83, "fall"], [101, "jump"]]}, {"id": 83, "start": 44333, "end": 44338, "lines": ["and esi, 2", "jz short loc_ADAB"], "succs": [[84, "fall"], [93, "jump"]]}, {"id": 84, "start": 44338, "end": 44350, "lines": ["mov rdx, cs:qword_281A0", "test rdx, rdx", "jz short loc_AD68"], "succs": [[85, "fall"], [88, "jump"]]}, {"id": 85, "start": 44350, "end": 44365, "lines": ["mov ecx, 140h", "cmp rdx, 2", "ja loc_AA40"], "succs": [[35, "jump"], [86, "fall"]]}, {"id": 86, "start": 44365, "end": 44383, "lines": ["mov rcx, cs:off_281A8; \"30;4234;4237;4430;4337;4101;3501;3201;3\"...", "cmp byte ptr [rcx+rdx-1], 30h ; '0'", "jnz loc_AE5E"], "succs": [[87, "fall"], [107, "jump"]]}, {"id": 87, "start": 44383, "end": 44392, "lines": ["cmp byte ptr [rcx], 30h ; '0'", "jnz loc_AE5E"], "succs": [[88, "fall"], [107, "jump"]]}, {"id": 88, "start": 44392, "end": 44404, "lines": ["mov rdx, cs:qword_28190", "test rdx, rdx", "jz short loc_ADAB"], "succs": [[89, "fall"], [93, "jump"]]}, {"id": 89, "start": 44404, "end": 44419, "lines": ["mov ecx, 130h", "cmp rdx, 2", "ja loc_AA40"], "succs": [[35, "jump"], [90, "fall"]]}, {"id": 90, "start": 44419, "end": 44437, "lines": ["mov rcx, cs:off_28198; \"34;4237;4430;4337;4101;3501;3201;3301;3\"...", "cmp byte ptr [rcx+rdx-1], 30h ; '0'", "jnz loc_AE54"], "succs": [[91, "fall"], [106, "jump"]]}, {"id": 91, "start": 44437, "end": 44446, "lines": ["cmp byte ptr [rcx], 30h ; '0'", "jnz loc_AE54"], "succs": [[92, "fall"], [106, "jump"]]}, {"id": 92, "start": 44446, "end": 44459, "lines": ["mov ecx, 60h ; '`'", "test eax, eax", "jz loc_AA40"], "succs": [[35, "jump"], [93, "fall"]]}, {"id": 93, "start": 44459, "end": 44480, "lines": ["mov rax, cs:qword_28180", "mov ecx, 60h ; '`'", "test rax, rax", "jz loc_AA40"], "succs": [[35, "jump"], [94, "fall"]]}, {"id": 94, "start": 44480, "end": 44495, "lines": ["mov ecx, 120h", "cmp rax, 2", "ja loc_AA40"], "succs": [[35, "jump"], [95, "fall"]]}, {"id": 95, "start": 44495, "end": 44509, "lines": ["mov rdx, cs:off_28188; \"37;4430;4337;4101;3501;3201;3301;3301;3\"...", "cmp byte ptr [rdx+rax-1], 30h ; '0'", "jnz short loc_ADEB"], "succs": [[96, "fall"], [97, "jump"]]}, {"id": 96, "start": 44509, "end": 44523, "lines": ["mov ecx, 60h ; '`'", "cmp byte ptr [rdx], 30h ; '0'", "jz loc_AA40"], "succs": [[35, "jump"], [97, "fall"]]}, {"id": 97, "start": 44523, "end": 44533, "lines": ["mov ecx, 120h", "jmp loc_AA40"], "succs": [[35, "jump"]]}, {"id": 98, "start": 44536, "end": 44543, "lines": ["xor ecx, ecx", "jmp loc_AA70"], "succs": [[37, "jump"]]}, {"id": 99, "start": 44544, "end": 44557, "lines": ["mov ecx, 70h ; 'p'", "test eax, eax", "jnz loc_AA40"], "succs": [[35, "jump"], [100, "fall"]]}, {"id": 100, "start": 44557, "end": 44562, "lines": ["jmp loc_A8EB"], "succs": [[12, "jump"]]}, {"id": 101, "start": 44568, "end": 44582, "lines": ["and esi, 2", "mov ecx, 60h ; '`'", "jz loc_AA40"], "succs": [[35, "jump"], [102, "fall"]]}, {"id": 102, "start": 44582, "end": 44598, "lines": ["mov rdx, cs:qword_28190", "test rdx, rdx", "jnz loc_AD74"], "succs": [[89, "jump"], [103, "fall"]]}, {"id": 103, "start": 44598, "end": 44603, "lines": ["jmp loc_AA40"], "succs": [[35, "jump"]]}, {"id": 104, "start": 44608, "end": 44618, "lines": ["mov ecx, 150h", "jmp loc_AA40"], "succs": [[35, "jump"]]}, {"id": 105, "start": 44618, "end": 44628, "lines": ["mov ecx, 0E0h", "jmp loc_AA40"], "succs": [[35, "jump"]]}, {"id": 106, "start": 44628, "end": 44638, "lines": ["mov ecx, 130h", "jmp loc_AA40"], "succs": [[35, "jump"]]}, {"id": 107, "start": 44638, "end": 44648, "lines": ["mov ecx, 140h", "jmp loc_AA40"], "succs": [[35, "jump"]]}]}, {"name": "sub_11340", "ea": 70464, "blocks": [{"id": 0, "start": 70464, "end": 70481, "lines": ["push rbp", "mov r9, rdx", "mov r8, rdi", "xor edx, edx", "xor eax, eax", "mov rbp, rsp", "push r12", "push rbx"], "succs": [[1, "fall"]]}, {"id": 1, "start": 70481, "end": 70486, "lines": ["cmp rax, rsi", "jl short loc_11370"], "succs": [[2, "fall"], [5, "jump"]]}, {"id": 2, "start": 70486, "end": 70495, "lines": ["cmp rdx, rcx", "jge loc_11664"], "succs": [[3, "fall"], [74, "jump"]]}, {"id": 3, "start": 70495, "end": 70504, "lines": ["cmp rax, rsi", "jge loc_11408"], "succs": [[4, "fall"], [17, "jump"]]}, {"id": 4, "start": 70504, "end": 70512, "lines": ["nop dword ptr [rax+rax+00000000h]"], "succs": [[5, "fall"]]}, {"id": 5, "start": 70512, "end": 70535, "lines": ["movzx edi, byte ptr [r8+rax]", "movsx r10d, dil", "sub r10d, 30h ; '0'", "cmp r10d, 9", "jbe loc_11408"], "succs": [[6, "fall"], [17, "jump"]]}, {"id": 6, "start": 70535, "end": 70545, "lines": ["cmp dil, 5Ah ; 'Z'", "jg loc_11478"], "succs": [[7, "fall"], [28, "jump"]]}, {"id": 7, "start": 70545, "end": 70555, "lines": ["cmp dil, 40h ; '@'", "jg loc_11486"], "succs": [[8, "fall"], [29, "jump"]]}, {"id": 8, "start": 70555, "end": 70565, "lines": ["cmp dil, 7Eh ; '~'", "jz loc_116B0"], "succs": [[9, "fall"], [83, "jump"]]}, {"id": 9, "start": 70565, "end": 70574, "lines": ["cmp rdx, rcx", "jz loc_116E8"], "succs": [[10, "fall"], [88, "jump"]]}, {"id": 10, "start": 70574, "end": 70606, "lines": ["movzx r11d, byte ptr [r9+rdx]", "add edi, 100h", "mov r10d, r11d", "movzx ebx, r11b", "sub r11d, 30h ; '0'", "cmp r11d, 9", "jbe loc_1146B"], "succs": [[11, "fall"], [27, "jump"]]}, {"id": 11, "start": 70606, "end": 70616, "lines": ["cmp r10b, 5Ah ; 'Z'", "jg loc_11608"], "succs": [[12, "fall"], [65, "jump"]]}, {"id": 12, "start": 70616, "end": 70626, "lines": ["cmp r10b, 40h ; '@'", "jg loc_11616"], "succs": [[13, "fall"], [66, "jump"]]}, {"id": 13, "start": 70626, "end": 70635, "lines": ["cmp bl, 7Eh ; '~'", "jz loc_1169B"], "succs": [[14, "fall"], [82, "jump"]]}, {"id": 14, "start": 70635, "end": 70642, "lines": ["lea r10d, [rbx+100h]"], "succs": [[15, "fall"]]}, {"id": 15, "start": 70642, "end": 70647, "lines": ["cmp r10d, edi", "jnz short loc_11468"], "succs": [[16, "fall"], [26, "jump"]]}, {"id": 16, "start": 70647, "end": 70664, "lines": ["add rax, 1", "add rdx, 1", "cmp rax, rsi", "jl loc_11370"], "succs": [[5, "jump"], [17, "fall"]]}, {"id": 17, "start": 70664, "end": 70673, "lines": ["cmp rdx, rcx", "jge loc_11637"], "succs": [[18, "fall"], [69, "jump"]]}, {"id": 18, "start": 70673, "end": 70695, "lines": ["movzx r11d, byte ptr [r9+rdx]", "movsx r10d, r11b", "lea edi, [r10-30h]", "cmp edi, 9", "jbe loc_114D0"], "succs": [[19, "fall"], [35, "jump"]]}, {"id": 19, "start": 70695, "end": 70704, "lines": ["cmp rax, rsi", "jz loc_1166B"], "succs": [[20, "fall"], [75, "jump"]]}, {"id": 20, "start": 70704, "end": 70723, "lines": ["movzx ebx, byte ptr [r8+rax]", "mov edi, ebx", "sub ebx, 30h ; '0'", "cmp ebx, 9", "ja loc_11387"], "succs": [[6, "jump"], [21, "fall"]]}, {"id": 21, "start": 70723, "end": 70733, "lines": ["cmp r11b, 5Ah ; 'Z'", "jle loc_115D8"], "succs": [[22, "fall"], [61, "jump"]]}, {"id": 22, "start": 70733, "end": 70741, "lines": ["lea eax, [r11-61h]", "cmp al, 19h", "jbe short loc_11466"], "succs": [[23, "fall"], [25, "jump"]]}, {"id": 23, "start": 70741, "end": 70751, "lines": ["cmp r11b, 7Eh ; '~'", "jz loc_11720"], "succs": [[24, "fall"], [94, "jump"]]}, {"id": 24, "start": 70751, "end": 70758, "lines": ["lea r10d, [r11+100h]"], "succs": [[25, "fall"]]}, {"id": 25, "start": 70758, "end": 70760, "lines": ["xor edi, edi"], "succs": [[26, "fall"]]}, {"id": 26, "start": 70760, "end": 70763, "lines": ["sub edi, r10d"], "succs": [[27, "fall"]]}, {"id": 27, "start": 70763, "end": 70770, "lines": ["pop rbx", "mov eax, edi", "pop r12", "pop rbp", "retn"], "succs": []}, {"id": 28, "start": 70776, "end": 70790, "lines": ["lea r10d, [rdi-61h]", "cmp r10b, 19h", "ja loc_1139B"], "succs": [[8, "jump"], [29, "fall"]]}, {"id": 29, "start": 70790, "end": 70803, "lines": ["movsx edi, dil", "cmp rdx, rcx", "jz loc_116F3"], "succs": [[30, "fall"], [89, "jump"]]}, {"id": 30, "start": 70803, "end": 70825, "lines": ["movzx r10d, byte ptr [r9+rdx]", "lea r12d, [r10-30h]", "mov r11d, r10d", "movzx ebx, r10b", "cmp r12d, 9", "jbe short loc_1146B"], "succs": [[27, "jump"], [31, "fall"]]}, {"id": 31, "start": 70825, "end": 70835, "lines": ["cmp r10b, 5Ah ; 'Z'", "jg loc_11620"], "succs": [[32, "fall"], [67, "jump"]]}, {"id": 32, "start": 70835, "end": 70845, "lines": ["cmp r10b, 40h ; '@'", "jg loc_1162E"], "succs": [[33, "fall"], [68, "jump"]]}, {"id": 33, "start": 70845, "end": 70855, "lines": ["cmp r10b, 7Eh ; '~'", "jz loc_1169B"], "succs": [[34, "fall"], [82, "jump"]]}, {"id": 34, "start": 70855, "end": 70864, "lines": ["add r10d, 100h", "jmp short loc_11468"], "succs": [[26, "jump"]]}, {"id": 35, "start": 70864, "end": 70869, "lines": ["cmp rax, rsi", "jl short loc_114ED"], "succs": [[36, "fall"], [38, "jump"]]}, {"id": 36, "start": 70869, "end": 70874, "lines": ["jmp loc_115A8"], "succs": [[57, "jump"]]}, {"id": 37, "start": 70880, "end": 70893, "lines": ["add rax, 1", "cmp rsi, rax", "jz loc_115A8"], "succs": [[38, "fall"], [57, "jump"]]}, {"id": 38, "start": 70893, "end": 70900, "lines": ["cmp byte ptr [r8+rax], 30h ; '0'", "jz short loc_114E0"], "succs": [[37, "jump"], [39, "fall"]]}, {"id": 39, "start": 70900, "end": 70905, "lines": ["cmp rdx, rcx", "jl short loc_1150D"], "succs": [[40, "fall"], [42, "jump"]]}, {"id": 40, "start": 70905, "end": 70910, "lines": ["jmp loc_11645"], "succs": [[71, "jump"]]}, {"id": 41, "start": 70912, "end": 70925, "lines": ["add rdx, 1", "cmp rcx, rdx", "jz loc_1173B"], "succs": [[42, "fall"], [96, "jump"]]}, {"id": 42, "start": 70925, "end": 70932, "lines": ["cmp byte ptr [r9+rdx], 30h ; '0'", "jz short loc_11500"], "succs": [[41, "jump"], [43, "fall"]]}, {"id": 43, "start": 70932, "end": 70951, "lines": ["cmp rsi, rax", "setnle dil", "mov r10d, edi", "cmp rcx, rdx", "jle loc_11742"], "succs": [[44, "fall"], [97, "jump"]]}, {"id": 44, "start": 70951, "end": 70960, "lines": ["test dil, dil", "jz loc_115E7"], "succs": [[45, "fall"], [63, "jump"]]}, {"id": 45, "start": 70960, "end": 70962, "lines": ["xor edi, edi"], "succs": [[46, "fall"]]}, {"id": 46, "start": 70962, "end": 70977, "lines": ["movsx r10d, byte ptr [r8+rax]", "lea r11d, [r10-30h]", "cmp r11d, 9", "ja short loc_11570"], "succs": [[47, "fall"], [51, "jump"]]}, {"id": 47, "start": 70977, "end": 70991, "lines": ["movsx r11d, byte ptr [r9+rdx]", "lea ebx, [r11-30h]", "cmp ebx, 9", "ja short loc_115C0"], "succs": [[48, "fall"], [59, "jump"]]}, {"id": 48, "start": 70991, "end": 71013, "lines": ["sub r10d, r11d", "test edi, edi", "cmovz edi, r10d", "add rax, 1", "add rdx, 1", "cmp rsi, rax", "jle short loc_11584"], "succs": [[49, "fall"], [53, "jump"]]}, {"id": 49, "start": 71013, "end": 71018, "lines": ["cmp rcx, rdx", "jg short loc_11532"], "succs": [[46, "jump"], [50, "fall"]]}, {"id": 50, "start": 71018, "end": 71024, "lines": ["nop word ptr [rax+rax+00h]"], "succs": [[51, "fall"]]}, {"id": 51, "start": 71024, "end": 71029, "lines": ["cmp rsi, rax", "jle short loc_11584"], "succs": [[52, "fall"], [53, "jump"]]}, {"id": 52, "start": 71029, "end": 71044, "lines": ["movsx r10d, byte ptr [r8+rax]", "sub r10d, 30h ; '0'", "cmp r10d, 9", "jbe short loc_115C5"], "succs": [[53, "fall"], [60, "jump"]]}, {"id": 53, "start": 71044, "end": 71049, "lines": ["cmp rcx, rdx", "jle short loc_11598"], "succs": [[54, "fall"], [55, "jump"]]}, {"id": 54, "start": 71049, "end": 71064, "lines": ["movsx r10d, byte ptr [r9+rdx]", "sub r10d, 30h ; '0'", "cmp r10d, 9", "jbe short loc_115F8"], "succs": [[55, "fall"], [64, "jump"]]}, {"id": 55, "start": 71064, "end": 71072, "lines": ["test edi, edi", "jz loc_11351"], "succs": [[1, "jump"], [56, "fall"]]}, {"id": 56, "start": 71072, "end": 71077, "lines": ["jmp loc_1146B"], "succs": [[27, "jump"]]}, {"id": 57, "start": 71080, "end": 71089, "lines": ["cmp rdx, rcx", "jl loc_1150D"], "succs": [[42, "jump"], [58, "fall"]]}, {"id": 58, "start": 71089, "end": 71094, "lines": ["jmp loc_11351"], "succs": [[1, "jump"]]}, {"id": 59, "start": 71104, "end": 71109, "lines": ["cmp rsi, rax", "jle short loc_11584"], "succs": [[53, "jump"], [60, "fall"]]}, {"id": 60, "start": 71109, "end": 71121, "lines": ["mov edi, 1", "pop rbx", "pop r12", "mov eax, edi", "pop rbp", "retn"], "succs": []}, {"id": 61, "start": 71128, "end": 71138, "lines": ["cmp r11b, 40h ; '@'", "jg loc_11466"], "succs": [[25, "jump"], [62, "fall"]]}, {"id": 62, "start": 71138, "end": 71143, "lines": ["jmp loc_1145F"], "succs": [[24, "jump"]]}, {"id": 63, "start": 71143, "end": 71160, "lines": ["movsx edi, byte ptr [r9+rdx]", "sub edi, 30h ; '0'", "cmp edi, 9", "ja loc_11351"], "succs": [[1, "jump"], [64, "fall"]]}, {"id": 64, "start": 71160, "end": 71172, "lines": ["mov edi, 0FFFFFFFFh", "pop rbx", "pop r12", "mov eax, edi", "pop rbp", "retn"], "succs": []}, {"id": 65, "start": 71176, "end": 71190, "lines": ["lea r11d, [r10-61h]", "cmp r11b, 19h", "ja loc_113E2"], "succs": [[13, "jump"], [66, "fall"]]}, {"id": 66, "start": 71190, "end": 71199, "lines": ["movsx r10d, r10b", "jmp loc_11468"], "succs": [[26, "jump"]]}, {"id": 67, "start": 71200, "end": 71214, "lines": ["lea r10d, [r10-61h]", "cmp r10b, 19h", "ja loc_113E2"], "succs": [[13, "jump"], [68, "fall"]]}, {"id": 68, "start": 71214, "end": 71223, "lines": ["movsx r10d, r11b", "jmp loc_113F2"], "succs": [[15, "jump"]]}, {"id": 69, "start": 71223, "end": 71232, "lines": ["cmp rax, rsi", "jl loc_114ED"], "succs": [[38, "jump"], [70, "fall"]]}, {"id": 70, "start": 71232, "end": 71237, "lines": ["jmp loc_11356"], "succs": [[2, "jump"]]}, {"id": 71, "start": 71237, "end": 71246, "lines": ["cmp rax, rsi", "jge loc_11356"], "succs": [[2, "jump"], [72, "fall"]]}, {"id": 72, "start": 71246, "end": 71263, "lines": ["movsx edi, byte ptr [r8+rax]", "sub edi, 30h ; '0'", "cmp edi, 9", "ja loc_11351"], "succs": [[1, "jump"], [73, "fall"]]}, {"id": 73, "start": 71263, "end": 71268, "lines": ["jmp loc_115C5"], "succs": [[60, "jump"]]}, {"id": 74, "start": 71268, "end": 71275, "lines": ["xor edi, edi", "jmp loc_1146B"], "succs": [[27, "jump"]]}, {"id": 75, "start": 71275, "end": 71281, "lines": ["cmp r11b, 5Ah ; 'Z'", "jg short loc_11688"], "succs": [[76, "fall"], [79, "jump"]]}, {"id": 76, "start": 71281, "end": 71287, "lines": ["cmp r11b, 40h ; '@'", "jg short loc_1167E"], "succs": [[77, "fall"], [78, "jump"]]}, {"id": 77, "start": 71287, "end": 71294, "lines": ["lea r10d, [r11+100h]"], "succs": [[78, "fall"]]}, {"id": 78, "start": 71294, "end": 71304, "lines": ["mov edi, 0FFFFFFFFh", "jmp loc_11468"], "succs": [[26, "jump"]]}, {"id": 79, "start": 71304, "end": 71312, "lines": ["lea eax, [r11-61h]", "cmp al, 19h", "jbe short loc_1167E"], "succs": [[78, "jump"], [80, "fall"]]}, {"id": 80, "start": 71312, "end": 71318, "lines": ["cmp r11b, 7Eh ; '~'", "jnz short loc_11677"], "succs": [[77, "jump"], [81, "fall"]]}, {"id": 81, "start": 71318, "end": 71323, "lines": ["mov edi, 0FFFFFFFFh"], "succs": [[82, "fall"]]}, {"id": 82, "start": 71323, "end": 71334, "lines": ["mov r10d, 0FFFFFFFEh", "jmp loc_11468"], "succs": [[26, "jump"]]}, {"id": 83, "start": 71344, "end": 71353, "lines": ["cmp rdx, rcx", "jz loc_115F8"], "succs": [[64, "jump"], [84, "fall"]]}, {"id": 84, "start": 71353, "end": 71371, "lines": ["movzx r10d, byte ptr [r9+rdx]", "lea r11d, [r10-30h]", "mov edi, r10d", "cmp r11d, 9", "jbe short loc_116FB"], "succs": [[85, "fall"], [90, "jump"]]}, {"id": 85, "start": 71371, "end": 71377, "lines": ["cmp r10b, 5Ah ; 'Z'", "jg short loc_11705"], "succs": [[86, "fall"], [91, "jump"]]}, {"id": 86, "start": 71377, "end": 71383, "lines": ["cmp r10b, 40h ; '@'", "jg short loc_1172D"], "succs": [[87, "fall"], [95, "jump"]]}, {"id": 87, "start": 71383, "end": 71400, "lines": ["add r10d, 100h", "mov edi, 0FFFFFFFEh", "jmp loc_11468"], "succs": [[26, "jump"]]}, {"id": 88, "start": 71400, "end": 71411, "lines": ["add edi, 101h", "jmp loc_1146B"], "succs": [[27, "jump"]]}, {"id": 89, "start": 71411, "end": 71419, "lines": ["add edi, 1", "jmp loc_1146B"], "succs": [[27, "jump"]]}, {"id": 90, "start": 71419, "end": 71429, "lines": ["mov edi, 0FFFFFFFEh", "jmp loc_1146B"], "succs": [[27, "jump"]]}, {"id": 91, "start": 71429, "end": 71439, "lines": ["lea r11d, [r10-61h]", "cmp r11b, 19h", "jbe short loc_1172D"], "succs": [[92, "fall"], [95, "jump"]]}, {"id": 92, "start": 71439, "end": 71445, "lines": ["cmp r10b, 7Eh ; '~'", "jnz short loc_116D7"], "succs": [[87, "jump"], [93, "fall"]]}, {"id": 93, "start": 71445, "end": 71450, "lines": ["jmp loc_113F7"], "succs": [[16, "jump"]]}, {"id": 94, "start": 71456, "end": 71469, "lines": ["xor edi, edi", "mov r10d, 0FFFFFFFEh", "jmp loc_11468"], "succs": [[26, "jump"]]}, {"id": 95, "start": 71469, "end": 71483, "lines": ["movsx r10d, dil", "mov edi, 0FFFFFFFEh", "jmp loc_11468"], "succs": [[26, "jump"]]}, {"id": 96, "start": 71483, "end": 71490, "lines": ["cmp rsi, rax", "setnle r10b"], "succs": [[97, "fall"]]}, {"id": 97, "start": 71490, "end": 71499, "lines": ["test r10b, r10b", "jnz loc_1164E"], "succs": [[72, "jump"], [98, "fall"]]}, {"id": 98, "start": 71499, "end": 71504, "lines": ["jmp loc_11351"], "succs": [[1, "jump"]]}]}, {"name": "sub_1C0C0", "ea": 114880, "blocks": [{"id": 0, "start": 114880, "end": 114962, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r15", "push r14", "mov r14d, edx", "push r13", "push r12", "mov r12, rdi", "push rbx", "lea rbx, [rbp+var_40]", "sub rsp, 38h", "mov [rbp+var_48], rcx", "test rsi, rsi", "movzx r15d, byte ptr [rdi]", "cmovnz rbx, rsi", "mov r13, fs:28h", "mov [rbp+var_38], r13", "mov r13, r8", "call cs:__ctype_b_loc_ptr", "mov rsi, [rax]", "movzx eax, r15b", "test byte ptr [rsi+rax*2+1], 20h", "jz short loc_1C132"], "succs": [[1, "fall"], [3, "jump"]]}, {"id": 1, "start": 114962, "end": 114976, "lines": ["mov rax, r12", "nop word ptr [rax+rax+00000000h]"], "succs": [[2, "fall"]]}, {"id": 2, "start": 114976, "end": 114994, "lines": ["movzx ecx, byte ptr [rax+1]", "add rax, 1", "mov r15, rcx", "test byte ptr [rsi+rcx*2+1], 20h", "jnz short loc_1C120"], "succs": [[3, "fall"], [2, "jump"]]}, {"id": 3, "start": 114994, "end": 115004, "lines": ["cmp r15b, 2Dh ; '-'", "jz loc_1C270"], "succs": [[4, "fall"], [24, "jump"]]}, {"id": 4, "start": 115004, "end": 115045, "lines": ["call cs:__errno_location_ptr", "mov edx, r14d", "mov rsi, rbx", "mov rdi, r12", "mov dword ptr [rax], 0", "mov r15, rax", "call cs:__isoc23_strtoumax_ptr", "mov rcx, [rbx]", "mov r14, rax", "cmp rcx, r12", "jz short loc_1C1C8"], "succs": [[5, "fall"], [14, "jump"]]}, {"id": 5, "start": 115045, "end": 115052, "lines": ["mov eax, [r15]", "test eax, eax", "jnz short loc_1C1B0"], "succs": [[6, "fall"], [12, "jump"]]}, {"id": 6, "start": 115052, "end": 115055, "lines": ["xor r12d, r12d"], "succs": [[7, "fall"]]}, {"id": 7, "start": 115055, "end": 115060, "lines": ["test r13, r13", "jz short loc_1C17F"], "succs": [[8, "fall"], [9, "jump"]]}, {"id": 8, "start": 115060, "end": 115071, "lines": ["movzx edx, byte ptr [rcx]", "test dl, dl", "jnz loc_1C2B0"], "succs": [[9, "fall"], [28, "jump"]]}, {"id": 9, "start": 115071, "end": 115078, "lines": ["mov rax, [rbp+var_48]", "mov [rax], r14"], "succs": [[10, "fall"]]}, {"id": 10, "start": 115078, "end": 115097, "lines": ["mov rax, [rbp+var_38]", "sub rax, fs:28h", "jnz loc_1C565"], "succs": [[11, "fall"], [83, "jump"]]}, {"id": 11, "start": 115097, "end": 115115, "lines": ["add rsp, 38h", "mov eax, r12d", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 12, "start": 115120, "end": 115131, "lines": ["mov r12d, 1", "cmp eax, 22h ; '\"'", "jz short loc_1C16F"], "succs": [[7, "jump"], [13, "fall"]]}, {"id": 13, "start": 115131, "end": 115139, "lines": ["mov r12d, 4", "jmp short loc_1C186"], "succs": [[10, "jump"]]}, {"id": 14, "start": 115144, "end": 115149, "lines": ["test r13, r13", "jz short loc_1C1BB"], "succs": [[13, "jump"], [15, "fall"]]}, {"id": 15, "start": 115149, "end": 115158, "lines": ["movzx edx, byte ptr [r12]", "test dl, dl", "jz short loc_1C1BB"], "succs": [[13, "jump"], [16, "fall"]]}, {"id": 16, "start": 115158, "end": 115182, "lines": ["mov [rbp+var_58], rcx", "movsx esi, dl; c", "mov rdi, r13; s", "mov byte ptr [rbp+var_50], dl", "call cs:strchr_ptr", "test rax, rax", "jz short loc_1C1BB"], "succs": [[13, "jump"], [17, "fall"]]}, {"id": 17, "start": 115182, "end": 115199, "lines": ["movzx edx, byte ptr [rbp+var_50]", "mov rcx, [rbp+var_58]", "mov r14d, 1", "xor r12d, r12d"], "succs": [[18, "fall"]]}, {"id": 18, "start": 115199, "end": 115206, "lines": ["lea eax, [rdx-45h]", "cmp al, 2Fh ; '/'", "ja short loc_1C280"], "succs": [[19, "fall"], [25, "jump"]]}, {"id": 19, "start": 115206, "end": 115222, "lines": ["mov rsi, 81440030B945h", "bt rsi, rax", "jnb short loc_1C280"], "succs": [[20, "fall"], [25, "jump"]]}, {"id": 20, "start": 115222, "end": 115256, "lines": ["mov byte ptr [rbp+var_58], dl", "mov esi, 30h ; '0'; c", "mov rdi, r13; s", "mov [rbp+var_50], rcx", "call cs:strchr_ptr", "mov rcx, [rbp+var_50]", "movzx edx, byte ptr [rbp+var_58]", "test rax, rax", "jz short loc_1C280"], "succs": [[21, "fall"], [25, "jump"]]}, {"id": 21, "start": 115256, "end": 115268, "lines": ["movzx eax, byte ptr [rcx+1]", "cmp al, 44h ; 'D'", "jz loc_1C556"], "succs": [[22, "fall"], [82, "jump"]]}, {"id": 22, "start": 115268, "end": 115276, "lines": ["cmp al, 69h ; 'i'", "jz loc_1C330"], "succs": [[23, "fall"], [35, "jump"]]}, {"id": 23, "start": 115276, "end": 115308, "lines": ["cmp al, 42h ; 'B'", "mov edi, 1", "mov eax, 2", "mov esi, 400h", "cmovz rdi, rax", "mov eax, 3E8h", "cmovz rsi, rax", "jmp short loc_1C28A"], "succs": [[26, "jump"]]}, {"id": 24, "start": 115312, "end": 115326, "lines": ["mov [rbx], r12", "mov r12d, 4", "jmp loc_1C186"], "succs": [[10, "jump"]]}, {"id": 25, "start": 115328, "end": 115338, "lines": ["mov edi, 1", "mov esi, 400h"], "succs": [[26, "fall"]]}, {"id": 26, "start": 115338, "end": 115346, "lines": ["sub edx, 42h ; 'B'; switch 54 cases", "cmp dl, 35h", "ja short def_1C2A3; jumptable 000000000001C2A3 default case, cases 67,68,70,72-74,76,78,79,83,85-88,91-97,100-102,104-106,108,110-115,117,118"], "succs": [[27, "fall"], [29, "jump"]]}, {"id": 27, "start": 115346, "end": 115366, "lines": ["lea r8, jpt_1C2A3", "movzx edx, dl", "movsxd rax, ds:(jpt_1C2A3 - 22390h)[r8+rdx*4]", "add rax, r8", "jmp rax; switch jump"], "succs": [[29, "switch"], [30, "switch"], [34, "switch"], [37, "switch"], [43, "switch"], [45, "switch"], [47, "switch"], [56, "switch"], [58, "switch"], [60, "switch"], [62, "switch"], [66, "switch"], [70, "switch"], [74, "switch"], [78, "switch"]]}, {"id": 28, "start": 115376, "end": 115412, "lines": ["mov [rbp+var_58], rcx", "movsx esi, dl; c", "mov rdi, r13; s", "mov byte ptr [rbp+var_50], dl", "call cs:strchr_ptr", "movzx edx, byte ptr [rbp+var_50]", "mov rcx, [rbp+var_58]", "test rax, rax", "jnz loc_1C1FF"], "succs": [[18, "jump"], [29, "fall"]]}, {"id": 29, "start": 115412, "end": 115428, "lines": ["mov rax, [rbp+var_48]; jumptable 000000000001C2A3 default case, cases 67,68,70,72-74,76,78,79,83,85-88,91-97,100-102,104-106,108,110-115,117,118", "or r12d, 2", "mov [rax], r14", "jmp loc_1C186"], "succs": [[10, "jump"]]}, {"id": 30, "start": 115428, "end": 115456, "lines": ["mov r8d, 7; jumptable 000000000001C2A3 case 90", "xor r9d, r9d", "nop dword ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]"], "succs": [[31, "fall"]]}, {"id": 31, "start": 115456, "end": 115471, "lines": ["mov rax, r14", "mul rsi", "mov r14, rax", "jo loc_1C640"], "succs": [[32, "fall"], [96, "jump"]]}, {"id": 32, "start": 115471, "end": 115477, "lines": ["sub r8d, 1", "jnz short loc_1C300"], "succs": [[31, "jump"], [33, "fall"]]}, {"id": 33, "start": 115477, "end": 115480, "lines": ["or r12d, r9d"], "succs": [[34, "fall"]]}, {"id": 34, "start": 115480, "end": 115504, "lines": ["add rcx, rdi; jumptable 000000000001C2A3 case 99", "mov eax, r12d", "or eax, 2", "mov [rbx], rcx", "cmp byte ptr [rcx], 0", "cmovnz r12d, eax", "jmp loc_1C17F"], "succs": [[9, "jump"]]}, {"id": 35, "start": 115504, "end": 115514, "lines": ["cmp byte ptr [rcx+2], 42h ; 'B'", "jnz loc_1C280"], "succs": [[25, "jump"], [36, "fall"]]}, {"id": 36, "start": 115514, "end": 115529, "lines": ["mov edi, 3", "mov esi, 400h", "jmp loc_1C28A"], "succs": [[26, "jump"]]}, {"id": 37, "start": 115529, "end": 115541, "lines": ["mov rax, r14; jumptable 000000000001C2A3 cases 71,103", "mul rsi", "jo loc_1C58C"], "succs": [[38, "fall"], [86, "jump"]]}, {"id": 38, "start": 115541, "end": 115547, "lines": ["mov rdx, rax", "xor r8d, r8d"], "succs": [[39, "fall"]]}, {"id": 39, "start": 115547, "end": 115559, "lines": ["mov rax, rdx", "mul rsi", "jo loc_1C57A"], "succs": [[40, "fall"], [85, "jump"]]}, {"id": 40, "start": 115559, "end": 115562, "lines": ["mov rdx, rax"], "succs": [[41, "fall"]]}, {"id": 41, "start": 115562, "end": 115570, "lines": ["mov rax, rsi", "mul rdx", "jo short loc_1C39D"], "succs": [[42, "fall"], [46, "jump"]]}, {"id": 42, "start": 115570, "end": 115578, "lines": ["mov r14, rax", "or r12d, r8d", "jmp short loc_1C318; jumptable 000000000001C2A3 case 99"], "succs": [[34, "jump"]]}, {"id": 43, "start": 115578, "end": 115590, "lines": ["mov rax, r14; jumptable 000000000001C2A3 cases 77,109", "mul rsi", "jo loc_1C60A"], "succs": [[44, "fall"], [93, "jump"]]}, {"id": 44, "start": 115590, "end": 115598, "lines": ["mov rdx, rax", "xor r8d, r8d", "jmp short loc_1C36A"], "succs": [[41, "jump"]]}, {"id": 45, "start": 115598, "end": 115613, "lines": ["movsxd rax, esi; jumptable 000000000001C2A3 cases 75,107", "mul r14", "mov r14, rax", "jno loc_1C318; jumptable 000000000001C2A3 case 99"], "succs": [[34, "jump"], [46, "fall"]]}, {"id": 46, "start": 115613, "end": 115631, "lines": ["mov r12d, 1", "mov r14, 0FFFFFFFFFFFFFFFFh", "jmp loc_1C318; jumptable 000000000001C2A3 case 99"], "succs": [[34, "jump"]]}, {"id": 47, "start": 115632, "end": 115644, "lines": ["mov rax, r14; jumptable 000000000001C2A3 cases 84,116", "mul rsi", "jo loc_1C5F8"], "succs": [[48, "fall"], [92, "jump"]]}, {"id": 48, "start": 115644, "end": 115647, "lines": ["xor r8d, r8d"], "succs": [[49, "fall"]]}, {"id": 49, "start": 115647, "end": 115656, "lines": ["mul rsi", "jo loc_1C5E6"], "succs": [[50, "fall"], [91, "jump"]]}, {"id": 50, "start": 115656, "end": 115659, "lines": ["mov rdx, rax"], "succs": [[51, "fall"]]}, {"id": 51, "start": 115659, "end": 115671, "lines": ["mov rax, rdx", "mul rsi", "jo loc_1C5D4"], "succs": [[52, "fall"], [90, "jump"]]}, {"id": 52, "start": 115671, "end": 115674, "lines": ["mov rdx, rax"], "succs": [[53, "fall"]]}, {"id": 53, "start": 115674, "end": 115686, "lines": ["mov rax, rsi", "mul rdx", "jo loc_1C5C2"], "succs": [[54, "fall"], [89, "jump"]]}, {"id": 54, "start": 115686, "end": 115689, "lines": ["mov r14, rax"], "succs": [[55, "fall"]]}, {"id": 55, "start": 115689, "end": 115697, "lines": ["or r12d, r8d", "jmp loc_1C318; jumptable 000000000001C2A3 case 99"], "succs": [[34, "jump"]]}, {"id": 56, "start": 115697, "end": 115702, "lines": ["test r14, r14; jumptable 000000000001C2A3 case 119", "js short loc_1C39D"], "succs": [[46, "jump"], [57, "fall"]]}, {"id": 57, "start": 115702, "end": 115710, "lines": ["add r14, r14", "jmp loc_1C318; jumptable 000000000001C2A3 case 99"], "succs": [[34, "jump"]]}, {"id": 58, "start": 115710, "end": 115719, "lines": ["mov rax, r14; jumptable 000000000001C2A3 case 98", "shr rax, 37h", "jnz short loc_1C39D"], "succs": [[46, "jump"], [59, "fall"]]}, {"id": 59, "start": 115719, "end": 115728, "lines": ["shl r14, 9", "jmp loc_1C318; jumptable 000000000001C2A3 case 99"], "succs": [[34, "jump"]]}, {"id": 60, "start": 115728, "end": 115737, "lines": ["mov rax, r14; jumptable 000000000001C2A3 case 66", "shr rax, 36h", "jnz short loc_1C39D"], "succs": [[46, "jump"], [61, "fall"]]}, {"id": 61, "start": 115737, "end": 115746, "lines": ["shl r14, 0Ah", "jmp loc_1C318; jumptable 000000000001C2A3 case 99"], "succs": [[34, "jump"]]}, {"id": 62, "start": 115746, "end": 115776, "lines": ["mov r8d, 6; jumptable 000000000001C2A3 case 69", "xor r9d, r9d", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]"], "succs": [[63, "fall"]]}, {"id": 63, "start": 115776, "end": 115791, "lines": ["mov rax, r14", "mul rsi", "mov r14, rax", "jo loc_1C59E"], "succs": [[64, "fall"], [87, "jump"]]}, {"id": 64, "start": 115791, "end": 115797, "lines": ["sub r8d, 1", "jnz short loc_1C440"], "succs": [[63, "jump"], [65, "fall"]]}, {"id": 65, "start": 115797, "end": 115802, "lines": ["jmp loc_1C315"], "succs": [[33, "jump"]]}, {"id": 66, "start": 115802, "end": 115840, "lines": ["mov r8d, 0Ah; jumptable 000000000001C2A3 case 81", "xor r9d, r9d", "nop dword ptr [rax+00000000h]", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]"], "succs": [[67, "fall"]]}, {"id": 67, "start": 115840, "end": 115855, "lines": ["mov rax, r14", "mul rsi", "mov r14, rax", "jo loc_1C5B0"], "succs": [[68, "fall"], [88, "jump"]]}, {"id": 68, "start": 115855, "end": 115861, "lines": ["sub r8d, 1", "jnz short loc_1C480"], "succs": [[67, "jump"], [69, "fall"]]}, {"id": 69, "start": 115861, "end": 115866, "lines": ["jmp loc_1C315"], "succs": [[33, "jump"]]}, {"id": 70, "start": 115866, "end": 115904, "lines": ["mov r8d, 5; jumptable 000000000001C2A3 case 80", "xor r9d, r9d", "nop dword ptr [rax+00000000h]", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]"], "succs": [[71, "fall"]]}, {"id": 71, "start": 115904, "end": 115919, "lines": ["mov rax, r14", "mul rsi", "mov r14, rax", "jo loc_1C61C"], "succs": [[72, "fall"], [94, "jump"]]}, {"id": 72, "start": 115919, "end": 115925, "lines": ["sub r8d, 1", "jnz short loc_1C4C0"], "succs": [[71, "jump"], [73, "fall"]]}, {"id": 73, "start": 115925, "end": 115930, "lines": ["jmp loc_1C315"], "succs": [[33, "jump"]]}, {"id": 74, "start": 115930, "end": 115968, "lines": ["mov r8d, 9; jumptable 000000000001C2A3 case 82", "xor r9d, r9d", "nop dword ptr [rax+00000000h]", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]"], "succs": [[75, "fall"]]}, {"id": 75, "start": 115968, "end": 115983, "lines": ["mov rax, r14", "mul rsi", "mov r14, rax", "jo loc_1C62E"], "succs": [[76, "fall"], [95, "jump"]]}, {"id": 76, "start": 115983, "end": 115989, "lines": ["sub r8d, 1", "jnz short loc_1C500"], "succs": [[75, "jump"], [77, "fall"]]}, {"id": 77, "start": 115989, "end": 115994, "lines": ["jmp loc_1C315"], "succs": [[33, "jump"]]}, {"id": 78, "start": 115994, "end": 116032, "lines": ["mov r8d, 8; jumptable 000000000001C2A3 case 89", "xor r9d, r9d", "nop dword ptr [rax+00000000h]", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]"], "succs": [[79, "fall"]]}, {"id": 79, "start": 116032, "end": 116043, "lines": ["mov rax, r14", "mul rsi", "mov r14, rax", "jo short loc_1C56B"], "succs": [[80, "fall"], [84, "jump"]]}, {"id": 80, "start": 116043, "end": 116049, "lines": ["sub r8d, 1", "jnz short loc_1C540"], "succs": [[79, "jump"], [81, "fall"]]}, {"id": 81, "start": 116049, "end": 116054, "lines": ["jmp loc_1C315"], "succs": [[33, "jump"]]}, {"id": 82, "start": 116054, "end": 116069, "lines": ["mov edi, 2", "mov esi, 3E8h", "jmp loc_1C28A"], "succs": [[26, "jump"]]}, {"id": 83, "start": 116069, "end": 116075, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 84, "start": 116075, "end": 116090, "lines": ["mov r9d, 1", "mov r14, 0FFFFFFFFFFFFFFFFh", "jmp short loc_1C54B"], "succs": [[80, "jump"]]}, {"id": 85, "start": 116090, "end": 116108, "lines": ["mov r8d, 1", "mov rdx, 0FFFFFFFFFFFFFFFFh", "jmp loc_1C36A"], "succs": [[41, "jump"]]}, {"id": 86, "start": 116108, "end": 116126, "lines": ["mov rdx, 0FFFFFFFFFFFFFFFFh", "mov r8d, 1", "jmp loc_1C35B"], "succs": [[39, "jump"]]}, {"id": 87, "start": 116126, "end": 116144, "lines": ["mov r9d, 1", "mov r14, 0FFFFFFFFFFFFFFFFh", "jmp loc_1C44F"], "succs": [[64, "jump"]]}, {"id": 88, "start": 116144, "end": 116162, "lines": ["mov r9d, 1", "mov r14, 0FFFFFFFFFFFFFFFFh", "jmp loc_1C48F"], "succs": [[68, "jump"]]}, {"id": 89, "start": 116162, "end": 116180, "lines": ["mov r8d, 1", "mov r14, 0FFFFFFFFFFFFFFFFh", "jmp loc_1C3E9"], "succs": [[55, "jump"]]}, {"id": 90, "start": 116180, "end": 116198, "lines": ["mov r8d, 1", "mov rdx, 0FFFFFFFFFFFFFFFFh", "jmp loc_1C3DA"], "succs": [[53, "jump"]]}, {"id": 91, "start": 116198, "end": 116216, "lines": ["mov r8d, 1", "mov rdx, 0FFFFFFFFFFFFFFFFh", "jmp loc_1C3CB"], "succs": [[51, "jump"]]}, {"id": 92, "start": 116216, "end": 116234, "lines": ["mov r8d, 1", "mov rax, 0FFFFFFFFFFFFFFFFh", "jmp loc_1C3BF"], "succs": [[49, "jump"]]}, {"id": 93, "start": 116234, "end": 116252, "lines": ["mov rdx, 0FFFFFFFFFFFFFFFFh", "mov r8d, 1", "jmp loc_1C36A"], "succs": [[41, "jump"]]}, {"id": 94, "start": 116252, "end": 116270, "lines": ["mov r9d, 1", "mov r14, 0FFFFFFFFFFFFFFFFh", "jmp loc_1C4CF"], "succs": [[72, "jump"]]}, {"id": 95, "start": 116270, "end": 116288, "lines": ["mov r9d, 1", "mov r14, 0FFFFFFFFFFFFFFFFh", "jmp loc_1C50F"], "succs": [[76, "jump"]]}, {"id": 96, "start": 116288, "end": 116306, "lines": ["mov r9d, 1", "mov r14, 0FFFFFFFFFFFFFFFFh", "jmp loc_1C30F"], "succs": [[32, "jump"]]}]}, {"name": "sub_6EC0", "ea": 28352, "blocks": [{"id": 0, "start": 28352, "end": 28438, "lines": ["push rbp", "mov rbp, rsp", "push r15", "mov r15, rdx", "push r14", "push r13", "mov r13, rsi", "push r12", "push rbx", "mov ebx, ecx", "sub rsp, 68h", "mov [rbp+var_80], rdi", "mov [rbp+var_60], r8", "mov [rbp+var_88], r9", "mov r12, fs:28h", "mov [rbp+var_38], r12", "mov r12, [rdi]", "mov rdi, rdx", "call sub_19E80", "cmp eax, 2", "setbe al", "and al, cs:byte_292D8", "mov [rbp+var_71], al", "jnz loc_7040"], "succs": [[1, "fall"], [18, "jump"]]}, {"id": 1, "start": 28438, "end": 28449, "lines": ["xor r14d, r14d", "test ebx, ebx", "jnz loc_704E"], "succs": [[2, "fall"], [20, "jump"]]}, {"id": 2, "start": 28449, "end": 28464, "lines": ["mov rdi, r13; s", "mov r12, r13", "call cs:strlen_ptr", "mov rbx, rax"], "succs": [[3, "fall"]]}, {"id": 3, "start": 28464, "end": 28475, "lines": ["cmp [rbp+var_60], 0", "jz loc_6FD8"], "succs": [[4, "fall"], [13, "jump"]]}, {"id": 4, "start": 28475, "end": 28491, "lines": ["call cs:__ctype_get_mb_cur_max_ptr", "cmp rax, 1", "ja loc_7288"], "succs": [[5, "fall"], [54, "jump"]]}, {"id": 5, "start": 28491, "end": 28504, "lines": ["lea r13, [r12+rbx]", "cmp r12, r13", "jnb loc_73DE"], "succs": [[6, "fall"], [72, "jump"]]}, {"id": 6, "start": 28504, "end": 28544, "lines": ["call cs:__ctype_b_loc_ptr", "xor r15d, r15d", "mov rsi, [rax]", "mov rax, r12", "nop dword ptr [rax]", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]"], "succs": [[7, "fall"]]}, {"id": 7, "start": 28544, "end": 28573, "lines": ["movzx edx, byte ptr [rax]", "movzx edx, word ptr [rsi+rdx*2]", "and dx, 4000h", "cmp dx, 1", "sbb r15, 0FFFFFFFFFFFFFFFFh", "add rax, 1", "cmp r13, rax", "jnz short loc_6F80"], "succs": [[8, "fall"], [7, "jump"]]}, {"id": 8, "start": 28573, "end": 28586, "lines": ["cmp cs:byte_293A8, 0", "jz loc_72C0"], "succs": [[9, "fall"], [57, "jump"]]}, {"id": 9, "start": 28586, "end": 28599, "lines": ["cmp cs:byte_293A9, 0", "jz loc_72C0"], "succs": [[10, "fall"], [57, "jump"]]}, {"id": 10, "start": 28599, "end": 28606, "lines": ["movzx eax, [rbp+var_71]", "xor eax, 1"], "succs": [[11, "fall"]]}, {"id": 11, "start": 28606, "end": 28626, "lines": ["mov rsi, [rbp+var_88]", "mov [rsi], al", "cmp [rbp+var_60], 0", "jnz loc_72CA"], "succs": [[12, "fall"], [58, "jump"]]}, {"id": 12, "start": 28626, "end": 28628, "lines": ["jmp short loc_7010"], "succs": [[16, "jump"]]}, {"id": 13, "start": 28632, "end": 28645, "lines": ["cmp cs:byte_293A8, 0", "jz loc_7228"], "succs": [[14, "fall"], [47, "jump"]]}, {"id": 14, "start": 28645, "end": 28658, "lines": ["cmp cs:byte_293A9, 0", "jz loc_7228"], "succs": [[15, "fall"], [47, "jump"]]}, {"id": 15, "start": 28658, "end": 28688, "lines": ["movzx eax, [rbp+var_71]", "mov rsi, [rbp+var_88]", "xor eax, 1", "mov [rsi], al", "nop dword ptr [rax]", "nop word ptr [rax+rax+00000000h]"], "succs": [[16, "fall"]]}, {"id": 16, "start": 28688, "end": 28714, "lines": ["mov rax, [rbp+var_80]", "mov [rax], r12", "mov rax, [rbp+var_38]", "sub rax, fs:28h", "jnz loc_7424"], "succs": [[17, "fall"], [77, "jump"]]}, {"id": 17, "start": 28714, "end": 28732, "lines": ["add rsp, 68h", "mov rax, rbx", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 18, "start": 28736, "end": 28744, "lines": ["test ebx, ebx", "jz loc_71E0"], "succs": [[19, "fall"], [44, "jump"]]}, {"id": 19, "start": 28744, "end": 28750, "lines": ["mov r14d, 1"], "succs": [[20, "fall"]]}, {"id": 20, "start": 28750, "end": 28792, "lines": ["mov r8, r15", "mov rcx, 0FFFFFFFFFFFFFFFFh", "mov rdx, r13", "mov rdi, r12", "mov esi, 2000h", "call sub_19F60", "mov rbx, rax", "cmp rax, 1FFFh", "ja loc_7310"], "succs": [[21, "fall"], [62, "jump"]]}, {"id": 21, "start": 28792, "end": 28807, "lines": ["mov [rbp+var_71], 1", "movzx eax, byte ptr [r12]", "cmp [r13+0], al", "jnz short loc_7097"], "succs": [[22, "fall"], [23, "jump"]]}, {"id": 22, "start": 28807, "end": 28823, "lines": ["mov rdi, r13; s", "call cs:strlen_ptr", "cmp rbx, rax", "setnz [rbp+var_71]"], "succs": [[23, "fall"]]}, {"id": 23, "start": 28823, "end": 28832, "lines": ["test r14d, r14d", "jz loc_6F30"], "succs": [[3, "jump"], [24, "fall"]]}, {"id": 24, "start": 28832, "end": 28852, "lines": ["call cs:__ctype_get_mb_cur_max_ptr", "lea r14, [r12+rbx]", "cmp rax, 1", "jbe loc_7240"], "succs": [[25, "fall"], [48, "jump"]]}, {"id": 25, "start": 28852, "end": 28864, "lines": ["nop", "nop word ptr [rax+rax+00000000h]"], "succs": [[26, "fall"]]}, {"id": 26, "start": 28864, "end": 28873, "lines": ["cmp r12, r14", "jnb loc_7408"], "succs": [[27, "fall"], [75, "jump"]]}, {"id": 27, "start": 28873, "end": 28895, "lines": ["mov r9, r14", "mov rbx, r12", "lea r13, [rbp+ps]", "xor r14d, r14d", "mov [rbp+var_90], r12", "jmp short loc_7109"], "succs": [[33, "jump"]]}, {"id": 28, "start": 28896, "end": 28900, "lines": ["cmp al, 40h ; '@'", "jg short loc_70F0"], "succs": [[29, "fall"], [31, "jump"]]}, {"id": 29, "start": 28900, "end": 28908, "lines": ["cmp al, 23h ; '#'", "jg loc_72E0"], "succs": [[30, "fall"], [59, "jump"]]}, {"id": 30, "start": 28908, "end": 28912, "lines": ["cmp al, 1Fh", "jle short loc_7118"], "succs": [[31, "fall"], [35, "jump"]]}, {"id": 31, "start": 28912, "end": 28928, "lines": ["mov [r12], al", "add rbx, 1", "add r14, 1", "add r12, 1"], "succs": [[32, "fall"]]}, {"id": 32, "start": 28928, "end": 28937, "lines": ["cmp rbx, r9", "jnb loc_7348"], "succs": [[33, "fall"], [63, "jump"]]}, {"id": 33, "start": 28937, "end": 28944, "lines": ["movzx eax, byte ptr [rbx]", "cmp al, 5Fh ; '_'", "jle short loc_70E0"], "succs": [[28, "jump"], [34, "fall"]]}, {"id": 34, "start": 28944, "end": 28952, "lines": ["lea ecx, [rax-61h]", "cmp cl, 1Dh", "jbe short loc_70F0"], "succs": [[31, "jump"], [35, "fall"]]}, {"id": 35, "start": 28952, "end": 28974, "lines": ["lea rax, [rbp+c]", "mov qword ptr [r13+0], 0", "mov [rbp+pc32], rax", "mov [rbp+var_68], r9", "jmp short loc_7151"], "succs": [[38, "jump"]]}, {"id": 36, "start": 28976, "end": 28992, "lines": ["mov byte ptr [r12], 3Fh ; '?'", "mov r12, [rbp+var_58]", "add rbx, r15", "add r14, 1"], "succs": [[37, "fall"]]}, {"id": 37, "start": 28992, "end": 29009, "lines": ["mov rdi, r13; ps", "call cs:mbsinit_ptr", "test eax, eax", "jnz loc_73C0"], "succs": [[38, "fall"], [70, "jump"]]}, {"id": 38, "start": 29009, "end": 29051, "lines": ["mov rdx, [rbp+var_68]", "mov rcx, r13", "mov rdi, [rbp+pc32]; pc32", "mov rsi, rbx; s", "sub rdx, rbx", "call sub_144B0", "lea rcx, [r12+1]", "mov [rbp+var_58], rcx", "cmp rax, 0FFFFFFFFFFFFFFFFh", "jz loc_7380"], "succs": [[39, "fall"], [68, "jump"]]}, {"id": 39, "start": 29051, "end": 29061, "lines": ["cmp rax, 0FFFFFFFFFFFFFFFEh", "jz loc_73A0"], "succs": [[40, "fall"], [69, "jump"]]}, {"id": 40, "start": 29061, "end": 29092, "lines": ["test rax, rax", "mov edx, 1", "mov edi, [rbp+c]; c", "cmovnz rdx, rax", "mov r15, rdx", "call cs:wcwidth_ptr", "movsxd rdi, eax", "test edi, edi", "js short loc_7130"], "succs": [[36, "jump"], [41, "fall"]]}, {"id": 41, "start": 29092, "end": 29120, "lines": ["xor eax, eax", "nop dword ptr [rax+00h]", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]"], "succs": [[42, "fall"]]}, {"id": 42, "start": 29120, "end": 29137, "lines": ["movzx edx, byte ptr [rbx+rax]", "mov [r12+rax], dl", "add rax, 1", "cmp rax, r15", "jnz short loc_71C0"], "succs": [[43, "fall"], [42, "jump"]]}, {"id": 43, "start": 29137, "end": 29151, "lines": ["add r12, rax", "add rbx, rax", "add r14, rdi", "jmp loc_7140"], "succs": [[37, "jump"]]}, {"id": 44, "start": 29152, "end": 29180, "lines": ["mov rdi, r13; s", "call cs:strlen_ptr", "mov rbx, rax", "lea r14, [rax+1]", "cmp rax, 1FFFh", "ja loc_72F8"], "succs": [[45, "fall"], [61, "jump"]]}, {"id": 45, "start": 29180, "end": 29219, "lines": ["mov rdx, r14; n", "mov rsi, r13; src", "lea r14, [r12+rbx]", "mov rdi, r12; dest", "call cs:memcpy_ptr", "mov [rbp+var_71], 0", "call cs:__ctype_get_mb_cur_max_ptr", "cmp rax, 1", "ja loc_70C0"], "succs": [[26, "jump"], [46, "fall"]]}, {"id": 46, "start": 29219, "end": 29221, "lines": ["jmp short loc_7240"], "succs": [[48, "jump"]]}, {"id": 47, "start": 29224, "end": 29239, "lines": ["mov rax, [rbp+var_88]", "mov byte ptr [rax], 0", "jmp loc_7010"], "succs": [[16, "jump"]]}, {"id": 48, "start": 29248, "end": 29253, "lines": ["cmp r12, r14", "jnb short loc_7279"], "succs": [[49, "fall"], [53, "jump"]]}, {"id": 49, "start": 29253, "end": 29280, "lines": ["call cs:__ctype_b_loc_ptr", "mov rsi, rax", "mov rax, r12", "nop dword ptr [rax+00h]", "nop word ptr [rax+rax+00000000h]"], "succs": [[50, "fall"]]}, {"id": 50, "start": 29280, "end": 29293, "lines": ["movzx ecx, byte ptr [rax]", "mov rdx, [rsi]", "test byte ptr [rdx+rcx*2+1], 40h", "jnz short loc_7270"], "succs": [[51, "fall"], [52, "jump"]]}, {"id": 51, "start": 29293, "end": 29296, "lines": ["mov byte ptr [rax], 3Fh ; '?'"], "succs": [[52, "fall"]]}, {"id": 52, "start": 29296, "end": 29305, "lines": ["add rax, 1", "cmp rax, r14", "jnz short loc_7260"], "succs": [[50, "jump"], [53, "fall"]]}, {"id": 53, "start": 29305, "end": 29313, "lines": ["mov r15, rbx", "jmp loc_735B"], "succs": [[65, "jump"]]}, {"id": 54, "start": 29320, "end": 29349, "lines": ["mov edx, 3", "mov rsi, rbx", "mov rdi, r12; s", "call sub_14AE0", "cmp cs:byte_293A8, 0", "movsxd r15, eax", "jz short loc_72C0"], "succs": [[55, "fall"], [57, "jump"]]}, {"id": 55, "start": 29349, "end": 29362, "lines": ["cmp cs:byte_293A9, 0", "jnz loc_73C9"], "succs": [[56, "fall"], [71, "jump"]]}, {"id": 56, "start": 29362, "end": 29376, "lines": ["nop dword ptr [rax]", "nop word ptr [rax+rax+00000000h]"], "succs": [[57, "fall"]]}, {"id": 57, "start": 29376, "end": 29386, "lines": ["mov rax, [rbp+var_88]", "mov byte ptr [rax], 0"], "succs": [[58, "fall"]]}, {"id": 58, "start": 29386, "end": 29398, "lines": ["mov rax, [rbp+var_60]", "mov [rax], r15", "jmp loc_7010"], "succs": [[16, "jump"]]}, {"id": 59, "start": 29408, "end": 29420, "lines": ["lea ecx, [rax-25h]", "cmp cl, 1Ah", "jbe loc_70F0"], "succs": [[31, "jump"], [60, "fall"]]}, {"id": 60, "start": 29420, "end": 29425, "lines": ["jmp loc_7118"], "succs": [[35, "jump"]]}, {"id": 61, "start": 29432, "end": 29449, "lines": ["mov rdi, r14", "call sub_1B7F0", "mov r12, rax", "jmp loc_71FC"], "succs": [[45, "jump"]]}, {"id": 62, "start": 29456, "end": 29507, "lines": ["lea rsi, [rax+1]", "mov [rbp+var_58], rsi", "mov rdi, rsi", "call sub_1B7F0", "mov rsi, [rbp+var_58]", "mov r8, r15", "mov rdx, r13", "mov r12, rax", "mov rcx, 0FFFFFFFFFFFFFFFFh", "mov rdi, rax", "call sub_19F60", "jmp loc_7078"], "succs": [[21, "jump"]]}, {"id": 63, "start": 29512, "end": 29525, "lines": ["mov r13, r12", "mov r12, [rbp+var_90]", "mov r15, r14"], "succs": [[64, "fall"]]}, {"id": 64, "start": 29525, "end": 29531, "lines": ["mov rbx, r13", "sub rbx, r12"], "succs": [[65, "fall"]]}, {"id": 65, "start": 29531, "end": 29546, "lines": ["movzx eax, cs:byte_293A8", "test al, al", "jz loc_6FBE"], "succs": [[11, "jump"], [66, "fall"]]}, {"id": 66, "start": 29546, "end": 29561, "lines": ["movzx eax, cs:byte_293A9", "test al, al", "jz loc_6FBE"], "succs": [[11, "jump"], [67, "fall"]]}, {"id": 67, "start": 29561, "end": 29566, "lines": ["jmp loc_6FB7"], "succs": [[10, "jump"]]}, {"id": 68, "start": 29568, "end": 29593, "lines": ["mov byte ptr [r12], 3Fh ; '?'", "mov r9, [rbp+var_68]", "add rbx, 1", "add r14, 1", "mov r12, rcx", "jmp loc_7100"], "succs": [[32, "jump"]]}, {"id": 69, "start": 29600, "end": 29625, "lines": ["mov r13, r12", "lea r15, [r14+1]", "mov r12, [rbp+var_90]", "mov byte ptr [r13+0], 3Fh ; '?'", "mov r13, [rbp+var_58]", "jmp short loc_7355"], "succs": [[64, "jump"]]}, {"id": 70, "start": 29632, "end": 29641, "lines": ["mov r9, [rbp+var_68]", "jmp loc_7100"], "succs": [[32, "jump"]]}, {"id": 71, "start": 29641, "end": 29662, "lines": ["movzx eax, [rbp+var_71]", "mov rsi, [rbp+var_88]", "xor eax, 1", "mov [rsi], al", "jmp loc_72CA"], "succs": [[58, "jump"]]}, {"id": 72, "start": 29662, "end": 29671, "lines": ["cmp cs:byte_293A8, 0", "jz short loc_7412"], "succs": [[73, "fall"], [76, "jump"]]}, {"id": 73, "start": 29671, "end": 29680, "lines": ["cmp cs:byte_293A9, 0", "jz short loc_7412"], "succs": [[74, "fall"], [76, "jump"]]}, {"id": 74, "start": 29680, "end": 29704, "lines": ["movzx eax, [rbp+var_71]", "mov rsi, [rbp+var_88]", "xor r15d, r15d", "xor eax, 1", "mov [rsi], al", "jmp loc_72CA"], "succs": [[58, "jump"]]}, {"id": 75, "start": 29704, "end": 29714, "lines": ["xor ebx, ebx", "xor r15d, r15d", "jmp loc_735B"], "succs": [[65, "jump"]]}, {"id": 76, "start": 29714, "end": 29732, "lines": ["mov rax, [rbp+var_88]", "xor r15d, r15d", "mov byte ptr [rax], 0", "jmp loc_72CA"], "succs": [[58, "jump"]]}, {"id": 77, "start": 29732, "end": 29738, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_D4D0", "ea": 54480, "blocks": [{"id": 0, "start": 54480, "end": 54567, "lines": ["push rbp", "mov rbp, rsp", "push r15", "push r14", "mov r14, rdi", "push r13", "push r12", "push rbx", "mov rbx, rsi", "sub rsp, 368h", "mov [rbp+src], rdi", "mov [rbp+var_384], edx", "mov rax, fs:28h", "mov [rbp+var_38], rax", "xor eax, eax", "call cs:__errno_location_ptr", "mov rdi, r14; name", "mov dword ptr [rax], 0", "mov r13, rax", "call cs:opendir_ptr", "test rax, rax", "jz loc_DBA0"], "succs": [[1, "fall"], [69, "jump"]]}, {"id": 1, "start": 54567, "end": 54584, "lines": ["cmp cs:qword_293C8, 0", "mov r14, rax", "jz loc_D64B"], "succs": [[2, "fall"], [9, "jump"]]}, {"id": 2, "start": 54584, "end": 54614, "lines": ["mov rdi, rax; dirp", "call cs:dirfd_ptr", "lea rdx, [rbp+var_360]", "mov r8d, 100h", "test eax, eax", "js loc_D9E8"], "succs": [[3, "fall"], [54, "jump"]]}, {"id": 3, "start": 54614, "end": 54641, "lines": ["mov ecx, 1000h", "lea rsi, accept+3; \"\"", "mov edi, eax", "call sub_6040", "test eax, eax", "js loc_DA03"], "succs": [[4, "fall"], [55, "jump"]]}, {"id": 4, "start": 54641, "end": 54711, "lines": ["movdqa xmm0, [rbp+var_360]", "mov edi, 10h", "shufpd xmm0, xmm0, 1", "movaps [rbp+var_380], xmm0", "call sub_1B7F0", "movdqa xmm0, [rbp+var_380]", "mov rdi, cs:qword_293C8", "mov r12, rax", "mov rsi, rax", "movups xmmword ptr [rax], xmm0", "call sub_12CC0", "test rax, rax", "jz loc_DBE7"], "succs": [[5, "fall"], [71, "jump"]]}, {"id": 5, "start": 54711, "end": 54716, "lines": ["cmp r12, rax", "jz short loc_D61A"], "succs": [[6, "fall"], [7, "jump"]]}, {"id": 6, "start": 54716, "end": 54810, "lines": ["mov rdi, r12; ptr", "call cs:free_ptr", "mov rdx, [rbp+src]", "mov esi, 3", "xor edi, edi", "call sub_1A610", "mov edx, 5; category", "lea rsi, aSNotListingAlr; \"%s: not listing already-listed director\"...", "xor edi, edi; domainname", "mov rbx, rax", "call cs:dcgettext_ptr", "mov rcx, rbx", "xor esi, esi", "xor edi, edi", "mov rdx, rax", "xor eax, eax", "call error", "mov rdi, r14; dirp", "call cs:closedir_ptr", "mov cs:dword_29210, 2", "jmp loc_D80A"], "succs": [[32, "jump"]]}, {"id": 7, "start": 54810, "end": 54837, "lines": ["mov rax, cs:qword_290F8", "mov rdx, cs:qword_29100", "sub rdx, rax", "cmp rdx, 0Fh", "jbe loc_DB6C"], "succs": [[8, "fall"], [66, "jump"]]}, {"id": 8, "start": 54837, "end": 54859, "lines": ["movdqa xmm1, [rbp+var_380]", "lea rdx, [rax+10h]", "mov cs:qword_290F8, rdx", "movups xmmword ptr [rax], xmm1"], "succs": [[9, "fall"]]}, {"id": 9, "start": 54859, "end": 54877, "lines": ["call sub_79A0", "cmp cs:byte_292F6, 0", "jz loc_D9C9"], "succs": [[10, "fall"], [51, "jump"]]}, {"id": 10, "start": 54877, "end": 54890, "lines": ["cmp cs:byte_28014, 0", "jz loc_DAF8"], "succs": [[11, "fall"], [61, "jump"]]}, {"id": 11, "start": 54890, "end": 54910, "lines": ["cmp cs:byte_29318, 0", "mov cs:byte_28014, 0", "jnz loc_DB30"], "succs": [[12, "fall"], [63, "jump"]]}, {"id": 12, "start": 54910, "end": 54926, "lines": ["xor r12d, r12d", "cmp cs:byte_29311, 0", "jnz loc_DAA6"], "succs": [[13, "fall"], [59, "jump"]]}, {"id": 13, "start": 54926, "end": 55006, "lines": ["test rbx, rbx", "cmovz rbx, [rbp+src]", "sub rsp, 8", "xor ecx, ecx", "push r12", "mov rsi, cs:qword_292C8", "mov edx, 0FFFFFFFFh", "lea r9, unk_29140", "mov rdi, rbx", "mov r8d, 1", "call sub_A410", "mov rdi, r12; ptr", "call cs:free_ptr", "pop rdx", "pop rcx", "mov esi, 2", "lea rdi, aValidArguments+13h; \":\\n\"", "call sub_6450"], "succs": [[14, "fall"]]}, {"id": 14, "start": 55006, "end": 55040, "lines": ["movzx eax, byte ptr [rbp+var_384]", "mov [rbp+var_370], 0", "mov dword ptr [rbp+var_380], eax", "nop word ptr [rax+rax+00000000h]"], "succs": [[15, "fall"]]}, {"id": 15, "start": 55040, "end": 55065, "lines": ["mov dword ptr [r13+0], 0", "mov rdi, r14; dirp", "call cs:readdir_ptr", "mov r12, rax", "test rax, rax", "jz short loc_D790"], "succs": [[16, "fall"], [25, "jump"]]}, {"id": 16, "start": 55065, "end": 55084, "lines": ["lea rbx, [rax+13h]", "mov eax, cs:dword_292F0", "cmp eax, 2", "jz loc_D920"], "succs": [[17, "fall"], [41, "jump"]]}, {"id": 17, "start": 55084, "end": 55096, "lines": ["cmp byte ptr [r12+13h], 2Eh ; '.'", "jz loc_D8F8"], "succs": [[18, "fall"], [38, "jump"]]}, {"id": 18, "start": 55096, "end": 55104, "lines": ["test eax, eax", "jnz loc_D920"], "succs": [[19, "fall"], [41, "jump"]]}, {"id": 19, "start": 55104, "end": 55116, "lines": ["mov r15, cs:qword_292E0", "test r15, r15", "jnz short loc_D765"], "succs": [[20, "fall"], [22, "jump"]]}, {"id": 20, "start": 55116, "end": 55121, "lines": ["jmp loc_D920"], "succs": [[41, "jump"]]}, {"id": 21, "start": 55128, "end": 55141, "lines": ["mov r15, [r15+8]", "test r15, r15", "jz loc_D920"], "succs": [[22, "fall"], [41, "jump"]]}, {"id": 22, "start": 55141, "end": 55162, "lines": ["mov rdi, [r15]; pattern", "mov edx, 4; flags", "mov rsi, rbx; name", "call cs:fnmatch_ptr", "test eax, eax", "jnz short loc_D758"], "succs": [[21, "jump"], [23, "fall"]]}, {"id": 23, "start": 55162, "end": 55168, "lines": ["nop word ptr [rax+rax+00h]"], "succs": [[24, "fall"]]}, {"id": 24, "start": 55168, "end": 55178, "lines": ["call sub_7C60", "jmp loc_D700"], "succs": [[15, "jump"]]}, {"id": 25, "start": 55184, "end": 55192, "lines": ["mov ebx, [r13+0]", "test ebx, ebx", "jz short loc_D7C6"], "succs": [[26, "fall"], [27, "jump"]]}, {"id": 26, "start": 55192, "end": 55238, "lines": ["xor edi, edi; domainname", "mov edx, 5; category", "lea rsi, aReadingDirecto; \"reading directory %s\"", "call cs:dcgettext_ptr", "mov rdx, [rbp+src]", "mov edi, dword ptr [rbp+var_380]", "mov rsi, rax", "call sub_6A80", "cmp ebx, 4Bh ; 'K'", "jz short loc_D780"], "succs": [[24, "jump"], [27, "fall"]]}, {"id": 27, "start": 55238, "end": 55255, "lines": ["mov rdi, r14; dirp", "call cs:closedir_ptr", "test eax, eax", "jnz loc_DA57"], "succs": [[28, "fall"], [57, "jump"]]}, {"id": 28, "start": 55255, "end": 55273, "lines": ["call sub_83D0", "cmp cs:byte_292F6, 0", "jnz loc_DA93"], "succs": [[29, "fall"], [58, "jump"]]}, {"id": 29, "start": 55273, "end": 55283, "lines": ["mov eax, cs:dword_2933C", "test eax, eax", "jz short loc_D830"], "succs": [[30, "fall"], [34, "jump"]]}, {"id": 30, "start": 55283, "end": 55292, "lines": ["cmp cs:byte_2932C, 0", "jnz short loc_D830"], "succs": [[31, "fall"], [34, "jump"]]}, {"id": 31, "start": 55292, "end": 55306, "lines": ["cmp cs:qword_293B0, 0", "jnz loc_D8CE"], "succs": [[32, "fall"], [36, "jump"]]}, {"id": 32, "start": 55306, "end": 55325, "lines": ["mov rax, [rbp+var_38]", "sub rax, fs:28h", "jnz loc_DB9A"], "succs": [[33, "fall"], [68, "jump"]]}, {"id": 33, "start": 55325, "end": 55340, "lines": ["lea rsp, [rbp-28h]", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 34, "start": 55344, "end": 55431, "lines": ["mov edx, cs:dword_29328", "mov r8, cs:qword_29320", "lea rsi, [rbp+var_2CF]", "mov ecx, 200h", "mov rdi, [rbp+var_370]", "call sub_13000", "mov rbx, rax", "mov rdi, rax; s", "call cs:strlen_ptr", "movzx edx, cs:byte_2801D", "mov byte ptr [rbx-1], 20h ; ' '", "lea r12, [rbx-1]", "add rax, rbx", "cmp cs:byte_29318, 0", "mov [rax], dl", "lea rbx, [rax+1]", "jnz loc_DB56"], "succs": [[35, "fall"], [65, "jump"]]}, {"id": 35, "start": 55431, "end": 55502, "lines": ["mov edx, 5; category", "lea rsi, aTotal; \"total\"", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov r13, rax", "mov rdi, rax; s", "call cs:strlen_ptr", "mov rdi, r13", "mov rsi, rax", "call sub_6450", "mov rsi, rbx", "mov rdi, r12", "sub rsi, r12", "call sub_6450", "cmp cs:qword_293B0, 0", "jz loc_D80A"], "succs": [[32, "jump"], [36, "fall"]]}, {"id": 36, "start": 55502, "end": 55521, "lines": ["mov rax, [rbp+var_38]", "sub rax, fs:28h", "jnz loc_DB9A"], "succs": [[37, "fall"], [68, "jump"]]}, {"id": 37, "start": 55521, "end": 55540, "lines": ["lea rsp, [rbp-28h]", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "jmp sub_BEE0"], "succs": [[73, "jump"]]}, {"id": 38, "start": 55544, "end": 55552, "lines": ["test eax, eax", "jz loc_D780"], "succs": [[24, "jump"], [39, "fall"]]}, {"id": 39, "start": 55552, "end": 55575, "lines": ["xor eax, eax", "cmp byte ptr [r12+14h], 2Eh ; '.'", "setz al", "cmp byte ptr [r12+rax+14h], 0", "jz loc_D780"], "succs": [[24, "jump"], [40, "fall"]]}, {"id": 40, "start": 55575, "end": 55584, "lines": ["nop word ptr [rax+rax+00000000h]"], "succs": [[41, "fall"]]}, {"id": 41, "start": 55584, "end": 55596, "lines": ["mov r15, cs:qword_292E8", "test r15, r15", "jnz short loc_D939"], "succs": [[42, "fall"], [44, "jump"]]}, {"id": 42, "start": 55596, "end": 55598, "lines": ["jmp short loc_D958"], "succs": [[46, "jump"]]}, {"id": 43, "start": 55600, "end": 55609, "lines": ["mov r15, [r15+8]", "test r15, r15", "jz short loc_D958"], "succs": [[44, "fall"], [46, "jump"]]}, {"id": 44, "start": 55609, "end": 55630, "lines": ["mov rdi, [r15]; pattern", "mov edx, 4; flags", "mov rsi, rbx; name", "call cs:fnmatch_ptr", "test eax, eax", "jnz short loc_D930"], "succs": [[43, "jump"], [45, "fall"]]}, {"id": 45, "start": 55630, "end": 55635, "lines": ["jmp loc_D780"], "succs": [[24, "jump"]]}, {"id": 46, "start": 55640, "end": 55694, "lines": ["movzx eax, byte ptr [r12+12h]", "lea rcx, unk_1D7A0", "xor edx, edx", "mov rdi, rbx; s", "movsx esi, byte ptr [rcx+rax]", "mov rcx, [rbp+src]", "call sub_C320", "add [rbp+var_370], rax", "cmp cs:dword_2933C, 1", "jnz loc_D780"], "succs": [[24, "jump"], [47, "fall"]]}, {"id": 47, "start": 55694, "end": 55707, "lines": ["cmp cs:dword_29330, 6", "jnz loc_D780"], "succs": [[24, "jump"], [48, "fall"]]}, {"id": 48, "start": 55707, "end": 55720, "lines": ["cmp cs:byte_2932C, 0", "jnz loc_D780"], "succs": [[24, "jump"], [49, "fall"]]}, {"id": 49, "start": 55720, "end": 55733, "lines": ["cmp cs:byte_292F6, 0", "jnz loc_D780"], "succs": [[24, "jump"], [50, "fall"]]}, {"id": 50, "start": 55733, "end": 55753, "lines": ["call sub_83D0", "call sub_BEE0", "call sub_79A0", "jmp loc_D780"], "succs": [[24, "jump"]]}, {"id": 51, "start": 55753, "end": 55766, "lines": ["cmp cs:byte_292B8, 0", "jz loc_D6DE"], "succs": [[14, "jump"], [52, "fall"]]}, {"id": 52, "start": 55766, "end": 55779, "lines": ["cmp cs:byte_28014, 0", "jnz loc_D66A"], "succs": [[11, "jump"], [53, "fall"]]}, {"id": 53, "start": 55779, "end": 55784, "lines": ["jmp loc_DAF8"], "succs": [[61, "jump"]]}, {"id": 54, "start": 55784, "end": 55811, "lines": ["mov rsi, [rbp+src]", "xor ecx, ecx", "mov edi, 0FFFFFF9Ch", "call sub_6040", "test eax, eax", "jns loc_D571"], "succs": [[4, "jump"], [55, "fall"]]}, {"id": 55, "start": 55811, "end": 55872, "lines": ["xor edi, edi; domainname", "mov edx, 5; category", "lea rsi, aCannotDetermin; \"cannot determine device and inode of %s\"", "call cs:dcgettext_ptr", "movzx edi, byte ptr [rbp+var_384]", "mov rdx, [rbp+src]", "mov rsi, rax", "call sub_6A80", "mov rax, [rbp+var_38]", "sub rax, fs:28h", "jnz loc_DB9A"], "succs": [[56, "fall"], [68, "jump"]]}, {"id": 56, "start": 55872, "end": 55895, "lines": ["lea rsp, [rbp-28h]", "mov rdi, r14; dirp", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "jmp cs:closedir_ptr"], "succs": [[74, "jump"]]}, {"id": 57, "start": 55895, "end": 55955, "lines": ["xor edi, edi; domainname", "mov edx, 5; category", "lea rsi, aClosingDirecto; \"closing directory %s\"", "call cs:dcgettext_ptr", "movzx edi, byte ptr [rbp+var_384]", "mov rdx, [rbp+src]", "mov rsi, rax", "call sub_6A80", "call sub_83D0", "cmp cs:byte_292F6, 0", "jz loc_D7E9"], "succs": [[29, "jump"], [58, "fall"]]}, {"id": 58, "start": 55955, "end": 55974, "lines": ["mov rdi, [rbp+src]", "xor esi, esi", "call sub_8B90", "jmp loc_D7E9"], "succs": [[29, "jump"]]}, {"id": 59, "start": 55974, "end": 56004, "lines": ["mov rdi, [rbp+src]; src", "mov esi, 2", "call sub_FB40", "mov r12, rax", "test rax, rax", "jnz loc_D68E"], "succs": [[13, "jump"], [60, "fall"]]}, {"id": 60, "start": 56004, "end": 56051, "lines": ["xor edi, edi; domainname", "mov edx, 5; category", "lea rsi, aErrorCanonical; \"error canonicalizing %s\"", "call cs:dcgettext_ptr", "mov rdx, [rbp+src]", "movzx edi, byte ptr [rbp+var_384]", "mov rsi, rax", "call sub_6A80", "jmp loc_D68E"], "succs": [[13, "jump"]]}, {"id": 61, "start": 56056, "end": 56081, "lines": ["mov rdi, cs:stdout; _IO_FILE *", "add cs:qword_291F8, 1", "mov rax, [rdi+28h]", "cmp rax, [rdi+30h]", "jnb short loc_DB8A"], "succs": [[62, "fall"], [67, "jump"]]}, {"id": 62, "start": 56081, "end": 56112, "lines": ["lea rdx, [rax+1]", "cmp cs:byte_29318, 0", "mov cs:byte_28014, 0", "mov [rdi+28h], rdx", "mov byte ptr [rax], 0Ah", "jz loc_D67E"], "succs": [[12, "jump"], [63, "fall"]]}, {"id": 63, "start": 56112, "end": 56145, "lines": ["mov esi, 2", "lea rdi, asc_1F00A; \" \"", "xor r12d, r12d", "call sub_6450", "cmp cs:byte_29311, 0", "jz loc_D68E"], "succs": [[13, "jump"], [64, "fall"]]}, {"id": 64, "start": 56145, "end": 56150, "lines": ["jmp loc_DAA6"], "succs": [[59, "jump"]]}, {"id": 65, "start": 56150, "end": 56172, "lines": ["mov esi, 2", "lea rdi, asc_1F00A; \" \"", "call sub_6450", "jmp loc_D887"], "succs": [[35, "jump"]]}, {"id": 66, "start": 56172, "end": 56202, "lines": ["mov esi, 10h", "lea rdi, unk_290E0", "call sub_17F50", "mov rax, cs:qword_290F8", "jmp loc_D635"], "succs": [[8, "jump"]]}, {"id": 67, "start": 56202, "end": 56218, "lines": ["mov esi, 0Ah; int", "call cs:__overflow_ptr", "jmp loc_D66A"], "succs": [[11, "jump"]]}, {"id": 68, "start": 56218, "end": 56224, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 69, "start": 56224, "end": 56259, "lines": ["mov edx, 5; category", "xor edi, edi; domainname", "lea rsi, aCannotOpenDire; \"cannot open directory %s\"", "call cs:dcgettext_ptr", "mov rdx, [rbp+var_38]", "sub rdx, fs:28h", "jnz short loc_DB9A"], "succs": [[68, "jump"], [70, "fall"]]}, {"id": 70, "start": 56259, "end": 56295, "lines": ["movzx edi, byte ptr [rbp+var_384]", "mov rdx, [rbp+src]", "lea rsp, [rbp-28h]", "mov rsi, rax", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "jmp sub_6A80"], "succs": [[75, "jump"]]}, {"id": 71, "start": 56295, "end": 56310, "lines": ["mov rax, [rbp+var_38]", "sub rax, fs:28h", "jnz short loc_DB9A"], "succs": [[68, "jump"], [72, "fall"]]}, {"id": 72, "start": 56310, "end": 56316, "lines": ["call sub_1BCB0"], "succs": []}, {"id": 73, "start": 48864, "end": 48864, "lines": [], "succs": []}, {"id": 74, "start": 169760, "end": 169760, "lines": [], "succs": []}, {"id": 75, "start": 27264, "end": 27264, "lines": [], "succs": []}]}, {"name": "sub_10850", "ea": 67664, "blocks": [{"id": 0, "start": 67664, "end": 67764, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r15", "push r14", "push r13", "mov r13d, edi", "push r12", "mov r12, rdx", "push rbx", "mov ebx, ecx", "lea r14, [r12+1Ch]", "sub rsp, 0D8h", "mov [rbp+path], rsi", "mov [rbp+var_EC], ecx", "mov rax, fs:28h", "mov [rbp+var_38], rax", "xor eax, eax", "call cs:__errno_location_ptr", "and ebx, 20000h", "mov r15, rax", "mov eax, [rax]", "mov [rbp+var_F4], ebx", "mov [rbp+var_F0], eax", "jz loc_10B78"], "succs": [[1, "fall"], [40, "jump"]]}, {"id": 1, "start": 67764, "end": 67778, "lines": ["mov rax, cs:listxattr_ptr", "mov [rbp+var_E0], rax"], "succs": [[2, "fall"]]}, {"id": 2, "start": 67778, "end": 67792, "lines": ["mov rsi, r14; list", "mov ebx, 98h", "nop word ptr [rax+rax+00h]"], "succs": [[3, "fall"]]}, {"id": 3, "start": 67792, "end": 67808, "lines": ["mov [r12], rsi", "mov rdx, rbx; size", "test r13d, r13d", "jns loc_10A28"], "succs": [[4, "fall"], [24, "jump"]]}, {"id": 4, "start": 67808, "end": 67838, "lines": ["mov rdi, [rbp+path]", "call [rbp+var_E0]", "mov rdx, rax", "mov [r12+8], rdx", "test rdx, rdx", "jg loc_10A42"], "succs": [[5, "fall"], [25, "jump"]]}, {"id": 5, "start": 67838, "end": 67840, "lines": ["jnz short loc_10950"], "succs": [[6, "fall"], [11, "jump"]]}, {"id": 6, "start": 67840, "end": 67861, "lines": ["mov qword ptr [r12+18h], 5Fh ; '_'", "lea rax, unk_21D82", "mov [r12+10h], rax"], "succs": [[7, "fall"]]}, {"id": 7, "start": 67861, "end": 67863, "lines": ["xor edx, edx"], "succs": [[8, "fall"]]}, {"id": 8, "start": 67863, "end": 67872, "lines": ["mov eax, [rbp+var_F0]", "mov [r15], eax"], "succs": [[9, "fall"]]}, {"id": 9, "start": 67872, "end": 67891, "lines": ["mov rax, [rbp+var_38]", "sub rax, fs:28h", "jnz loc_10DA4"], "succs": [[10, "fall"], [74, "jump"]]}, {"id": 10, "start": 67891, "end": 67911, "lines": ["add rsp, 0D8h", "mov eax, edx", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 11, "start": 67920, "end": 67937, "lines": ["mov eax, [r15]", "mov [r12+1Ch], eax", "cmp eax, 22h ; '\"'", "jnz loc_10DAA"], "succs": [[12, "fall"], [75, "jump"]]}, {"id": 12, "start": 67937, "end": 67956, "lines": ["mov rax, 7FFFFFFFFFFFFFFFh", "cmp rbx, rax", "jz loc_10DAA"], "succs": [[13, "fall"], [75, "jump"]]}, {"id": 13, "start": 67956, "end": 67969, "lines": ["xor edx, edx; size", "xor esi, esi; list", "test r13d, r13d", "jns loc_10AF0"], "succs": [[14, "fall"], [34, "jump"]]}, {"id": 14, "start": 67969, "end": 67994, "lines": ["mov rdi, [rbp+path]", "call [rbp+var_E0]", "mov rdx, rax", "test rdx, rdx", "jle loc_10B05"], "succs": [[15, "fall"], [35, "jump"]]}, {"id": 15, "start": 67994, "end": 68003, "lines": ["mov rdi, [r12]; ptr", "cmp r14, rdi", "jz short loc_109BB"], "succs": [[16, "fall"], [17, "jump"]]}, {"id": 16, "start": 68003, "end": 68027, "lines": ["mov [rbp+var_E8], rdx", "call cs:free_ptr", "mov [r12], r14", "mov rdx, [rbp+var_E8]"], "succs": [[17, "fall"]]}, {"id": 17, "start": 68027, "end": 68042, "lines": ["mov rax, rbx", "sar rax, 1", "add rbx, rax", "js loc_10D8B"], "succs": [[18, "fall"], [72, "jump"]]}, {"id": 18, "start": 68042, "end": 68051, "lines": ["cmp rbx, rax", "jb loc_10D8B"], "succs": [[19, "fall"], [72, "jump"]]}, {"id": 19, "start": 68051, "end": 68061, "lines": ["cmp rbx, rdx", "cmovl rbx, rdx", "mov rdi, rbx; size"], "succs": [[20, "fall"]]}, {"id": 20, "start": 68061, "end": 68079, "lines": ["call cs:malloc_ptr", "mov rsi, rax", "test rax, rax", "jnz loc_108D0"], "succs": [[3, "jump"], [21, "fall"]]}, {"id": 21, "start": 68079, "end": 68122, "lines": ["mov eax, [r15]", "mov rdx, [r12+8]", "mov dword ptr [r12+18h], 5Fh ; '_'", "mov [r12+1Ch], eax", "lea rax, unk_21D82", "mov [r12+10h], rax", "test rdx, rdx", "js loc_10B2D"], "succs": [[22, "fall"], [37, "jump"]]}, {"id": 22, "start": 68122, "end": 68124, "lines": ["jnz short loc_10A57"], "succs": [[23, "fall"], [26, "jump"]]}, {"id": 23, "start": 68124, "end": 68129, "lines": ["jmp loc_10915"], "succs": [[7, "jump"]]}, {"id": 24, "start": 68136, "end": 68162, "lines": ["mov edi, r13d; fd", "call cs:flistxattr_ptr", "mov rdx, rax", "mov [r12+8], rdx", "test rdx, rdx", "jle loc_108FE"], "succs": [[5, "jump"], [25, "fall"]]}, {"id": 25, "start": 68162, "end": 68183, "lines": ["mov dword ptr [r12+18h], 5Fh ; '_'", "lea rax, unk_21D82", "mov [r12+10h], rax"], "succs": [[26, "fall"]]}, {"id": 26, "start": 68183, "end": 68223, "lines": ["mov r8d, [rbp+var_EC]", "mov rcx, [rbp+path]", "mov edx, r13d", "mov rsi, r12", "lea rdi, aSystemNfs4Acl; \"system.nfs4_acl\"", "call sub_10720", "test al, al", "jz loc_10CF8"], "succs": [[27, "fall"], [65, "jump"]]}, {"id": 27, "start": 68223, "end": 68232, "lines": ["test r13d, r13d", "jns loc_10B90"], "succs": [[28, "fall"], [41, "jump"]]}, {"id": 28, "start": 68232, "end": 68246, "lines": ["mov edx, [rbp+var_F4]", "test edx, edx", "jnz loc_10C70"], "succs": [[29, "fall"], [54, "jump"]]}, {"id": 29, "start": 68246, "end": 68253, "lines": ["mov rax, cs:lgetxattr_ptr"], "succs": [[30, "fall"]]}, {"id": 30, "start": 68253, "end": 68289, "lines": ["mov rdi, [rbp+path]; path", "lea rdx, [rbp+value]; value", "mov ecx, 98h; size", "lea rsi, aSystemNfs4Acl; \"system.nfs4_acl\"", "call rax ; lgetxattr", "test eax, eax", "jns loc_10BB4"], "succs": [[31, "fall"], [42, "jump"]]}, {"id": 31, "start": 68289, "end": 68301, "lines": ["mov edi, [r15]", "cmp edi, 22h ; '\"'", "jz loc_10C80"], "succs": [[32, "fall"], [55, "jump"]]}, {"id": 32, "start": 68301, "end": 68310, "lines": ["cmp edi, 3Dh ; '='", "jz loc_10D2A"], "succs": [[33, "fall"], [67, "jump"]]}, {"id": 33, "start": 68310, "end": 68326, "lines": ["call sub_F320", "movzx edx, al", "neg edx", "jmp loc_10920"], "succs": [[9, "jump"]]}, {"id": 34, "start": 68336, "end": 68357, "lines": ["mov edi, r13d; fd", "call cs:flistxattr_ptr", "mov rdx, rax", "test rdx, rdx", "jg loc_1099A"], "succs": [[15, "jump"], [35, "fall"]]}, {"id": 35, "start": 68357, "end": 68368, "lines": ["mov [r12+8], rdx", "jz loc_10900"], "succs": [[6, "jump"], [36, "fall"]]}, {"id": 36, "start": 68368, "end": 68397, "lines": ["mov dword ptr [r12+18h], 5Fh ; '_'", "mov eax, [r15]", "mov [r12+1Ch], eax", "lea rax, unk_21D82", "mov [r12+10h], rax"], "succs": [[37, "fall"]]}, {"id": 37, "start": 68397, "end": 68439, "lines": ["mov ebx, [r12+1Ch]", "mov [rbp+var_E0], rdx", "mov edi, ebx", "call sub_F320", "cmp ebx, 0Dh", "mov esi, eax", "setz al", "cmp ebx, 7", "setz cl", "or al, cl", "jnz loc_10A57"], "succs": [[26, "jump"], [38, "fall"]]}, {"id": 38, "start": 68439, "end": 68456, "lines": ["cmp sil, 1", "mov rdx, [rbp+var_E0]", "jnz loc_10A57"], "succs": [[26, "jump"], [39, "fall"]]}, {"id": 39, "start": 68456, "end": 68467, "lines": ["mov [rbp+var_F0], ebx", "jmp loc_10917"], "succs": [[8, "jump"]]}, {"id": 40, "start": 68472, "end": 68491, "lines": ["mov rax, cs:llistxattr_ptr", "mov [rbp+var_E0], rax", "jmp loc_108C2"], "succs": [[2, "jump"]]}, {"id": 41, "start": 68496, "end": 68532, "lines": ["lea rdx, [rbp+value]; value", "mov ecx, 98h; size", "lea rsi, aSystemNfs4Acl; \"system.nfs4_acl\"", "mov edi, r13d; fd", "call cs:fgetxattr_ptr", "test eax, eax", "js loc_10AC1"], "succs": [[31, "jump"], [42, "fall"]]}, {"id": 42, "start": 68532, "end": 68545, "lines": ["movsxd rsi, eax", "sub rsi, 4", "js loc_10D38"], "succs": [[43, "fall"], [68, "jump"]]}, {"id": 43, "start": 68545, "end": 68570, "lines": ["mov r10d, [rbp+value]", "mov edx, 1", "bswap r10d", "cmp r10d, 6", "ja loc_10917"], "succs": [[8, "jump"], [44, "fall"]]}, {"id": 44, "start": 68570, "end": 68584, "lines": ["mov eax, [rbp+value]", "test eax, eax", "jz loc_10D9D"], "succs": [[45, "fall"], [73, "jump"]]}, {"id": 45, "start": 68584, "end": 68608, "lines": ["xor r9d, r9d", "xor r8d, r8d", "lea rdi, [rbp+var_CC]", "mov rbx, 454E4F5952455645h", "nop"], "succs": [[46, "fall"]]}, {"id": 46, "start": 68608, "end": 68618, "lines": ["sub rsi, 10h", "js loc_10D38"], "succs": [[47, "fall"], [68, "jump"]]}, {"id": 47, "start": 68618, "end": 68627, "lines": ["mov ecx, [rdi]", "bswap ecx", "cmp ecx, 1", "ja short loc_10C64"], "succs": [[48, "fall"], [53, "jump"]]}, {"id": 48, "start": 68627, "end": 68636, "lines": ["test dword ptr [rdi+4], 0BFFFFFFFh", "jnz short loc_10C64"], "succs": [[49, "fall"], [53, "jump"]]}, {"id": 49, "start": 68636, "end": 68682, "lines": ["mov edx, [rdi+0Ch]", "xor eax, eax", "mov r12d, edx", "test edx, 3000000h", "setnz al", "bswap r12d", "shr r12d, 2", "add eax, r12d", "mov eax, eax", "lea r12, ds:0[rax*4]", "sub rsi, r12", "js loc_10D38"], "succs": [[50, "fall"], [68, "jump"]]}, {"id": 50, "start": 68682, "end": 68694, "lines": ["lea r12, [rdi+10h]", "cmp edx, 6000000h", "jz short loc_10C90"], "succs": [[51, "fall"], [56, "jump"]]}, {"id": 51, "start": 68694, "end": 68702, "lines": ["cmp edx, 9000000h", "jnz short loc_10C64"], "succs": [[52, "fall"], [53, "jump"]]}, {"id": 52, "start": 68702, "end": 68708, "lines": ["cmp [rdi+10h], rbx", "jz short loc_10CC0"], "succs": [[53, "fall"], [60, "jump"]]}, {"id": 53, "start": 68708, "end": 68718, "lines": ["mov edx, 1", "jmp loc_10917"], "succs": [[8, "jump"]]}, {"id": 54, "start": 68720, "end": 68732, "lines": ["mov rax, cs:getxattr_ptr", "jmp loc_10A9D"], "succs": [[30, "jump"]]}, {"id": 55, "start": 68736, "end": 68746, "lines": ["mov edx, 1", "jmp loc_10920"], "succs": [[9, "jump"]]}, {"id": 56, "start": 68752, "end": 68765, "lines": ["cmp dword ptr [rdi+10h], 454E574Fh", "jz loc_10D50"], "succs": [[57, "fall"], [69, "jump"]]}, {"id": 57, "start": 68765, "end": 68775, "lines": ["cmp dword ptr [r12], 554F5247h", "jnz short loc_10C64"], "succs": [[53, "jump"], [58, "fall"]]}, {"id": 58, "start": 68775, "end": 68785, "lines": ["cmp word ptr [r12+4], 4050h", "jnz short loc_10C64"], "succs": [[53, "jump"], [59, "fall"]]}, {"id": 59, "start": 68785, "end": 68790, "lines": ["or ecx, 2", "jmp short loc_10CCB"], "succs": [[62, "jump"]]}, {"id": 60, "start": 68800, "end": 68808, "lines": ["cmp byte ptr [r12+8], 40h ; '@'", "jnz short loc_10C64"], "succs": [[53, "jump"], [61, "fall"]]}, {"id": 61, "start": 68808, "end": 68811, "lines": ["or ecx, 4"], "succs": [[62, "fall"]]}, {"id": 62, "start": 68811, "end": 68825, "lines": ["mov edi, 1", "mov edx, r8d", "shl edi, cl", "and edx, edi", "jnz short loc_10C64"], "succs": [[53, "jump"], [63, "fall"]]}, {"id": 63, "start": 68825, "end": 68845, "lines": ["add r9d, 1", "or r8d, edi", "lea rdi, [r12+rax*4]", "cmp r9d, r10d", "jb loc_10C00"], "succs": [[46, "jump"], [64, "fall"]]}, {"id": 64, "start": 68845, "end": 68850, "lines": ["jmp loc_10917"], "succs": [[8, "jump"]]}, {"id": 65, "start": 68856, "end": 68898, "lines": ["mov ebx, [rbp+var_EC]", "mov rcx, [rbp+path]", "mov edx, r13d", "mov rsi, r12", "lea rdi, aSystemPosixAcl; \"system.posix_acl_access\"", "mov r8d, ebx", "call sub_10720", "test al, al", "jnz loc_10C80"], "succs": [[55, "jump"], [66, "fall"]]}, {"id": 66, "start": 68898, "end": 68906, "lines": ["and ebx, 0FBh", "jz short loc_10D63"], "succs": [[67, "fall"], [71, "jump"]]}, {"id": 67, "start": 68906, "end": 68913, "lines": ["xor edx, edx", "jmp loc_10920"], "succs": [[9, "jump"]]}, {"id": 68, "start": 68920, "end": 68940, "lines": ["mov [rbp+var_F0], 16h", "mov edx, 0FFFFFFFFh", "jmp loc_10917"], "succs": [[8, "jump"]]}, {"id": 69, "start": 68944, "end": 68958, "lines": ["cmp word ptr [r12+4], 4052h", "jnz loc_10C9D"], "succs": [[57, "jump"], [70, "fall"]]}, {"id": 70, "start": 68958, "end": 68963, "lines": ["jmp loc_10CCB"], "succs": [[62, "jump"]]}, {"id": 71, "start": 68963, "end": 69003, "lines": ["mov r8d, [rbp+var_EC]", "mov rcx, [rbp+path]", "mov edx, r13d", "mov rsi, r12", "lea rdi, aSystemPosixAcl_0; \"system.posix_acl_default\"", "call sub_10720", "movzx edx, al", "jmp loc_10920"], "succs": [[9, "jump"]]}, {"id": 72, "start": 69003, "end": 69021, "lines": ["mov rdi, 7FFFFFFFFFFFFFFFh", "mov rbx, rdi", "jmp loc_109DD"], "succs": [[20, "jump"]]}, {"id": 73, "start": 69021, "end": 69028, "lines": ["xor edx, edx", "jmp loc_10917"], "succs": [[8, "jump"]]}, {"id": 74, "start": 69028, "end": 69034, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 75, "start": 69034, "end": 69060, "lines": ["mov dword ptr [r12+18h], 5Fh ; '_'", "lea rax, unk_21D82", "mov [r12+10h], rax", "jmp loc_10B2D"], "succs": [[37, "jump"]]}]}, {"name": "sub_6600", "ea": 26112, "blocks": [{"id": 0, "start": 26112, "end": 26150, "lines": ["push rbp", "mov rbp, rsp", "push r15", "push r14", "push r13", "mov r13, rsi", "push r12", "mov r12, rdi", "push rbx", "sub rsp, 28h", "mov eax, cs:dword_28010", "cmp eax, 0FFFFFFFFh", "jz loc_69CD"], "succs": [[1, "fall"], [44, "jump"]]}, {"id": 1, "start": 26150, "end": 26169, "lines": ["mov rbx, cs:stdout", "mov [rbp+stream], rbx", "test eax, eax", "jnz loc_6A1C"], "succs": [[2, "fall"], [48, "jump"]]}, {"id": 2, "start": 26169, "end": 26220, "lines": ["lea rsi, accept; \" \\t\\n\"", "mov rdi, r13; s", "call cs:strspn_ptr", "mov esi, 2Dh ; '-'; c", "mov rdi, r13; s", "mov [rbp+n], rax", "lea r14, [r13+rax+0]", "call cs:strchr_ptr", "mov rbx, rax", "test rax, rax", "jz loc_69C3"], "succs": [[3, "fall"], [43, "jump"]]}, {"id": 3, "start": 26220, "end": 26229, "lines": ["cmp r14, rax", "jz loc_66F1"], "succs": [[4, "fall"], [8, "jump"]]}, {"id": 4, "start": 26229, "end": 26231, "lines": ["jnb short loc_66F1"], "succs": [[5, "fall"], [8, "jump"]]}, {"id": 5, "start": 26231, "end": 26304, "lines": ["call cs:__ctype_b_loc_ptr", "mov rdx, r14", "xor esi, esi", "mov rdi, [rax]", "nop dword ptr [rax+00h]", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]"], "succs": [[6, "fall"]]}, {"id": 6, "start": 26304, "end": 26343, "lines": ["movsx rax, byte ptr [rdx]", "add rdx, 1", "movzx eax, byte ptr [rdi+rax*2+1]", "shr al, 5", "and eax, 1", "add rsi, rax", "cmp rdx, rbx", "setb cl", "cmp rsi, 2", "setnz al", "and cl, al", "jnz short loc_66C0"], "succs": [[7, "fall"], [6, "jump"]]}, {"id": 7, "start": 26343, "end": 26353, "lines": ["cmp rsi, 2", "jz loc_6A52"], "succs": [[8, "fall"], [50, "jump"]]}, {"id": 8, "start": 26353, "end": 26358, "lines": ["mov ecx, 1"], "succs": [[9, "fall"]]}, {"id": 9, "start": 26358, "end": 26393, "lines": ["mov [rbp+var_49], cl", "lea rsi, reject; \",=[ \\n\"", "mov rdi, rbx; s", "call cs:strcspn_ptr", "lea r15, [rbx+rax]", "mov [rbp+var_48], rax", "movzx edx, byte ptr [r15]", "test dl, dl", "jz short loc_6790"], "succs": [[10, "fall"], [22, "jump"]]}, {"id": 10, "start": 26393, "end": 26398, "lines": ["cmp dl, 0Ah", "jz short loc_6790"], "succs": [[11, "fall"], [22, "jump"]]}, {"id": 11, "start": 26398, "end": 26420, "lines": ["mov [rbp+var_4A], dl", "call cs:__ctype_b_loc_ptr", "movzx ecx, [rbp+var_49]", "movzx edx, [rbp+var_4A]", "mov rsi, [rax]", "jmp short loc_6753"], "succs": [[16, "jump"]]}, {"id": 12, "start": 26424, "end": 26433, "lines": ["test ah, 20h", "jnz loc_68D8"], "succs": [[13, "fall"], [30, "jump"]]}, {"id": 13, "start": 26433, "end": 26438, "lines": ["movzx edx, byte ptr [r15+1]"], "succs": [[14, "fall"]]}, {"id": 14, "start": 26438, "end": 26446, "lines": ["add r15, 1", "test dl, dl", "jz short loc_6790"], "succs": [[15, "fall"], [22, "jump"]]}, {"id": 15, "start": 26446, "end": 26451, "lines": ["cmp dl, 0Ah", "jz short loc_6790"], "succs": [[16, "fall"], [22, "jump"]]}, {"id": 16, "start": 26451, "end": 26464, "lines": ["movsx rax, dl", "movzx eax, word ptr [rsi+rax*2]", "cmp dl, 2Dh ; '-'", "jnz short loc_6738"], "succs": [[12, "jump"], [17, "fall"]]}, {"id": 17, "start": 26464, "end": 26483, "lines": ["movzx edx, byte ptr [r15+1]", "cmp dl, 2Dh ; '-'", "setnz dil", "and ecx, edi", "test ah, 20h", "jz short loc_6746"], "succs": [[14, "jump"], [18, "fall"]]}, {"id": 18, "start": 26483, "end": 26494, "lines": ["movsx rax, dl", "test byte ptr [rsi+rax*2+1], 20h", "jnz short loc_6790"], "succs": [[19, "fall"], [22, "jump"]]}, {"id": 19, "start": 26494, "end": 26498, "lines": ["test cl, cl", "jnz short loc_6746"], "succs": [[14, "jump"], [20, "fall"]]}, {"id": 20, "start": 26498, "end": 26503, "lines": ["cmp dl, 2Dh ; '-'", "jz short loc_6746"], "succs": [[14, "jump"], [21, "fall"]]}, {"id": 21, "start": 26503, "end": 26512, "lines": ["nop word ptr [rax+rax+00000000h]"], "succs": [[22, "fall"]]}, {"id": 22, "start": 26512, "end": 26545, "lines": ["mov rcx, [rbp+stream]; stream", "mov rdx, [rbp+n]; n", "mov esi, 1; size", "mov rdi, r13; ptr", "call cs:fwrite_unlocked_ptr", "cmp byte ptr [r12], 5Bh ; '['", "jnz loc_68EB"], "succs": [[23, "fall"], [32, "jump"]]}, {"id": 23, "start": 26545, "end": 26557, "lines": ["cmp byte ptr [r12+1], 0", "jnz loc_68EB"], "succs": [[24, "fall"], [32, "jump"]]}, {"id": 24, "start": 26557, "end": 26564, "lines": ["lea r12, aTest; \"test\""], "succs": [[25, "fall"]]}, {"id": 25, "start": 26564, "end": 26589, "lines": ["mov edx, 6; n", "lea rsi, aHelp; \"--help\"", "mov rdi, rbx; s1", "call cs:strncmp_ptr", "test eax, eax", "jz short loc_67FA"], "succs": [[26, "fall"], [27, "jump"]]}, {"id": 26, "start": 26589, "end": 26618, "lines": ["mov edx, 9; n", "lea rsi, aVersion; \"--version\"", "mov rdi, rbx; s1", "call cs:strncmp_ptr", "test eax, eax", "jnz loc_6A28"], "succs": [[27, "fall"], [49, "jump"]]}, {"id": 27, "start": 26618, "end": 26659, "lines": ["mov rcx, r12", "mov r8, r12", "lea rdx, aHttpsWwwGnuOrg; \"https://www.gnu.org/software/coreutils/\"", "push rax", "lea rsi, a8SSSS; \"\\x1B]8;;%s%s#%s%.*s\"", "push rbx", "mov edi, 2", "xor eax, eax", "mov r9d, dword ptr [rbp+var_48]", "call cs:__printf_chk_ptr", "pop rdx", "pop rcx"], "succs": [[28, "fall"]]}, {"id": 28, "start": 26659, "end": 26816, "lines": ["mov rcx, cs:stdout; stream", "mov edx, 2; n", "mov esi, 1; size", "lea rdi, a8+5; ptr", "call cs:fwrite_unlocked_ptr", "mov edx, 4; n", "mov rcx, cs:stdout; stream", "mov esi, 1; size", "lea rdi, a1m; \"\\x1B[1m\"", "call cs:fwrite_unlocked_ptr", "mov rdx, r15", "mov esi, 1; size", "mov rdi, r14; ptr", "mov rcx, cs:stdout; stream", "sub rdx, r14; n", "call cs:fwrite_unlocked_ptr", "mov edx, 4; n", "mov rcx, cs:stdout; stream", "mov esi, 1; size", "lea rdi, a0m; \"\\x1B[0m\"", "call cs:fwrite_unlocked_ptr", "mov esi, 1; size", "mov edx, 7; n", "lea rdi, a8; \"\\x1B]8;;\\x1B\\\\\"", "mov rcx, cs:stdout; stream", "call cs:fwrite_unlocked_ptr", "mov rsi, cs:stdout; stream", "mov rdi, r15; s"], "succs": [[29, "fall"]]}, {"id": 29, "start": 26816, "end": 26836, "lines": ["lea rsp, [rbp-28h]", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "jmp cs:fputs_unlocked_ptr"], "succs": [[51, "jump"]]}, {"id": 30, "start": 26840, "end": 26849, "lines": ["cmp dl, 9", "jz loc_6790"], "succs": [[22, "jump"], [31, "fall"]]}, {"id": 31, "start": 26849, "end": 26859, "lines": ["movzx edx, byte ptr [r15+1]", "jmp loc_6773"], "succs": [[18, "jump"]]}, {"id": 32, "start": 26859, "end": 26883, "lines": ["lea rsi, aVdir+1; s2", "mov rdi, r12; s1", "call cs:strcmp_ptr", "test eax, eax", "jz loc_69B7"], "succs": [[33, "fall"], [42, "jump"]]}, {"id": 33, "start": 26883, "end": 26907, "lines": ["lea rsi, aVdir; \"vdir\"", "mov rdi, r12; s1", "call cs:strcmp_ptr", "test eax, eax", "jz loc_69B7"], "succs": [[34, "fall"], [42, "jump"]]}, {"id": 34, "start": 26907, "end": 26927, "lines": ["lea rsi, aB2sum; \"b2sum\"", "mov rdi, r12; s1", "call cs:strcmp_ptr", "test eax, eax", "jz short loc_69AB"], "succs": [[35, "fall"], [41, "jump"]]}, {"id": 35, "start": 26927, "end": 26947, "lines": ["lea rsi, aMd5sum; \"md5sum\"", "mov rdi, r12; s1", "call cs:strcmp_ptr", "test eax, eax", "jz short loc_69AB"], "succs": [[36, "fall"], [41, "jump"]]}, {"id": 36, "start": 26947, "end": 26967, "lines": ["lea rsi, aSha1sum; \"sha1sum\"", "mov rdi, r12; s1", "call cs:strcmp_ptr", "test eax, eax", "jz short loc_69AB"], "succs": [[37, "fall"], [41, "jump"]]}, {"id": 37, "start": 26967, "end": 26987, "lines": ["lea rsi, aSha224sum; \"sha224sum\"", "mov rdi, r12; s1", "call cs:strcmp_ptr", "test eax, eax", "jz short loc_69AB"], "succs": [[38, "fall"], [41, "jump"]]}, {"id": 38, "start": 26987, "end": 27007, "lines": ["lea rsi, aSha256sum; \"sha256sum\"", "mov rdi, r12; s1", "call cs:strcmp_ptr", "test eax, eax", "jz short loc_69AB"], "succs": [[39, "fall"], [41, "jump"]]}, {"id": 39, "start": 27007, "end": 27027, "lines": ["lea rsi, aSha384sum; \"sha384sum\"", "mov rdi, r12; s1", "call cs:strcmp_ptr", "test eax, eax", "jz short loc_69AB"], "succs": [[40, "fall"], [41, "jump"]]}, {"id": 40, "start": 27027, "end": 27051, "lines": ["lea rsi, aSha512sum; \"sha512sum\"", "mov rdi, r12; s1", "call cs:strcmp_ptr", "test eax, eax", "jnz loc_67C4"], "succs": [[25, "jump"], [41, "fall"]]}, {"id": 41, "start": 27051, "end": 27063, "lines": ["lea r12, aCksum; \"cksum\"", "jmp loc_67C4"], "succs": [[25, "jump"]]}, {"id": 42, "start": 27063, "end": 27075, "lines": ["lea r12, aGnuCoreutils+0Bh; \"ls\"", "jmp loc_67C4"], "succs": [[25, "jump"]]}, {"id": 43, "start": 27075, "end": 27085, "lines": ["mov rbx, r14", "xor ecx, ecx", "jmp loc_66F6"], "succs": [[9, "jump"]]}, {"id": 44, "start": 27085, "end": 27103, "lines": ["lea rdi, aColorterm+5; name", "call cs:getenv_ptr", "test rax, rax", "jz short loc_6A07"], "succs": [[45, "fall"], [47, "jump"]]}, {"id": 45, "start": 27103, "end": 27108, "lines": ["cmp byte ptr [rax], 0", "jz short loc_6A07"], "succs": [[46, "fall"], [47, "jump"]]}, {"id": 46, "start": 27108, "end": 27143, "lines": ["lea rsi, aDumb; \"dumb\"", "mov rdi, rax; s1", "call cs:strcmp_ptr", "test eax, eax", "setz al", "movzx eax, al", "mov cs:dword_28010, eax", "jmp loc_6626"], "succs": [[1, "jump"]]}, {"id": 47, "start": 27143, "end": 27164, "lines": ["mov rax, cs:stdout", "mov cs:dword_28010, 1", "mov [rbp+stream], rax"], "succs": [[48, "fall"]]}, {"id": 48, "start": 27164, "end": 27176, "lines": ["mov rsi, [rbp+stream]", "mov rdi, r13", "jmp loc_68C0"], "succs": [[29, "jump"]]}, {"id": 49, "start": 27176, "end": 27218, "lines": ["mov r8d, dword ptr [rbp+var_48]", "mov r9, rbx", "mov rcx, r12", "mov edi, 2", "lea rdx, aHttpsWwwGnuOrg_0; \"https://www.gnu.org/software/coreutils/\"...", "lea rsi, a8SSS; \"\\x1B]8;;%s#%s%.*s\"", "xor eax, eax", "call cs:__printf_chk_ptr", "jmp loc_6823"], "succs": [[28, "jump"]]}, {"id": 50, "start": 27218, "end": 27226, "lines": ["mov rbx, r14", "jmp loc_66F6"], "succs": [[9, "jump"]]}, {"id": 51, "start": 169792, "end": 169792, "lines": [], "succs": []}]}, {"name": "sub_BEE0", "ea": 48864, "blocks": [{"id": 0, "start": 48864, "end": 48877, "lines": ["cmp cs:dword_2933C, 4; switch 5 cases", "ja def_BF12; jumptable 000000000000BF12 default case"], "succs": [[1, "fall"], [48, "jump"]]}, {"id": 1, "start": 48877, "end": 48917, "lines": ["push rbp", "lea rdx, jpt_BF12", "mov rbp, rsp", "push r15", "push r14", "push r13", "push r12", "push rbx", "sub rsp, 28h", "mov eax, cs:dword_2933C", "movsxd rax, ds:(jpt_BF12 - 1D160h)[rdx+rax*4]", "add rax, rdx", "jmp rax; switch jump"], "succs": [[2, "switch"], [12, "switch"], [14, "switch"], [26, "switch"], [31, "switch"]]}, {"id": 2, "start": 48920, "end": 48934, "lines": ["cmp cs:qword_292B0, 0; jumptable 000000000000BF12 case 3", "jz loc_C2B0"], "succs": [[3, "fall"], [42, "jump"]]}, {"id": 3, "start": 48934, "end": 49018, "lines": ["xor edi, edi", "call sub_76D0", "lea rdx, [rax+rax*2-3]", "mov [rbp-38h], rax", "mov rax, cs:qword_29208", "lea r15, [rax+rdx*8]", "mov rax, cs:qword_293A0", "mov rbx, [rax]", "mov rdi, rbx", "call sub_74E0", "xor esi, esi", "mov rdi, rbx", "mov [rbp-48h], rax", "mov rax, [r15+10h]", "mov rcx, [rax]", "mov [rbp-40h], rcx", "call sub_BAB0", "cmp cs:qword_293B0, 1", "jle loc_C006"], "succs": [[4, "fall"], [10, "jump"]]}, {"id": 4, "start": 49018, "end": 49040, "lines": ["mov r8, [rbp-48h]", "mov rcx, [rbp-40h]", "xor r14d, r14d", "mov ebx, 1", "nop word ptr [rax+rax+00h]"], "succs": [[5, "fall"]]}, {"id": 5, "start": 49040, "end": 49061, "lines": ["mov rax, rbx", "cqo", "idiv qword ptr [rbp-38h]", "mov r12, rdx", "test rdx, rdx", "jnz loc_C298"], "succs": [[6, "fall"], [41, "jump"]]}, {"id": 6, "start": 49061, "end": 49089, "lines": ["mov rdi, cs:stdout; _IO_FILE *", "movzx edx, cs:byte_2801D", "mov rax, [rdi+28h]", "cmp rax, [rdi+30h]", "jnb loc_C2EB"], "succs": [[7, "fall"], [46, "jump"]]}, {"id": 7, "start": 49089, "end": 49099, "lines": ["lea rcx, [rax+1]", "mov [rdi+28h], rcx", "mov [rax], dl"], "succs": [[8, "fall"]]}, {"id": 8, "start": 49099, "end": 49104, "lines": ["xor r14d, r14d", "xchg ax, ax"], "succs": [[9, "fall"]]}, {"id": 9, "start": 49104, "end": 49158, "lines": ["mov rax, cs:qword_293A0", "mov rsi, r14", "mov r13, [rax+rbx*8]", "add rbx, 1", "mov rdi, r13", "call sub_BAB0", "mov rdi, r13", "call sub_74E0", "cmp rbx, cs:qword_293B0", "mov r8, rax", "mov rax, [r15+10h]", "mov rcx, [rax+r12*8]", "jl short loc_BF90"], "succs": [[5, "jump"], [10, "fall"]]}, {"id": 10, "start": 49158, "end": 49186, "lines": ["mov rdi, cs:stdout; _IO_FILE *", "movzx edx, cs:byte_2801D", "mov rax, [rdi+28h]", "cmp rax, [rdi+30h]", "jnb loc_C2F9"], "succs": [[11, "fall"], [47, "jump"]]}, {"id": 11, "start": 49186, "end": 49201, "lines": ["lea rcx, [rax+1]", "mov [rdi+28h], rcx", "mov [rax], dl", "jmp loc_C286"], "succs": [[40, "jump"]]}, {"id": 12, "start": 49208, "end": 49213, "lines": ["mov edi, 2Ch ; ','; jumptable 000000000000BF12 case 4"], "succs": [[13, "fall"]]}, {"id": 13, "start": 49213, "end": 49232, "lines": ["add rsp, 28h", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "jmp sub_BD30"], "succs": [[49, "jump"]]}, {"id": 14, "start": 49232, "end": 49244, "lines": ["xor ebx, ebx; jumptable 000000000000BF12 case 0", "cmp cs:qword_293B0, 0", "jg short loc_C0D0"], "succs": [[15, "fall"], [22, "jump"]]}, {"id": 15, "start": 49244, "end": 49249, "lines": ["jmp loc_C286"], "succs": [[40, "jump"]]}, {"id": 16, "start": 49256, "end": 49271, "lines": ["mov rdx, [rdx+48h]", "cmp byte ptr [rdx+rax-1], 30h ; '0'", "jnz loc_C0F3"], "succs": [[17, "fall"], [25, "jump"]]}, {"id": 17, "start": 49271, "end": 49276, "lines": ["cmp byte ptr [rdx], 30h ; '0'", "jnz short loc_C0F3"], "succs": [[18, "fall"], [25, "jump"]]}, {"id": 18, "start": 49276, "end": 49280, "lines": ["nop dword ptr [rax+00h]"], "succs": [[19, "fall"]]}, {"id": 19, "start": 49280, "end": 49332, "lines": ["mov rax, cs:qword_293A0", "mov rdi, [rax+rbx*8]", "call sub_AE70", "mov rdi, cs:stdout; _IO_FILE *", "add cs:qword_291F8, 1", "movzx esi, cs:byte_2801D; int", "mov rax, [rdi+28h]", "cmp rax, [rdi+30h]", "jnb loc_C2C0"], "succs": [[20, "fall"], [43, "jump"]]}, {"id": 20, "start": 49332, "end": 49343, "lines": ["lea rdx, [rax+1]", "mov [rdi+28h], rdx", "mov [rax], sil"], "succs": [[21, "fall"]]}, {"id": 21, "start": 49343, "end": 49360, "lines": ["add rbx, 1", "cmp cs:qword_293B0, rbx", "jle loc_C286"], "succs": [[22, "fall"], [40, "jump"]]}, {"id": 22, "start": 49360, "end": 49369, "lines": ["cmp cs:byte_29312, 0", "jz short loc_C080"], "succs": [[19, "jump"], [23, "fall"]]}, {"id": 23, "start": 49369, "end": 49385, "lines": ["lea rdx, qword_28060", "mov rax, [rdx+40h]", "test rax, rax", "jz short loc_C080"], "succs": [[19, "jump"], [24, "fall"]]}, {"id": 24, "start": 49385, "end": 49395, "lines": ["cmp rax, 2", "jbe loc_C068"], "succs": [[16, "jump"], [25, "fall"]]}, {"id": 25, "start": 49395, "end": 49436, "lines": ["lea rdi, qword_28060", "call sub_6E20", "lea rdi, qword_280A0", "call sub_6E20", "lea rdi, qword_28070", "call sub_6E20", "jmp loc_C080"], "succs": [[19, "jump"]]}, {"id": 26, "start": 49440, "end": 49456, "lines": ["xor ebx, ebx; jumptable 000000000000BF12 case 1", "cmp cs:qword_293B0, 0", "jle loc_C286"], "succs": [[27, "fall"], [40, "jump"]]}, {"id": 27, "start": 49456, "end": 49502, "lines": ["mov rax, cs:qword_293A0", "xor esi, esi", "mov rdi, [rax+rbx*8]", "call sub_BAB0", "mov rdi, cs:stdout; _IO_FILE *", "movzx esi, cs:byte_2801D; int", "mov rax, [rdi+28h]", "cmp rax, [rdi+30h]", "jnb loc_C2D0"], "succs": [[28, "fall"], [44, "jump"]]}, {"id": 28, "start": 49502, "end": 49513, "lines": ["lea rdx, [rax+1]", "mov [rdi+28h], rdx", "mov [rax], sil"], "succs": [[29, "fall"]]}, {"id": 29, "start": 49513, "end": 49526, "lines": ["add rbx, 1", "cmp cs:qword_293B0, rbx", "jg short loc_C130"], "succs": [[27, "jump"], [30, "fall"]]}, {"id": 30, "start": 49526, "end": 49531, "lines": ["jmp loc_C286"], "succs": [[40, "jump"]]}, {"id": 31, "start": 49536, "end": 49550, "lines": ["cmp cs:qword_292B0, 0; jumptable 000000000000BF12 case 2", "jz loc_C2B0"], "succs": [[32, "fall"], [42, "jump"]]}, {"id": 32, "start": 49550, "end": 49595, "lines": ["mov edi, 1", "call sub_76D0", "mov rcx, rax", "mov rax, cs:qword_293B0", "cqo", "idiv rcx", "cmp rdx, 1", "sbb rax, 0FFFFFFFFFFFFFFFFh", "mov r14, rax", "test rax, rax", "jle loc_C286"], "succs": [[33, "fall"], [40, "jump"]]}, {"id": 33, "start": 49595, "end": 49632, "lines": ["mov rax, cs:qword_29208", "mov qword ptr [rbp-50h], 0", "lea rdx, [rcx+rcx*2-3]", "lea r15, [rax+rdx*8]", "xchg ax, ax", "nop word ptr [rax+rax+00000000h]"], "succs": [[34, "fall"]]}, {"id": 34, "start": 49632, "end": 49644, "lines": ["mov rbx, [rbp-50h]", "xor r13d, r13d", "xor r12d, r12d", "jmp short loc_C216"], "succs": [[36, "jump"]]}, {"id": 35, "start": 49648, "end": 49686, "lines": ["mov rcx, [rbp-40h]", "mov rdi, [rbp-48h]", "add r13, 8", "add rbx, r14", "lea rax, [rcx+r12]", "add rdi, r12", "mov rsi, rax", "mov [rbp-38h], rax", "call sub_6470", "mov r12, [rbp-38h]"], "succs": [[36, "fall"]]}, {"id": 36, "start": 49686, "end": 49749, "lines": ["mov rax, cs:qword_293A0", "mov rdi, [rax+rbx*8]", "mov [rbp-38h], rdi", "call sub_74E0", "mov rdi, [rbp-38h]", "mov rsi, r12", "mov [rbp-48h], rax", "mov rax, [r15+10h]", "mov rcx, [rax+r13]", "mov [rbp-40h], rcx", "call sub_BAB0", "mov rax, cs:qword_293B0", "sub rax, r14", "cmp rbx, rax", "jl short loc_C1F0"], "succs": [[35, "jump"], [37, "fall"]]}, {"id": 37, "start": 49749, "end": 49773, "lines": ["mov rdi, cs:stdout; _IO_FILE *", "movzx edx, cs:byte_2801D", "mov rax, [rdi+28h]", "cmp rax, [rdi+30h]", "jnb short loc_C2E0"], "succs": [[38, "fall"], [45, "jump"]]}, {"id": 38, "start": 49773, "end": 49783, "lines": ["lea rcx, [rax+1]", "mov [rdi+28h], rcx", "mov [rax], dl"], "succs": [[39, "fall"]]}, {"id": 39, "start": 49783, "end": 49798, "lines": ["add qword ptr [rbp-50h], 1", "cmp r14, [rbp-50h]", "jnz loc_C1E0"], "succs": [[34, "jump"], [40, "fall"]]}, {"id": 40, "start": 49798, "end": 49813, "lines": ["add rsp, 28h", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 41, "start": 49816, "end": 49837, "lines": ["lea rdi, [r14+r8]", "lea rsi, [r14+rcx]", "add r14, rcx", "call sub_6470", "jmp loc_BFD0"], "succs": [[9, "jump"]]}, {"id": 42, "start": 49840, "end": 49850, "lines": ["mov edi, 20h ; ' '", "jmp loc_C03D"], "succs": [[13, "jump"]]}, {"id": 43, "start": 49856, "end": 49867, "lines": ["call cs:__overflow_ptr", "jmp loc_C0BF"], "succs": [[21, "jump"]]}, {"id": 44, "start": 49872, "end": 49883, "lines": ["call cs:__overflow_ptr", "jmp loc_C169"], "succs": [[29, "jump"]]}, {"id": 45, "start": 49888, "end": 49899, "lines": ["movzx esi, dl; int", "call cs:__overflow_ptr", "jmp short loc_C277"], "succs": [[39, "jump"]]}, {"id": 46, "start": 49899, "end": 49913, "lines": ["movzx esi, dl; int", "call cs:__overflow_ptr", "jmp loc_BFCB"], "succs": [[8, "jump"]]}, {"id": 47, "start": 49913, "end": 49936, "lines": ["add rsp, 28h", "movzx esi, dl; int", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "jmp cs:__overflow_ptr"], "succs": [[50, "jump"]]}, {"id": 48, "start": 49936, "end": 49937, "lines": ["retn; jumptable 000000000000BF12 default case"], "succs": []}, {"id": 49, "start": 48432, "end": 48432, "lines": [], "succs": []}, {"id": 50, "start": 169672, "end": 169672, "lines": [], "succs": []}]}, {"name": "sub_56A0", "ea": 22176, "blocks": [{"id": 0, "start": 22176, "end": 22224, "lines": ["push rbp", "mov r11, rdi", "lea r10, jpt_5741", "mov rbp, rsp", "push r13", "mov r13, rcx", "push r12", "mov r12d, edx", "push rbx", "mov r8, [rsi]", "mov rbx, rsi", "mov r9, [rdi]", "xor edi, edi", "movzx ecx, byte ptr [r8]", "nop dword ptr [rax+rax+00000000h]"], "succs": [[1, "fall"]]}, {"id": 1, "start": 22224, "end": 22240, "lines": ["mov rsi, r9", "mov rax, r8", "nop word ptr [rax+rax+00000000h]"], "succs": [[2, "fall"]]}, {"id": 2, "start": 22240, "end": 22245, "lines": ["cmp cl, 5Ch ; '\\'", "jz short loc_5720"], "succs": [[3, "fall"], [10, "jump"]]}, {"id": 3, "start": 22245, "end": 22251, "lines": ["jg loc_5790"], "succs": [[4, "fall"], [17, "jump"]]}, {"id": 4, "start": 22251, "end": 22260, "lines": ["cmp cl, 3Dh ; '='", "jz loc_5770"], "succs": [[5, "fall"], [15, "jump"]]}, {"id": 5, "start": 22260, "end": 22262, "lines": ["jg short loc_5775"], "succs": [[6, "fall"], [16, "jump"]]}, {"id": 6, "start": 22262, "end": 22266, "lines": ["test cl, cl", "jz short loc_56FF"], "succs": [[7, "fall"], [8, "jump"]]}, {"id": 7, "start": 22266, "end": 22271, "lines": ["cmp cl, 3Ah ; ':'", "jnz short loc_5775"], "succs": [[8, "fall"], [16, "jump"]]}, {"id": 8, "start": 22271, "end": 22277, "lines": ["mov r12d, 1"], "succs": [[9, "fall"]]}, {"id": 9, "start": 22277, "end": 22297, "lines": ["mov [r11], rsi", "mov [rbx], rax", "mov eax, r12d", "mov [r13+0], rdi", "pop rbx", "pop r12", "pop r13", "pop rbp", "retn"], "succs": []}, {"id": 10, "start": 22304, "end": 22316, "lines": ["movzx edx, byte ptr [rax+1]", "test dl, dl", "jz loc_5910"], "succs": [[11, "fall"], [43, "jump"]]}, {"id": 11, "start": 22316, "end": 22326, "lines": ["lea r8d, [rdx-30h]; switch 73 cases", "cmp r8b, 48h", "ja short def_5741; jumptable 0000000000005741 default case, cases 56-62,64-87,89-94,96,99,100,103-109,111-113,115,117,119"], "succs": [[12, "fall"], [14, "jump"]]}, {"id": 12, "start": 22326, "end": 22340, "lines": ["movzx ecx, r8b", "movsxd rcx, ds:(jpt_5741 - 1D020h)[r10+rcx*4]", "add rcx, r10", "jmp rcx; switch jump"], "succs": [[13, "switch"], [14, "switch"], [22, "switch"], [25, "switch"], [32, "switch"], [33, "switch"], [34, "switch"], [35, "switch"], [36, "switch"], [37, "switch"], [38, "switch"], [39, "switch"], [44, "switch"]]}, {"id": 13, "start": 22340, "end": 22352, "lines": ["mov edx, 7Fh; jumptable 0000000000005741 case 63", "nop dword ptr [rax+00000000h]"], "succs": [[14, "fall"]]}, {"id": 14, "start": 22352, "end": 22375, "lines": ["mov [rsi], dl; jumptable 0000000000005741 default case, cases 56-62,64-87,89-94,96,99,100,103-109,111-113,115,117,119", "lea r9, [rsi+1]", "movzx ecx, byte ptr [rax+2]", "add rdi, 1", "lea r8, [rax+2]", "jmp loc_56D0"], "succs": [[1, "jump"]]}, {"id": 15, "start": 22384, "end": 22389, "lines": ["test r12b, r12b", "jnz short loc_5705"], "succs": [[9, "jump"], [16, "fall"]]}, {"id": 16, "start": 22389, "end": 22411, "lines": ["add rax, 1", "mov [rsi], cl", "add rdi, 1", "add rsi, 1", "movzx ecx, byte ptr [rax]", "jmp loc_56E0"], "succs": [[2, "jump"]]}, {"id": 17, "start": 22416, "end": 22421, "lines": ["cmp cl, 5Eh ; '^'", "jnz short loc_5775"], "succs": [[16, "jump"], [18, "fall"]]}, {"id": 18, "start": 22421, "end": 22433, "lines": ["movzx edx, byte ptr [rax+1]", "lea ecx, [rdx-40h]", "cmp cl, 3Eh ; '>'", "ja short loc_57C0"], "succs": [[19, "fall"], [20, "jump"]]}, {"id": 19, "start": 22433, "end": 22459, "lines": ["and edx, 1Fh", "lea r8, [rax+2]", "lea r9, [rsi+1]", "add rdi, 1", "mov [rsi], dl", "movzx ecx, byte ptr [rax+2]", "jmp loc_56D0"], "succs": [[1, "jump"]]}, {"id": 20, "start": 22464, "end": 22473, "lines": ["cmp dl, 3Fh ; '?'", "jnz loc_5926"], "succs": [[21, "fall"], [45, "jump"]]}, {"id": 21, "start": 22473, "end": 22497, "lines": ["mov byte ptr [rsi], 7Fh", "add rdi, 1", "movzx ecx, byte ptr [rax+1]", "add rsi, 1", "add rax, 1", "jmp loc_56E0"], "succs": [[2, "jump"]]}, {"id": 22, "start": 22504, "end": 22528, "lines": ["movzx ecx, byte ptr [rax+2]; jumptable 0000000000005741 cases 48-55", "mov edx, r8d", "mov r9, rsi", "lea r8, [rax+2]", "nop word ptr [rax+rax+00000000h]"], "succs": [[23, "fall"]]}, {"id": 23, "start": 22528, "end": 22539, "lines": ["lea eax, [rcx-30h]", "cmp al, 7", "jbe loc_58C8"], "succs": [[24, "fall"], [40, "jump"]]}, {"id": 24, "start": 22539, "end": 22559, "lines": ["mov [r9], dl", "add rdi, 1", "movzx ecx, byte ptr [r8]", "add r9, 1", "jmp loc_56D0"], "succs": [[1, "jump"]]}, {"id": 25, "start": 22559, "end": 22576, "lines": ["lea r8, [rax+2]; jumptable 0000000000005741 cases 88,120", "movzx eax, byte ptr [rax+2]", "xor edx, edx", "nop dword ptr [rax+00000000h]"], "succs": [[26, "fall"]]}, {"id": 26, "start": 22576, "end": 22580, "lines": ["cmp al, 46h ; 'F'", "jg short loc_585B"], "succs": [[27, "fall"], [30, "jump"]]}, {"id": 27, "start": 22580, "end": 22588, "lines": ["cmp al, 40h ; '@'", "jg loc_58F8"], "succs": [[28, "fall"], [42, "jump"]]}, {"id": 28, "start": 22588, "end": 22600, "lines": ["lea ecx, [rax-30h]", "cmp cl, 9", "ja loc_58E0"], "succs": [[29, "fall"], [41, "jump"]]}, {"id": 29, "start": 22600, "end": 22619, "lines": ["shl edx, 4", "add r8, 1", "lea edx, [rax+rdx-30h]", "movzx eax, byte ptr [r8]", "cmp al, 46h ; 'F'", "jle short loc_5834"], "succs": [[27, "jump"], [30, "fall"]]}, {"id": 30, "start": 22619, "end": 22627, "lines": ["lea ecx, [rax-61h]", "cmp cl, 5", "ja short loc_58E0"], "succs": [[31, "fall"], [41, "jump"]]}, {"id": 31, "start": 22627, "end": 22644, "lines": ["shl edx, 4", "add r8, 1", "lea edx, [rax+rdx-57h]", "movzx eax, byte ptr [r8]", "jmp short loc_5830"], "succs": [[26, "jump"]]}, {"id": 32, "start": 22644, "end": 22654, "lines": ["mov edx, 20h ; ' '; jumptable 0000000000005741 case 95", "jmp def_5741; jumptable 0000000000005741 default case, cases 56-62,64-87,89-94,96,99,100,103-109,111-113,115,117,119"], "succs": [[14, "jump"]]}, {"id": 33, "start": 22654, "end": 22664, "lines": ["mov edx, 1Bh; jumptable 0000000000005741 case 101", "jmp def_5741; jumptable 0000000000005741 default case, cases 56-62,64-87,89-94,96,99,100,103-109,111-113,115,117,119"], "succs": [[14, "jump"]]}, {"id": 34, "start": 22664, "end": 22674, "lines": ["mov edx, 0Bh; jumptable 0000000000005741 case 118", "jmp def_5741; jumptable 0000000000005741 default case, cases 56-62,64-87,89-94,96,99,100,103-109,111-113,115,117,119"], "succs": [[14, "jump"]]}, {"id": 35, "start": 22674, "end": 22684, "lines": ["mov edx, 0Ch; jumptable 0000000000005741 case 102", "jmp def_5741; jumptable 0000000000005741 default case, cases 56-62,64-87,89-94,96,99,100,103-109,111-113,115,117,119"], "succs": [[14, "jump"]]}, {"id": 36, "start": 22684, "end": 22694, "lines": ["mov edx, 0Ah; jumptable 0000000000005741 case 110", "jmp def_5741; jumptable 0000000000005741 default case, cases 56-62,64-87,89-94,96,99,100,103-109,111-113,115,117,119"], "succs": [[14, "jump"]]}, {"id": 37, "start": 22694, "end": 22704, "lines": ["mov edx, 0Dh; jumptable 0000000000005741 case 114", "jmp def_5741; jumptable 0000000000005741 default case, cases 56-62,64-87,89-94,96,99,100,103-109,111-113,115,117,119"], "succs": [[14, "jump"]]}, {"id": 38, "start": 22704, "end": 22714, "lines": ["mov edx, 9; jumptable 0000000000005741 case 116", "jmp def_5741; jumptable 0000000000005741 default case, cases 56-62,64-87,89-94,96,99,100,103-109,111-113,115,117,119"], "succs": [[14, "jump"]]}, {"id": 39, "start": 22714, "end": 22724, "lines": ["mov edx, 8; jumptable 0000000000005741 case 98", "jmp def_5741; jumptable 0000000000005741 default case, cases 56-62,64-87,89-94,96,99,100,103-109,111-113,115,117,119"], "succs": [[14, "jump"]]}, {"id": 40, "start": 22728, "end": 22745, "lines": ["add r8, 1", "lea edx, [rcx+rdx*8-30h]", "movzx ecx, byte ptr [r8]", "jmp loc_5800"], "succs": [[23, "jump"]]}, {"id": 41, "start": 22752, "end": 22771, "lines": ["mov [rsi], dl", "lea r9, [rsi+1]", "movzx ecx, byte ptr [r8]", "add rdi, 1", "jmp loc_56D0"], "succs": [[1, "jump"]]}, {"id": 42, "start": 22776, "end": 22796, "lines": ["shl edx, 4", "add r8, 1", "lea edx, [rax+rdx-37h]", "movzx eax, byte ptr [r8]", "jmp loc_5830"], "succs": [[26, "jump"]]}, {"id": 43, "start": 22800, "end": 22812, "lines": ["add rax, 2", "xor r12d, r12d", "jmp loc_5705"], "succs": [[9, "jump"]]}, {"id": 44, "start": 22812, "end": 22822, "lines": ["mov edx, 7; jumptable 0000000000005741 case 97", "jmp def_5741; jumptable 0000000000005741 default case, cases 56-62,64-87,89-94,96,99,100,103-109,111-113,115,117,119"], "succs": [[14, "jump"]]}, {"id": 45, "start": 22822, "end": 22834, "lines": ["add rax, 1", "xor r12d, r12d", "jmp loc_5705"], "succs": [[9, "jump"]]}]}, {"name": "sub_A410", "ea": 42000, "blocks": [{"id": 0, "start": 42000, "end": 42146, "lines": ["push rbp", "mov rbp, rsp", "push r15", "push r14", "push r13", "push r12", "push rbx", "sub rsp, 1000h", "or [rsp+1028h+var_1028], 0", "sub rsp, 1000h", "or [rsp+2028h+var_2028], 0", "sub rsp, 68h", "mov [rbp+var_2078], rdi", "mov rbx, rdi", "mov r14, rcx", "mov r15d, r8d", "mov [rbp+var_2058], r9", "lea rax, [rbp+var_2040]", "mov ecx, edx", "xor r8d, r8d", "mov rdx, rsi", "lea rdi, [rbp+var_2048]", "mov rsi, rbx", "lea r9, [rbp+var_2049]", "mov r13, fs:28h", "mov [rbp+var_38], r13", "mov r13, [rbp+arg_0]", "mov [rbp+var_2080], rax", "mov [rbp+var_2048], rax", "call sub_6EC0", "movzx ebx, [rbp+var_2049]", "mov r12, rax", "test bl, bl", "jz short loc_A4AB"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 42146, "end": 42155, "lines": ["test r15b, r15b", "jnz loc_A720"], "succs": [[2, "fall"], [30, "jump"]]}, {"id": 2, "start": 42155, "end": 42160, "lines": ["test r14, r14", "jz short loc_A508"], "succs": [[3, "fall"], [8, "jump"]]}, {"id": 3, "start": 42160, "end": 42176, "lines": ["mov rax, cs:qword_280A0", "test rax, rax", "jz loc_A750"], "succs": [[4, "fall"], [32, "jump"]]}, {"id": 4, "start": 42176, "end": 42186, "lines": ["cmp rax, 2", "ja loc_A7A0"], "succs": [[5, "fall"], [35, "jump"]]}, {"id": 5, "start": 42186, "end": 42204, "lines": ["mov rdx, cs:qword_280A8", "cmp byte ptr [rdx+rax-1], 30h ; '0'", "jnz loc_A7A0"], "succs": [[6, "fall"], [35, "jump"]]}, {"id": 6, "start": 42204, "end": 42224, "lines": ["lea rax, qword_28060", "lea r15, [rax+10h]", "cmp byte ptr [rdx], 30h ; '0'", "jnz loc_A7A0"], "succs": [[7, "fall"], [35, "jump"]]}, {"id": 7, "start": 42224, "end": 42248, "lines": ["mov rdi, rax", "call sub_6E20", "mov rdi, r14", "call sub_6E20", "mov rdi, r15", "call sub_6E20"], "succs": [[8, "fall"]]}, {"id": 8, "start": 42248, "end": 42264, "lines": ["mov r14, [rbp+var_2048]", "test r13, r13", "jz loc_A6D0"], "succs": [[9, "fall"], [28, "jump"]]}, {"id": 9, "start": 42264, "end": 42281, "lines": ["movzx r15d, cs:byte_293A8", "test r15b, r15b", "jnz loc_A6A0"], "succs": [[10, "fall"], [25, "jump"]]}, {"id": 10, "start": 42281, "end": 42295, "lines": ["mov [rbp+var_2068], r14", "mov [rbp+n], r12"], "succs": [[11, "fall"]]}, {"id": 11, "start": 42295, "end": 42429, "lines": ["mov rdi, cs:qword_29388", "xor esi, esi", "call sub_6300", "mov esi, 1", "mov rdi, r13", "mov [rbp+ptr], rax", "call sub_6300", "lea rcx, aDired+8; \"/\"", "mov edi, 2", "mov rdx, [rbp+ptr]", "cmp byte ptr [rax], 2Fh ; '/'", "mov r8, rax", "lea rax, accept+3; \"\"", "cmovz rcx, rax", "mov [rbp+var_2088], r8", "lea rsi, a8FileSSS; \"\\x1B]8;;file://%s%s%s\\x1B\\\\\"", "xor eax, eax", "call cs:__printf_chk_ptr", "mov rdi, [rbp+ptr]; ptr", "call cs:free_ptr", "mov rdi, [rbp+var_2088]; ptr", "call cs:free_ptr", "mov rax, [rbp+var_2058]", "test rax, rax", "jz loc_A6F1"], "succs": [[12, "fall"], [29, "jump"]]}, {"id": 12, "start": 42429, "end": 42438, "lines": ["cmp cs:byte_29318, 0", "jz short loc_A5CE"], "succs": [[13, "fall"], [14, "jump"]]}, {"id": 13, "start": 42438, "end": 42446, "lines": ["mov rdi, rax", "call sub_6B00"], "succs": [[14, "fall"]]}, {"id": 14, "start": 42446, "end": 42494, "lines": ["mov rcx, cs:stdout; stream", "mov rdx, [rbp+n]; n", "mov esi, 1; size", "mov rdi, [rbp+var_2068]; ptr", "call cs:fwrite_unlocked_ptr", "add cs:qword_291F8, r12", "cmp cs:byte_29318, 0", "jz short loc_A60A"], "succs": [[15, "fall"], [16, "jump"]]}, {"id": 15, "start": 42494, "end": 42506, "lines": ["mov rdi, [rbp+var_2058]", "call sub_6B00"], "succs": [[16, "fall"]]}, {"id": 16, "start": 42506, "end": 42511, "lines": ["test r13, r13", "jz short loc_A657"], "succs": [[17, "fall"], [20, "jump"]]}, {"id": 17, "start": 42511, "end": 42546, "lines": ["mov rcx, cs:stdout; stream", "mov edx, 7; n", "mov esi, 1; size", "lea rdi, a8; \"\\x1B]8;;\\x1B\\\\\"", "call cs:fwrite_unlocked_ptr", "test r15b, r15b", "jz short loc_A657"], "succs": [[18, "fall"], [20, "jump"]]}, {"id": 18, "start": 42546, "end": 42573, "lines": ["mov rdi, cs:stdout; _IO_FILE *", "movzx edx, byte ptr [r14+r12-1]", "mov rax, [rdi+28h]", "cmp rax, [rdi+30h]", "jnb loc_A7D5"], "succs": [[19, "fall"], [36, "jump"]]}, {"id": 19, "start": 42573, "end": 42583, "lines": ["lea rcx, [rax+1]", "mov [rdi+28h], rcx", "mov [rax], dl"], "succs": [[20, "fall"]]}, {"id": 20, "start": 42583, "end": 42592, "lines": ["cmp [rbp+var_2078], r14", "jz short loc_A672"], "succs": [[21, "fall"], [23, "jump"]]}, {"id": 21, "start": 42592, "end": 42601, "lines": ["cmp r14, [rbp+var_2080]", "jz short loc_A672"], "succs": [[22, "fall"], [23, "jump"]]}, {"id": 22, "start": 42601, "end": 42610, "lines": ["mov rdi, r14; ptr", "call cs:free_ptr"], "succs": [[23, "fall"]]}, {"id": 23, "start": 42610, "end": 42635, "lines": ["movzx eax, bl", "add rax, r12", "mov rdx, [rbp+var_38]", "sub rdx, fs:28h", "jnz loc_A801"], "succs": [[24, "fall"], [39, "jump"]]}, {"id": 24, "start": 42635, "end": 42653, "lines": ["add rsp, 2068h", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 25, "start": 42656, "end": 42665, "lines": ["cmp cs:byte_293A9, 1", "jnz short loc_A6B1"], "succs": [[26, "fall"], [27, "jump"]]}, {"id": 26, "start": 42665, "end": 42673, "lines": ["test bl, bl", "jz loc_A760"], "succs": [[27, "fall"], [33, "jump"]]}, {"id": 27, "start": 42673, "end": 42695, "lines": ["mov [rbp+var_2068], r14", "xor r15d, r15d", "mov [rbp+n], r12", "jmp loc_A537"], "succs": [[11, "jump"]]}, {"id": 28, "start": 42704, "end": 42737, "lines": ["mov rax, [rbp+var_2058]", "mov [rbp+n], r12", "xor r15d, r15d", "mov [rbp+var_2068], r14", "test rax, rax", "jnz loc_A5BD"], "succs": [[12, "jump"], [29, "fall"]]}, {"id": 29, "start": 42737, "end": 42781, "lines": ["mov rcx, cs:stdout; stream", "mov rdx, [rbp+n]; n", "mov esi, 1; size", "mov rdi, [rbp+var_2068]; ptr", "call cs:fwrite_unlocked_ptr", "add cs:qword_291F8, r12", "jmp loc_A60A"], "succs": [[16, "jump"]]}, {"id": 30, "start": 42784, "end": 42813, "lines": ["mov rdi, cs:stdout; _IO_FILE *", "add cs:qword_291F8, 1", "mov rax, [rdi+28h]", "cmp rax, [rdi+30h]", "jnb loc_A7E3"], "succs": [[31, "fall"], [37, "jump"]]}, {"id": 31, "start": 42813, "end": 42829, "lines": ["lea rdx, [rax+1]", "mov [rdi+28h], rdx", "mov byte ptr [rax], 20h ; ' '", "jmp loc_A4AB"], "succs": [[2, "jump"]]}, {"id": 32, "start": 42832, "end": 42848, "lines": ["lea rax, qword_28060", "lea r15, [rax+10h]", "jmp loc_A4F0"], "succs": [[7, "jump"]]}, {"id": 33, "start": 42848, "end": 42892, "lines": ["lea rcx, [r12-2]", "mov rdi, cs:stdout; _IO_FILE *", "movzx edx, byte ptr [r14]", "mov [rbp+n], rcx", "lea rcx, [r14+1]", "mov [rbp+var_2068], rcx", "mov rax, [rdi+28h]", "cmp rax, [rdi+30h]", "jnb short loc_A7F3"], "succs": [[34, "fall"], [38, "jump"]]}, {"id": 34, "start": 42892, "end": 42907, "lines": ["lea rcx, [rax+1]", "mov [rdi+28h], rcx", "mov [rax], dl", "jmp loc_A537"], "succs": [[11, "jump"]]}, {"id": 35, "start": 42912, "end": 42965, "lines": ["lea rax, qword_28060", "mov rdi, rax", "mov [rbp+ptr], rax", "call sub_6E20", "mov rax, [rbp+ptr]", "lea r15, [rax+10h]", "mov rdi, r15", "call sub_6E20", "mov rax, [rbp+ptr]", "jmp loc_A4F0"], "succs": [[7, "jump"]]}, {"id": 36, "start": 42965, "end": 42979, "lines": ["movzx esi, dl; int", "call cs:__overflow_ptr", "jmp loc_A657"], "succs": [[20, "jump"]]}, {"id": 37, "start": 42979, "end": 42995, "lines": ["mov esi, 20h ; ' '; int", "call cs:__overflow_ptr", "jmp loc_A4AB"], "succs": [[2, "jump"]]}, {"id": 38, "start": 42995, "end": 43009, "lines": ["movzx esi, dl; int", "call cs:__overflow_ptr", "jmp loc_A537"], "succs": [[11, "jump"]]}, {"id": 39, "start": 43009, "end": 43015, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_5C10", "ea": 23568, "blocks": [{"id": 0, "start": 23568, "end": 23610, "lines": ["push rbp", "mov rbp, rsp", "push r15", "push r14", "lea rcx, [rbp+var_6B0]", "push r13", "push r12", "push rbx", "sub rsp, 6B8h", "mov rdi, fs:28h", "mov [rbp+var_38], rdi", "xor edi, edi"], "succs": [[1, "fall"]]}, {"id": 1, "start": 23610, "end": 23628, "lines": ["lea rax, off_28040; \"%b %e %Y\"", "mov rax, [rax+rdi]", "movzx edx, byte ptr [rax]", "test dl, dl", "jnz short loc_5C6A"], "succs": [[2, "fall"], [4, "jump"]]}, {"id": 2, "start": 23628, "end": 23630, "lines": ["jmp short loc_5C94"], "succs": [[9, "jump"]]}, {"id": 3, "start": 23648, "end": 23658, "lines": ["mov edx, esi", "add rax, 1", "test dl, dl", "jz short loc_5C94"], "succs": [[4, "fall"], [9, "jump"]]}, {"id": 4, "start": 23658, "end": 23667, "lines": ["movzx esi, byte ptr [rax+1]", "cmp dl, 25h ; '%'", "jnz short loc_5C60"], "succs": [[3, "jump"], [5, "fall"]]}, {"id": 5, "start": 23667, "end": 23673, "lines": ["cmp sil, 25h ; '%'", "jz short loc_5C84"], "succs": [[6, "fall"], [8, "jump"]]}, {"id": 6, "start": 23673, "end": 23679, "lines": ["cmp sil, 62h ; 'b'", "jz short loc_5C96"], "succs": [[7, "fall"], [10, "jump"]]}, {"id": 7, "start": 23679, "end": 23684, "lines": ["test sil, sil", "jz short loc_5C94"], "succs": [[8, "fall"], [9, "jump"]]}, {"id": 8, "start": 23684, "end": 23700, "lines": ["movzx edx, byte ptr [rax+2]", "add rax, 1", "add rax, 1", "test dl, dl", "jnz short loc_5C6A"], "succs": [[4, "jump"], [9, "fall"]]}, {"id": 9, "start": 23700, "end": 23702, "lines": ["xor eax, eax"], "succs": [[10, "fall"]]}, {"id": 10, "start": 23702, "end": 23716, "lines": ["mov [rcx+rdi], rax", "cmp rdi, 8", "jnz loc_5E70"], "succs": [[11, "fall"], [23, "jump"]]}, {"id": 11, "start": 23716, "end": 23730, "lines": ["cmp [rbp+var_6B0], 0", "jz loc_5EB9"], "succs": [[12, "fall"], [28, "jump"]]}, {"id": 12, "start": 23730, "end": 23760, "lines": ["mov [rbp+var_6B8], rcx", "xor r12d, r12d", "xor r13d, r13d", "lea r15, [rbp+var_670]", "lea r14, [rbp+var_640]", "nop dword ptr [rax]"], "succs": [[13, "fall"]]}, {"id": 13, "start": 23760, "end": 23807, "lines": ["lea edi, [r12+2000Eh]; item", "call nl_langinfo", "mov esi, 80h; maxlen", "mov rbx, rax", "mov rdi, rax; string", "call cs:strnlen_ptr", "mov [r15+r12*4], eax", "cmp rax, 80h", "jz loc_5E97"], "succs": [[14, "fall"], [26, "jump"]]}, {"id": 14, "start": 23807, "end": 23830, "lines": ["mov esi, 25h ; '%'; c", "mov rdi, rbx; s", "call cs:strchr_ptr", "test rax, rax", "jnz loc_5E97"], "succs": [[15, "fall"], [26, "jump"]]}, {"id": 15, "start": 23830, "end": 23895, "lines": ["mov rax, r12", "mov rdi, r14", "mov rsi, rbx", "neg rax", "shl rax, 7", "lea rdx, [rax+600h]", "sub rdi, rax", "call cs:__strcpy_chk_ptr", "mov esi, 3", "mov rdi, rax", "call sub_14C90", "lea rdx, [rbp+var_6A0]", "mov [rdx+r12*4], eax", "test eax, eax", "js loc_5E97"], "succs": [[16, "fall"], [26, "jump"]]}, {"id": 16, "start": 23895, "end": 23916, "lines": ["cmp r13d, eax", "cmovl r13d, eax", "add r12, 1", "cmp r12, 0Ch", "jnz loc_5CD0"], "succs": [[13, "jump"], [17, "fall"]]}, {"id": 17, "start": 23916, "end": 23959, "lines": ["mov rcx, [rbp+var_6B8]", "mov [rbp+var_6C0], rdx", "xor r12d, r12d", "mov dword ptr [rbp+var_6B8], r13d", "mov r13, r14", "mov [rbp+var_6E0], rcx", "mov [rbp+var_6C8], r15", "jmp short loc_5DE2"], "succs": [[20, "jump"]]}, {"id": 18, "start": 23968, "end": 23975, "lines": ["add r8, rdx", "lea rdi, [r14+r8]"], "succs": [[19, "fall"]]}, {"id": 19, "start": 23975, "end": 24034, "lines": ["mov ecx, 600h", "mov rdx, r11", "mov esi, 20h ; ' '", "cmp r8, rcx", "cmovnb rcx, r8", "add ebx, r15d", "add r12, 4", "sub r13, 0FFFFFFFFFFFFFF80h", "movsxd rbx, ebx", "sub rcx, r8", "call cs:__memset_chk_ptr", "mov byte ptr [r13+rbx-80h], 0", "cmp r12, 30h ; '0'", "jz loc_5EC9"], "succs": [[20, "fall"], [30, "jump"]]}, {"id": 20, "start": 24034, "end": 24078, "lines": ["mov rax, [rbp+var_6C0]", "mov ebx, dword ptr [rbp+var_6B8]", "sub ebx, [rax+r12]", "mov rax, [rbp+var_6C8]", "mov r15d, [rax+r12]", "mov eax, 80h", "sub eax, r15d", "cmp ebx, eax", "jge loc_5E97"], "succs": [[21, "fall"], [26, "jump"]]}, {"id": 21, "start": 24078, "end": 24108, "lines": ["movsx eax, byte ptr [r13+0]", "mov r8, r12", "movsxd rdx, r15d", "movsxd r11, ebx", "shl r8, 5", "sub eax, 30h ; '0'", "cmp eax, 9", "ja loc_5DA0"], "succs": [[18, "jump"], [22, "fall"]]}, {"id": 22, "start": 24108, "end": 24175, "lines": ["lea rdi, [r8+r11]", "mov ecx, 600h", "mov rsi, r13", "mov [rbp+var_6D8], r11", "cmp rdi, rcx", "mov [rbp+var_6D0], r8", "cmovnb rcx, rdi", "sub rcx, rdi", "add rdi, r14", "call cs:__memmove_chk_ptr", "mov r11, [rbp+var_6D8]", "mov r8, [rbp+var_6D0]", "mov rdi, r13", "jmp loc_5DA7"], "succs": [[19, "jump"]]}, {"id": 23, "start": 24176, "end": 24186, "lines": ["mov edi, 8", "jmp loc_5C3A"], "succs": [[1, "jump"]]}, {"id": 24, "start": 24186, "end": 24208, "lines": ["mov rcx, [rbp+var_6C8]", "lea rdx, [rcx+1]", "mov ecx, 1", "cmp rdx, 2", "jnz short loc_5EE7"], "succs": [[25, "fall"], [31, "jump"]]}, {"id": 25, "start": 24208, "end": 24215, "lines": ["mov cs:byte_283C8, 1"], "succs": [[26, "fall"]]}, {"id": 26, "start": 24215, "end": 24234, "lines": ["mov rax, [rbp+var_38]", "sub rax, fs:28h", "jnz loc_5FBE"], "succs": [[27, "fall"], [38, "jump"]]}, {"id": 27, "start": 24234, "end": 24249, "lines": ["lea rsp, [rbp-28h]", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 28, "start": 24249, "end": 24263, "lines": ["cmp [rbp+var_6A8], 0", "jnz loc_5CB2"], "succs": [[12, "jump"], [29, "fall"]]}, {"id": 29, "start": 24263, "end": 24265, "lines": ["jmp short loc_5E97"], "succs": [[26, "jump"]]}, {"id": 30, "start": 24265, "end": 24295, "lines": ["lea rsi, [r14+600h]", "mov rcx, [rbp+var_6E0]", "mov [rbp+var_6C0], rsi", "mov [rbp+var_6D0], rcx", "xor ecx, ecx"], "succs": [[31, "fall"]]}, {"id": 31, "start": 24295, "end": 24375, "lines": ["lea rax, off_28040; \"%b %e %Y\"", "mov rdx, rcx", "mov ebx, 600h", "mov [rbp+var_6C8], rcx", "mov r14, [rax+rcx*8]", "mov rax, [rbp+var_6D0]", "neg rdx", "and edx, 600h", "mov r15, [rax+rcx*8]", "lea rax, unk_283E0", "lea r13, [rax+rdx+600h]", "mov r12, r15", "lea rax, [r15+2]", "mov [rbp+var_6B8], rax", "sub r12, r14", "jmp short loc_5F9A"], "succs": [[36, "jump"]]}, {"id": 32, "start": 24384, "end": 24397, "lines": ["cmp r12, 80h", "jg loc_5E97"], "succs": [[26, "jump"], [33, "fall"]]}, {"id": 33, "start": 24397, "end": 24455, "lines": ["sub rsp, 8", "push [rbp+var_6B8]", "mov r9d, r12d", "mov rcx, rbx", "mov rax, [rbp+var_6C0]", "mov edx, 2", "mov esi, 80h", "lea r8, aSSS; \"%.*s%s%s\"", "sub rax, rbx", "push rax", "xor eax, eax", "push r14", "call cs:__snprintf_chk_ptr", "add rsp, 20h"], "succs": [[34, "fall"]]}, {"id": 34, "start": 24455, "end": 24464, "lines": ["cmp eax, 7Fh", "ja loc_5E97"], "succs": [[26, "jump"], [35, "fall"]]}, {"id": 35, "start": 24464, "end": 24474, "lines": ["add rbx, 0FFFFFFFFFFFFFF80h", "jz loc_5E7A"], "succs": [[24, "jump"], [36, "fall"]]}, {"id": 36, "start": 24474, "end": 24485, "lines": ["mov rdi, r13", "sub rdi, rbx; s", "test r15, r15", "jnz short loc_5F40"], "succs": [[32, "jump"], [37, "fall"]]}, {"id": 37, "start": 24485, "end": 24510, "lines": ["mov rcx, r14", "lea rdx, aS_1+2; format", "mov esi, 80h; maxlen", "xor eax, eax", "call cs:snprintf_ptr", "jmp short loc_5F87"], "succs": [[34, "jump"]]}, {"id": 38, "start": 24510, "end": 24516, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_11750", "ea": 71504, "blocks": [{"id": 0, "start": 71504, "end": 71539, "lines": ["endbr64", "push rbp", "mov r8, rdx", "mov rbp, rsp", "push r14", "push rbx", "sub rsp, 20h", "mov [rbp+var_18], rsi", "mov [rbp+var_20], rcx", "test rsi, rsi", "js loc_11820"], "succs": [[1, "fall"], [13, "jump"]]}, {"id": 1, "start": 71539, "end": 71542, "lines": ["setz al"], "succs": [[2, "fall"]]}, {"id": 2, "start": 71542, "end": 71554, "lines": ["mov rdx, [rbp+var_20]", "test rdx, rdx", "setz cl", "jns short loc_11789"], "succs": [[3, "fall"], [4, "jump"]]}, {"id": 3, "start": 71554, "end": 71561, "lines": ["cmp byte ptr [r8], 0", "setz cl"], "succs": [[4, "fall"]]}, {"id": 4, "start": 71561, "end": 71569, "lines": ["test al, al", "jnz loc_11830"], "succs": [[5, "fall"], [14, "jump"]]}, {"id": 5, "start": 71569, "end": 71578, "lines": ["mov eax, 1", "test cl, cl", "jnz short loc_11812"], "succs": [[6, "fall"], [12, "jump"]]}, {"id": 6, "start": 71578, "end": 71591, "lines": ["movzx ecx, byte ptr [r8]", "cmp byte ptr [rdi], 2Eh ; '.'", "jz loc_11850"], "succs": [[7, "fall"], [16, "jump"]]}, {"id": 7, "start": 71591, "end": 71596, "lines": ["cmp cl, 2Eh ; '.'", "jz short loc_11812"], "succs": [[8, "fall"], [12, "jump"]]}, {"id": 8, "start": 71596, "end": 71644, "lines": ["mov r11, r8", "lea rsi, [rbp+var_18]", "mov r14, r8", "mov rbx, rdi", "call sub_11240", "lea rsi, [rbp+var_20]", "mov rdi, r11", "mov r10, rax", "call sub_11240", "mov r8, [rbp+var_18]", "mov r9d, 1", "cmp r8, r10", "jz short loc_11840"], "succs": [[9, "fall"], [15, "jump"]]}, {"id": 9, "start": 71644, "end": 71673, "lines": ["mov rcx, rax", "mov rdx, r14", "mov rsi, r10", "mov rdi, rbx", "mov [rbp+var_30], r8", "mov [rbp+var_21], r9b", "call sub_11340", "test eax, eax", "jnz short loc_11812"], "succs": [[10, "fall"], [12, "jump"]]}, {"id": 10, "start": 71673, "end": 71679, "lines": ["cmp [rbp+var_21], 0", "jz short loc_11812"], "succs": [[11, "fall"], [12, "jump"]]}, {"id": 11, "start": 71679, "end": 71698, "lines": ["mov rcx, [rbp+var_20]", "mov rsi, [rbp+var_30]", "mov rdx, r14", "mov rdi, rbx", "call sub_11340"], "succs": [[12, "fall"]]}, {"id": 12, "start": 71698, "end": 71707, "lines": ["add rsp, 20h", "pop rbx", "pop r14", "pop rbp", "retn"], "succs": []}, {"id": 13, "start": 71712, "end": 71723, "lines": ["cmp byte ptr [rdi], 0", "setz al", "jmp loc_11776"], "succs": [[2, "jump"]]}, {"id": 14, "start": 71728, "end": 71743, "lines": ["add rsp, 20h", "movzx ecx, cl", "pop rbx", "lea eax, [rcx-1]", "pop r14", "pop rbp", "retn"], "succs": []}, {"id": 15, "start": 71744, "end": 71754, "lines": ["cmp [rbp+var_20], rax", "setnz r9b", "jmp short loc_117DC"], "succs": [[9, "jump"]]}, {"id": 16, "start": 71760, "end": 71769, "lines": ["cmp cl, 2Eh ; '.'", "jnz loc_11909"], "succs": [[17, "fall"], [37, "jump"]]}, {"id": 17, "start": 71769, "end": 71781, "lines": ["cmp rsi, 1", "setz al", "test rsi, rsi", "jns short loc_1186C"], "succs": [[18, "fall"], [19, "jump"]]}, {"id": 18, "start": 71781, "end": 71788, "lines": ["cmp byte ptr [rdi+1], 0", "setz al"], "succs": [[19, "fall"]]}, {"id": 19, "start": 71788, "end": 71800, "lines": ["cmp rdx, 1", "setz cl", "test rdx, rdx", "jns short loc_11880"], "succs": [[20, "fall"], [21, "jump"]]}, {"id": 20, "start": 71800, "end": 71808, "lines": ["cmp byte ptr [r8+1], 0", "setz cl"], "succs": [[21, "fall"]]}, {"id": 21, "start": 71808, "end": 71812, "lines": ["test al, al", "jnz short loc_11830"], "succs": [[14, "jump"], [22, "fall"]]}, {"id": 22, "start": 71812, "end": 71821, "lines": ["mov eax, 1", "test cl, cl", "jnz short loc_11812"], "succs": [[12, "jump"], [23, "fall"]]}, {"id": 23, "start": 71821, "end": 71827, "lines": ["cmp byte ptr [rdi+1], 2Eh ; '.'", "jz short loc_118C0"], "succs": [[24, "fall"], [28, "jump"]]}, {"id": 24, "start": 71827, "end": 71838, "lines": ["cmp byte ptr [r8+1], 2Eh ; '.'", "jnz loc_117AC"], "succs": [[8, "jump"], [25, "fall"]]}, {"id": 25, "start": 71838, "end": 71848, "lines": ["mov eax, 1", "test rdx, rdx", "js short loc_118F9"], "succs": [[26, "fall"], [35, "jump"]]}, {"id": 26, "start": 71848, "end": 71858, "lines": ["cmp rdx, 2", "jnz loc_117AC"], "succs": [[8, "jump"], [27, "fall"]]}, {"id": 27, "start": 71858, "end": 71863, "lines": ["jmp loc_11812"], "succs": [[12, "jump"]]}, {"id": 28, "start": 71872, "end": 71877, "lines": ["test rsi, rsi", "js short loc_118F1"], "succs": [[29, "fall"], [33, "jump"]]}, {"id": 29, "start": 71877, "end": 71883, "lines": ["cmp rsi, 2", "jnz short loc_11893"], "succs": [[24, "jump"], [30, "fall"]]}, {"id": 30, "start": 71883, "end": 71899, "lines": ["mov eax, 0FFFFFFFFh", "cmp byte ptr [r8+1], 2Eh ; '.'", "jnz loc_11812"], "succs": [[12, "jump"], [31, "fall"]]}, {"id": 31, "start": 71899, "end": 71904, "lines": ["test rdx, rdx", "js short loc_11913"], "succs": [[32, "fall"], [38, "jump"]]}, {"id": 32, "start": 71904, "end": 71921, "lines": ["xor eax, eax", "cmp rdx, 2", "setz al", "sub eax, 1", "jmp loc_11812"], "succs": [[12, "jump"]]}, {"id": 33, "start": 71921, "end": 71927, "lines": ["cmp byte ptr [rdi+2], 0", "jz short loc_118CB"], "succs": [[30, "jump"], [34, "fall"]]}, {"id": 34, "start": 71927, "end": 71929, "lines": ["jmp short loc_11893"], "succs": [[24, "jump"]]}, {"id": 35, "start": 71929, "end": 71940, "lines": ["cmp byte ptr [r8+2], 0", "jz loc_11812"], "succs": [[12, "jump"], [36, "fall"]]}, {"id": 36, "start": 71940, "end": 71945, "lines": ["jmp loc_117AC"], "succs": [[8, "jump"]]}, {"id": 37, "start": 71945, "end": 71955, "lines": ["mov eax, 0FFFFFFFFh", "jmp loc_11812"], "succs": [[12, "jump"]]}, {"id": 38, "start": 71955, "end": 71969, "lines": ["movzx eax, byte ptr [r8+2]", "neg al", "sbb eax, eax", "jmp loc_11812"], "succs": [[12, "jump"]]}]}, {"name": "sub_12A90", "ea": 76432, "blocks": [{"id": 0, "start": 76432, "end": 76475, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r14", "push r13", "push r12", "push rbx", "sub rsp, 10h", "mov rax, fs:28h", "mov [rbp+var_28], rax", "xor eax, eax", "test rsi, rsi", "jz loc_34C3"], "succs": [[1, "fall"], [35, "jump"]]}, {"id": 1, "start": 76475, "end": 76500, "lines": ["mov r14, rdx", "xor ecx, ecx", "lea rdx, [rbp+var_30]", "mov rbx, rdi", "mov r12, rsi", "call sub_11C60", "test rax, rax", "jz short loc_12AE0"], "succs": [[2, "fall"], [5, "jump"]]}, {"id": 2, "start": 76500, "end": 76505, "lines": ["test r14, r14", "jz short loc_12ADC"], "succs": [[3, "fall"], [4, "jump"]]}, {"id": 3, "start": 76505, "end": 76508, "lines": ["mov [r14], rax"], "succs": [[4, "fall"]]}, {"id": 4, "start": 76508, "end": 76512, "lines": ["xor eax, eax", "jmp short loc_12B5F"], "succs": [[15, "jump"]]}, {"id": 5, "start": 76512, "end": 76525, "lines": ["mov rax, [rbx+18h]", "test rax, rax", "js loc_12BA0"], "succs": [[6, "fall"], [18, "jump"]]}, {"id": 6, "start": 76525, "end": 76534, "lines": ["pxor xmm5, xmm5", "cvtsi2ss xmm5, rax"], "succs": [[7, "fall"]]}, {"id": 7, "start": 76534, "end": 76547, "lines": ["mov rax, [rbx+10h]", "test rax, rax", "js loc_12B80"], "succs": [[8, "fall"], [17, "jump"]]}, {"id": 8, "start": 76547, "end": 76556, "lines": ["pxor xmm4, xmm4", "cvtsi2ss xmm4, rax"], "succs": [[9, "fall"]]}, {"id": 9, "start": 76556, "end": 76578, "lines": ["mov rax, [rbx+28h]", "movss xmm0, dword ptr [rax+8]", "mulss xmm0, xmm4", "comiss xmm5, xmm0", "ja loc_12BC0"], "succs": [[10, "fall"], [19, "jump"]]}, {"id": 10, "start": 76578, "end": 76593, "lines": ["mov r13, [rbp+var_30]", "cmp qword ptr [r13+0], 0", "jz loc_12C10"], "succs": [[11, "fall"], [24, "jump"]]}, {"id": 11, "start": 76593, "end": 76606, "lines": ["mov rax, [rbx+48h]", "test rax, rax", "jz loc_12C80"], "succs": [[12, "fall"], [31, "jump"]]}, {"id": 12, "start": 76606, "end": 76614, "lines": ["mov rdx, [rax+8]", "mov [rbx+48h], rdx"], "succs": [[13, "fall"]]}, {"id": 13, "start": 76614, "end": 76634, "lines": ["mov rdx, [r13+8]", "mov [rax], r12", "mov [rax+8], rdx", "mov [r13+8], rax", "add qword ptr [rbx+20h], 1"], "succs": [[14, "fall"]]}, {"id": 14, "start": 76634, "end": 76639, "lines": ["mov eax, 1"], "succs": [[15, "fall"]]}, {"id": 15, "start": 76639, "end": 76658, "lines": ["mov rdx, [rbp+var_28]", "sub rdx, fs:28h", "jnz loc_12CB4"], "succs": [[16, "fall"], [34, "jump"]]}, {"id": 16, "start": 76658, "end": 76671, "lines": ["add rsp, 10h", "pop rbx", "pop r12", "pop r13", "pop r14", "pop rbp", "retn"], "succs": []}, {"id": 17, "start": 76672, "end": 76702, "lines": ["mov rdx, rax", "and eax, 1", "pxor xmm4, xmm4", "shr rdx, 1", "or rdx, rax", "cvtsi2ss xmm4, rdx", "addss xmm4, xmm4", "jmp loc_12B0C"], "succs": [[9, "jump"]]}, {"id": 18, "start": 76704, "end": 76734, "lines": ["mov rdx, rax", "and eax, 1", "pxor xmm5, xmm5", "shr rdx, 1", "or rdx, rax", "cvtsi2ss xmm5, rdx", "addss xmm5, xmm5", "jmp loc_12AF6"], "succs": [[7, "jump"]]}, {"id": 19, "start": 76736, "end": 76769, "lines": ["mov rdi, rbx", "call sub_11BD0", "mov rax, [rbx+28h]", "movaps xmm1, xmm4", "movss xmm0, dword ptr [rax+8]", "mulss xmm1, xmm0", "comiss xmm5, xmm1", "jbe loc_12B22"], "succs": [[10, "jump"], [20, "fall"]]}, {"id": 20, "start": 76769, "end": 76780, "lines": ["mulss xmm4, dword ptr [rax+0Ch]", "cmp byte ptr [rax+10h], 0", "jz short loc_12C38"], "succs": [[21, "fall"], [25, "jump"]]}, {"id": 21, "start": 76780, "end": 76789, "lines": ["comiss xmm4, cs:dword_1D010", "jb short loc_12C40"], "succs": [[22, "fall"], [26, "jump"]]}, {"id": 22, "start": 76789, "end": 76801, "lines": ["call cs:__errno_location_ptr", "mov dword ptr [rax], 0Ch"], "succs": [[23, "fall"]]}, {"id": 23, "start": 76801, "end": 76811, "lines": ["mov eax, 0FFFFFFFFh", "jmp loc_12B5F"], "succs": [[15, "jump"]]}, {"id": 24, "start": 76816, "end": 76852, "lines": ["mov eax, 1", "movdqu xmm2, xmmword ptr [rbx+18h]", "mov [r13+0], r12", "movq xmm0, rax", "punpcklqdq xmm0, xmm0", "paddq xmm0, xmm2", "movups xmmword ptr [rbx+18h], xmm0", "jmp loc_12B5A"], "succs": [[14, "jump"]]}, {"id": 25, "start": 76856, "end": 76862, "lines": ["mulss xmm4, xmm0", "jmp short loc_12BEC"], "succs": [[21, "jump"]]}, {"id": 26, "start": 76864, "end": 76873, "lines": ["comiss xmm4, cs:dword_1D014", "jnb short loc_12CA0"], "succs": [[27, "fall"], [33, "jump"]]}, {"id": 27, "start": 76873, "end": 76878, "lines": ["cvttss2si rsi, xmm4"], "succs": [[28, "fall"]]}, {"id": 28, "start": 76878, "end": 76890, "lines": ["mov rdi, rbx", "call sub_12810", "test al, al", "jz short loc_12C01"], "succs": [[23, "jump"], [29, "fall"]]}, {"id": 29, "start": 76890, "end": 76916, "lines": ["xor ecx, ecx", "lea rdx, [rbp+var_30]", "mov rsi, r12", "mov rdi, rbx", "call sub_11C60", "test rax, rax", "jz loc_12B22"], "succs": [[10, "jump"], [30, "fall"]]}, {"id": 30, "start": 76916, "end": 76921, "lines": ["jmp loc_34C3"], "succs": [[35, "jump"]]}, {"id": 31, "start": 76928, "end": 76948, "lines": ["mov edi, 10h; size", "call cs:malloc_ptr", "test rax, rax", "jnz loc_12B46"], "succs": [[13, "jump"], [32, "fall"]]}, {"id": 32, "start": 76948, "end": 76953, "lines": ["jmp loc_12C01"], "succs": [[23, "jump"]]}, {"id": 33, "start": 76960, "end": 76980, "lines": ["subss xmm4, cs:dword_1D014", "cvttss2si rsi, xmm4", "btc rsi, 3Fh ; '?'", "jmp short loc_12C4E"], "succs": [[28, "jump"]]}, {"id": 34, "start": 76980, "end": 76986, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 35, "start": 13507, "end": 13513, "lines": ["call cs:abort_ptr"], "succs": []}]}, {"name": "sub_14CC0", "ea": 85184, "blocks": [{"id": 0, "start": 85184, "end": 85247, "lines": ["push rbp", "mov rax, rsi", "shr rax, 1", "mov rbp, rsp", "push r15", "push r14", "push r13", "push r12", "push rbx", "mov rbx, rdi", "sub rsp, 48h", "mov [rbp+var_58], rsi", "sub rsi, rax", "mov [rbp+var_50], rax", "lea rax, [rdi+rax*8]", "mov [rbp+var_60], rdx", "mov [rbp+var_48], rcx", "mov [rbp+var_70], rax", "cmp rsi, 2", "ja loc_14EF0"], "succs": [[1, "fall"], [27, "jump"]]}, {"id": 1, "start": 85247, "end": 85253, "lines": ["jz loc_14DB8"], "succs": [[2, "fall"], [11, "jump"]]}, {"id": 2, "start": 85253, "end": 85264, "lines": ["cmp [rbp+var_50], 1", "jnz loc_14E00"], "succs": [[3, "fall"], [14, "jump"]]}, {"id": 3, "start": 85264, "end": 85278, "lines": ["mov rax, [rbx]", "mov rdx, [rbp+var_60]", "mov qword ptr [rbp+var_40], rax", "mov [rdx], rax"], "succs": [[4, "fall"]]}, {"id": 4, "start": 85278, "end": 85296, "lines": ["mov rax, [rbp+var_70]", "mov r15, [rbp+var_50]", "xor r13d, r13d", "xor r14d, r14d", "mov r12, [rax]", "nop"], "succs": [[5, "fall"]]}, {"id": 5, "start": 85296, "end": 85314, "lines": ["mov rdi, qword ptr [rbp+var_40]", "mov rsi, r12", "add r13, 1", "call [rbp+var_48]", "test eax, eax", "jle short loc_14D60"], "succs": [[6, "fall"], [8, "jump"]]}, {"id": 6, "start": 85314, "end": 85329, "lines": ["mov [rbx+r13*8-8], r12", "add r15, 1", "cmp [rbp+var_58], r15", "jz short loc_14D88"], "succs": [[7, "fall"], [10, "jump"]]}, {"id": 7, "start": 85329, "end": 85335, "lines": ["mov r12, [rbx+r15*8]", "jmp short loc_14D30"], "succs": [[5, "jump"]]}, {"id": 8, "start": 85344, "end": 85367, "lines": ["mov rax, qword ptr [rbp+var_40]", "add r14, 1", "mov [rbx+r13*8-8], rax", "cmp [rbp+var_50], r14", "jz loc_14ED8"], "succs": [[9, "fall"], [26, "jump"]]}, {"id": 9, "start": 85367, "end": 85381, "lines": ["mov rax, [rbp+var_60]", "mov rax, [rax+r14*8]", "mov qword ptr [rbp+var_40], rax", "jmp short loc_14D30"], "succs": [[5, "jump"]]}, {"id": 10, "start": 85384, "end": 85427, "lines": ["mov rdx, [rbp+var_50]", "mov rax, [rbp+var_60]", "add rsp, 48h", "lea rdi, [rbx+r13*8]; dest", "pop rbx", "pop r12", "sub rdx, r14", "pop r13", "lea rsi, [rax+r14*8]; src", "pop r14", "shl rdx, 3; n", "pop r15", "pop rbp", "jmp cs:memcpy_ptr"], "succs": [[35, "jump"]]}, {"id": 11, "start": 85432, "end": 85466, "lines": ["movdqu xmm0, xmmword ptr [rax]", "mov r14, rax", "movhlps xmm1, xmm0", "movq rdi, xmm0", "movaps [rbp+var_40], xmm0", "movq rsi, xmm1", "call rcx", "test eax, eax", "jle loc_14D05"], "succs": [[2, "jump"], [12, "fall"]]}, {"id": 12, "start": 85466, "end": 85491, "lines": ["movdqa xmm0, [rbp+var_40]", "shufpd xmm0, xmm0, 1", "movups xmmword ptr [r14], xmm0", "cmp [rbp+var_50], 1", "jz loc_14D10"], "succs": [[3, "jump"], [13, "fall"]]}, {"id": 13, "start": 85491, "end": 85504, "lines": ["xchg ax, ax", "nop word ptr [rax+rax+00000000h]"], "succs": [[14, "fall"]]}, {"id": 14, "start": 85504, "end": 85537, "lines": ["mov rax, [rbp+var_58]", "mov rsi, [rbp+var_50]", "shr rax, 2", "sub rsi, rax", "mov [rbp+var_68], rax", "lea r12, [rbx+rax*8]", "cmp rsi, 2", "ja loc_14F26"], "succs": [[15, "fall"], [30, "jump"]]}, {"id": 15, "start": 85537, "end": 85543, "lines": ["jz loc_14F61"], "succs": [[16, "fall"], [33, "jump"]]}, {"id": 16, "start": 85543, "end": 85554, "lines": ["cmp [rbp+var_68], 2", "ja loc_14F06"], "succs": [[17, "fall"], [28, "jump"]]}, {"id": 17, "start": 85554, "end": 85567, "lines": ["mov rax, [rbx]", "mov qword ptr [rbp+var_40], rax", "jz loc_14F3B"], "succs": [[18, "fall"], [31, "jump"]]}, {"id": 18, "start": 85567, "end": 85584, "lines": ["mov r12, [r12]", "mov r14, [rbp+var_68]", "xor r13d, r13d", "mov r15, [rbp+var_60]", "xchg ax, ax"], "succs": [[19, "fall"]]}, {"id": 19, "start": 85584, "end": 85602, "lines": ["mov rdi, qword ptr [rbp+var_40]", "mov rsi, r12", "add r15, 8", "call [rbp+var_48]", "test eax, eax", "jle short loc_14E80"], "succs": [[20, "fall"], [22, "jump"]]}, {"id": 20, "start": 85602, "end": 85616, "lines": ["mov [r15-8], r12", "add r14, 1", "cmp [rbp+var_50], r14", "jz short loc_14EAB"], "succs": [[21, "fall"], [25, "jump"]]}, {"id": 21, "start": 85616, "end": 85622, "lines": ["mov r12, [rbx+r14*8]", "jmp short loc_14E50"], "succs": [[19, "jump"]]}, {"id": 22, "start": 85632, "end": 85650, "lines": ["mov rax, qword ptr [rbp+var_40]", "add r13, 1", "mov [r15-8], rax", "cmp [rbp+var_68], r13", "jz short loc_14EA0"], "succs": [[23, "fall"], [24, "jump"]]}, {"id": 23, "start": 85650, "end": 85660, "lines": ["mov rax, [rbx+r13*8]", "mov qword ptr [rbp+var_40], rax", "jmp short loc_14E50"], "succs": [[19, "jump"]]}, {"id": 24, "start": 85664, "end": 85675, "lines": ["mov rax, [rbp+var_50]", "mov r13, r14", "mov [rbp+var_68], rax"], "succs": [[25, "fall"]]}, {"id": 25, "start": 85675, "end": 85715, "lines": ["mov rdx, [rbp+var_68]", "lea rsi, [rbx+r13*8]; src", "mov rdi, r15; dest", "sub rdx, r13", "shl rdx, 3; n", "call cs:memcpy_ptr", "mov rax, [rbp+var_60]", "mov rax, [rax]", "mov qword ptr [rbp+var_40], rax", "jmp loc_14D1E"], "succs": [[4, "jump"]]}, {"id": 26, "start": 85720, "end": 85735, "lines": ["add rsp, 48h", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 27, "start": 85744, "end": 85766, "lines": ["mov rcx, [rbp+var_48]", "mov rdx, [rbp+var_60]", "mov rdi, [rbp+var_70]", "call sub_14CC0", "jmp loc_14D05"], "succs": [[2, "jump"]]}, {"id": 28, "start": 85766, "end": 85786, "lines": ["mov rcx, [rbp+var_48]", "mov rdx, [rbp+var_60]", "mov rdi, rbx", "mov rsi, [rbp+var_68]", "call sub_14CC0"], "succs": [[29, "fall"]]}, {"id": 29, "start": 85786, "end": 85798, "lines": ["mov rax, [rbx]", "mov qword ptr [rbp+var_40], rax", "jmp loc_14E3F"], "succs": [[18, "jump"]]}, {"id": 30, "start": 85798, "end": 85819, "lines": ["mov rcx, [rbp+var_48]", "mov rdx, [rbp+var_60]", "mov rdi, r12", "call sub_14CC0", "jmp loc_14E27"], "succs": [[16, "jump"]]}, {"id": 31, "start": 85819, "end": 85836, "lines": ["mov r13, [rbx+8]", "mov rdi, rax", "mov rsi, r13", "call [rbp+var_48]", "test eax, eax", "jle short loc_14F1A"], "succs": [[29, "jump"], [32, "fall"]]}, {"id": 32, "start": 85836, "end": 85857, "lines": ["movq xmm0, r13", "movhps xmm0, qword ptr [rbp+var_40]", "mov qword ptr [rbp+var_40], r13", "movups xmmword ptr [rbx], xmm0", "jmp loc_14E3F"], "succs": [[18, "jump"]]}, {"id": 33, "start": 85857, "end": 85891, "lines": ["movdqu xmm0, xmmword ptr [r12]", "movhlps xmm2, xmm0", "movq rdi, xmm0", "movaps [rbp+var_40], xmm0", "movq rsi, xmm2", "call [rbp+var_48]", "test eax, eax", "jle loc_14E27"], "succs": [[16, "jump"], [34, "fall"]]}, {"id": 34, "start": 85891, "end": 85911, "lines": ["movdqa xmm0, [rbp+var_40]", "shufpd xmm0, xmm0, 1", "movups xmmword ptr [r12], xmm0", "jmp loc_14E27"], "succs": [[16, "jump"]]}, {"id": 35, "start": 169904, "end": 169904, "lines": [], "succs": []}]}, {"name": "sub_76D0", "ea": 30416, "blocks": [{"id": 0, "start": 30416, "end": 30477, "lines": ["mov rax, cs:qword_29200", "mov r9, cs:qword_293B0", "push rbp", "cmp rax, r9", "mov rbp, rsp", "push r14", "mov r14, cs:qword_282C0", "push r13", "mov r13d, edi", "push r12", "push rbx", "mov rbx, r9", "cmovbe rbx, rax", "test rax, rax", "cmovz rbx, r9", "cmp rbx, r14", "jg loc_789F"], "succs": [[1, "fall"], [25, "jump"]]}, {"id": 1, "start": 30477, "end": 30486, "lines": ["test rbx, rbx", "jle loc_7945"], "succs": [[2, "fall"], [31, "jump"]]}, {"id": 2, "start": 30486, "end": 30512, "lines": ["mov rdi, cs:qword_29208", "lea r8, [rbx+rbx*2+3]", "xor esi, esi", "mov edx, 3", "nop dword ptr [rax+00000000h]"], "succs": [[3, "fall"]]}, {"id": 3, "start": 30512, "end": 30541, "lines": ["mov rax, [rdi+rdx*8-8]", "add rsi, 8", "mov byte ptr [rdi+rdx*8-18h], 1", "mov [rdi+rdx*8-10h], rdx", "lea rcx, [rax+rsi]", "test sil, 8", "jz short loc_7760"], "succs": [[4, "fall"], [6, "jump"]]}, {"id": 4, "start": 30541, "end": 30557, "lines": ["mov qword ptr [rax], 3", "add rax, 8", "cmp rcx, rax", "jz short loc_7778"], "succs": [[5, "fall"], [7, "jump"]]}, {"id": 5, "start": 30557, "end": 30560, "lines": ["nop dword ptr [rax]"], "succs": [[6, "fall"]]}, {"id": 6, "start": 30560, "end": 30584, "lines": ["mov qword ptr [rax], 3", "add rax, 10h", "mov qword ptr [rax-8], 3", "cmp rcx, rax", "jnz short loc_7760"], "succs": [[7, "fall"], [6, "jump"]]}, {"id": 7, "start": 30584, "end": 30593, "lines": ["add rdx, 3", "cmp rdx, r8", "jnz short loc_7730"], "succs": [[3, "jump"], [8, "fall"]]}, {"id": 8, "start": 30593, "end": 30602, "lines": ["test r9, r9", "jle loc_784D"], "succs": [[9, "fall"], [20, "jump"]]}, {"id": 9, "start": 30602, "end": 30608, "lines": ["xor r12d, r12d", "nop dword ptr [rax]"], "succs": [[10, "fall"]]}, {"id": 10, "start": 30608, "end": 30643, "lines": ["mov rax, cs:qword_293A0", "mov rdi, [rax+r12*8]", "call sub_74E0", "mov r10, cs:qword_293B0", "mov r9, rax", "test rbx, rbx", "jle loc_7840"], "succs": [[11, "fall"], [19, "jump"]]}, {"id": 11, "start": 30643, "end": 30661, "lines": ["mov r11, cs:qword_292B0", "mov rsi, cs:qword_29208", "xor ecx, ecx", "jmp short loc_7819"], "succs": [[16, "jump"]]}, {"id": 12, "start": 30664, "end": 30688, "lines": ["lea rax, [rcx+r10-1]", "cqo", "idiv rcx", "mov r8, rax", "mov rax, r12", "cqo", "idiv r8", "mov r8, rax"], "succs": [[13, "fall"]]}, {"id": 13, "start": 30688, "end": 30716, "lines": ["mov rdx, [rsi+10h]", "xor eax, eax", "cmp r8, rdi", "setnz al", "lea rdx, [rdx+r8*8]", "lea rax, [r9+rax*2]", "mov rdi, [rdx]", "cmp rdi, rax", "jnb short loc_7810"], "succs": [[14, "fall"], [15, "jump"]]}, {"id": 14, "start": 30716, "end": 30736, "lines": ["mov r8, rax", "sub r8, rdi", "add [rsi+8], r8", "mov [rdx], rax", "cmp [rsi+8], r11", "setb byte ptr [rsi]"], "succs": [[15, "fall"]]}, {"id": 15, "start": 30736, "end": 30745, "lines": ["add rsi, 18h", "cmp rbx, rcx", "jz short loc_7840"], "succs": [[16, "fall"], [19, "jump"]]}, {"id": 16, "start": 30745, "end": 30757, "lines": ["mov rdi, rcx", "add rcx, 1", "cmp byte ptr [rsi], 0", "jz short loc_7810"], "succs": [[15, "jump"], [17, "fall"]]}, {"id": 17, "start": 30757, "end": 30762, "lines": ["test r13b, r13b", "jnz short loc_77C8"], "succs": [[12, "jump"], [18, "fall"]]}, {"id": 18, "start": 30762, "end": 30775, "lines": ["mov rax, r12", "cqo", "idiv rcx", "mov r8, rdx", "jmp short loc_77E0"], "succs": [[13, "jump"]]}, {"id": 19, "start": 30784, "end": 30797, "lines": ["add r12, 1", "cmp r12, r10", "jl loc_7790"], "succs": [[10, "jump"], [20, "fall"]]}, {"id": 20, "start": 30797, "end": 30803, "lines": ["cmp rbx, 1", "jle short loc_7893"], "succs": [[21, "fall"], [24, "jump"]]}, {"id": 21, "start": 30803, "end": 30821, "lines": ["mov rdx, cs:qword_29208", "lea rax, [rbx+rbx*2]", "lea rax, [rdx+rax*8-18h]", "jmp short loc_788E"], "succs": [[23, "jump"]]}, {"id": 22, "start": 30848, "end": 30862, "lines": ["sub rbx, 1", "sub rax, 18h", "cmp rbx, 1", "jz short loc_7893"], "succs": [[23, "fall"], [24, "jump"]]}, {"id": 23, "start": 30862, "end": 30867, "lines": ["cmp byte ptr [rax], 0", "jz short loc_7880"], "succs": [[22, "jump"], [24, "fall"]]}, {"id": 24, "start": 30867, "end": 30879, "lines": ["mov rax, rbx", "pop rbx", "pop r12", "pop r13", "pop r14", "pop rbp", "retn"], "succs": []}, {"id": 25, "start": 30879, "end": 30944, "lines": ["mov rdx, rbx", "mov rdi, cs:qword_29208", "mov r8d, 18h", "mov rcx, 0FFFFFFFFFFFFFFFFh", "sub rdx, r14", "lea rsi, qword_282C0", "lea r12, [r14+1]", "call sub_1BA20", "mov cs:qword_29208, rax", "mov rax, cs:qword_282C0", "mov rdx, rax", "add rdx, r12", "jo short loc_7953"], "succs": [[26, "fall"], [33, "jump"]]}, {"id": 26, "start": 30944, "end": 30953, "lines": ["sub rax, r14", "imul rax, rdx", "jo short loc_7953"], "succs": [[27, "fall"], [33, "jump"]]}, {"id": 27, "start": 30953, "end": 30982, "lines": ["sar rax, 1", "mov esi, 8", "mov rdi, rax", "call sub_1B920", "mov rcx, cs:qword_282C0", "cmp r14, rcx", "jge short loc_7935"], "succs": [[28, "fall"], [30, "jump"]]}, {"id": 28, "start": 30982, "end": 31008, "lines": ["mov rdi, cs:qword_29208", "lea rdx, ds:0[r12*8]", "lea rsi, ds:8[rcx*8]", "nop dword ptr [rax]"], "succs": [[29, "fall"]]}, {"id": 29, "start": 31008, "end": 31029, "lines": ["lea rcx, [rdx+rdx*2]", "mov [rdi+rcx-8], rax", "add rax, rdx", "add rdx, 8", "cmp rdx, rsi", "jnz short loc_7920"], "succs": [[30, "fall"], [29, "jump"]]}, {"id": 30, "start": 31029, "end": 31045, "lines": ["mov r9, cs:qword_293B0", "test rbx, rbx", "jg loc_7716"], "succs": [[2, "jump"], [31, "fall"]]}, {"id": 31, "start": 31045, "end": 31054, "lines": ["test r9, r9", "jg loc_778A"], "succs": [[9, "jump"], [32, "fall"]]}, {"id": 32, "start": 31054, "end": 31059, "lines": ["jmp loc_7893"], "succs": [[24, "jump"]]}, {"id": 33, "start": 31059, "end": 31065, "lines": ["call sub_1BCB0"], "succs": []}]}, {"name": "sub_BAB0", "ea": 47792, "blocks": [{"id": 0, "start": 47792, "end": 47836, "lines": ["push rbp", "mov rbp, rsp", "push r14", "push r12", "push rbx", "mov rbx, rdi", "sub rsp, 2B8h", "cmp cs:byte_29312, 0", "mov r12, fs:28h", "mov [rbp+var_28], r12", "mov r12, rsi", "jz short loc_BB10"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 47836, "end": 47848, "lines": ["mov rax, cs:qword_280A0", "test rax, rax", "jz short loc_BB10"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 47848, "end": 47858, "lines": ["cmp rax, 2", "ja loc_BCE8"], "succs": [[3, "fall"], [31, "jump"]]}, {"id": 3, "start": 47858, "end": 47876, "lines": ["mov rdx, cs:qword_280A8", "cmp byte ptr [rdx+rax-1], 30h ; '0'", "jnz loc_BCE8"], "succs": [[4, "fall"], [31, "jump"]]}, {"id": 4, "start": 47876, "end": 47885, "lines": ["cmp byte ptr [rdx], 30h ; '0'", "jnz loc_BCE8"], "succs": [[5, "fall"], [31, "jump"]]}, {"id": 5, "start": 47885, "end": 47888, "lines": ["nop dword ptr [rax]"], "succs": [[6, "fall"]]}, {"id": 6, "start": 47888, "end": 47897, "lines": ["cmp cs:byte_292FC, 0", "jz short loc_BB5B"], "succs": [[7, "fall"], [12, "jump"]]}, {"id": 7, "start": 47897, "end": 47913, "lines": ["lea rcx, asc_1F000; \"?\"", "cmp byte ptr [rbx+0B8h], 0", "jz short loc_BB36"], "succs": [[8, "fall"], [9, "jump"]]}, {"id": 8, "start": 47913, "end": 47926, "lines": ["mov rdi, [rbx+20h]", "test rdi, rdi", "jnz loc_BCD0"], "succs": [[9, "fall"], [30, "jump"]]}, {"id": 9, "start": 47926, "end": 47937, "lines": ["xor edx, edx", "cmp cs:dword_2933C, 4", "jz short loc_BB47"], "succs": [[10, "fall"], [11, "jump"]]}, {"id": 10, "start": 47937, "end": 47943, "lines": ["mov edx, cs:dword_29364"], "succs": [[11, "fall"]]}, {"id": 11, "start": 47943, "end": 47963, "lines": ["lea rsi, aSS_1+3; \"%*s \"", "mov edi, 2", "xor eax, eax", "call cs:__printf_chk_ptr"], "succs": [[12, "fall"]]}, {"id": 12, "start": 47963, "end": 47972, "lines": ["cmp cs:byte_2932C, 0", "jz short loc_BBC3"], "succs": [[13, "fall"], [17, "jump"]]}, {"id": 13, "start": 47972, "end": 47992, "lines": ["lea r8, asc_1F000; \"?\"", "cmp byte ptr [rbx+0B8h], 0", "jnz loc_BC80"], "succs": [[14, "fall"], [27, "jump"]]}, {"id": 14, "start": 47992, "end": 48026, "lines": ["mov [rbp+var_2C8], r8", "mov rdi, r8", "mov esi, 3", "call sub_14C90", "xor edx, edx", "mov r8, [rbp+var_2C8]", "test eax, eax", "js short loc_BBA8"], "succs": [[15, "fall"], [16, "jump"]]}, {"id": 15, "start": 48026, "end": 48040, "lines": ["mov edx, cs:dword_29360", "test edx, edx", "jnz loc_BCB0"], "succs": [[16, "fall"], [28, "jump"]]}, {"id": 16, "start": 48040, "end": 48067, "lines": ["lea rcx, accept+3; \"\"", "lea rsi, aSS_2; \"%*s%s \"", "mov edi, 2", "xor eax, eax", "call cs:__printf_chk_ptr"], "succs": [[17, "fall"]]}, {"id": 17, "start": 48067, "end": 48076, "lines": ["cmp cs:byte_29369, 0", "jz short loc_BBF8"], "succs": [[18, "fall"], [21, "jump"]]}, {"id": 18, "start": 48076, "end": 48094, "lines": ["xor edx, edx", "cmp cs:dword_2933C, 4", "mov rcx, [rbx+0B0h]", "jz short loc_BBE4"], "succs": [[19, "fall"], [20, "jump"]]}, {"id": 19, "start": 48094, "end": 48100, "lines": ["mov edx, cs:dword_29358"], "succs": [[20, "fall"]]}, {"id": 20, "start": 48100, "end": 48120, "lines": ["lea rsi, aSS_1+3; \"%*s \"", "mov edi, 2", "xor eax, eax", "call cs:__printf_chk_ptr"], "succs": [[21, "fall"]]}, {"id": 21, "start": 48120, "end": 48145, "lines": ["mov rcx, r12", "xor edx, edx", "xor esi, esi", "mov rdi, rbx", "call sub_A810", "mov eax, cs:dword_29314", "test eax, eax", "jnz short loc_BC38"], "succs": [[22, "fall"], [24, "jump"]]}, {"id": 22, "start": 48145, "end": 48164, "lines": ["mov rax, [rbp+var_28]", "sub rax, fs:28h", "jnz loc_BD26"], "succs": [[23, "fall"], [33, "jump"]]}, {"id": 23, "start": 48164, "end": 48178, "lines": ["add rsp, 2B8h", "pop rbx", "pop r12", "pop r14", "pop rbp", "retn"], "succs": []}, {"id": 24, "start": 48184, "end": 48209, "lines": ["mov edx, [rbx+0A8h]", "mov esi, [rbx+30h]", "movzx edi, byte ptr [rbx+0B8h]", "call sub_5940", "test al, al", "jz short loc_BC11"], "succs": [[22, "jump"], [25, "fall"]]}, {"id": 25, "start": 48209, "end": 48238, "lines": ["mov rdi, cs:stdout; _IO_FILE *", "add cs:qword_291F8, 1", "mov rdx, [rdi+28h]", "cmp rdx, [rdi+30h]", "jnb loc_BD18"], "succs": [[26, "fall"], [32, "jump"]]}, {"id": 26, "start": 48238, "end": 48250, "lines": ["lea rcx, [rdx+1]", "mov [rdi+28h], rcx", "mov [rdx], al", "jmp short loc_BC11"], "succs": [[22, "jump"]]}, {"id": 27, "start": 48256, "end": 48299, "lines": ["mov r8, cs:qword_29320", "mov rdi, [rbx+58h]", "lea rsi, [rbp+var_2C0]", "mov ecx, 200h", "mov edx, cs:dword_29328", "call sub_13000", "mov r8, rax", "jmp loc_BB78"], "succs": [[14, "jump"]]}, {"id": 28, "start": 48304, "end": 48319, "lines": ["sub edx, eax", "cmp cs:dword_2933C, 4", "jnz loc_BBA8"], "succs": [[16, "jump"], [29, "fall"]]}, {"id": 29, "start": 48319, "end": 48326, "lines": ["xor edx, edx", "jmp loc_BBA8"], "succs": [[16, "jump"]]}, {"id": 30, "start": 48336, "end": 48357, "lines": ["lea rsi, [rbp+var_2C0]", "call sub_14440", "mov rcx, rax", "jmp loc_BB36"], "succs": [[9, "jump"]]}, {"id": 31, "start": 48360, "end": 48401, "lines": ["lea rdi, qword_28060", "call sub_6E20", "lea rdi, qword_280A0", "call sub_6E20", "lea rdi, qword_28070", "call sub_6E20", "jmp loc_BB10"], "succs": [[6, "jump"]]}, {"id": 32, "start": 48408, "end": 48422, "lines": ["movsx esi, al; int", "call cs:__overflow_ptr", "jmp loc_BC11"], "succs": [[22, "jump"]]}, {"id": 33, "start": 48422, "end": 48428, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_14AE0", "ea": 84704, "blocks": [{"id": 0, "start": 84704, "end": 84763, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r15", "lea r15, [rdi+rsi]", "push r14", "xor r14d, r14d", "push r13", "push r12", "push rbx", "mov rbx, rdi", "sub rsp, 38h", "mov r13, fs:28h", "mov [rbp+var_38], r13", "mov r13d, edx", "call cs:__ctype_get_mb_cur_max_ptr", "cmp rax, 1", "ja short loc_14B28"], "succs": [[1, "fall"], [3, "jump"]]}, {"id": 1, "start": 84763, "end": 84768, "lines": ["jmp loc_14C20"], "succs": [[21, "jump"]]}, {"id": 2, "start": 84768, "end": 84776, "lines": ["add rbx, 1", "add r14d, 1"], "succs": [[3, "fall"]]}, {"id": 3, "start": 84776, "end": 84781, "lines": ["cmp rbx, r15", "jnb short loc_14B6D"], "succs": [[4, "fall"], [9, "jump"]]}, {"id": 4, "start": 84781, "end": 84792, "lines": ["movsx eax, byte ptr [rbx]", "sub eax, 20h ; ' '", "cmp eax, 5Eh ; '^'", "jbe short loc_14B20"], "succs": [[2, "jump"], [5, "fall"]]}, {"id": 5, "start": 84792, "end": 84829, "lines": ["mov rdx, r15", "lea rdi, [rbp+c]; pc32", "lea rcx, [rbp+var_40]", "mov rsi, rbx; s", "sub rdx, rbx", "mov [rbp+var_40], 0", "call sub_144B0", "cmp rax, 0FFFFFFFFFFFFFFFFh", "jz short loc_14B98"], "succs": [[6, "fall"], [11, "jump"]]}, {"id": 6, "start": 84829, "end": 84835, "lines": ["cmp rax, 0FFFFFFFFFFFFFFFEh", "jnz short loc_14BB0"], "succs": [[7, "fall"], [13, "jump"]]}, {"id": 7, "start": 84835, "end": 84841, "lines": ["and r13d, 1", "jnz short loc_14B9E"], "succs": [[8, "fall"], [12, "jump"]]}, {"id": 8, "start": 84841, "end": 84845, "lines": ["add r14d, 1"], "succs": [[9, "fall"]]}, {"id": 9, "start": 84845, "end": 84864, "lines": ["mov rax, [rbp+var_38]", "sub rax, fs:28h", "jnz loc_14C7F"], "succs": [[10, "fall"], [30, "jump"]]}, {"id": 10, "start": 84864, "end": 84882, "lines": ["add rsp, 38h", "mov eax, r14d", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 11, "start": 84888, "end": 84894, "lines": ["test r13b, 1", "jz short loc_14B20"], "succs": [[2, "jump"], [12, "fall"]]}, {"id": 12, "start": 84894, "end": 84902, "lines": ["mov r14d, 0FFFFFFFFh", "jmp short loc_14B6D"], "succs": [[9, "jump"]]}, {"id": 13, "start": 84912, "end": 84933, "lines": ["mov [rbp+var_58], rax", "mov edi, [rbp+c]; c", "call cs:wcwidth_ptr", "mov rdx, [rbp+var_58]", "test eax, eax", "js short loc_14BF0"], "succs": [[14, "fall"], [17, "jump"]]}, {"id": 14, "start": 84933, "end": 84949, "lines": ["mov ecx, 7FFFFFFFh", "sub ecx, r14d", "cmp ecx, eax", "jl loc_14C74"], "succs": [[15, "fall"], [29, "jump"]]}, {"id": 15, "start": 84949, "end": 84952, "lines": ["add r14d, eax"], "succs": [[16, "fall"]]}, {"id": 16, "start": 84952, "end": 84972, "lines": ["test rdx, rdx", "mov eax, 1", "cmovz rdx, rax", "add rbx, rdx", "jmp loc_14B28"], "succs": [[3, "jump"]]}, {"id": 17, "start": 84976, "end": 84982, "lines": ["test r13b, 2", "jnz short loc_14B9E"], "succs": [[12, "jump"], [18, "fall"]]}, {"id": 18, "start": 84982, "end": 85003, "lines": ["mov [rbp+var_58], rdx", "mov edi, [rbp+c]; wc", "call cs:iswcntrl_ptr", "mov rdx, [rbp+var_58]", "test eax, eax", "jnz short loc_14BD8"], "succs": [[16, "jump"], [19, "fall"]]}, {"id": 19, "start": 85003, "end": 85012, "lines": ["cmp r14d, 7FFFFFFFh", "jz short loc_14C74"], "succs": [[20, "fall"], [29, "jump"]]}, {"id": 20, "start": 85012, "end": 85018, "lines": ["add r14d, 1", "jmp short loc_14BD8"], "succs": [[16, "jump"]]}, {"id": 21, "start": 85024, "end": 85036, "lines": ["xor r14d, r14d", "cmp rbx, r15", "jnb loc_14B6D"], "succs": [[9, "jump"], [22, "fall"]]}, {"id": 22, "start": 85036, "end": 85050, "lines": ["call cs:__ctype_b_loc_ptr", "xor r14d, r14d", "mov rdx, [rax]", "jmp short loc_14C51"], "succs": [[25, "jump"]]}, {"id": 23, "start": 85056, "end": 85060, "lines": ["add r14d, 1"], "succs": [[24, "fall"]]}, {"id": 24, "start": 85060, "end": 85073, "lines": ["add rbx, 1", "cmp r15, rbx", "jz loc_14B6D"], "succs": [[9, "jump"], [25, "fall"]]}, {"id": 25, "start": 85073, "end": 85085, "lines": ["movzx eax, byte ptr [rbx]", "movzx eax, word ptr [rdx+rax*2]", "test ah, 40h", "jnz short loc_14C6B"], "succs": [[26, "fall"], [28, "jump"]]}, {"id": 26, "start": 85085, "end": 85095, "lines": ["test r13b, 2", "jnz loc_14B9E"], "succs": [[12, "jump"], [27, "fall"]]}, {"id": 27, "start": 85095, "end": 85099, "lines": ["test al, 2", "jnz short loc_14C44"], "succs": [[24, "jump"], [28, "fall"]]}, {"id": 28, "start": 85099, "end": 85108, "lines": ["cmp r14d, 7FFFFFFFh", "jnz short loc_14C40"], "succs": [[23, "jump"], [29, "fall"]]}, {"id": 29, "start": 85108, "end": 85119, "lines": ["mov r14d, 7FFFFFFFh", "jmp loc_14B6D"], "succs": [[9, "jump"]]}, {"id": 30, "start": 85119, "end": 85125, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_11240", "ea": 70208, "blocks": [{"id": 0, "start": 70208, "end": 70221, "lines": ["mov rcx, [rsi]", "mov r9, rsi", "xor eax, eax", "xor r8d, r8d", "jmp short loc_11255"], "succs": [[2, "jump"]]}, {"id": 1, "start": 70224, "end": 70229, "lines": ["cmp dl, 40h ; '@'", "jg short loc_1129E"], "succs": [[2, "fall"], [10, "jump"]]}, {"id": 2, "start": 70229, "end": 70234, "lines": ["test rcx, rcx", "js short loc_112CB"], "succs": [[3, "fall"], [16, "jump"]]}, {"id": 3, "start": 70234, "end": 70243, "lines": ["cmp rcx, rax", "jz loc_1130E"], "succs": [[4, "fall"], [25, "jump"]]}, {"id": 4, "start": 70243, "end": 70260, "lines": ["lea rdx, [rax+2]", "lea r8, [rax+1]", "cmp rdx, rcx", "jnb loc_11315"], "succs": [[5, "fall"], [26, "jump"]]}, {"id": 5, "start": 70260, "end": 70272, "lines": ["mov rax, r8", "nop word ptr [rax+rax+00000000h]"], "succs": [[6, "fall"]]}, {"id": 6, "start": 70272, "end": 70278, "lines": ["cmp byte ptr [rdi+rax], 2Eh ; '.'", "jnz short loc_11255"], "succs": [[2, "jump"], [7, "fall"]]}, {"id": 7, "start": 70278, "end": 70288, "lines": ["movzx edx, byte ptr [rdi+rax+1]", "cmp dl, 5Ah ; 'Z'", "jle short loc_11250"], "succs": [[1, "jump"], [8, "fall"]]}, {"id": 8, "start": 70288, "end": 70297, "lines": ["lea esi, [rdx-61h]", "cmp sil, 19h", "jbe short loc_1129E"], "succs": [[9, "fall"], [10, "jump"]]}, {"id": 9, "start": 70297, "end": 70302, "lines": ["cmp dl, 7Eh ; '~'", "jnz short loc_11255"], "succs": [[2, "jump"], [10, "fall"]]}, {"id": 10, "start": 70302, "end": 70311, "lines": ["add rax, 2", "cmp rax, rcx", "jnb short loc_112BD"], "succs": [[11, "fall"], [14, "jump"]]}, {"id": 11, "start": 70311, "end": 70320, "lines": ["movzx edx, byte ptr [rdi+rax]", "cmp dl, 5Ah ; 'Z'", "jg short loc_112E8"], "succs": [[12, "fall"], [19, "jump"]]}, {"id": 12, "start": 70320, "end": 70325, "lines": ["cmp dl, 40h ; '@'", "jg short loc_11300"], "succs": [[13, "fall"], [22, "jump"]]}, {"id": 13, "start": 70325, "end": 70333, "lines": ["sub edx, 30h ; '0'", "cmp dl, 9", "jbe short loc_11300"], "succs": [[14, "fall"], [22, "jump"]]}, {"id": 14, "start": 70333, "end": 70342, "lines": ["lea rdx, [rax+1]", "cmp rdx, rcx", "jb short loc_11280"], "succs": [[6, "jump"], [15, "fall"]]}, {"id": 15, "start": 70342, "end": 70347, "lines": ["test rcx, rcx", "jns short loc_1125A"], "succs": [[3, "jump"], [16, "fall"]]}, {"id": 16, "start": 70347, "end": 70353, "lines": ["cmp byte ptr [rdi+rax], 0", "jz short loc_1130E"], "succs": [[17, "fall"], [25, "jump"]]}, {"id": 17, "start": 70353, "end": 70366, "lines": ["lea r8, [rax+1]", "add rax, 2", "cmp rax, rcx", "jb short loc_11274"], "succs": [[5, "jump"], [18, "fall"]]}, {"id": 18, "start": 70366, "end": 70371, "lines": ["mov rax, r8", "jmp short loc_112CB"], "succs": [[16, "jump"]]}, {"id": 19, "start": 70376, "end": 70385, "lines": ["lea esi, [rdx-61h]", "cmp sil, 19h", "jbe short loc_11300"], "succs": [[20, "fall"], [22, "jump"]]}, {"id": 20, "start": 70385, "end": 70390, "lines": ["cmp dl, 7Eh ; '~'", "jnz short loc_112BD"], "succs": [[14, "jump"], [21, "fall"]]}, {"id": 21, "start": 70390, "end": 70400, "lines": ["nop word ptr [rax+rax+00000000h]"], "succs": [[22, "fall"]]}, {"id": 22, "start": 70400, "end": 70409, "lines": ["add rax, 1", "cmp rax, rcx", "jb short loc_112A7"], "succs": [[11, "jump"], [23, "fall"]]}, {"id": 23, "start": 70409, "end": 70411, "lines": ["jmp short loc_112BD"], "succs": [[14, "jump"]]}, {"id": 24, "start": 70411, "end": 70414, "lines": ["mov rax, r8"], "succs": [[25, "fall"]]}, {"id": 25, "start": 70414, "end": 70421, "lines": ["mov [r9], rax", "mov rax, r8", "retn"], "succs": []}, {"id": 26, "start": 70421, "end": 70426, "lines": ["cmp rcx, r8", "jz short loc_1130B"], "succs": [[24, "jump"], [27, "fall"]]}, {"id": 27, "start": 70426, "end": 70442, "lines": ["add rax, 3", "mov r8, rdx", "cmp rax, rcx", "jb loc_11274"], "succs": [[5, "jump"], [28, "fall"]]}, {"id": 28, "start": 70442, "end": 70450, "lines": ["mov rax, rdx", "jmp loc_1125A"], "succs": [[3, "jump"]]}]}, {"name": "sub_83D0", "ea": 33744, "blocks": [{"id": 0, "start": 33744, "end": 33776, "lines": ["push rbp", "mov rbp, rsp", "push r12", "push rbx", "mov rbx, cs:qword_293B0", "mov rax, rbx", "sar rax, 1", "add rax, rbx", "cmp cs:qword_29398, rax", "jnb short loc_8424"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 33776, "end": 33828, "lines": ["mov rdi, cs:qword_293A0; ptr", "call cs:free_ptr", "mov rdi, rbx", "mov esi, 18h", "call sub_1B920", "mov rbx, cs:qword_293B0", "mov cs:qword_293A0, rax", "lea rax, [rbx+rbx*2]", "mov cs:qword_29398, rax"], "succs": [[2, "fall"]]}, {"id": 2, "start": 33828, "end": 33837, "lines": ["test rbx, rbx", "jle loc_85E0"], "succs": [[3, "fall"], [25, "jump"]]}, {"id": 3, "start": 33837, "end": 33856, "lines": ["mov rax, cs:qword_293A0", "mov rdx, cs:qword_293C0", "lea rcx, [rax+rbx*8]", "nop"], "succs": [[4, "fall"]]}, {"id": 4, "start": 33856, "end": 33875, "lines": ["mov [rax], rdx", "add rax, 8", "add rdx, 0D0h", "cmp rax, rcx", "jnz short loc_8440"], "succs": [[5, "fall"], [4, "jump"]]}, {"id": 5, "start": 33875, "end": 33890, "lines": ["mov eax, cs:dword_29330", "cmp eax, 2", "jz loc_8562"], "succs": [[6, "fall"], [20, "jump"]]}, {"id": 6, "start": 33890, "end": 33904, "lines": ["cmp cs:qword_292B0, 0", "jnz loc_8550"], "succs": [[7, "fall"], [19, "jump"]]}, {"id": 7, "start": 33904, "end": 33913, "lines": ["cmp eax, 6", "jz loc_8539"], "succs": [[8, "fall"], [17, "jump"]]}, {"id": 8, "start": 33913, "end": 33944, "lines": ["lea rdi, env; env", "call cs:_setjmp_ptr", "endbr64", "mov ecx, cs:dword_29330", "test eax, eax", "jz loc_8540"], "succs": [[9, "fall"], [18, "jump"]]}, {"id": 9, "start": 33944, "end": 33953, "lines": ["cmp ecx, 4", "jz def_5AE3; jumptable 0000000000005AE3 default case"], "succs": [[10, "fall"], [27, "jump"]]}, {"id": 10, "start": 33953, "end": 33972, "lines": ["mov rdi, cs:qword_293B0", "mov r8, cs:qword_293A0", "test rdi, rdi", "jle short loc_84F3"], "succs": [[11, "fall"], [13, "jump"]]}, {"id": 11, "start": 33972, "end": 34016, "lines": ["mov rdx, cs:qword_293C0", "mov rax, r8", "lea rsi, [r8+rdi*8]", "nop dword ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]"], "succs": [[12, "fall"]]}, {"id": 12, "start": 34016, "end": 34035, "lines": ["mov [rax], rdx", "add rax, 8", "add rdx, 0D0h", "cmp rsi, rax", "jnz short loc_84E0"], "succs": [[13, "fall"], [12, "jump"]]}, {"id": 13, "start": 34035, "end": 34040, "lines": ["mov eax, 1"], "succs": [[14, "fall"]]}, {"id": 14, "start": 34040, "end": 34045, "lines": ["cmp ecx, 5", "jnz short loc_8506"], "succs": [[15, "fall"], [16, "jump"]]}, {"id": 15, "start": 34045, "end": 34054, "lines": ["mov esi, cs:dword_29338", "lea ecx, [rsi+5]"], "succs": [[16, "fall"]]}, {"id": 16, "start": 34054, "end": 34105, "lines": ["cdqe", "movzx edx, cs:byte_292F4", "mov rsi, rdi", "mov rdi, r8", "lea rcx, [rax+rcx*2]", "movzx eax, cs:byte_2932F", "lea rax, [rax+rcx*2]", "lea rdx, [rdx+rax*2]", "lea rax, off_26D20", "mov rdx, [rax+rdx*8]", "call sub_14FA0"], "succs": [[17, "fall"]]}, {"id": 17, "start": 34105, "end": 34110, "lines": ["pop rbx", "pop r12", "pop rbp", "retn"], "succs": []}, {"id": 18, "start": 34112, "end": 34128, "lines": ["mov rdi, cs:qword_293B0", "mov r8, cs:qword_293A0", "jmp short loc_84F8"], "succs": [[14, "jump"]]}, {"id": 19, "start": 34128, "end": 34146, "lines": ["mov esi, cs:dword_2933C", "lea edx, [rsi-2]", "cmp edx, 1", "ja loc_8470"], "succs": [[7, "jump"], [20, "fall"]]}, {"id": 20, "start": 34146, "end": 34150, "lines": ["xor ebx, ebx", "jmp short loc_8595"], "succs": [[22, "jump"]]}, {"id": 21, "start": 34176, "end": 34197, "lines": ["add rbx, 1", "cmp rbx, cs:qword_293B0", "mov [r12+0C8h], rax", "jge short loc_85D0"], "succs": [[22, "fall"], [24, "jump"]]}, {"id": 22, "start": 34197, "end": 34221, "lines": ["mov rax, cs:qword_293A0", "mov r12, [rax+rbx*8]", "mov rax, [r12+0C8h]", "test rax, rax", "jnz short loc_8580"], "succs": [[21, "jump"], [23, "fall"]]}, {"id": 23, "start": 34221, "end": 34247, "lines": ["mov edx, [r12+0C4h]", "mov rdi, [r12]", "mov rsi, cs:qword_292D0", "call sub_7430", "jmp short loc_8580"], "succs": [[21, "jump"]]}, {"id": 24, "start": 34256, "end": 34267, "lines": ["mov eax, cs:dword_29330", "jmp loc_8470"], "succs": [[7, "jump"]]}, {"id": 25, "start": 34272, "end": 34287, "lines": ["mov eax, cs:dword_29330", "cmp eax, 2", "jnz loc_8470"], "succs": [[7, "jump"], [26, "fall"]]}, {"id": 26, "start": 34287, "end": 34292, "lines": ["jmp loc_8479"], "succs": [[8, "jump"]]}, {"id": 27, "start": 12352, "end": 12384, "lines": ["lea rcx, function; jumptable 0000000000005AE3 default case", "mov edx, 0FD2h; line", "lea rsi, file; \"src/ls.c\"", "lea rdi, assertion; \"sort_type != sort_version\"", "call cs:__assert_fail_ptr"], "succs": []}]}, {"name": "sub_6B60", "ea": 27488, "blocks": [{"id": 0, "start": 27488, "end": 27539, "lines": ["push rbp", "mov rbp, rsp", "push r15", "push r14", "push r13", "lea r13, unk_1D8C0", "push r12", "push rbx", "sub rsp, 0A8h", "mov rbx, fs:28h", "mov [rbp+var_38], rbx", "xor ebx, ebx", "test dil, dil", "jnz loc_6C58"], "succs": [[1, "fall"], [11, "jump"]]}, {"id": 1, "start": 27539, "end": 27552, "lines": ["xchg ax, ax", "nop word ptr [rax+rax+00000000h]"], "succs": [[2, "fall"]]}, {"id": 2, "start": 27552, "end": 27558, "lines": ["cmp rbx, 16h", "jz short loc_6BC9"], "succs": [[3, "fall"], [5, "jump"]]}, {"id": 3, "start": 27558, "end": 27583, "lines": ["mov r12d, [r13+rbx*4+0]", "lea rdi, set; set", "mov esi, r12d; signo", "call cs:sigismember_ptr", "test eax, eax", "jnz short loc_6C08"], "succs": [[4, "fall"], [8, "jump"]]}, {"id": 4, "start": 27583, "end": 27593, "lines": ["add rbx, 1", "cmp rbx, 16h", "jnz short loc_6BA6"], "succs": [[3, "jump"], [5, "fall"]]}, {"id": 5, "start": 27593, "end": 27615, "lines": ["mov esi, 14h; signo", "lea rdi, set; set", "call cs:sigismember_ptr", "test eax, eax", "jnz short loc_6C20"], "succs": [[6, "fall"], [9, "jump"]]}, {"id": 6, "start": 27615, "end": 27634, "lines": ["mov rax, [rbp+var_38]", "sub rax, fs:28h", "jnz loc_6E19"], "succs": [[7, "fall"], [25, "jump"]]}, {"id": 7, "start": 27634, "end": 27652, "lines": ["add rsp, 0A8h", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 8, "start": 27656, "end": 27673, "lines": ["xor esi, esi; handler", "mov edi, r12d; sig", "add rbx, 1", "call cs:signal_ptr", "jmp short loc_6BA0"], "succs": [[2, "jump"]]}, {"id": 9, "start": 27680, "end": 27699, "lines": ["mov rax, [rbp+var_38]", "sub rax, fs:28h", "jnz loc_6E19"], "succs": [[10, "fall"], [25, "jump"]]}, {"id": 10, "start": 27699, "end": 27729, "lines": ["add rsp, 0A8h", "xor esi, esi; handler", "mov edi, 14h; sig", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "jmp cs:signal_ptr"], "succs": [[26, "jump"]]}, {"id": 11, "start": 27736, "end": 27776, "lines": ["lea rdi, set; set", "lea r13, [rbp+oact]", "call cs:sigemptyset_ptr", "lea r14, unk_1D8C0", "xchg ax, ax", "nop word ptr [rax+rax+00000000h]"], "succs": [[12, "fall"]]}, {"id": 12, "start": 27776, "end": 27782, "lines": ["cmp rbx, 16h", "jz short loc_6CB0"], "succs": [[13, "fall"], [15, "jump"]]}, {"id": 13, "start": 27782, "end": 27814, "lines": ["mov r12d, [r14+rbx*4]", "xor esi, esi; act", "mov rdx, r13; oact", "mov edi, r12d; sig", "call cs:sigaction_ptr", "cmp qword ptr [rbp+oact.__sigaction_handler], 1", "jnz loc_6E00"], "succs": [[14, "fall"], [24, "jump"]]}, {"id": 14, "start": 27814, "end": 27824, "lines": ["add rbx, 1", "cmp rbx, 16h", "jnz short loc_6C86"], "succs": [[13, "jump"], [15, "fall"]]}, {"id": 15, "start": 27824, "end": 27850, "lines": ["xor esi, esi; act", "mov rdx, r13; oact", "mov edi, 14h; sig", "call cs:sigaction_ptr", "cmp qword ptr [rbp+oact.__sigaction_handler], 1", "jz short loc_6CDC"], "succs": [[16, "fall"], [17, "jump"]]}, {"id": 16, "start": 27850, "end": 27868, "lines": ["mov esi, 14h; signo", "lea rdi, set; set", "call cs:sigaddset_ptr"], "succs": [[17, "fall"]]}, {"id": 17, "start": 27868, "end": 28016, "lines": ["mov [rbp+oact.sa_flags], 10000000h", "xor ebx, ebx", "movdqa xmm0, xmmword ptr cs:set.__val", "lea r14, unk_1D8C0", "lea r15, sub_5680", "movups xmmword ptr [rbp+oact.sa_mask.__val], xmm0", "movdqa xmm0, xmmword ptr cs:set.__val+10h", "movups xmmword ptr [rbp+oact.sa_mask.__val+10h], xmm0", "movdqa xmm0, xmmword ptr cs:set.__val+20h", "movups xmmword ptr [rbp+oact.sa_mask.__val+20h], xmm0", "movdqa xmm0, xmmword ptr cs:set.__val+30h", "movups xmmword ptr [rbp+oact.sa_mask.__val+30h], xmm0", "movdqa xmm0, xmmword ptr cs:set.__val+40h", "movups xmmword ptr [rbp+oact.sa_mask.__val+40h], xmm0", "movdqa xmm0, xmmword ptr cs:set.__val+50h", "movups xmmword ptr [rbp+oact.sa_mask.__val+50h], xmm0", "movdqa xmm0, xmmword ptr cs:set.__val+60h", "movups xmmword ptr [rbp+oact.sa_mask.__val+60h], xmm0", "movdqa xmm0, xmmword ptr cs:set.__val+70h", "movups xmmword ptr [rbp+oact.sa_mask.__val+70h], xmm0", "nop dword ptr [rax]", "nop word ptr [rax+rax+00000000h]"], "succs": [[18, "fall"]]}, {"id": 18, "start": 28016, "end": 28022, "lines": ["cmp rbx, 16h", "jz short loc_6DAD"], "succs": [[19, "fall"], [21, "jump"]]}, {"id": 19, "start": 28022, "end": 28046, "lines": ["mov r12d, [r14+rbx*4]", "lea rdi, set; set", "mov esi, r12d; signo", "call cs:sigismember_ptr", "test eax, eax", "jz short loc_6DF0"], "succs": [[20, "fall"], [23, "jump"]]}, {"id": 20, "start": 28046, "end": 28077, "lines": ["add rbx, 1", "mov qword ptr [rbp+oact.__sigaction_handler], r15", "xor edx, edx; oact", "mov rsi, r13; act", "mov edi, r12d; sig", "call cs:sigaction_ptr", "cmp rbx, 16h", "jnz short loc_6D76"], "succs": [[19, "jump"], [21, "fall"]]}, {"id": 21, "start": 28077, "end": 28103, "lines": ["mov esi, 14h; signo", "lea rdi, set; set", "call cs:sigismember_ptr", "test eax, eax", "jz loc_6BDF"], "succs": [[6, "jump"], [22, "fall"]]}, {"id": 22, "start": 28103, "end": 28138, "lines": ["lea rax, sub_6A60", "xor edx, edx; oact", "mov rsi, r13; act", "mov edi, 14h; sig", "mov qword ptr [rbp+oact.__sigaction_handler], rax", "call cs:sigaction_ptr", "jmp loc_6BDF"], "succs": [[6, "jump"]]}, {"id": 23, "start": 28144, "end": 28153, "lines": ["add rbx, 1", "jmp loc_6D70"], "succs": [[18, "jump"]]}, {"id": 24, "start": 28160, "end": 28185, "lines": ["mov esi, r12d; signo", "lea rdi, set; set", "add rbx, 1", "call cs:sigaddset_ptr", "jmp loc_6C80"], "succs": [[12, "jump"]]}, {"id": 25, "start": 28185, "end": 28191, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 26, "start": 169832, "end": 169832, "lines": [], "succs": []}]}, {"name": "sub_11D80", "ea": 73088, "blocks": [{"id": 0, "start": 73088, "end": 73123, "lines": ["push rbp", "mov rbp, rsp", "push r15", "push r14", "mov r14, rdi", "push r13", "mov r13, rsi", "push r12", "push rbx", "sub rsp, 18h", "mov [rbp+var_34], edx", "mov r12, [rsi]", "cmp r12, [rsi+8]", "jb short loc_11DCE"], "succs": [[1, "fall"], [3, "jump"]]}, {"id": 1, "start": 73123, "end": 73128, "lines": ["jmp loc_11ED0"], "succs": [[20, "jump"]]}, {"id": 2, "start": 73152, "end": 73166, "lines": ["add r12, 10h", "cmp r12, [r13+8]", "jnb loc_11ED0"], "succs": [[3, "fall"], [20, "jump"]]}, {"id": 3, "start": 73166, "end": 73175, "lines": ["mov rbx, [r12]", "test rbx, rbx", "jz short loc_11DC0"], "succs": [[2, "jump"], [4, "fall"]]}, {"id": 4, "start": 73175, "end": 73185, "lines": ["mov r15, [r12+8]", "test r15, r15", "jz short loc_11E50"], "succs": [[5, "fall"], [12, "jump"]]}, {"id": 5, "start": 73185, "end": 73191, "lines": ["mov rsi, [r14+10h]", "jmp short loc_11E04"], "succs": [[8, "jump"]]}, {"id": 6, "start": 73200, "end": 73217, "lines": ["mov rdi, [rax+8]", "mov [r15+8], rdi", "mov [rax+8], r15", "test rdx, rdx", "jz short loc_11E4C"], "succs": [[7, "fall"], [11, "jump"]]}, {"id": 7, "start": 73217, "end": 73220, "lines": ["mov r15, rdx"], "succs": [[8, "fall"]]}, {"id": 8, "start": 73220, "end": 73243, "lines": ["mov rbx, [r15]", "mov rdi, rbx", "call qword ptr [r14+30h]", "mov rsi, [r14+10h]", "cmp rax, rsi", "jnb loc_34A1"], "succs": [[9, "fall"], [25, "jump"]]}, {"id": 9, "start": 73243, "end": 73260, "lines": ["shl rax, 4", "add rax, [r14]", "mov rdx, [r15+8]", "cmp qword ptr [rax], 0", "jnz short loc_11DF0"], "succs": [[6, "jump"], [10, "fall"]]}, {"id": 10, "start": 73260, "end": 73292, "lines": ["mov [rax], rbx", "mov rax, [r14+48h]", "add qword ptr [r14+18h], 1", "mov qword ptr [r15], 0", "mov [r15+8], rax", "mov [r14+48h], r15", "test rdx, rdx", "jnz short loc_11E01"], "succs": [[7, "jump"], [11, "fall"]]}, {"id": 11, "start": 73292, "end": 73296, "lines": ["mov rbx, [r12]"], "succs": [[12, "fall"]]}, {"id": 12, "start": 73296, "end": 73315, "lines": ["mov qword ptr [r12+8], 0", "cmp byte ptr [rbp+var_34], 0", "jnz loc_11DC0"], "succs": [[2, "jump"], [13, "fall"]]}, {"id": 13, "start": 73315, "end": 73336, "lines": ["mov rsi, [r14+10h]", "mov rdi, rbx", "call qword ptr [r14+30h]", "cmp rax, [r14+10h]", "jnb loc_34A1"], "succs": [[14, "fall"], [25, "jump"]]}, {"id": 14, "start": 73336, "end": 73352, "lines": ["shl rax, 4", "add rax, [r14]", "mov r15, rax", "cmp qword ptr [rax], 0", "jz short loc_11EE8"], "succs": [[15, "fall"], [22, "jump"]]}, {"id": 15, "start": 73352, "end": 73361, "lines": ["mov rax, [r14+48h]", "test rax, rax", "jz short loc_11EF2"], "succs": [[16, "fall"], [23, "jump"]]}, {"id": 16, "start": 73361, "end": 73369, "lines": ["mov rdx, [rax+8]", "mov [r14+48h], rdx"], "succs": [[17, "fall"]]}, {"id": 17, "start": 73369, "end": 73386, "lines": ["movq xmm0, rbx", "movhps xmm0, qword ptr [r15+8]", "movups xmmword ptr [rax], xmm0", "mov [r15+8], rax"], "succs": [[18, "fall"]]}, {"id": 18, "start": 73386, "end": 73413, "lines": ["mov qword ptr [r12], 0", "add r12, 10h", "sub qword ptr [r13+18h], 1", "cmp r12, [r13+8]", "jb loc_11DCE"], "succs": [[3, "jump"], [19, "fall"]]}, {"id": 19, "start": 73413, "end": 73424, "lines": ["nop word ptr [rax+rax+00000000h]"], "succs": [[20, "fall"]]}, {"id": 20, "start": 73424, "end": 73429, "lines": ["mov eax, 1"], "succs": [[21, "fall"]]}, {"id": 21, "start": 73429, "end": 73444, "lines": ["add rsp, 18h", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 22, "start": 73448, "end": 73458, "lines": ["mov [rax], rbx", "add qword ptr [r14+18h], 1", "jmp short loc_11EAA"], "succs": [[18, "jump"]]}, {"id": 23, "start": 73458, "end": 73474, "lines": ["mov edi, 10h; size", "call cs:malloc_ptr", "test rax, rax", "jnz short loc_11E99"], "succs": [[17, "jump"], [24, "fall"]]}, {"id": 24, "start": 73474, "end": 73478, "lines": ["xor eax, eax", "jmp short loc_11ED5"], "succs": [[21, "jump"]]}, {"id": 25, "start": 13473, "end": 13479, "lines": ["call cs:abort_ptr"], "succs": []}]}, {"name": "sub_13D90", "ea": 81296, "blocks": [{"id": 0, "start": 81296, "end": 81346, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r14", "mov r14, rsi", "push r13", "push r12", "push rbx", "mov rbx, rdi", "sub rsp, 10h", "mov r13, fs:28h", "mov [rbp+var_28], r13", "mov r13, rdx", "test rdi, rdi", "jz loc_13ED8"], "succs": [[1, "fall"], [20, "jump"]]}, {"id": 1, "start": 81346, "end": 81354, "lines": ["xor r12d, r12d", "cmp byte ptr [rbx], 27h ; '''", "jnz short loc_13DD4"], "succs": [[2, "fall"], [3, "jump"]]}, {"id": 2, "start": 81354, "end": 81364, "lines": ["add rbx, 1", "mov r12d, 4"], "succs": [[3, "fall"]]}, {"id": 3, "start": 81364, "end": 81396, "lines": ["mov ecx, 4", "lea rdx, unk_21DB0", "lea rsi, off_276E0; \"human-readable\"", "mov rdi, rbx", "call sub_F500", "test eax, eax", "js short loc_13E30"], "succs": [[4, "fall"], [8, "jump"]]}, {"id": 4, "start": 81396, "end": 81420, "lines": ["cdqe", "lea rcx, unk_21DB0", "mov qword ptr [r13+0], 1", "or r12d, [rcx+rax*4]", "mov [r14], r12d"], "succs": [[5, "fall"]]}, {"id": 5, "start": 81420, "end": 81422, "lines": ["xor eax, eax"], "succs": [[6, "fall"]]}, {"id": 6, "start": 81422, "end": 81441, "lines": ["mov rdx, [rbp+var_28]", "sub rdx, fs:28h", "jnz loc_13F56"], "succs": [[7, "fall"], [25, "jump"]]}, {"id": 7, "start": 81441, "end": 81454, "lines": ["add rsp, 10h", "pop rbx", "pop r12", "pop r13", "pop r14", "pop rbp", "retn"], "succs": []}, {"id": 8, "start": 81456, "end": 81485, "lines": ["xor edx, edx", "lea rsi, [rbp+var_30]", "lea r8, aEeggkkmmppttyy; \"eEgGkKmMpPtTyYzZ0\"", "mov rcx, r13", "mov rdi, rbx", "call sub_1C0C0", "test eax, eax", "jnz short loc_13E90"], "succs": [[9, "fall"], [17, "jump"]]}, {"id": 9, "start": 81485, "end": 81500, "lines": ["movzx ecx, byte ptr [rbx]", "lea edx, [rcx-30h]", "mov rcx, [rbp+var_30]", "cmp dl, 9", "ja short loc_13E70"], "succs": [[10, "fall"], [12, "jump"]]}, {"id": 10, "start": 81500, "end": 81502, "lines": ["jmp short loc_13E87"], "succs": [[16, "jump"]]}, {"id": 11, "start": 81504, "end": 81520, "lines": ["movzx esi, byte ptr [rbx+1]", "add rbx, 1", "lea edx, [rsi-30h]", "cmp dl, 9", "jbe short loc_13E87"], "succs": [[12, "fall"], [16, "jump"]]}, {"id": 12, "start": 81520, "end": 81525, "lines": ["cmp rcx, rbx", "jnz short loc_13E60"], "succs": [[11, "jump"], [13, "fall"]]}, {"id": 13, "start": 81525, "end": 81535, "lines": ["cmp byte ptr [rcx-1], 42h ; 'B'", "jz loc_13F40"], "succs": [[14, "fall"], [23, "jump"]]}, {"id": 14, "start": 81535, "end": 81539, "lines": ["or r12b, 80h"], "succs": [[15, "fall"]]}, {"id": 15, "start": 81539, "end": 81543, "lines": ["or r12d, 20h"], "succs": [[16, "fall"]]}, {"id": 16, "start": 81543, "end": 81552, "lines": ["mov rdx, [r13+0]", "mov [r14], r12d", "jmp short loc_13E9B"], "succs": [[18, "jump"]]}, {"id": 17, "start": 81552, "end": 81563, "lines": ["mov dword ptr [r14], 0", "mov rdx, [r13+0]"], "succs": [[18, "fall"]]}, {"id": 18, "start": 81563, "end": 81572, "lines": ["test rdx, rdx", "jnz loc_13E0E"], "succs": [[6, "jump"], [19, "fall"]]}, {"id": 19, "start": 81572, "end": 81617, "lines": ["lea rdi, aPosixlyCorrect; \"POSIXLY_CORRECT\"", "call cs:getenv_ptr", "cmp rax, 1", "sbb rax, rax", "and eax, 200h", "add rax, 200h", "mov [r13+0], rax", "mov eax, 4", "jmp loc_13E0E"], "succs": [[6, "jump"]]}, {"id": 20, "start": 81624, "end": 81649, "lines": ["lea rdi, aLsBlockSize+3; name", "call cs:getenv_ptr", "mov rbx, rax", "test rax, rax", "jnz loc_13DC2"], "succs": [[1, "jump"], [21, "fall"]]}, {"id": 21, "start": 81649, "end": 81674, "lines": ["lea rdi, aBlocksize; \"BLOCKSIZE\"", "call cs:getenv_ptr", "mov rbx, rax", "test rax, rax", "jnz loc_13DC2"], "succs": [[1, "jump"], [22, "fall"]]}, {"id": 22, "start": 81674, "end": 81721, "lines": ["lea rdi, aPosixlyCorrect; \"POSIXLY_CORRECT\"", "call cs:getenv_ptr", "cmp rax, 1", "sbb rax, rax", "and eax, 200h", "add rax, 200h", "mov [r13+0], rax", "mov dword ptr [r14], 0", "jmp loc_13E0C"], "succs": [[5, "jump"]]}, {"id": 23, "start": 81728, "end": 81745, "lines": ["or r12d, 180h", "cmp byte ptr [rcx-2], 69h ; 'i'", "jnz loc_13E87"], "succs": [[16, "jump"], [24, "fall"]]}, {"id": 24, "start": 81745, "end": 81750, "lines": ["jmp loc_13E83"], "succs": [[15, "jump"]]}, {"id": 25, "start": 81750, "end": 81756, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_74E0", "ea": 29920, "blocks": [{"id": 0, "start": 29920, "end": 29961, "lines": ["push rbp", "mov rbp, rsp", "push rbx", "sub rsp, 2B8h", "cmp cs:byte_292FC, 0", "mov rbx, fs:28h", "mov [rbp+var_18], rbx", "mov rbx, rdi", "jz loc_75A0"], "succs": [[1, "fall"], [11, "jump"]]}, {"id": 1, "start": 29961, "end": 29974, "lines": ["cmp cs:dword_2933C, 4", "jz loc_7670"], "succs": [[2, "fall"], [22, "jump"]]}, {"id": 2, "start": 29974, "end": 29998, "lines": ["movsxd r9, cs:dword_29364", "add r9, 1", "cmp cs:byte_2932C, 0", "jz loc_7660"], "succs": [[3, "fall"], [20, "jump"]]}, {"id": 3, "start": 29998, "end": 30009, "lines": ["movsxd rax, cs:dword_29360", "add rax, 1"], "succs": [[4, "fall"]]}, {"id": 4, "start": 30009, "end": 30012, "lines": ["add r9, rax"], "succs": [[5, "fall"]]}, {"id": 5, "start": 30012, "end": 30025, "lines": ["cmp cs:byte_29369, 0", "jnz loc_7610"], "succs": [[6, "fall"], [16, "jump"]]}, {"id": 6, "start": 30025, "end": 30041, "lines": ["mov rax, [rbx+0C8h]", "test rax, rax", "jz loc_7637"], "succs": [[7, "fall"], [19, "jump"]]}, {"id": 7, "start": 30041, "end": 30054, "lines": ["add r9, rax", "mov eax, cs:dword_29314", "test eax, eax", "jz short loc_7581"], "succs": [[8, "fall"], [9, "jump"]]}, {"id": 8, "start": 30054, "end": 30081, "lines": ["mov edx, [rbx+0A8h]", "mov esi, [rbx+30h]", "movzx edi, byte ptr [rbx+0B8h]", "call sub_5940", "cmp al, 1", "sbb r9, 0FFFFFFFFFFFFFFFFh"], "succs": [[9, "fall"]]}, {"id": 9, "start": 30081, "end": 30100, "lines": ["mov rax, [rbp+var_18]", "sub rax, fs:28h", "jnz loc_76BC"], "succs": [[10, "fall"], [24, "jump"]]}, {"id": 10, "start": 30100, "end": 30109, "lines": ["mov rbx, [rbp+var_8]", "mov rax, r9", "leave", "retn"], "succs": []}, {"id": 11, "start": 30112, "end": 30115, "lines": ["xor r9d, r9d"], "succs": [[12, "fall"]]}, {"id": 12, "start": 30115, "end": 30124, "lines": ["cmp cs:byte_2932C, 0", "jz short loc_753C"], "succs": [[5, "jump"], [13, "fall"]]}, {"id": 13, "start": 30124, "end": 30137, "lines": ["cmp cs:dword_2933C, 4", "jnz loc_752E"], "succs": [[3, "jump"], [14, "fall"]]}, {"id": 14, "start": 30137, "end": 30155, "lines": ["mov eax, 2", "cmp byte ptr [rbx+0B8h], 0", "jz loc_7539"], "succs": [[4, "jump"], [15, "fall"]]}, {"id": 15, "start": 30155, "end": 30222, "lines": ["mov [rbp+var_2B8], r9", "mov rdi, [rbx+58h]", "lea rsi, [rbp+var_2B0]", "mov ecx, 200h", "mov r8, cs:qword_29320", "mov edx, cs:dword_29328", "call sub_13000", "mov rdi, rax; s", "call cs:strlen_ptr", "mov r9, [rbp+var_2B8]", "add rax, 1", "jmp loc_7539"], "succs": [[4, "jump"]]}, {"id": 16, "start": 30224, "end": 30233, "lines": ["cmp cs:dword_2933C, 4", "jz short loc_7698"], "succs": [[17, "fall"], [23, "jump"]]}, {"id": 17, "start": 30233, "end": 30244, "lines": ["movsxd rax, cs:dword_29358", "add rax, 1"], "succs": [[18, "fall"]]}, {"id": 18, "start": 30244, "end": 30263, "lines": ["add r9, rax", "mov rax, [rbx+0C8h]", "test rax, rax", "jnz loc_7559"], "succs": [[7, "jump"], [19, "fall"]]}, {"id": 19, "start": 30263, "end": 30303, "lines": ["mov edx, [rbx+0C4h]", "mov rdi, [rbx]", "mov [rbp+var_2B8], r9", "mov rsi, cs:qword_292D0", "call sub_7430", "mov r9, [rbp+var_2B8]", "jmp loc_7559"], "succs": [[7, "jump"]]}, {"id": 20, "start": 30304, "end": 30313, "lines": ["cmp cs:byte_29369, 0", "jnz short loc_7619"], "succs": [[17, "jump"], [21, "fall"]]}, {"id": 21, "start": 30313, "end": 30318, "lines": ["jmp loc_7549"], "succs": [[6, "jump"]]}, {"id": 22, "start": 30320, "end": 30355, "lines": ["mov rdi, [rbx+20h]", "lea rsi, [rbp+var_2B0]", "call sub_14440", "mov rdi, rax; s", "call cs:strlen_ptr", "lea r9, [rax+1]", "jmp loc_75A3"], "succs": [[12, "jump"]]}, {"id": 23, "start": 30360, "end": 30396, "lines": ["mov [rbp+var_2B8], r9", "mov rdi, [rbx+0B0h]; s", "call cs:strlen_ptr", "mov r9, [rbp+var_2B8]", "add rax, 1", "jmp loc_7624"], "succs": [[18, "jump"]]}, {"id": 24, "start": 30396, "end": 30402, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_12810", "ea": 75792, "blocks": [{"id": 0, "start": 75792, "end": 75845, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r15", "push r14", "push r12", "push rbx", "mov rbx, rdi", "sub rsp, 90h", "mov r12, [rbx+28h]", "mov rdi, fs:28h", "mov [rbp+var_28], rdi", "mov rdi, rsi", "cmp byte ptr [r12+10h], 0", "jnz short loc_12890"], "succs": [[1, "fall"], [5, "jump"]]}, {"id": 1, "start": 75845, "end": 75854, "lines": ["test rdi, rdi", "js loc_12A28"], "succs": [[2, "fall"], [19, "jump"]]}, {"id": 2, "start": 75854, "end": 75883, "lines": ["pxor xmm0, xmm0", "cvtsi2ss xmm0, rdi", "divss xmm0, dword ptr [r12+8]", "comiss xmm0, cs:dword_1D010", "jnb loc_12A60"], "succs": [[3, "fall"], [21, "jump"]]}, {"id": 3, "start": 75883, "end": 75896, "lines": ["comiss xmm0, cs:dword_1D014", "jb loc_12A78"], "succs": [[4, "fall"], [22, "jump"]]}, {"id": 4, "start": 75896, "end": 75920, "lines": ["subss xmm0, cs:dword_1D014", "cvttss2si rdi, xmm0", "btc rdi, 3Fh ; '?'", "nop word ptr [rax+rax+00h]"], "succs": [[5, "fall"]]}, {"id": 5, "start": 75920, "end": 75950, "lines": ["call sub_15000", "mov rdx, rax", "shr rax, 3Dh", "setnz al", "bt rdx, 3Ch ; '<'", "movzx eax, al", "jb loc_12A60"], "succs": [[6, "fall"], [21, "jump"]]}, {"id": 6, "start": 75950, "end": 75959, "lines": ["test rax, rax", "jnz loc_12A60"], "succs": [[7, "fall"], [21, "jump"]]}, {"id": 7, "start": 75959, "end": 75968, "lines": ["test rdx, rdx", "jz loc_129A6"], "succs": [[8, "fall"], [14, "jump"]]}, {"id": 8, "start": 75968, "end": 75978, "lines": ["cmp [rbx+10h], rdx", "jz loc_12A1A"], "succs": [[9, "fall"], [18, "jump"]]}, {"id": 9, "start": 75978, "end": 76008, "lines": ["mov qword ptr [rbp+var_90], rdx", "mov esi, 10h; size", "mov rdi, rdx; nmemb", "call cs:calloc_ptr", "test rax, rax", "jz loc_129A6"], "succs": [[10, "fall"], [14, "jump"]]}, {"id": 10, "start": 76008, "end": 76108, "lines": ["mov rdx, qword ptr [rbp+var_90]", "mov rcx, [rbx+40h]", "mov [rbp+ptr], rax", "lea rdi, [rbp+ptr]", "movdqu xmm0, xmmword ptr [rbx+30h]", "mov [rbp+var_60], 0", "mov rsi, rdx", "mov [rbp+var_40], rcx", "mov rcx, [rbx+48h]", "shl rsi, 4", "mov qword ptr [rbp+var_70], rdx", "xor edx, edx", "add rax, rsi", "mov rsi, rbx", "mov [rbp+var_58], r12", "mov [rbp+ptr+8], rax", "mov qword ptr [rbp+var_70+8], 0", "mov [rbp+var_38], rcx", "movaps [rbp+var_50], xmm0", "call sub_11D80", "mov rdx, [rbp+var_38]", "test al, al", "jnz loc_129D0"], "succs": [[11, "fall"], [17, "jump"]]}, {"id": 11, "start": 76108, "end": 76163, "lines": ["mov qword ptr [rbp+var_90], rdx", "call cs:__errno_location_ptr", "mov rdx, qword ptr [rbp+var_90]", "lea rsi, [rbp+ptr]", "mov rdi, rbx", "mov r14d, [rax]", "mov r15, rax", "mov [rbx+48h], rdx", "mov edx, 1", "call sub_11D80", "test al, al", "jz loc_34BD"], "succs": [[12, "fall"], [24, "jump"]]}, {"id": 12, "start": 76163, "end": 76189, "lines": ["mov rdi, rbx", "xor edx, edx", "lea rsi, [rbp+ptr]", "call sub_11D80", "mov rdi, [rbp+ptr]; ptr", "test al, al", "jz loc_34BD"], "succs": [[13, "fall"], [24, "jump"]]}, {"id": 13, "start": 76189, "end": 76198, "lines": ["call cs:free_ptr", "mov [r15], r14d"], "succs": [[14, "fall"]]}, {"id": 14, "start": 76198, "end": 76200, "lines": ["xor eax, eax"], "succs": [[15, "fall"]]}, {"id": 15, "start": 76200, "end": 76219, "lines": ["mov rdx, [rbp+var_28]", "sub rdx, fs:28h", "jnz loc_12A82"], "succs": [[16, "fall"], [23, "jump"]]}, {"id": 16, "start": 76219, "end": 76235, "lines": ["add rsp, 90h", "pop rbx", "pop r12", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 17, "start": 76240, "end": 76314, "lines": ["movdqa xmm1, xmmword ptr [rbp+ptr]", "movdqa xmm0, [rbp+var_70]", "mov [rbp+var_A8], rdx", "mov rdi, [rbx]; ptr", "movaps [rbp+var_A0], xmm1", "movaps [rbp+var_90], xmm0", "call cs:free_ptr", "mov rdx, [rbp+var_A8]", "movdqa xmm1, [rbp+var_A0]", "movdqa xmm0, [rbp+var_90]", "mov [rbx+48h], rdx", "movups xmmword ptr [rbx], xmm1", "movups xmmword ptr [rbx+10h], xmm0"], "succs": [[18, "fall"]]}, {"id": 18, "start": 76314, "end": 76321, "lines": ["mov eax, 1", "jmp short loc_129A8"], "succs": [[15, "jump"]]}, {"id": 19, "start": 76328, "end": 76373, "lines": ["mov rax, rdi", "and edi, 1", "pxor xmm0, xmm0", "shr rax, 1", "or rax, rdi", "cvtsi2ss xmm0, rax", "addss xmm0, xmm0", "divss xmm0, dword ptr [r12+8]", "comiss xmm0, cs:dword_1D010", "jb loc_1286B"], "succs": [[3, "jump"], [20, "fall"]]}, {"id": 20, "start": 76373, "end": 76384, "lines": ["nop word ptr [rax+rax+00000000h]"], "succs": [[21, "fall"]]}, {"id": 21, "start": 76384, "end": 76401, "lines": ["call cs:__errno_location_ptr", "mov dword ptr [rax], 0Ch", "jmp loc_129A6"], "succs": [[14, "jump"]]}, {"id": 22, "start": 76408, "end": 76418, "lines": ["cvttss2si rdi, xmm0", "jmp loc_12890"], "succs": [[5, "jump"]]}, {"id": 23, "start": 76418, "end": 76424, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 24, "start": 13501, "end": 13507, "lines": ["call cs:abort_ptr"], "succs": []}]}, {"name": "sub_5940", "ea": 22848, "blocks": [{"id": 0, "start": 22848, "end": 22853, "lines": ["test dil, dil", "jz short loc_5968"], "succs": [[1, "fall"], [4, "jump"]]}, {"id": 1, "start": 22853, "end": 22869, "lines": ["mov edx, esi", "and edx, 0F000h", "cmp edx, 8000h", "jnz short loc_59B8"], "succs": [[2, "fall"], [11, "jump"]]}, {"id": 2, "start": 22869, "end": 22884, "lines": ["xor eax, eax", "cmp cs:dword_29314, 3", "jz loc_5A08"], "succs": [[3, "fall"], [17, "jump"]]}, {"id": 3, "start": 22884, "end": 22885, "lines": ["retn"], "succs": []}, {"id": 4, "start": 22888, "end": 22895, "lines": ["xor eax, eax", "cmp edx, 5", "jz short locret_5964"], "succs": [[3, "jump"], [5, "fall"]]}, {"id": 5, "start": 22895, "end": 22904, "lines": ["cmp edx, 3", "jz loc_5A18"], "succs": [[6, "fall"], [18, "jump"]]}, {"id": 6, "start": 22904, "end": 22916, "lines": ["cmp edx, 9", "setz cl", "jz loc_5A18"], "succs": [[7, "fall"], [18, "jump"]]}, {"id": 7, "start": 22916, "end": 22929, "lines": ["cmp cs:dword_29314, 1", "jz locret_5A20"], "succs": [[8, "fall"], [19, "jump"]]}, {"id": 8, "start": 22929, "end": 22943, "lines": ["mov eax, 40h ; '@'", "cmp edx, 6", "jz locret_5A38"], "succs": [[9, "fall"], [22, "jump"]]}, {"id": 9, "start": 22943, "end": 22953, "lines": ["mov eax, 7Ch ; '|'", "cmp edx, 1", "jz short locret_5A28"], "succs": [[10, "fall"], [20, "jump"]]}, {"id": 10, "start": 22953, "end": 22965, "lines": ["cmp edx, 7", "mov eax, 3Dh ; '='", "cmovnz eax, ecx", "retn"], "succs": []}, {"id": 11, "start": 22968, "end": 22981, "lines": ["mov eax, 2Fh ; '/'", "cmp edx, 4000h", "jz short locret_5A00"], "succs": [[12, "fall"], [16, "jump"]]}, {"id": 12, "start": 22981, "end": 22992, "lines": ["xor eax, eax", "cmp cs:dword_29314, 1", "jz short locret_5964"], "succs": [[3, "jump"], [13, "fall"]]}, {"id": 13, "start": 22992, "end": 23005, "lines": ["mov eax, 40h ; '@'", "cmp edx, 0A000h", "jz short locret_5A40"], "succs": [[14, "fall"], [23, "jump"]]}, {"id": 14, "start": 23005, "end": 23018, "lines": ["mov eax, 7Ch ; '|'", "cmp edx, 1000h", "jz short locret_5A30"], "succs": [[15, "fall"], [21, "jump"]]}, {"id": 15, "start": 23018, "end": 23038, "lines": ["cmp edx, 0C000h", "mov eax, 3Dh ; '='", "mov edx, 0", "cmovnz eax, edx", "retn"], "succs": []}, {"id": 16, "start": 23040, "end": 23041, "lines": ["retn"], "succs": []}, {"id": 17, "start": 23048, "end": 23059, "lines": ["and esi, 49h", "neg esi", "sbb eax, eax", "and eax, 2Ah", "retn"], "succs": []}, {"id": 18, "start": 23064, "end": 23070, "lines": ["mov eax, 2Fh ; '/'", "retn"], "succs": []}, {"id": 19, "start": 23072, "end": 23073, "lines": ["retn"], "succs": []}, {"id": 20, "start": 23080, "end": 23081, "lines": ["retn"], "succs": []}, {"id": 21, "start": 23088, "end": 23089, "lines": ["retn"], "succs": []}, {"id": 22, "start": 23096, "end": 23097, "lines": ["retn"], "succs": []}, {"id": 23, "start": 23104, "end": 23105, "lines": ["retn"], "succs": []}]}, {"name": "sub_8B90", "ea": 35728, "blocks": [{"id": 0, "start": 35728, "end": 35756, "lines": ["push rbp", "mov rbp, rsp", "push r15", "push r14", "mov r14d, esi", "push r13", "mov r13, rdi", "push r12", "push rbx", "sub rsp, 18h", "test rdi, rdi", "jz short loc_8BEE"], "succs": [[1, "fall"], [3, "jump"]]}, {"id": 1, "start": 35756, "end": 35766, "lines": ["cmp cs:qword_293C8, 0", "jz short loc_8BEE"], "succs": [[2, "fall"], [3, "jump"]]}, {"id": 2, "start": 35766, "end": 35822, "lines": ["mov edi, 20h ; ' '", "call sub_1B7F0", "mov rdi, r13", "mov rbx, rax", "call sub_1BC60", "mov qword ptr [rbx], 0", "mov [rbx+8], rax", "mov rax, cs:ptr", "mov byte ptr [rbx+10h], 0", "mov [rbx+18h], rax", "mov cs:ptr, rbx"], "succs": [[3, "fall"]]}, {"id": 3, "start": 35822, "end": 35841, "lines": ["mov rbx, cs:qword_293B0", "movzx eax, r14b", "mov [rbp+var_34], eax", "test rbx, rbx", "jg short loc_8C19"], "succs": [[4, "fall"], [6, "jump"]]}, {"id": 4, "start": 35841, "end": 35846, "lines": ["jmp loc_8D80"], "succs": [[23, "jump"]]}, {"id": 5, "start": 35856, "end": 35865, "lines": ["test rbx, rbx", "jz loc_8CD0"], "succs": [[6, "fall"], [15, "jump"]]}, {"id": 6, "start": 35865, "end": 35893, "lines": ["mov rax, cs:qword_293A0", "sub rbx, 1", "mov r12, [rax+rbx*8]", "mov eax, [r12+0A8h]", "cmp eax, 3", "jz short loc_8C3A"], "succs": [[7, "fall"], [8, "jump"]]}, {"id": 7, "start": 35893, "end": 35898, "lines": ["cmp eax, 9", "jnz short loc_8C10"], "succs": [[5, "jump"], [8, "fall"]]}, {"id": 8, "start": 35898, "end": 35911, "lines": ["mov r15, [r12]", "test r13, r13", "jz loc_8D40"], "succs": [[9, "fall"], [19, "jump"]]}, {"id": 9, "start": 35911, "end": 35929, "lines": ["mov rdi, r15", "call sub_F9A0", "cmp byte ptr [rax], 2Eh ; '.'", "jz loc_8D58"], "succs": [[10, "fall"], [20, "jump"]]}, {"id": 10, "start": 35929, "end": 35939, "lines": ["cmp byte ptr [r15], 2Fh ; '/'", "jz loc_8D40"], "succs": [[11, "fall"], [19, "jump"]]}, {"id": 11, "start": 35939, "end": 35984, "lines": ["xor edx, edx", "mov rsi, r15", "mov rdi, r13", "call sub_11110", "mov rsi, [r12+8]", "movzx edx, r14b", "mov rdi, rax", "mov [rbp+ptr], rax", "call sub_5FD0", "mov rdi, [rbp+ptr]; ptr", "call cs:free_ptr"], "succs": [[12, "fall"]]}, {"id": 12, "start": 35984, "end": 35999, "lines": ["cmp dword ptr [r12+0A8h], 9", "jnz loc_8C10"], "succs": [[5, "jump"], [13, "fall"]]}, {"id": 13, "start": 35999, "end": 36040, "lines": ["mov rdi, [r12]; ptr", "call cs:free_ptr", "mov rdi, [r12+8]; ptr", "call cs:free_ptr", "mov rdi, [r12+10h]; ptr", "call cs:free_ptr", "test rbx, rbx", "jnz loc_8C19"], "succs": [[6, "jump"], [14, "fall"]]}, {"id": 14, "start": 36040, "end": 36048, "lines": ["nop dword ptr [rax+rax+00000000h]"], "succs": [[15, "fall"]]}, {"id": 15, "start": 36048, "end": 36064, "lines": ["mov rdx, cs:qword_293B0", "test rdx, rdx", "jle loc_8D80"], "succs": [[16, "fall"], [23, "jump"]]}, {"id": 16, "start": 36064, "end": 36096, "lines": ["mov rcx, cs:qword_293A0", "mov rax, rcx", "lea rsi, [rcx+rdx*8]", "nop dword ptr [rax+00000000h]", "nop word ptr [rax+rax+00000000h]"], "succs": [[17, "fall"]]}, {"id": 17, "start": 36096, "end": 36128, "lines": ["mov rdx, [rax]", "cmp dword ptr [rdx+0A8h], 9", "mov [rcx+rbx*8], rdx", "setnz dl", "add rax, 8", "movzx edx, dl", "add rbx, rdx", "cmp rsi, rax", "jnz short loc_8D00"], "succs": [[18, "fall"], [17, "jump"]]}, {"id": 18, "start": 36128, "end": 36150, "lines": ["mov cs:qword_293B0, rbx", "add rsp, 18h", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 19, "start": 36160, "end": 36181, "lines": ["mov rsi, [r12+8]", "mov edx, [rbp+var_34]", "mov rdi, r15", "call sub_5FD0", "jmp loc_8C90"], "succs": [[12, "jump"]]}, {"id": 20, "start": 36184, "end": 36206, "lines": ["xor edx, edx", "cmp byte ptr [rax+1], 2Eh ; '.'", "setz dl", "movzx eax, byte ptr [rax+rdx+1]", "test al, al", "jz loc_8C10"], "succs": [[5, "jump"], [21, "fall"]]}, {"id": 21, "start": 36206, "end": 36214, "lines": ["cmp al, 2Fh ; '/'", "jz loc_8C10"], "succs": [[5, "jump"], [22, "fall"]]}, {"id": 22, "start": 36214, "end": 36219, "lines": ["jmp loc_8C59"], "succs": [[10, "jump"]]}, {"id": 23, "start": 36224, "end": 36228, "lines": ["xor ebx, ebx", "jmp short loc_8D20"], "succs": [[18, "jump"]]}]}, {"name": "sub_BD30", "ea": 48432, "blocks": [{"id": 0, "start": 48432, "end": 48463, "lines": ["push rbp", "mov rbp, rsp", "push r15", "push r14", "push r13", "push r12", "push rbx", "sub rsp, 18h", "cmp cs:qword_293B0, 0", "jle loc_BE58"], "succs": [[1, "fall"], [17, "jump"]]}, {"id": 1, "start": 48463, "end": 48488, "lines": ["mov rax, cs:qword_293A0", "mov r14, cs:qword_292B0", "mov r15d, edi", "mov r13, [rax]", "test r14, r14", "jz short loc_BD73"], "succs": [[2, "fall"], [3, "jump"]]}, {"id": 2, "start": 48488, "end": 48499, "lines": ["mov rdi, r13", "call sub_74E0", "mov r14, rax"], "succs": [[3, "fall"]]}, {"id": 3, "start": 48499, "end": 48504, "lines": ["xor ebx, ebx", "xor r12d, r12d"], "succs": [[4, "fall"]]}, {"id": 4, "start": 48504, "end": 48532, "lines": ["mov rsi, r12", "mov rdi, r13", "add rbx, 1", "call sub_BAB0", "cmp cs:qword_293B0, rbx", "jle loc_BE58"], "succs": [[5, "fall"], [17, "jump"]]}, {"id": 5, "start": 48532, "end": 48553, "lines": ["mov rax, cs:qword_293A0", "cmp cs:qword_292B0, 0", "mov r13, [rax+rbx*8]", "jnz short loc_BE00"], "succs": [[6, "fall"], [12, "jump"]]}, {"id": 6, "start": 48553, "end": 48560, "lines": ["lea r12, [r14+2]", "mov r14, r12"], "succs": [[7, "fall"]]}, {"id": 7, "start": 48560, "end": 48570, "lines": ["mov ecx, 20h ; ' '", "mov edx, 20h ; ' '"], "succs": [[8, "fall"]]}, {"id": 8, "start": 48570, "end": 48591, "lines": ["mov rdi, cs:stdout; _IO_FILE *", "mov rax, [rdi+28h]", "cmp rax, [rdi+30h]", "jnb loc_BE90"], "succs": [[9, "fall"], [19, "jump"]]}, {"id": 9, "start": 48591, "end": 48602, "lines": ["lea rsi, [rax+1]", "mov [rdi+28h], rsi", "mov [rax], r15b"], "succs": [[10, "fall"]]}, {"id": 10, "start": 48602, "end": 48623, "lines": ["mov rdi, cs:stdout; _IO_FILE *", "mov rax, [rdi+28h]", "cmp rax, [rdi+30h]", "jnb loc_BEB0"], "succs": [[11, "fall"], [20, "jump"]]}, {"id": 11, "start": 48623, "end": 48638, "lines": ["lea rcx, [rax+1]", "mov [rdi+28h], rcx", "mov [rax], dl", "jmp loc_BD78"], "succs": [[4, "jump"]]}, {"id": 12, "start": 48640, "end": 48668, "lines": ["mov rdi, r13", "lea r12, [r14+2]", "call sub_74E0", "mov rdx, cs:qword_292B0", "lea rcx, [r12+rax]", "test rdx, rdx", "jz short loc_BE30"], "succs": [[13, "fall"], [15, "jump"]]}, {"id": 13, "start": 48668, "end": 48673, "lines": ["cmp rcx, rdx", "jnb short loc_BE40"], "succs": [[14, "fall"], [16, "jump"]]}, {"id": 14, "start": 48673, "end": 48688, "lines": ["mov rdx, 0FFFFFFFFFFFFFFFDh", "sub rdx, rax", "cmp rdx, r14", "jb short loc_BE40"], "succs": [[15, "fall"], [16, "jump"]]}, {"id": 15, "start": 48688, "end": 48696, "lines": ["mov r14, rcx", "jmp loc_BDB0"], "succs": [[7, "jump"]]}, {"id": 16, "start": 48704, "end": 48724, "lines": ["movzx edx, cs:byte_2801D", "mov r14, rax", "xor r12d, r12d", "mov ecx, edx", "jmp loc_BDBA"], "succs": [[8, "jump"]]}, {"id": 17, "start": 48728, "end": 48752, "lines": ["mov rdi, cs:stdout; _IO_FILE *", "movzx edx, cs:byte_2801D", "mov rax, [rdi+28h]", "cmp rax, [rdi+30h]", "jnb short loc_BEC0"], "succs": [[18, "fall"], [21, "jump"]]}, {"id": 18, "start": 48752, "end": 48777, "lines": ["lea rcx, [rax+1]", "mov [rdi+28h], rcx", "mov [rax], dl", "add rsp, 18h", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 19, "start": 48784, "end": 48812, "lines": ["mov [rbp+var_38], ecx", "movsx esi, r15b; int", "mov [rbp+var_31], dl", "call cs:__overflow_ptr", "movzx edx, [rbp+var_31]", "mov ecx, [rbp+var_38]", "jmp loc_BDDA"], "succs": [[10, "jump"]]}, {"id": 20, "start": 48816, "end": 48830, "lines": ["movzx esi, cl; int", "call cs:__overflow_ptr", "jmp loc_BD78"], "succs": [[4, "jump"]]}, {"id": 21, "start": 48832, "end": 48855, "lines": ["add rsp, 18h", "movzx esi, dl; int", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "jmp cs:__overflow_ptr"], "succs": [[22, "jump"]]}, {"id": 22, "start": 169672, "end": 169672, "lines": [], "succs": []}]}, {"name": "sub_F360", "ea": 62304, "blocks": [{"id": 0, "start": 62304, "end": 62394, "lines": ["endbr64", "push rbp", "mov ecx, 400h", "mov eax, 80h", "mov rbp, rsp", "push r15", "push r14", "push r13", "mov r13, 3FFFFFFFFFFFFFFFh", "push r12", "push rbx", "sub rsp, 0A8h", "cmp rsi, rcx", "mov r12, fs:28h", "mov [rbp+var_38], r12", "mov r12, rdi", "cmovbe rcx, rsi", "add rcx, 1", "test rsi, rsi", "cmovnz rax, rcx", "setnz [rbp+var_C1]", "mov r15, rax", "jmp short loc_F3C3"], "succs": [[2, "jump"]]}, {"id": 1, "start": 62400, "end": 62403, "lines": ["add r15, r15"], "succs": [[2, "fall"]]}, {"id": 2, "start": 62403, "end": 62412, "lines": ["cmp r15, 80h", "jnz short loc_F42F"], "succs": [[3, "fall"], [10, "jump"]]}, {"id": 3, "start": 62412, "end": 62421, "lines": ["cmp [rbp+var_C1], 0", "jnz short loc_F42F"], "succs": [[4, "fall"], [10, "jump"]]}, {"id": 4, "start": 62421, "end": 62436, "lines": ["mov r15d, 80h", "xor ebx, ebx", "lea r14, [rbp+var_C0]"], "succs": [[5, "fall"]]}, {"id": 5, "start": 62436, "end": 62459, "lines": ["mov rcx, r15", "mov rdx, r15", "mov rsi, r14", "mov rdi, r12", "call cs:__readlink_chk_ptr", "test rax, rax", "js short loc_F448"], "succs": [[6, "fall"], [12, "jump"]]}, {"id": 6, "start": 62459, "end": 62468, "lines": ["cmp rax, r15", "jb loc_F488"], "succs": [[7, "fall"], [16, "jump"]]}, {"id": 7, "start": 62468, "end": 62482, "lines": ["mov rdi, rbx; ptr", "call cs:free_ptr", "cmp r13, r15", "jnb short loc_F3C0"], "succs": [[1, "jump"], [8, "fall"]]}, {"id": 8, "start": 62482, "end": 62501, "lines": ["mov rax, 7FFFFFFFFFFFFFFFh", "cmp r15, rax", "jz loc_F4B0"], "succs": [[9, "fall"], [19, "jump"]]}, {"id": 9, "start": 62501, "end": 62511, "lines": ["mov r15, 7FFFFFFFFFFFFFFFh"], "succs": [[10, "fall"]]}, {"id": 10, "start": 62511, "end": 62528, "lines": ["mov rdi, r15; size", "call cs:malloc_ptr", "mov r14, rax", "test rax, rax", "jz short loc_F4B0"], "succs": [[11, "fall"], [19, "jump"]]}, {"id": 11, "start": 62528, "end": 62533, "lines": ["mov rbx, rax", "jmp short loc_F3E4"], "succs": [[5, "jump"]]}, {"id": 12, "start": 62536, "end": 62545, "lines": ["mov rdi, rbx; ptr", "call cs:free_ptr"], "succs": [[13, "fall"]]}, {"id": 13, "start": 62545, "end": 62560, "lines": ["xor ebx, ebx", "xchg ax, ax", "nop word ptr [rax+rax+00000000h]"], "succs": [[14, "fall"]]}, {"id": 14, "start": 62560, "end": 62575, "lines": ["mov rax, [rbp+var_38]", "sub rax, fs:28h", "jnz short loc_F4E8"], "succs": [[15, "fall"], [22, "jump"]]}, {"id": 15, "start": 62575, "end": 62596, "lines": ["add rsp, 0A8h", "mov rax, rbx", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 16, "start": 62600, "end": 62614, "lines": ["mov byte ptr [r14+rax], 0", "lea r12, [rax+1]", "test rbx, rbx", "jz short loc_F4C0"], "succs": [[17, "fall"], [20, "jump"]]}, {"id": 17, "start": 62614, "end": 62619, "lines": ["cmp r12, r15", "jnb short loc_F460"], "succs": [[14, "jump"], [18, "fall"]]}, {"id": 18, "start": 62619, "end": 62640, "lines": ["mov rdi, rbx; ptr", "mov rsi, r12; size", "call cs:realloc_ptr", "test rax, rax", "cmovnz rbx, rax", "jmp short loc_F460"], "succs": [[14, "jump"]]}, {"id": 19, "start": 62640, "end": 62656, "lines": ["call cs:__errno_location_ptr", "xor ebx, ebx", "mov dword ptr [rax], 0Ch", "jmp short loc_F460"], "succs": [[14, "jump"]]}, {"id": 20, "start": 62656, "end": 62670, "lines": ["mov rdi, r12; size", "call cs:malloc_ptr", "test rax, rax", "jz short loc_F451"], "succs": [[13, "jump"], [21, "fall"]]}, {"id": 21, "start": 62670, "end": 62696, "lines": ["mov rcx, r12", "mov rdx, r12", "mov rsi, r14", "mov rdi, rax", "call cs:__memcpy_chk_ptr", "mov rbx, rax", "jmp loc_F460"], "succs": [[14, "jump"]]}, {"id": 22, "start": 62696, "end": 62702, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_F9A0", "ea": 63904, "blocks": [{"id": 0, "start": 63904, "end": 63910, "lines": ["endbr64", "jmp short loc_F9B4"], "succs": [[2, "jump"]]}, {"id": 1, "start": 63920, "end": 63924, "lines": ["add rdi, 1"], "succs": [[2, "fall"]]}, {"id": 2, "start": 63924, "end": 63931, "lines": ["movzx eax, byte ptr [rdi]", "cmp al, 2Fh ; '/'", "jz short loc_F9B0"], "succs": [[1, "jump"], [3, "fall"]]}, {"id": 3, "start": 63931, "end": 63941, "lines": ["mov rdx, rdi", "mov rcx, rdi", "test al, al", "jz short loc_F9F3"], "succs": [[4, "fall"], [10, "jump"]]}, {"id": 4, "start": 63941, "end": 63953, "lines": ["movzx eax, byte ptr [rdi+1]", "lea rcx, [rdi+1]", "test al, al", "jz short loc_F9F0"], "succs": [[5, "fall"], [9, "jump"]]}, {"id": 5, "start": 63953, "end": 63957, "lines": ["cmp al, 2Fh ; '/'", "jz short loc_FA00"], "succs": [[6, "fall"], [11, "jump"]]}, {"id": 6, "start": 63957, "end": 63969, "lines": ["movzx eax, byte ptr [rdi+2]", "lea rcx, [rdi+2]", "test al, al", "jz short loc_F9F0"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 63969, "end": 63973, "lines": ["cmp al, 2Fh ; '/'", "jz short loc_FA00"], "succs": [[8, "fall"], [11, "jump"]]}, {"id": 8, "start": 63973, "end": 63978, "lines": ["mov rdi, rcx", "jmp short loc_F9C5"], "succs": [[4, "jump"]]}, {"id": 9, "start": 63984, "end": 63987, "lines": ["mov rcx, rdx"], "succs": [[10, "fall"]]}, {"id": 10, "start": 63987, "end": 63991, "lines": ["mov rax, rcx", "retn"], "succs": []}, {"id": 11, "start": 64000, "end": 64006, "lines": ["mov rdi, rcx", "mov rcx, rdx"], "succs": [[12, "fall"]]}, {"id": 12, "start": 64006, "end": 64018, "lines": ["movzx eax, byte ptr [rdi+1]", "lea rdx, [rdi+1]", "test al, al", "jz short loc_F9F3"], "succs": [[10, "jump"], [13, "fall"]]}, {"id": 13, "start": 64018, "end": 64022, "lines": ["cmp al, 2Fh ; '/'", "jz short loc_FA49"], "succs": [[14, "fall"], [20, "jump"]]}, {"id": 14, "start": 64022, "end": 64034, "lines": ["movzx eax, byte ptr [rdx+1]", "lea rdi, [rdx+1]", "test al, al", "jz short loc_F9F0"], "succs": [[9, "jump"], [15, "fall"]]}, {"id": 15, "start": 64034, "end": 64038, "lines": ["cmp al, 2Fh ; '/'", "jz short loc_FA36"], "succs": [[16, "fall"], [18, "jump"]]}, {"id": 16, "start": 64038, "end": 64050, "lines": ["movzx eax, byte ptr [rdx+2]", "lea rdi, [rdx+2]", "test al, al", "jz short loc_F9F0"], "succs": [[9, "jump"], [17, "fall"]]}, {"id": 17, "start": 64050, "end": 64054, "lines": ["cmp al, 2Fh ; '/'", "jnz short loc_F9C5"], "succs": [[4, "jump"], [18, "fall"]]}, {"id": 18, "start": 64054, "end": 64069, "lines": ["movzx eax, byte ptr [rdi+1]", "mov rcx, rdx", "lea rdx, [rdi+1]", "test al, al", "jz short loc_F9F3"], "succs": [[10, "jump"], [19, "fall"]]}, {"id": 19, "start": 64069, "end": 64073, "lines": ["cmp al, 2Fh ; '/'", "jnz short loc_FA16"], "succs": [[14, "jump"], [20, "fall"]]}, {"id": 20, "start": 64073, "end": 64085, "lines": ["movzx eax, byte ptr [rdi+2]", "lea rdx, [rdi+2]", "test al, al", "jz short loc_F9F3"], "succs": [[10, "jump"], [21, "fall"]]}, {"id": 21, "start": 64085, "end": 64089, "lines": ["cmp al, 2Fh ; '/'", "jnz short loc_FA16"], "succs": [[14, "jump"], [22, "fall"]]}, {"id": 22, "start": 64089, "end": 64094, "lines": ["mov rdi, rdx", "jmp short loc_FA06"], "succs": [[12, "jump"]]}]}, {"name": "sub_12460", "ea": 74848, "blocks": [{"id": 0, "start": 74848, "end": 74933, "lines": ["endbr64", "push rbp", "lea rax, sub_11BA0", "mov rbp, rsp", "push r15", "mov r15, rsi", "push r14", "push r13", "push r12", "mov r12, rdi", "mov edi, 50h ; 'P'; size", "push rbx", "sub rsp, 18h", "test rdx, rdx", "mov [rbp+var_38], r8", "cmovnz rax, rdx", "test rcx, rcx", "mov r13, rax", "lea rax, sub_11BC0", "cmovnz rax, rcx", "mov r14, rax", "call cs:malloc_ptr", "test rax, rax", "jz loc_12575"], "succs": [[1, "fall"], [12, "jump"]]}, {"id": 1, "start": 74933, "end": 74945, "lines": ["mov rbx, rax", "test r15, r15", "jz loc_12580"], "succs": [[2, "fall"], [13, "jump"]]}, {"id": 2, "start": 74945, "end": 74965, "lines": ["mov [rax+28h], r15", "mov rdi, rax", "call sub_11BD0", "test al, al", "jz loc_12620"], "succs": [[3, "fall"], [22, "jump"]]}, {"id": 3, "start": 74965, "end": 74976, "lines": ["cmp byte ptr [r15+10h], 0", "jz loc_125E0"], "succs": [[4, "fall"], [19, "jump"]]}, {"id": 4, "start": 74976, "end": 75005, "lines": ["mov rdi, r12", "call sub_15000", "mov r12, rax", "shr rax, 3Dh", "setnz al", "bt r12, 3Ch ; '<'", "movzx eax, al", "jb short loc_12560"], "succs": [[5, "fall"], [10, "jump"]]}, {"id": 5, "start": 75005, "end": 75010, "lines": ["test rax, rax", "jnz short loc_12560"], "succs": [[6, "fall"], [10, "jump"]]}, {"id": 6, "start": 75010, "end": 75019, "lines": ["mov [rbx+10h], r12", "test r12, r12", "jz short loc_1256C"], "succs": [[7, "fall"], [11, "jump"]]}, {"id": 7, "start": 75019, "end": 75041, "lines": ["mov esi, 10h; size", "mov rdi, r12; nmemb", "call cs:calloc_ptr", "mov [rbx], rax", "test rax, rax", "jz short loc_1256C"], "succs": [[8, "fall"], [11, "jump"]]}, {"id": 8, "start": 75041, "end": 75084, "lines": ["shl r12, 4", "mov [rbx+30h], r13", "pxor xmm0, xmm0", "add rax, r12", "mov [rbx+38h], r14", "mov [rbx+8], rax", "mov rax, [rbp+var_38]", "mov qword ptr [rbx+48h], 0", "mov [rbx+40h], rax", "movups xmmword ptr [rbx+18h], xmm0"], "succs": [[9, "fall"]]}, {"id": 9, "start": 75084, "end": 75102, "lines": ["add rsp, 18h", "mov rax, rbx", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 10, "start": 75104, "end": 75116, "lines": ["call cs:__errno_location_ptr", "mov dword ptr [rax], 0Ch"], "succs": [[11, "fall"]]}, {"id": 11, "start": 75116, "end": 75125, "lines": ["mov rdi, rbx; ptr", "call cs:free_ptr"], "succs": [[12, "fall"]]}, {"id": 12, "start": 75125, "end": 75129, "lines": ["xor ebx, ebx", "jmp short loc_1254C"], "succs": [[9, "jump"]]}, {"id": 13, "start": 75136, "end": 75171, "lines": ["lea rax, unk_21D90", "mov rdi, rbx", "mov [rbx+28h], rax", "call sub_11BD0", "movss xmm1, cs:dword_21D58", "test al, al", "jz loc_12620"], "succs": [[14, "fall"], [22, "jump"]]}, {"id": 14, "start": 75171, "end": 75176, "lines": ["test r12, r12", "js short loc_125EB"], "succs": [[15, "fall"], [20, "jump"]]}, {"id": 15, "start": 75176, "end": 75185, "lines": ["pxor xmm0, xmm0", "cvtsi2ss xmm0, r12"], "succs": [[16, "fall"]]}, {"id": 16, "start": 75185, "end": 75198, "lines": ["divss xmm0, xmm1", "comiss xmm0, cs:dword_1D010", "jnb short loc_12560"], "succs": [[10, "jump"], [17, "fall"]]}, {"id": 17, "start": 75198, "end": 75207, "lines": ["comiss xmm0, cs:dword_1D014", "jb short loc_12610"], "succs": [[18, "fall"], [21, "jump"]]}, {"id": 18, "start": 75207, "end": 75230, "lines": ["subss xmm0, cs:dword_1D014", "cvttss2si r12, xmm0", "btc r12, 3Fh ; '?'", "jmp loc_124E0"], "succs": [[4, "jump"]]}, {"id": 19, "start": 75232, "end": 75243, "lines": ["movss xmm1, dword ptr [r15+8]", "test r12, r12", "jns short loc_125A8"], "succs": [[15, "jump"], [20, "fall"]]}, {"id": 20, "start": 75243, "end": 75271, "lines": ["mov rax, r12", "and r12d, 1", "pxor xmm0, xmm0", "shr rax, 1", "or rax, r12", "cvtsi2ss xmm0, rax", "addss xmm0, xmm0", "jmp short loc_125B1"], "succs": [[16, "jump"]]}, {"id": 21, "start": 75280, "end": 75290, "lines": ["cvttss2si r12, xmm0", "jmp loc_124E0"], "succs": [[4, "jump"]]}, {"id": 22, "start": 75296, "end": 75313, "lines": ["call cs:__errno_location_ptr", "mov dword ptr [rax], 16h", "jmp loc_1256C"], "succs": [[11, "jump"]]}]}, {"name": "sub_12D20", "ea": 77088, "blocks": [{"id": 0, "start": 77088, "end": 77139, "lines": ["endbr64", "push rbp", "mov ecx, 1", "mov rbp, rsp", "push rbx", "lea rdx, [rbp+var_20]", "sub rsp, 28h", "mov rbx, fs:28h", "mov [rbp+var_18], rbx", "mov rbx, rdi", "call sub_11C60", "mov rdx, rax", "test rax, rax", "jz short loc_12D62"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 77139, "end": 77154, "lines": ["mov rax, [rbp+var_20]", "sub qword ptr [rbx+20h], 1", "cmp qword ptr [rax], 0", "jz short loc_12D80"], "succs": [[2, "fall"], [4, "jump"]]}, {"id": 2, "start": 77154, "end": 77173, "lines": ["mov rax, [rbp+var_18]", "sub rax, fs:28h", "jnz loc_12EBF"], "succs": [[3, "fall"], [21, "jump"]]}, {"id": 3, "start": 77173, "end": 77182, "lines": ["mov rbx, [rbp+var_8]", "mov rax, rdx", "leave", "retn"], "succs": []}, {"id": 4, "start": 77184, "end": 77202, "lines": ["mov rax, [rbx+18h]", "sub rax, 1", "mov [rbx+18h], rax", "js loc_12E60"], "succs": [[5, "fall"], [18, "jump"]]}, {"id": 5, "start": 77202, "end": 77224, "lines": ["pxor xmm5, xmm5", "cvtsi2ss xmm5, rax", "mov rax, [rbx+10h]", "test rax, rax", "js loc_12E86"], "succs": [[6, "fall"], [19, "jump"]]}, {"id": 6, "start": 77224, "end": 77233, "lines": ["pxor xmm4, xmm4", "cvtsi2ss xmm4, rax"], "succs": [[7, "fall"]]}, {"id": 7, "start": 77233, "end": 77250, "lines": ["mov rax, [rbx+28h]", "movss xmm0, dword ptr [rax]", "mulss xmm0, xmm4", "comiss xmm0, xmm5", "jbe short loc_12D62"], "succs": [[2, "jump"], [8, "fall"]]}, {"id": 8, "start": 77250, "end": 77287, "lines": ["mov rdi, rbx", "mov [rbp+var_28], rdx", "call sub_11BD0", "mov rax, [rbx+28h]", "mov rdx, [rbp+var_28]", "movss xmm0, dword ptr [rax]", "mulss xmm0, xmm4", "comiss xmm0, xmm5", "jbe loc_12D62"], "succs": [[2, "jump"], [9, "fall"]]}, {"id": 9, "start": 77287, "end": 77298, "lines": ["mulss xmm4, dword ptr [rax+4]", "cmp byte ptr [rax+10h], 0", "jnz short loc_12DF7"], "succs": [[10, "fall"], [11, "jump"]]}, {"id": 10, "start": 77298, "end": 77303, "lines": ["mulss xmm4, dword ptr [rax+8]"], "succs": [[11, "fall"]]}, {"id": 11, "start": 77303, "end": 77316, "lines": ["comiss xmm4, cs:dword_1D014", "jnb loc_12EA8"], "succs": [[12, "fall"], [20, "jump"]]}, {"id": 12, "start": 77316, "end": 77321, "lines": ["cvttss2si rsi, xmm4"], "succs": [[13, "fall"]]}, {"id": 13, "start": 77321, "end": 77345, "lines": ["mov rdi, rbx", "mov [rbp+var_28], rdx", "call sub_12810", "mov rdx, [rbp+var_28]", "test al, al", "jnz loc_12D62"], "succs": [[2, "jump"], [14, "fall"]]}, {"id": 14, "start": 77345, "end": 77354, "lines": ["mov rax, [rbx+48h]", "test rax, rax", "jz short loc_12E52"], "succs": [[15, "fall"], [17, "jump"]]}, {"id": 15, "start": 77354, "end": 77360, "lines": ["nop word ptr [rax+rax+00h]"], "succs": [[16, "fall"]]}, {"id": 16, "start": 77360, "end": 77394, "lines": ["mov rdi, rax; ptr", "mov rax, [rax+8]", "mov [rbp+var_30], rdx", "mov [rbp+var_28], rax", "call cs:free_ptr", "mov rax, [rbp+var_28]", "mov rdx, [rbp+var_30]", "test rax, rax", "jnz short loc_12E30"], "succs": [[17, "fall"], [16, "jump"]]}, {"id": 17, "start": 77394, "end": 77407, "lines": ["mov qword ptr [rbx+48h], 0", "jmp loc_12D62"], "succs": [[2, "jump"]]}, {"id": 18, "start": 77408, "end": 77446, "lines": ["mov rcx, rax", "and eax, 1", "pxor xmm5, xmm5", "shr rcx, 1", "or rcx, rax", "mov rax, [rbx+10h]", "cvtsi2ss xmm5, rcx", "addss xmm5, xmm5", "test rax, rax", "jns loc_12DA8"], "succs": [[6, "jump"], [19, "fall"]]}, {"id": 19, "start": 77446, "end": 77476, "lines": ["mov rcx, rax", "and eax, 1", "pxor xmm4, xmm4", "shr rcx, 1", "or rcx, rax", "cvtsi2ss xmm4, rcx", "addss xmm4, xmm4", "jmp loc_12DB1"], "succs": [[7, "jump"]]}, {"id": 20, "start": 77480, "end": 77503, "lines": ["subss xmm4, cs:dword_1D014", "cvttss2si rsi, xmm4", "btc rsi, 3Fh ; '?'", "jmp loc_12E09"], "succs": [[13, "jump"]]}, {"id": 21, "start": 77503, "end": 77509, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_1ABB0", "ea": 109488, "blocks": [{"id": 0, "start": 109488, "end": 109516, "lines": ["push rbp", "mov rbp, rsp", "push r14", "push r13", "push r12", "push rbx", "sub rsp, 10h", "mov r13, [rsi+30h]", "test r13, r13", "jz loc_1AC54"], "succs": [[1, "fall"], [13, "jump"]]}, {"id": 1, "start": 109516, "end": 109524, "lines": ["mov r12, rdi", "cmp r13, rsi", "jb short loc_1ABDD"], "succs": [[2, "fall"], [3, "jump"]]}, {"id": 2, "start": 109524, "end": 109533, "lines": ["lea rax, [rsi+38h]", "cmp r13, rax", "jb short loc_1AC54"], "succs": [[3, "fall"], [13, "jump"]]}, {"id": 3, "start": 109533, "end": 109552, "lines": ["mov r14, rsi", "lea rbx, [r12+9]", "cmp byte ptr [r13+0], 0", "jz loc_1AC80"], "succs": [[4, "fall"], [16, "jump"]]}, {"id": 4, "start": 109552, "end": 109568, "lines": ["mov rsi, r13; s2", "mov rdi, rbx; s1", "call cs:strcmp_ptr", "test eax, eax", "jz short loc_1AC50"], "succs": [[5, "fall"], [12, "jump"]]}, {"id": 5, "start": 109568, "end": 109573, "lines": ["cmp byte ptr [rbx], 0", "jnz short loc_1AC1B"], "succs": [[6, "fall"], [8, "jump"]]}, {"id": 6, "start": 109573, "end": 109587, "lines": ["lea rax, [r12+9]", "cmp rbx, rax", "jnz loc_1AC90"], "succs": [[7, "fall"], [17, "jump"]]}, {"id": 7, "start": 109587, "end": 109595, "lines": ["cmp byte ptr [r12+8], 0", "jz short loc_1AC90"], "succs": [[8, "fall"], [17, "jump"]]}, {"id": 8, "start": 109595, "end": 109613, "lines": ["mov rdi, rbx; s", "call cs:strlen_ptr", "add rax, rbx", "cmp byte ptr [rax+1], 0", "jnz short loc_1AC70"], "succs": [[9, "fall"], [15, "jump"]]}, {"id": 9, "start": 109613, "end": 109622, "lines": ["mov rdx, [r12]", "test rdx, rdx", "jz short loc_1AC70"], "succs": [[10, "fall"], [15, "jump"]]}, {"id": 10, "start": 109622, "end": 109645, "lines": ["lea rbx, [rdx+9]", "mov r12, rdx", "mov rsi, r13; s2", "mov rdi, rbx; s1", "call cs:strcmp_ptr", "test eax, eax", "jnz short loc_1AC00"], "succs": [[5, "jump"], [11, "fall"]]}, {"id": 11, "start": 109645, "end": 109648, "lines": ["nop dword ptr [rax]"], "succs": [[12, "fall"]]}, {"id": 12, "start": 109648, "end": 109652, "lines": ["mov [r14+30h], rbx"], "succs": [[13, "fall"]]}, {"id": 13, "start": 109652, "end": 109657, "lines": ["mov eax, 1"], "succs": [[14, "fall"]]}, {"id": 14, "start": 109657, "end": 109670, "lines": ["add rsp, 10h", "pop rbx", "pop r12", "pop r13", "pop r14", "pop rbp", "retn"], "succs": []}, {"id": 15, "start": 109680, "end": 109689, "lines": ["lea rbx, [rax+1]", "jmp loc_1ABF0"], "succs": [[4, "jump"]]}, {"id": 16, "start": 109696, "end": 109705, "lines": ["lea rbx, accept+3; \"\"", "jmp short loc_1AC50"], "succs": [[12, "jump"]]}, {"id": 17, "start": 109712, "end": 109744, "lines": ["mov rdi, r13; s", "call cs:strlen_ptr", "mov rcx, rax", "lea rdx, [rax+1]; n", "lea rax, [r12+80h]", "sub rax, rbx", "cmp rax, rdx", "jle short loc_1ACD0"], "succs": [[18, "fall"], [19, "jump"]]}, {"id": 18, "start": 109744, "end": 109771, "lines": ["mov [rbp+var_28], rcx", "mov rsi, r13; src", "mov rdi, rbx; dest", "call cs:memcpy_ptr", "mov rcx, [rbp+var_28]", "mov byte ptr [rbx+rcx+1], 0", "jmp short loc_1AC50"], "succs": [[12, "jump"]]}, {"id": 19, "start": 109776, "end": 109793, "lines": ["mov rdi, r13", "call sub_1AAF0", "mov [r12], rax", "test rax, rax", "jz short loc_1ACEE"], "succs": [[20, "fall"], [21, "jump"]]}, {"id": 20, "start": 109793, "end": 109806, "lines": ["mov byte ptr [rax+8], 0", "lea rbx, [rax+9]", "jmp loc_1AC50"], "succs": [[12, "jump"]]}, {"id": 21, "start": 109806, "end": 109813, "lines": ["xor eax, eax", "jmp loc_1AC59"], "succs": [[14, "jump"]]}]}, {"name": "sub_126F0", "ea": 75504, "blocks": [{"id": 0, "start": 75504, "end": 75551, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r15", "push r14", "push r13", "mov r13, rdi", "push r12", "push rbx", "sub rsp, 8", "call cs:__errno_location_ptr", "mov r15d, [rax]", "mov r14, rax", "mov rax, [r13+8]", "cmp qword ptr [r13+40h], 0", "jz short loc_12780"], "succs": [[1, "fall"], [11, "jump"]]}, {"id": 1, "start": 75551, "end": 75558, "lines": ["cmp qword ptr [r13+20h], 0", "jz short loc_12780"], "succs": [[2, "fall"], [11, "jump"]]}, {"id": 2, "start": 75558, "end": 75567, "lines": ["mov r12, [r13+0]", "cmp r12, rax", "jb short loc_12749"], "succs": [[3, "fall"], [5, "jump"]]}, {"id": 3, "start": 75567, "end": 75572, "lines": ["jmp loc_127BC"], "succs": [[17, "jump"]]}, {"id": 4, "start": 75584, "end": 75593, "lines": ["add r12, 10h", "cmp r12, rax", "jnb short loc_12780"], "succs": [[5, "fall"], [11, "jump"]]}, {"id": 5, "start": 75593, "end": 75602, "lines": ["mov rdi, [r12]", "test rdi, rdi", "jz short loc_12740"], "succs": [[4, "jump"], [6, "fall"]]}, {"id": 6, "start": 75602, "end": 75607, "lines": ["mov rbx, r12", "jmp short loc_12763"], "succs": [[8, "jump"]]}, {"id": 7, "start": 75616, "end": 75619, "lines": ["mov rdi, [rbx]"], "succs": [[8, "fall"]]}, {"id": 8, "start": 75619, "end": 75632, "lines": ["call qword ptr [r13+40h]", "mov rbx, [rbx+8]", "test rbx, rbx", "jnz short loc_12760"], "succs": [[7, "jump"], [9, "fall"]]}, {"id": 9, "start": 75632, "end": 75645, "lines": ["mov rax, [r13+8]", "add r12, 10h", "cmp r12, rax", "jb short loc_12749"], "succs": [[5, "jump"], [10, "fall"]]}, {"id": 10, "start": 75645, "end": 75648, "lines": ["nop dword ptr [rax]"], "succs": [[11, "fall"]]}, {"id": 11, "start": 75648, "end": 75657, "lines": ["mov r12, [r13+0]", "cmp r12, rax", "jnb short loc_127BC"], "succs": [[12, "fall"], [17, "jump"]]}, {"id": 12, "start": 75657, "end": 75664, "lines": ["nop dword ptr [rax+00000000h]"], "succs": [[13, "fall"]]}, {"id": 13, "start": 75664, "end": 75674, "lines": ["mov rbx, [r12+8]", "test rbx, rbx", "jz short loc_127B2"], "succs": [[14, "fall"], [16, "jump"]]}, {"id": 14, "start": 75674, "end": 75680, "lines": ["nop word ptr [rax+rax+00h]"], "succs": [[15, "fall"]]}, {"id": 15, "start": 75680, "end": 75698, "lines": ["mov rdi, rbx; ptr", "mov rbx, [rbx+8]", "call cs:free_ptr", "test rbx, rbx", "jnz short loc_127A0"], "succs": [[16, "fall"], [15, "jump"]]}, {"id": 16, "start": 75698, "end": 75708, "lines": ["add r12, 10h", "cmp r12, [r13+8]", "jb short loc_12790"], "succs": [[13, "jump"], [17, "fall"]]}, {"id": 17, "start": 75708, "end": 75717, "lines": ["mov rbx, [r13+48h]", "test rbx, rbx", "jz short loc_127E2"], "succs": [[18, "fall"], [20, "jump"]]}, {"id": 18, "start": 75717, "end": 75728, "lines": ["nop word ptr [rax+rax+00000000h]"], "succs": [[19, "fall"]]}, {"id": 19, "start": 75728, "end": 75746, "lines": ["mov rdi, rbx; ptr", "mov rbx, [rbx+8]", "call cs:free_ptr", "test rbx, rbx", "jnz short loc_127D0"], "succs": [[20, "fall"], [19, "jump"]]}, {"id": 20, "start": 75746, "end": 75783, "lines": ["mov rdi, [r13+0]; ptr", "call cs:free_ptr", "mov rdi, r13; ptr", "call cs:free_ptr", "mov [r14], r15d", "add rsp, 8", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}]}, {"name": "sub_1B050", "ea": 110672, "blocks": [{"id": 0, "start": 110672, "end": 110711, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r15", "push r14", "push r13", "mov r13, r9", "push r12", "mov r12, r8", "push rbx", "mov rbx, rdi", "sub rsp, 38h", "test rsi, rsi", "jz loc_1B1E0"], "succs": [[1, "fall"], [7, "jump"]]}, {"id": 1, "start": 110711, "end": 110740, "lines": ["mov r9, rcx", "mov r8, rdx", "mov rcx, rsi", "xor eax, eax", "lea rdx, aSSS_0; \"%s (%s) %s\\n\"", "mov esi, 2", "call cs:__fprintf_chk_ptr"], "succs": [[2, "fall"]]}, {"id": 2, "start": 110740, "end": 110886, "lines": ["mov edx, 5; category", "lea rsi, aC; \"(C)\"", "lea rdi, domainname; \"gnulib\"", "call cs:dcgettext_ptr", "mov r8d, 7EAh", "mov esi, 2", "mov rdi, rbx", "mov rcx, rax", "lea rdx, aCopyrightSDFre; \"Copyright %s %d Free Software Foundatio\"...", "xor eax, eax", "call cs:__fprintf_chk_ptr", "mov rsi, rbx; stream", "mov edi, 0Ah; c", "call cs:fputc_unlocked_ptr", "mov edx, 5; category", "lea rsi, aLicenseGplv3Gn; \"License GPLv3+: GNU GPL version 3 or la\"...", "lea rdi, domainname; \"gnulib\"", "call cs:dcgettext_ptr", "mov esi, 2", "mov rdi, rbx", "lea rcx, aHttpsGnuOrgLic; \"https://gnu.org/licenses/gpl.html\"", "mov rdx, rax", "xor eax, eax", "call cs:__fprintf_chk_ptr", "mov rsi, rbx; stream", "mov edi, 0Ah; c", "call cs:fputc_unlocked_ptr", "cmp r13, 9; switch 10 cases", "ja def_1B134; jumptable 000000000001B134 default case"], "succs": [[3, "fall"], [19, "jump"]]}, {"id": 3, "start": 110886, "end": 110903, "lines": ["lea rdx, jpt_1B134", "movsxd rax, ds:(jpt_1B134 - 22328h)[rdx+r13*4]", "add rax, rdx", "jmp rax; switch jump"], "succs": [[4, "switch"], [6, "switch"], [8, "switch"], [10, "switch"], [11, "switch"], [12, "switch"], [13, "switch"], [15, "switch"], [16, "switch"], [18, "switch"]]}, {"id": 4, "start": 110912, "end": 111025, "lines": ["mov r11, [r12+30h]; jumptable 000000000001B134 case 8", "mov r10, [r12+28h]", "mov edx, 5; category", "lea rsi, aWrittenBySSSSS; \"Written by %s, %s, %s,\\n%s, %s, %s, %s,\"...", "mov r8, [r12+20h]", "mov r9, [r12+10h]", "lea rdi, domainname; \"gnulib\"", "mov r14, [r12+38h]", "mov r13, [r12+18h]", "mov [rbp+var_50], r11", "mov r15, [r12+8]", "mov r12, [r12]", "mov [rbp+var_48], r10", "mov [rbp+var_40], r8", "mov [rbp+var_38], r9", "call cs:dcgettext_ptr", "sub rsp, 8", "push r14", "mov r11, [rbp+var_50]", "push r11", "mov r10, [rbp+var_48]", "push r10", "mov r8, [rbp+var_40]", "push r8", "mov r8, r15", "push r13", "mov r9, [rbp+var_38]"], "succs": [[5, "fall"]]}, {"id": 5, "start": 111025, "end": 111051, "lines": ["mov rdx, rax", "mov rcx, r12", "mov esi, 2", "mov rdi, rbx", "xor eax, eax", "call cs:__fprintf_chk_ptr", "add rsp, 30h"], "succs": [[6, "fall"]]}, {"id": 6, "start": 111051, "end": 111066, "lines": ["lea rsp, [rbp-28h]; jumptable 000000000001B134 case 0", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 7, "start": 111072, "end": 111103, "lines": ["mov r8, rcx", "mov esi, 2", "mov rcx, rdx", "xor eax, eax", "lea rdx, aSS_3; \"%s %s\\n\"", "call cs:__fprintf_chk_ptr", "jmp loc_1B094"], "succs": [[2, "jump"]]}, {"id": 8, "start": 111104, "end": 111180, "lines": ["mov rax, [r12+30h]; jumptable 000000000001B134 case 9", "mov r11, [r12+28h]", "mov edx, 5; category", "lea rsi, aWrittenBySSSSS_0; \"Written by %s, %s, %s,\\n%s, %s, %s, %s,\"...", "mov r10, [r12+20h]", "mov r9, [r12+10h]", "mov r8, [r12+8]", "mov r15, [r12+40h]", "mov [rbp+var_38], rax", "mov r14, [r12+38h]", "mov r13, [r12+18h]", "mov [rbp+var_58], r11", "mov [rbp+var_50], r10", "mov r12, [r12]", "mov [rbp+var_48], r9", "mov [rbp+var_40], r8"], "succs": [[9, "fall"]]}, {"id": 9, "start": 111180, "end": 111227, "lines": ["lea rdi, domainname; \"gnulib\"", "call cs:dcgettext_ptr", "push r15", "push r14", "push [rbp+var_38]", "mov r11, [rbp+var_58]", "push r11", "mov r10, [rbp+var_50]", "push r10", "push r13", "mov r9, [rbp+var_48]", "mov r8, [rbp+var_40]", "jmp loc_1B1B1"], "succs": [[5, "jump"]]}, {"id": 10, "start": 111232, "end": 111297, "lines": ["mov r12, [r12]; jumptable 000000000001B134 case 1", "mov edx, 5; category", "lea rsi, aWrittenByS; \"Written by %s.\\n\"", "lea rdi, domainname; \"gnulib\"", "call cs:dcgettext_ptr", "lea rsp, [rbp-28h]", "mov rdi, rbx", "mov esi, 2", "pop rbx", "mov rcx, r12", "mov rdx, rax", "pop r12", "xor eax, eax", "pop r13", "pop r14", "pop r15", "pop rbp", "jmp cs:__fprintf_chk_ptr"], "succs": [[20, "jump"]]}, {"id": 11, "start": 111304, "end": 111377, "lines": ["mov r13, [r12+8]; jumptable 000000000001B134 case 2", "mov r12, [r12]", "mov edx, 5; category", "lea rsi, aWrittenBySAndS; \"Written by %s and %s.\\n\"", "lea rdi, domainname; \"gnulib\"", "call cs:dcgettext_ptr", "lea rsp, [rbp-28h]", "mov r8, r13", "mov rcx, r12", "mov rdx, rax", "mov rdi, rbx", "mov esi, 2", "pop rbx", "xor eax, eax", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "jmp cs:__fprintf_chk_ptr"], "succs": [[20, "jump"]]}, {"id": 12, "start": 111384, "end": 111470, "lines": ["mov r9, [r12+10h]; jumptable 000000000001B134 case 3", "mov r13, [r12+8]", "mov edx, 5; category", "lea rsi, aWrittenBySSAnd; \"Written by %s, %s, and %s.\\n\"", "mov r12, [r12]", "lea rdi, domainname; \"gnulib\"", "mov [rbp+var_38], r9", "call cs:dcgettext_ptr", "mov r9, [rbp+var_38]", "lea rsp, [rbp-28h]", "mov r8, r13", "mov rcx, r12", "mov rdx, rax", "mov rdi, rbx", "mov esi, 2", "pop rbx", "xor eax, eax", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "jmp cs:__fprintf_chk_ptr"], "succs": [[20, "jump"]]}, {"id": 13, "start": 111472, "end": 111538, "lines": ["mov r9, [r12+10h]; jumptable 000000000001B134 case 4", "mov r8, [r12+8]", "mov edx, 5; category", "lea rsi, aWrittenBySSSAn; \"Written by %s, %s, %s,\\nand %s.\\n\"", "mov r13, [r12+18h]", "lea rdi, domainname; \"gnulib\"", "mov r12, [r12]", "mov [rbp+var_40], r9", "mov [rbp+var_38], r8", "call cs:dcgettext_ptr", "sub rsp, 8", "push r13", "mov r9, [rbp+var_40]", "mov r8, [rbp+var_38]"], "succs": [[14, "fall"]]}, {"id": 14, "start": 111538, "end": 111577, "lines": ["mov rdx, rax", "mov rcx, r12", "mov rdi, rbx", "mov esi, 2", "xor eax, eax", "call cs:__fprintf_chk_ptr", "pop rax", "pop rdx", "lea rsp, [rbp-28h]", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 15, "start": 111584, "end": 111658, "lines": ["mov r8, [r12+20h]; jumptable 000000000001B134 case 5", "mov r9, [r12+10h]", "mov edx, 5; category", "lea rsi, aWrittenBySSSSA; \"Written by %s, %s, %s,\\n%s, and %s.\\n\"", "mov r13, [r12+18h]", "mov r14, [r12+8]", "lea rdi, domainname; \"gnulib\"", "mov [rbp+var_40], r8", "mov r12, [r12]", "mov [rbp+var_38], r9", "call cs:dcgettext_ptr", "mov r8, [rbp+var_40]", "push r8", "mov r8, r14", "push r13", "mov r9, [rbp+var_38]", "jmp short loc_1B3B2"], "succs": [[14, "jump"]]}, {"id": 16, "start": 111664, "end": 111734, "lines": ["mov r10, [r12+28h]; jumptable 000000000001B134 case 6", "mov r8, [r12+20h]", "mov edx, 5; category", "lea rsi, aWrittenBySSSSS_1; \"Written by %s, %s, %s,\\n%s, %s, and %s.\"...", "mov r9, [r12+10h]", "mov r13, [r12+18h]", "lea rdi, domainname; \"gnulib\"", "mov r14, [r12+8]", "mov r12, [r12]", "mov [rbp+var_48], r10", "mov [rbp+var_40], r8", "mov [rbp+var_38], r9", "call cs:dcgettext_ptr", "sub rsp, 8"], "succs": [[17, "fall"]]}, {"id": 17, "start": 111734, "end": 111796, "lines": ["mov r10, [rbp+var_48]", "mov rcx, r12", "mov rdx, rax", "mov rdi, rbx", "mov esi, 2", "xor eax, eax", "push r10", "mov r8, [rbp+var_40]", "push r8", "mov r8, r14", "push r13", "mov r9, [rbp+var_38]", "call cs:__fprintf_chk_ptr", "add rsp, 20h", "lea rsp, [rbp-28h]", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 18, "start": 111800, "end": 111886, "lines": ["mov r11, [r12+30h]; jumptable 000000000001B134 case 7", "mov r10, [r12+28h]", "mov edx, 5; category", "lea rsi, aWrittenBySSSSS_2; \"Written by %s, %s, %s,\\n%s, %s, %s, and\"...", "mov r8, [r12+20h]", "mov r9, [r12+10h]", "lea rdi, domainname; \"gnulib\"", "mov r13, [r12+18h]", "mov r14, [r12+8]", "mov [rbp+var_50], r11", "mov [rbp+var_48], r10", "mov r12, [r12]", "mov [rbp+var_40], r8", "mov [rbp+var_38], r9", "call cs:dcgettext_ptr", "mov r11, [rbp+var_50]", "push r11", "jmp loc_1B476"], "succs": [[17, "jump"]]}, {"id": 19, "start": 111886, "end": 111967, "lines": ["mov rax, [r12+30h]; jumptable 000000000001B134 default case", "mov r11, [r12+28h]", "mov edx, 5", "lea rsi, aWrittenBySSSSS_3; \"Written by %s, %s, %s,\\n%s, %s, %s, %s,\"...", "mov r10, [r12+20h]", "mov r9, [r12+10h]", "mov r8, [r12+8]", "mov r15, [r12+40h]", "mov [rbp+var_38], rax", "mov r14, [r12+38h]", "mov r13, [r12+18h]", "mov [rbp+var_58], r11", "mov [rbp+var_50], r10", "mov r12, [r12]", "mov [rbp+var_48], r9", "mov [rbp+var_40], r8", "jmp loc_1B24C"], "succs": [[9, "jump"]]}, {"id": 20, "start": 170168, "end": 170168, "lines": [], "succs": []}]}, {"name": "sub_11C60", "ea": 72800, "blocks": [{"id": 0, "start": 72800, "end": 72850, "lines": ["push rbp", "mov rbp, rsp", "push r15", "mov r15, rdx", "push r14", "mov r14d, ecx", "push r13", "mov r13, rdi", "push r12", "mov r12, rsi", "push rbx", "sub rsp, 8", "mov rsi, [rdi+10h]", "mov rdi, r12", "call qword ptr [r13+30h]", "cmp rax, [r13+10h]", "jnb loc_349B"], "succs": [[1, "fall"], [18, "jump"]]}, {"id": 1, "start": 72850, "end": 72872, "lines": ["shl rax, 4", "add rax, [r13+0]", "mov [r15], rax", "mov rsi, [rax]", "mov rbx, rax", "test rsi, rsi", "jz short loc_11D20"], "succs": [[2, "fall"], [13, "jump"]]}, {"id": 2, "start": 72872, "end": 72877, "lines": ["cmp rsi, r12", "jz short loc_11CBB"], "succs": [[3, "fall"], [5, "jump"]]}, {"id": 3, "start": 72877, "end": 72888, "lines": ["mov rdi, r12", "call qword ptr [r13+38h]", "test al, al", "jz short loc_11D17"], "succs": [[4, "fall"], [12, "jump"]]}, {"id": 4, "start": 72888, "end": 72891, "lines": ["mov r12, [rbx]"], "succs": [[5, "fall"]]}, {"id": 5, "start": 72891, "end": 72896, "lines": ["test r14b, r14b", "jz short loc_11CE7"], "succs": [[6, "fall"], [8, "jump"]]}, {"id": 6, "start": 72896, "end": 72909, "lines": ["mov rax, [rbx+8]", "test rax, rax", "jz loc_11D70"], "succs": [[7, "fall"], [17, "jump"]]}, {"id": 7, "start": 72909, "end": 72935, "lines": ["movdqu xmm0, xmmword ptr [rax]", "mov rdx, [r13+48h]", "movups xmmword ptr [rbx], xmm0", "mov qword ptr [rax], 0", "mov [rax+8], rdx", "mov [r13+48h], rax"], "succs": [[8, "fall"]]}, {"id": 8, "start": 72935, "end": 72953, "lines": ["add rsp, 8", "mov rax, r12", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 9, "start": 72960, "end": 72968, "lines": ["mov rsi, [rax]", "cmp rsi, r12", "jz short loc_11D38"], "succs": [[10, "fall"], [15, "jump"]]}, {"id": 10, "start": 72968, "end": 72979, "lines": ["mov rdi, r12", "call qword ptr [r13+38h]", "test al, al", "jnz short loc_11D38"], "succs": [[11, "fall"], [15, "jump"]]}, {"id": 11, "start": 72979, "end": 72983, "lines": ["mov rbx, [rbx+8]"], "succs": [[12, "fall"]]}, {"id": 12, "start": 72983, "end": 72992, "lines": ["mov rax, [rbx+8]", "test rax, rax", "jnz short loc_11D00"], "succs": [[9, "jump"], [13, "fall"]]}, {"id": 13, "start": 72992, "end": 72994, "lines": ["xor eax, eax"], "succs": [[14, "fall"]]}, {"id": 14, "start": 72994, "end": 73009, "lines": ["add rsp, 8", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 15, "start": 73016, "end": 73028, "lines": ["mov rdx, [rbx+8]", "mov rax, [rdx]", "test r14b, r14b", "jz short loc_11D22"], "succs": [[14, "jump"], [16, "fall"]]}, {"id": 16, "start": 73028, "end": 73070, "lines": ["mov rcx, [rdx+8]", "mov [rbx+8], rcx", "mov rcx, [r13+48h]", "mov qword ptr [rdx], 0", "mov [rdx+8], rcx", "mov [r13+48h], rdx", "add rsp, 8", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 17, "start": 73072, "end": 73084, "lines": ["mov qword ptr [rbx], 0", "jmp loc_11CE7"], "succs": [[8, "jump"]]}, {"id": 18, "start": 13467, "end": 13473, "lines": ["call cs:abort_ptr"], "succs": []}]}, {"name": "sub_17BA0", "ea": 97184, "blocks": [{"id": 0, "start": 97184, "end": 97263, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r15", "mov r15, rdx", "push r14", "mov r14, rsi", "push r13", "mov r13, rcx", "push r12", "push rbx", "mov rbx, r8", "sub rsp, 48h", "mov [rbp+s], rdi", "mov r12, fs:28h", "mov [rbp+var_38], r12", "mov r12d, r9d", "call sub_1C6D0", "lea rsi, aUtf8; \"UTF-8\"", "mov rdi, rax; s1", "call cs:strcmp_ptr", "test eax, eax", "jz short loc_17C40"], "succs": [[1, "fall"], [5, "jump"]]}, {"id": 1, "start": 97263, "end": 97267, "lines": ["lea r9, [rbp+var_50]"], "succs": [[2, "fall"]]}, {"id": 2, "start": 97267, "end": 97270, "lines": ["xor r8d, r8d"], "succs": [[3, "fall"]]}, {"id": 3, "start": 97270, "end": 97320, "lines": ["sub rsp, 8", "mov rdi, [rbp+s]; s", "mov rdx, r15", "mov rcx, r13", "push r12; int", "mov rsi, r14", "push rbx; __int64", "push 0FFFFFFFFFFFFFFFFh; __int64", "push 0; int", "push 0; char", "call sub_15420", "mov rdx, [rbp+var_38]", "sub rdx, fs:28h", "jnz loc_17D2A"], "succs": [[4, "fall"], [18, "jump"]]}, {"id": 4, "start": 97320, "end": 97335, "lines": ["lea rsp, [rbp-28h]", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 5, "start": 97344, "end": 97385, "lines": ["lea rsi, aLcTime; \"LC_TIME\"", "mov edi, 2", "call sub_1C770", "mov [rbp+var_60], rax", "mov rdi, rax; s", "call cs:strlen_ptr", "mov rdx, [rbp+var_60]", "cmp rax, 4", "jbe short loc_17BEF"], "succs": [[1, "jump"], [6, "fall"]]}, {"id": 6, "start": 97385, "end": 97400, "lines": ["movzx eax, byte ptr [rdx+5]", "sub eax, 41h ; 'A'", "cmp al, 19h", "jbe loc_17BEF"], "succs": [[1, "jump"], [7, "fall"]]}, {"id": 7, "start": 97400, "end": 97412, "lines": ["cmp dword ptr [rdx], 545F6874h", "jz loc_17D10"], "succs": [[8, "fall"], [16, "jump"]]}, {"id": 8, "start": 97412, "end": 97420, "lines": ["cmp dword ptr [rdx], 495F6166h", "jz short loc_17CF0"], "succs": [[9, "fall"], [14, "jump"]]}, {"id": 9, "start": 97420, "end": 97432, "lines": ["cmp dword ptr [rdx], 455F6D61h", "jnz loc_17BEF"], "succs": [[1, "jump"], [10, "fall"]]}, {"id": 10, "start": 97432, "end": 97442, "lines": ["cmp byte ptr [rdx+4], 54h ; 'T'", "jnz loc_17BEF"], "succs": [[1, "jump"], [11, "fall"]]}, {"id": 11, "start": 97442, "end": 97456, "lines": ["lea rax, sub_15320", "lea r8, off_27700"], "succs": [[12, "fall"]]}, {"id": 12, "start": 97456, "end": 97507, "lines": ["mov esi, [r13+14h]", "lea r9, [rbp+var_50]", "mov ecx, [r13+0Ch]", "mov [rbp+var_68], r8", "mov [rbp+var_60], r9", "mov rdi, r9", "mov edx, [r13+10h]", "add esi, 76Ch", "call rax ; sub_15320", "mov r9, [rbp+var_60]", "mov r8, [rbp+var_68]", "test eax, eax", "jns loc_17BF6"], "succs": [[3, "jump"], [13, "fall"]]}, {"id": 13, "start": 97507, "end": 97512, "lines": ["jmp loc_17BF3"], "succs": [[2, "jump"]]}, {"id": 14, "start": 97520, "end": 97526, "lines": ["cmp byte ptr [rdx+4], 52h ; 'R'", "jnz short loc_17C8C"], "succs": [[9, "jump"], [15, "fall"]]}, {"id": 15, "start": 97526, "end": 97542, "lines": ["lea rax, sub_15140", "lea r8, off_277F0", "jmp short loc_17CB0"], "succs": [[12, "jump"]]}, {"id": 16, "start": 97552, "end": 97562, "lines": ["cmp byte ptr [rdx+4], 48h ; 'H'", "jnz loc_17C84"], "succs": [[8, "jump"], [17, "fall"]]}, {"id": 17, "start": 97562, "end": 97578, "lines": ["lea rax, sub_150C0", "lea r8, off_278E0", "jmp short loc_17CB0"], "succs": [[12, "jump"]]}, {"id": 18, "start": 97578, "end": 97584, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_1BA20", "ea": 113184, "blocks": [{"id": 0, "start": 113184, "end": 113222, "lines": ["endbr64", "push rbp", "mov r10, rcx", "mov r9, rdx", "mov rbp, rsp", "push r12", "mov r12, rsi", "push rbx", "mov rcx, [rsi]", "mov rbx, rcx", "sar rbx, 1", "add rbx, rcx", "jo loc_1BAF7"], "succs": [[1, "fall"], [17, "jump"]]}, {"id": 1, "start": 113222, "end": 113252, "lines": ["cmp rbx, r10", "mov rax, r10", "cmovle rax, rbx", "test r10, r10", "cmovns rbx, rax", "mov rax, rbx", "imul rax, r8", "jo loc_1BAEB"], "succs": [[2, "fall"], [16, "jump"]]}, {"id": 2, "start": 113252, "end": 113258, "lines": ["cmp rax, 7Fh", "jle short loc_1BAC0"], "succs": [[3, "fall"], [12, "jump"]]}, {"id": 3, "start": 113258, "end": 113263, "lines": ["test rdi, rdi", "jz short loc_1BADB"], "succs": [[4, "fall"], [14, "jump"]]}, {"id": 4, "start": 113263, "end": 113264, "lines": ["nop"], "succs": [[5, "fall"]]}, {"id": 5, "start": 113264, "end": 113275, "lines": ["mov rdx, rbx", "sub rdx, rcx", "cmp rdx, r9", "jge short loc_1BA96"], "succs": [[6, "fall"], [10, "jump"]]}, {"id": 6, "start": 113275, "end": 113280, "lines": ["add rcx, r9", "jo short loc_1BAE5"], "succs": [[7, "fall"], [15, "jump"]]}, {"id": 7, "start": 113280, "end": 113288, "lines": ["mov rbx, rcx", "test r10, r10", "js short loc_1BA8D"], "succs": [[8, "fall"], [9, "jump"]]}, {"id": 8, "start": 113288, "end": 113293, "lines": ["cmp rcx, r10", "jg short loc_1BAE5"], "succs": [[9, "fall"], [15, "jump"]]}, {"id": 9, "start": 113293, "end": 113302, "lines": ["mov rax, rcx", "imul rax, r8", "jo short loc_1BAE5"], "succs": [[10, "fall"], [15, "jump"]]}, {"id": 10, "start": 113302, "end": 113325, "lines": ["test rax, rax", "mov esi, 1", "cmovnz rsi, rax; size", "call cs:realloc_ptr", "test rax, rax", "jz short loc_1BAE5"], "succs": [[11, "fall"], [15, "jump"]]}, {"id": 11, "start": 113325, "end": 113334, "lines": ["mov [r12], rbx", "pop rbx", "pop r12", "pop rbp", "retn"], "succs": []}, {"id": 12, "start": 113344, "end": 113349, "lines": ["mov esi, 80h"], "succs": [[13, "fall"]]}, {"id": 13, "start": 113349, "end": 113371, "lines": ["mov rax, rsi", "cqo", "idiv r8", "mov rbx, rax", "mov rax, rsi", "sub rax, rdx", "test rdi, rdi", "jnz short loc_1BA70"], "succs": [[5, "jump"], [14, "fall"]]}, {"id": 14, "start": 113371, "end": 113381, "lines": ["mov qword ptr [r12], 0", "jmp short loc_1BA70"], "succs": [[5, "jump"]]}, {"id": 15, "start": 113381, "end": 113387, "lines": ["call sub_1BCB0"], "succs": []}, {"id": 16, "start": 113387, "end": 113399, "lines": ["mov rsi, 7FFFFFFFFFFFFFFFh", "jmp short loc_1BAC5"], "succs": [[13, "jump"]]}, {"id": 17, "start": 113399, "end": 113414, "lines": ["mov rbx, 7FFFFFFFFFFFFFFFh", "jmp loc_1BA46"], "succs": [[1, "jump"]]}]}, {"name": "sub_10640", "ea": 67136, "blocks": [{"id": 0, "start": 67136, "end": 67151, "lines": ["endbr64", "mov rax, [rdi+8]", "xor ecx, ecx", "test rax, rax", "jle short loc_10698"], "succs": [[1, "fall"], [7, "jump"]]}, {"id": 1, "start": 67151, "end": 67163, "lines": ["mov rdx, [rdi]", "lea r8, [rdx+rax]", "cmp rdx, r8", "jnb short loc_10698"], "succs": [[2, "fall"], [7, "jump"]]}, {"id": 2, "start": 67163, "end": 67178, "lines": ["movzx r9d, byte ptr [rsi]", "mov rcx, rsi", "mov eax, r9d", "cmp r9b, [rdx]", "jz short loc_1068F"], "succs": [[3, "fall"], [5, "jump"]]}, {"id": 3, "start": 67178, "end": 67180, "lines": ["jmp short loc_106A0"], "succs": [[8, "jump"]]}, {"id": 4, "start": 67200, "end": 67215, "lines": ["add rdx, 1", "add rcx, 1", "movzx eax, byte ptr [rcx]", "cmp al, [rdx]", "jnz short loc_106A0"], "succs": [[5, "fall"], [8, "jump"]]}, {"id": 5, "start": 67215, "end": 67219, "lines": ["test al, al", "jnz short loc_10680"], "succs": [[4, "jump"], [6, "fall"]]}, {"id": 6, "start": 67219, "end": 67224, "lines": ["mov ecx, 1"], "succs": [[7, "fall"]]}, {"id": 7, "start": 67224, "end": 67227, "lines": ["mov eax, ecx", "retn"], "succs": []}, {"id": 8, "start": 67232, "end": 67240, "lines": ["push rbp", "mov rbp, rsp", "sub rsp, 20h"], "succs": [[9, "fall"]]}, {"id": 9, "start": 67240, "end": 67292, "lines": ["mov [rbp-20h], rsi", "mov rdi, rdx; s", "mov [rbp-11h], r9b", "mov [rbp-10h], r8", "mov [rbp-8], rdx", "call cs:strlen_ptr", "mov rdx, [rbp-8]", "mov r8, [rbp-10h]", "movzx r9d, byte ptr [rbp-11h]", "mov rsi, [rbp-20h]", "lea rdx, [rdx+rax+1]", "cmp rdx, r8", "jnb short loc_1071C"], "succs": [[10, "fall"], [16, "jump"]]}, {"id": 10, "start": 67292, "end": 67303, "lines": ["mov rcx, rsi", "mov eax, r9d", "cmp r9b, [rdx]", "jz short loc_1070F"], "succs": [[11, "fall"], [13, "jump"]]}, {"id": 11, "start": 67303, "end": 67305, "lines": ["jmp short loc_106A8"], "succs": [[9, "jump"]]}, {"id": 12, "start": 67328, "end": 67343, "lines": ["add rdx, 1", "add rcx, 1", "movzx eax, byte ptr [rcx]", "cmp al, [rdx]", "jnz short loc_106A8"], "succs": [[9, "jump"], [13, "fall"]]}, {"id": 13, "start": 67343, "end": 67347, "lines": ["test al, al", "jnz short loc_10700"], "succs": [[12, "jump"], [14, "fall"]]}, {"id": 14, "start": 67347, "end": 67352, "lines": ["mov ecx, 1"], "succs": [[15, "fall"]]}, {"id": 15, "start": 67352, "end": 67356, "lines": ["leave", "mov eax, ecx", "retn"], "succs": []}, {"id": 16, "start": 67356, "end": 67360, "lines": ["xor ecx, ecx", "jmp short locret_10718"], "succs": [[15, "jump"]]}]}, {"name": "sub_11100", "ea": 69888, "blocks": [{"id": 0, "start": 69888, "end": 69900, "lines": ["endbr64", "mov edi, [rdi+18h]", "jmp loc_10F70"], "succs": [[1, "jump"]]}, {"id": 1, "start": 69488, "end": 69513, "lines": ["endbr64", "mov edx, edi", "mov eax, 2Dh ; '-'", "and edx, 0F000h", "cmp edx, 8000h", "jz short loc_10FDD"], "succs": [[2, "fall"], [8, "jump"]]}, {"id": 2, "start": 69513, "end": 69526, "lines": ["mov eax, 64h ; 'd'", "cmp edx, 4000h", "jz short loc_10FDD"], "succs": [[3, "fall"], [8, "jump"]]}, {"id": 3, "start": 69526, "end": 69539, "lines": ["mov eax, 62h ; 'b'", "cmp edx, 6000h", "jz short loc_10FDD"], "succs": [[4, "fall"], [8, "jump"]]}, {"id": 4, "start": 69539, "end": 69552, "lines": ["mov eax, 63h ; 'c'", "cmp edx, 2000h", "jz short loc_10FDD"], "succs": [[5, "fall"], [8, "jump"]]}, {"id": 5, "start": 69552, "end": 69565, "lines": ["mov eax, 6Ch ; 'l'", "cmp edx, 0A000h", "jz short loc_10FDD"], "succs": [[6, "fall"], [8, "jump"]]}, {"id": 6, "start": 69565, "end": 69578, "lines": ["mov eax, 70h ; 'p'", "cmp edx, 1000h", "jz short loc_10FDD"], "succs": [[7, "fall"], [8, "jump"]]}, {"id": 7, "start": 69578, "end": 69597, "lines": ["cmp edx, 0C000h", "mov eax, 73h ; 's'", "mov edx, 3Fh ; '?'", "cmovnz eax, edx"], "succs": [[8, "fall"]]}, {"id": 8, "start": 69597, "end": 69663, "lines": ["mov [rsi], al", "mov eax, edi", "and eax, 100h", "cmp eax, 1", "sbb eax, eax", "and eax, 0FFFFFFBBh", "add eax, 72h ; 'r'", "mov [rsi+1], al", "mov eax, edi", "and eax, 80h", "cmp eax, 1", "sbb eax, eax", "and eax, 0FFFFFFB6h", "add eax, 77h ; 'w'", "mov [rsi+2], al", "mov eax, edi", "and eax, 40h", "cmp eax, 1", "sbb eax, eax", "test edi, 800h", "jz loc_110C0"], "succs": [[9, "fall"], [14, "jump"]]}, {"id": 9, "start": 69663, "end": 69669, "lines": ["and eax, 0FFFFFFE0h", "add eax, 73h ; 's'"], "succs": [[10, "fall"]]}, {"id": 10, "start": 69669, "end": 69732, "lines": ["mov [rsi+3], al", "mov eax, edi", "and eax, 20h", "cmp eax, 1", "sbb eax, eax", "and eax, 0FFFFFFBBh", "add eax, 72h ; 'r'", "mov [rsi+4], al", "mov eax, edi", "and eax, 10h", "cmp eax, 1", "sbb eax, eax", "and eax, 0FFFFFFB6h", "add eax, 77h ; 'w'", "mov [rsi+5], al", "mov eax, edi", "and eax, 8", "cmp eax, 1", "sbb eax, eax", "test edi, 400h", "jz loc_110E8"], "succs": [[11, "fall"], [16, "jump"]]}, {"id": 11, "start": 69732, "end": 69738, "lines": ["and eax, 0FFFFFFE0h", "add eax, 73h ; 's'"], "succs": [[12, "fall"]]}, {"id": 12, "start": 69738, "end": 69797, "lines": ["mov [rsi+6], al", "mov eax, edi", "and eax, 4", "cmp eax, 1", "sbb eax, eax", "and eax, 0FFFFFFBBh", "add eax, 72h ; 'r'", "mov [rsi+7], al", "mov eax, edi", "and eax, 2", "cmp eax, 1", "sbb eax, eax", "and eax, 0FFFFFFB6h", "add eax, 77h ; 'w'", "mov [rsi+8], al", "mov eax, edi", "and eax, 1", "cmp eax, 1", "sbb eax, eax", "and edi, 200h", "jz short loc_110D0"], "succs": [[13, "fall"], [15, "jump"]]}, {"id": 13, "start": 69797, "end": 69816, "lines": ["and eax, 0FFFFFFE0h", "add eax, 74h ; 't'", "mov [rsi+9], al", "mov eax, 20h ; ' '", "mov [rsi+0Ah], ax", "retn"], "succs": []}, {"id": 14, "start": 69824, "end": 69835, "lines": ["and eax, 0FFFFFFB5h", "add eax, 78h ; 'x'", "jmp loc_11025"], "succs": [[10, "jump"]]}, {"id": 15, "start": 69840, "end": 69859, "lines": ["and eax, 0FFFFFFB5h", "add eax, 78h ; 'x'", "mov [rsi+9], al", "mov eax, 20h ; ' '", "mov [rsi+0Ah], ax", "retn"], "succs": []}, {"id": 16, "start": 69864, "end": 69875, "lines": ["and eax, 0FFFFFFB5h", "add eax, 78h ; 'x'", "jmp loc_1106A"], "succs": [[12, "jump"]]}]}, {"name": "sub_14020", "ea": 81952, "blocks": [{"id": 0, "start": 81952, "end": 81984, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r13", "mov r13, rdi", "push r12", "push rbx", "sub rsp, 18h", "mov rbx, cs:qword_29420", "test rbx, rbx", "jz short loc_14080"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 81984, "end": 81990, "lines": ["movzx r12d, byte ptr [rdi]", "jmp short loc_14059"], "succs": [[3, "jump"]]}, {"id": 2, "start": 82000, "end": 82009, "lines": ["mov rbx, [rbx+8]", "test rbx, rbx", "jz short loc_14080"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 82009, "end": 82015, "lines": ["cmp [rbx+10h], r12b", "jnz short loc_14050"], "succs": [[2, "jump"], [4, "fall"]]}, {"id": 4, "start": 82015, "end": 82032, "lines": ["lea rdi, [rbx+10h]; s1", "mov rsi, r13; s2", "call cs:strcmp_ptr", "test eax, eax", "jnz short loc_14050"], "succs": [[2, "jump"], [5, "fall"]]}, {"id": 5, "start": 82032, "end": 82046, "lines": ["add rsp, 18h", "mov rax, rbx", "pop rbx", "pop r12", "pop r13", "pop rbp", "retn"], "succs": []}, {"id": 6, "start": 82048, "end": 82060, "lines": ["mov rbx, cs:qword_29418", "test rbx, rbx", "jz short loc_140D0"], "succs": [[7, "fall"], [13, "jump"]]}, {"id": 7, "start": 82060, "end": 82067, "lines": ["movzx r12d, byte ptr [r13+0]", "jmp short loc_140A9"], "succs": [[9, "jump"]]}, {"id": 8, "start": 82080, "end": 82089, "lines": ["mov rbx, [rbx+8]", "test rbx, rbx", "jz short loc_140D0"], "succs": [[9, "fall"], [13, "jump"]]}, {"id": 9, "start": 82089, "end": 82095, "lines": ["cmp [rbx+10h], r12b", "jnz short loc_140A0"], "succs": [[8, "jump"], [10, "fall"]]}, {"id": 10, "start": 82095, "end": 82112, "lines": ["lea rdi, [rbx+10h]; s1", "mov rsi, r13; s2", "call cs:strcmp_ptr", "test eax, eax", "jnz short loc_140A0"], "succs": [[8, "jump"], [11, "fall"]]}, {"id": 11, "start": 82112, "end": 82114, "lines": ["xor eax, eax"], "succs": [[12, "fall"]]}, {"id": 12, "start": 82114, "end": 82125, "lines": ["add rsp, 18h", "pop rbx", "pop r12", "pop r13", "pop rbp", "retn"], "succs": []}, {"id": 13, "start": 82128, "end": 82197, "lines": ["mov rdi, r13; name", "call cs:getpwnam_ptr", "mov rdi, r13; s", "mov [rbp+var_28], rax", "call cs:strlen_ptr", "lea r12, [rax+18h]", "and r12, 0FFFFFFFFFFFFFFF8h", "mov rdi, r12", "call sub_1B7F0", "lea rdx, [r12-10h]", "mov rsi, r13", "mov rbx, rax", "lea rdi, [rax+10h]", "call cs:__strcpy_chk_ptr", "mov rcx, [rbp+var_28]", "test rcx, rcx", "jz short loc_14138"], "succs": [[14, "fall"], [15, "jump"]]}, {"id": 14, "start": 82197, "end": 82225, "lines": ["mov eax, [rcx+10h]", "mov [rbx], eax", "mov rax, cs:qword_29420", "mov cs:qword_29420, rbx", "mov [rbx+8], rax", "jmp loc_14070"], "succs": [[5, "jump"]]}, {"id": 15, "start": 82232, "end": 82257, "lines": ["mov rax, cs:qword_29418", "mov cs:qword_29418, rbx", "mov [rbx+8], rax", "xor eax, eax", "jmp loc_140C2"], "succs": [[12, "jump"]]}]}, {"name": "sub_14220", "ea": 82464, "blocks": [{"id": 0, "start": 82464, "end": 82496, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r13", "mov r13, rdi", "push r12", "push rbx", "sub rsp, 18h", "mov rbx, cs:qword_29410", "test rbx, rbx", "jz short loc_14280"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 82496, "end": 82502, "lines": ["movzx r12d, byte ptr [rdi]", "jmp short loc_14259"], "succs": [[3, "jump"]]}, {"id": 2, "start": 82512, "end": 82521, "lines": ["mov rbx, [rbx+8]", "test rbx, rbx", "jz short loc_14280"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 82521, "end": 82527, "lines": ["cmp [rbx+10h], r12b", "jnz short loc_14250"], "succs": [[2, "jump"], [4, "fall"]]}, {"id": 4, "start": 82527, "end": 82544, "lines": ["lea rdi, [rbx+10h]; s1", "mov rsi, r13; s2", "call cs:strcmp_ptr", "test eax, eax", "jnz short loc_14250"], "succs": [[2, "jump"], [5, "fall"]]}, {"id": 5, "start": 82544, "end": 82558, "lines": ["add rsp, 18h", "mov rax, rbx", "pop rbx", "pop r12", "pop r13", "pop rbp", "retn"], "succs": []}, {"id": 6, "start": 82560, "end": 82572, "lines": ["mov rbx, cs:qword_29408", "test rbx, rbx", "jz short loc_142D0"], "succs": [[7, "fall"], [13, "jump"]]}, {"id": 7, "start": 82572, "end": 82579, "lines": ["movzx r12d, byte ptr [r13+0]", "jmp short loc_142A9"], "succs": [[9, "jump"]]}, {"id": 8, "start": 82592, "end": 82601, "lines": ["mov rbx, [rbx+8]", "test rbx, rbx", "jz short loc_142D0"], "succs": [[9, "fall"], [13, "jump"]]}, {"id": 9, "start": 82601, "end": 82607, "lines": ["cmp [rbx+10h], r12b", "jnz short loc_142A0"], "succs": [[8, "jump"], [10, "fall"]]}, {"id": 10, "start": 82607, "end": 82624, "lines": ["lea rdi, [rbx+10h]; s1", "mov rsi, r13; s2", "call cs:strcmp_ptr", "test eax, eax", "jnz short loc_142A0"], "succs": [[8, "jump"], [11, "fall"]]}, {"id": 11, "start": 82624, "end": 82626, "lines": ["xor eax, eax"], "succs": [[12, "fall"]]}, {"id": 12, "start": 82626, "end": 82637, "lines": ["add rsp, 18h", "pop rbx", "pop r12", "pop r13", "pop rbp", "retn"], "succs": []}, {"id": 13, "start": 82640, "end": 82709, "lines": ["mov rdi, r13; name", "call cs:getgrnam_ptr", "mov rdi, r13; s", "mov [rbp+var_28], rax", "call cs:strlen_ptr", "lea r12, [rax+18h]", "and r12, 0FFFFFFFFFFFFFFF8h", "mov rdi, r12", "call sub_1B7F0", "lea rdx, [r12-10h]", "mov rsi, r13", "mov rbx, rax", "lea rdi, [rax+10h]", "call cs:__strcpy_chk_ptr", "mov rcx, [rbp+var_28]", "test rcx, rcx", "jz short loc_14338"], "succs": [[14, "fall"], [15, "jump"]]}, {"id": 14, "start": 82709, "end": 82737, "lines": ["mov eax, [rcx+10h]", "mov [rbx], eax", "mov rax, cs:qword_29410", "mov cs:qword_29410, rbx", "mov [rbx+8], rax", "jmp loc_14270"], "succs": [[5, "jump"]]}, {"id": 15, "start": 82744, "end": 82769, "lines": ["mov rax, cs:qword_29408", "mov cs:qword_29408, rbx", "mov [rbx+8], rax", "xor eax, eax", "jmp loc_142C2"], "succs": [[12, "jump"]]}]}, {"name": "sub_1AF20", "ea": 110368, "blocks": [{"id": 0, "start": 110368, "end": 110412, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r14", "push r13", "push r12", "push rbx", "sub rsp, 50h", "mov rbx, fs:28h", "mov [rbp+var_28], rbx", "mov rbx, rsi", "test rdi, rdi", "jz loc_1B020"], "succs": [[1, "fall"], [12, "jump"]]}, {"id": 1, "start": 110412, "end": 110428, "lines": ["mov r12, rdi", "call sub_1AD50", "mov r13, rax", "test rax, rax", "jz short loc_1AF98"], "succs": [[2, "fall"], [5, "jump"]]}, {"id": 2, "start": 110428, "end": 110474, "lines": ["mov rax, [rbx+10h]", "movdqu xmm0, xmmword ptr [rbx]", "mov [rbp+tp.tm_yday], 0FFFFFFFFh", "lea rdi, [rbp+tp]; tp", "mov qword ptr [rbp+tp.tm_mon], rax", "mov eax, [rbx+20h]", "movaps xmmword ptr [rbp+tp.tm_sec], xmm0", "mov [rbp+tp.tm_isdst], eax", "call cs:mktime_ptr", "mov edx, [rbp+tp.tm_yday]", "test edx, edx", "jns short loc_1AFC8"], "succs": [[3, "fall"], [8, "jump"]]}, {"id": 3, "start": 110474, "end": 110480, "lines": ["cmp r13, 1", "jz short loc_1AF98"], "succs": [[4, "fall"], [5, "jump"]]}, {"id": 4, "start": 110480, "end": 110488, "lines": ["mov rdi, r13; ptr", "call sub_1AA60"], "succs": [[5, "fall"]]}, {"id": 5, "start": 110488, "end": 110496, "lines": ["mov rdx, 0FFFFFFFFFFFFFFFFh", "nop"], "succs": [[6, "fall"]]}, {"id": 6, "start": 110496, "end": 110515, "lines": ["mov rax, [rbp+var_28]", "sub rax, fs:28h", "jnz loc_1B044"], "succs": [[7, "fall"], [14, "jump"]]}, {"id": 7, "start": 110515, "end": 110531, "lines": ["add rsp, 50h", "mov rax, rdx", "pop rbx", "pop r12", "pop r13", "pop r14", "pop rbp", "retn"], "succs": []}, {"id": 8, "start": 110536, "end": 110556, "lines": ["lea rsi, [rbp+tp]", "mov rdi, r12", "mov [rbp+var_68], rax", "call sub_1ABB0", "test al, al", "jz short loc_1AF8A"], "succs": [[3, "jump"], [9, "fall"]]}, {"id": 9, "start": 110556, "end": 110566, "lines": ["cmp r13, 1", "mov rdx, [rbp+var_68]", "jz short loc_1AFF6"], "succs": [[10, "fall"], [11, "jump"]]}, {"id": 10, "start": 110566, "end": 110582, "lines": ["mov rdi, r13; ptr", "call sub_1AA60", "mov rdx, [rbp+var_68]", "test al, al", "jz short loc_1AF98"], "succs": [[5, "jump"], [11, "fall"]]}, {"id": 11, "start": 110582, "end": 110618, "lines": ["movdqa xmm0, xmmword ptr [rbp+tp.tm_sec]", "mov rax, [rbp+tp.tm_zone]", "movups xmmword ptr [rbx], xmm0", "movdqa xmm0, xmmword ptr [rbp+tp.tm_mon]", "mov [rbx+30h], rax", "movups xmmword ptr [rbx+10h], xmm0", "movdqa xmm0, xmmword ptr [rbp+tp.tm_isdst]", "movups xmmword ptr [rbx+20h], xmm0", "jmp short loc_1AFA0"], "succs": [[6, "jump"]]}, {"id": 12, "start": 110624, "end": 110639, "lines": ["mov rax, [rbp+var_28]", "sub rax, fs:28h", "jnz short loc_1B044"], "succs": [[13, "fall"], [14, "jump"]]}, {"id": 13, "start": 110639, "end": 110660, "lines": ["add rsp, 50h", "mov rdi, rbx; tp", "pop rbx", "pop r12", "pop r13", "pop r14", "pop rbp", "jmp cs:timegm_ptr"], "succs": [[15, "jump"]]}, {"id": 14, "start": 110660, "end": 110666, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 15, "start": 170064, "end": 170064, "lines": [], "succs": []}]}, {"name": "sub_1BD00", "ea": 113920, "blocks": [{"id": 0, "start": 113920, "end": 113990, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r15", "mov r15, rdi", "push r14", "mov r14, r9", "push r13", "push r12", "mov r12, rdx", "mov edx, esi", "xor esi, esi", "push rbx", "sub rsp, 28h", "mov [rbp+var_48], rcx", "lea rcx, [rbp+var_40]", "mov r13, fs:28h", "mov [rbp+var_38], r13", "mov r13d, [rbp+arg_0]", "call sub_1C0C0", "cmp eax, 4", "jz short loc_1BD69"], "succs": [[1, "fall"], [3, "jump"]]}, {"id": 1, "start": 113990, "end": 113999, "lines": ["mov rdx, [rbp+var_40]", "cmp rdx, r12", "jnb short loc_1BDA0"], "succs": [[2, "fall"], [5, "jump"]]}, {"id": 2, "start": 113999, "end": 114025, "lines": ["mov edx, [rbp+arg_8]", "and edx, 4", "cmp edx, 1", "sbb ebx, ebx", "and ebx, 29h", "add ebx, 22h ; '\"'", "cmp eax, 1", "jbe loc_1BDFE"], "succs": [[3, "fall"], [12, "jump"]]}, {"id": 3, "start": 114025, "end": 114027, "lines": ["xor ebx, ebx"], "succs": [[4, "fall"]]}, {"id": 4, "start": 114027, "end": 114080, "lines": ["test r13d, r13d", "mov eax, 1", "mov rdi, r15", "cmovz r13d, eax", "call sub_1A960", "mov rcx, r14", "lea rdx, aSS; \"%s: %s\"", "mov esi, ebx", "mov r8, rax", "mov edi, r13d", "xor eax, eax", "call error", "nop word ptr [rax+rax+00h]"], "succs": [[5, "fall"]]}, {"id": 5, "start": 114080, "end": 114086, "lines": ["cmp [rbp+var_48], rdx", "jb short loc_1BDE0"], "succs": [[6, "fall"], [10, "jump"]]}, {"id": 6, "start": 114086, "end": 114091, "lines": ["cmp eax, 1", "jz short loc_1BE10"], "succs": [[7, "fall"], [14, "jump"]]}, {"id": 7, "start": 114091, "end": 114097, "lines": ["xor ebx, ebx", "test eax, eax", "jnz short loc_1BD6B"], "succs": [[4, "jump"], [8, "fall"]]}, {"id": 8, "start": 114097, "end": 114124, "lines": ["mov [rbp+var_48], rdx", "call cs:__errno_location_ptr", "mov [rax], ebx", "mov rax, [rbp+var_38]", "sub rax, fs:28h", "jnz short loc_1BE1A"], "succs": [[9, "fall"], [15, "jump"]]}, {"id": 9, "start": 114124, "end": 114143, "lines": ["mov rax, [rbp+var_48]", "add rsp, 28h", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 10, "start": 114144, "end": 114170, "lines": ["mov edx, [rbp+arg_8]", "and edx, 8", "cmp edx, 1", "sbb ebx, ebx", "and ebx, 29h", "add ebx, 22h ; '\"'", "cmp eax, 1", "ja loc_1BD69"], "succs": [[3, "jump"], [11, "fall"]]}, {"id": 11, "start": 114170, "end": 114174, "lines": ["mov r12, [rbp+var_48]"], "succs": [[12, "fall"]]}, {"id": 12, "start": 114174, "end": 114184, "lines": ["test byte ptr [rbp+arg_8], 2", "jz loc_1BD6B"], "succs": [[4, "jump"], [13, "fall"]]}, {"id": 13, "start": 114184, "end": 114189, "lines": ["mov rdx, r12", "jmp short loc_1BDB1"], "succs": [[8, "jump"]]}, {"id": 14, "start": 114192, "end": 114202, "lines": ["mov r12, rdx", "mov ebx, 4Bh ; 'K'", "jmp short loc_1BDFE"], "succs": [[12, "jump"]]}, {"id": 15, "start": 114202, "end": 114208, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_32F7", "ea": 13047, "blocks": [{"id": 0, "start": 13047, "end": 13095, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r15", "mov r15, r9", "push r14", "mov r14, r8", "push r13", "mov r13d, esi", "push r12", "mov r12d, ecx", "push rbx", "mov rbx, rdx", "sub rsp, 18h", "cmp cs:error_one_per_line, 0", "mov [rbp+status], edi", "jz short loc_3368"], "succs": [[1, "fall"], [7, "jump"]]}, {"id": 1, "start": 13095, "end": 13103, "lines": ["cmp cs:dword_29400, ecx", "jnz short loc_335A"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 13103, "end": 13119, "lines": ["mov rdi, cs:s1; s1", "cmp rdi, rdx", "jz loc_33ED"], "succs": [[3, "fall"], [13, "jump"]]}, {"id": 3, "start": 13119, "end": 13124, "lines": ["test rdx, rdx", "jz short loc_335A"], "succs": [[4, "fall"], [6, "jump"]]}, {"id": 4, "start": 13124, "end": 13129, "lines": ["test rdi, rdi", "jz short loc_335A"], "succs": [[5, "fall"], [6, "jump"]]}, {"id": 5, "start": 13129, "end": 13146, "lines": ["mov rsi, rdx; s2", "call cs:strcmp_ptr", "test eax, eax", "jz loc_33ED"], "succs": [[6, "fall"], [13, "jump"]]}, {"id": 6, "start": 13146, "end": 13160, "lines": ["mov cs:s1, rbx", "mov cs:dword_29400, r12d"], "succs": [[7, "fall"]]}, {"id": 7, "start": 13160, "end": 13177, "lines": ["call sub_31B5", "mov rax, cs:error_print_progname", "test rax, rax", "jz short loc_337D"], "succs": [[8, "fall"], [9, "jump"]]}, {"id": 8, "start": 13177, "end": 13181, "lines": ["call rax ; error_print_progname", "jmp short loc_33A1"], "succs": [[10, "jump"]]}, {"id": 9, "start": 13181, "end": 13217, "lines": ["call sub_11950", "mov rdi, cs:stderr", "mov esi, 2", "lea rdx, aS_2; \"%s:\"", "mov rcx, rax", "xor eax, eax", "call cs:__fprintf_chk_ptr"], "succs": [[10, "fall"]]}, {"id": 10, "start": 13217, "end": 13229, "lines": ["lea rdx, asc_1F00A+1; \" \"", "test rbx, rbx", "jz short loc_33B4"], "succs": [[11, "fall"], [12, "jump"]]}, {"id": 11, "start": 13229, "end": 13236, "lines": ["lea rdx, aSU; \"%s:%u: \""], "succs": [[12, "fall"]]}, {"id": 12, "start": 13236, "end": 13293, "lines": ["mov rcx, rbx", "mov rdi, cs:stderr", "mov r8d, r12d", "xor eax, eax", "mov esi, 2", "call cs:__fprintf_chk_ptr", "mov edi, [rbp+status]; status", "add rsp, 18h", "mov rcx, r15", "pop rbx", "mov rdx, r14", "pop r12", "mov esi, r13d", "pop r13", "pop r14", "pop r15", "pop rbp", "jmp sub_313D"], "succs": [[14, "jump"]]}, {"id": 13, "start": 13293, "end": 13308, "lines": ["add rsp, 18h", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 14, "start": 12605, "end": 12605, "lines": [], "succs": []}]}, {"name": "sub_12020", "ea": 73760, "blocks": [{"id": 0, "start": 73760, "end": 73805, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r14", "push r13", "xor r13d, r13d", "push r12", "mov r12, rsi", "push rbx", "mov rcx, [rdi]", "mov rsi, [rdi+8]", "mov r8, [rdi+20h]", "mov rbx, [rdi+10h]", "mov r14, [rdi+18h]", "cmp rcx, rsi", "jb short loc_12059"], "succs": [[1, "fall"], [3, "jump"]]}, {"id": 1, "start": 73805, "end": 73807, "lines": ["jmp short loc_1208D"], "succs": [[8, "jump"]]}, {"id": 2, "start": 73808, "end": 73817, "lines": ["add rcx, 10h", "cmp rcx, rsi", "jnb short loc_1208D"], "succs": [[3, "fall"], [8, "jump"]]}, {"id": 3, "start": 73817, "end": 73823, "lines": ["cmp qword ptr [rcx], 0", "jz short loc_12050"], "succs": [[2, "jump"], [4, "fall"]]}, {"id": 4, "start": 73823, "end": 73837, "lines": ["mov rax, [rcx+8]", "mov edx, 1", "test rax, rax", "jz short loc_1207D"], "succs": [[5, "fall"], [7, "jump"]]}, {"id": 5, "start": 73837, "end": 73840, "lines": ["nop dword ptr [rax]"], "succs": [[6, "fall"]]}, {"id": 6, "start": 73840, "end": 73853, "lines": ["mov rax, [rax+8]", "add rdx, 1", "test rax, rax", "jnz short loc_12070"], "succs": [[7, "fall"], [6, "jump"]]}, {"id": 7, "start": 73853, "end": 73869, "lines": ["cmp r13, rdx", "cmovb r13, rdx", "add rcx, 10h", "cmp rcx, rsi", "jb short loc_12059"], "succs": [[3, "jump"], [8, "fall"]]}, {"id": 8, "start": 73869, "end": 73926, "lines": ["mov rcx, r8", "lea rdx, aEntriesLu; \"# entries: %lu\\n\"", "mov rdi, r12", "xor eax, eax", "mov esi, 2", "call cs:__fprintf_chk_ptr", "xor eax, eax", "mov rcx, rbx", "mov esi, 2", "lea rdx, aBucketsLu; \"# buckets: %lu\\n\"", "mov rdi, r12", "call cs:__fprintf_chk_ptr", "test r14, r14", "js short loc_12130"], "succs": [[9, "fall"], [12, "jump"]]}, {"id": 9, "start": 73926, "end": 73948, "lines": ["pxor xmm0, xmm0", "cvtsi2sd xmm0, r14", "mulsd xmm0, cs:qword_21DA8", "test rbx, rbx", "js short loc_12159"], "succs": [[10, "fall"], [13, "jump"]]}, {"id": 10, "start": 73948, "end": 73957, "lines": ["pxor xmm1, xmm1", "cvtsi2sd xmm1, rbx"], "succs": [[11, "fall"]]}, {"id": 11, "start": 73957, "end": 74024, "lines": ["divsd xmm0, xmm1", "mov rcx, r14", "mov rdi, r12", "mov esi, 2", "lea rdx, aBucketsUsedLu2; \"# buckets used: %lu (%.2f%%)\\n\"", "mov eax, 1", "call cs:__fprintf_chk_ptr", "pop rbx", "mov rcx, r13", "mov rdi, r12", "lea rdx, aMaxBucketLengt; \"max bucket length: %lu\\n\"", "pop r12", "mov esi, 2", "pop r13", "xor eax, eax", "pop r14", "pop rbp", "jmp cs:__fprintf_chk_ptr"], "succs": [[14, "jump"]]}, {"id": 12, "start": 74032, "end": 74073, "lines": ["mov rax, r14", "mov rdx, r14", "pxor xmm0, xmm0", "shr rax, 1", "and edx, 1", "or rax, rdx", "cvtsi2sd xmm0, rax", "addsd xmm0, xmm0", "mulsd xmm0, cs:qword_21DA8", "test rbx, rbx", "jns short loc_120DC"], "succs": [[10, "jump"], [13, "fall"]]}, {"id": 13, "start": 74073, "end": 74103, "lines": ["mov rax, rbx", "and ebx, 1", "pxor xmm1, xmm1", "shr rax, 1", "or rax, rbx", "cvtsi2sd xmm1, rax", "addsd xmm1, xmm1", "jmp loc_120E5"], "succs": [[11, "jump"]]}, {"id": 14, "start": 170168, "end": 170168, "lines": [], "succs": []}]}, {"name": "sub_5AA0", "ea": 23200, "blocks": [{"id": 0, "start": 23200, "end": 23225, "lines": ["movzx eax, cs:byte_2932C", "mov edx, cs:dword_2933C", "shl eax, 0Ah", "cmp cs:byte_292FC, 0", "jz short loc_5AF8"], "succs": [[1, "fall"], [5, "jump"]]}, {"id": 1, "start": 23225, "end": 23234, "lines": ["or eax, 102h", "test edx, edx", "jz short loc_5AFF"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 23234, "end": 23247, "lines": ["cmp cs:dword_29330, 6; switch 7 cases", "ja def_5AE3; jumptable 0000000000005AE3 default case"], "succs": [[3, "fall"], [13, "jump"]]}, {"id": 3, "start": 23247, "end": 23270, "lines": ["mov edx, cs:dword_29330", "lea rcx, jpt_5AE3", "movsxd rdx, ds:(jpt_5AE3 - 1D144h)[rcx+rdx*4]", "add rdx, rcx", "jmp rdx; switch jump"], "succs": [[4, "switch"], [11, "switch"], [12, "switch"]]}, {"id": 4, "start": 23280, "end": 23281, "lines": ["retn; jumptable 0000000000005AE3 cases 0-2,4,6"], "succs": []}, {"id": 5, "start": 23288, "end": 23295, "lines": ["or eax, 2", "test edx, edx", "jnz short loc_5AC2"], "succs": [[2, "jump"], [6, "fall"]]}, {"id": 6, "start": 23295, "end": 23322, "lines": ["mov edx, cs:dword_29338", "lea rcx, unk_1D5D0", "or eax, [rcx+rdx*4]", "cmp cs:byte_28029, 0", "mov edx, eax", "jz short loc_5B30"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 23322, "end": 23328, "lines": ["or edx, 20Ch"], "succs": [[8, "fall"]]}, {"id": 8, "start": 23328, "end": 23342, "lines": ["movzx eax, cs:byte_28028", "shl eax, 4", "or eax, edx", "jmp short loc_5AC2"], "succs": [[2, "jump"]]}, {"id": 9, "start": 23344, "end": 23353, "lines": ["cmp cs:byte_2932E, 0", "jnz short loc_5B1A"], "succs": [[7, "jump"], [10, "fall"]]}, {"id": 10, "start": 23353, "end": 23361, "lines": ["or edx, 204h", "jmp short loc_5B20"], "succs": [[8, "jump"]]}, {"id": 11, "start": 23368, "end": 23372, "lines": ["or ah, 2; jumptable 0000000000005AE3 case 3", "retn"], "succs": []}, {"id": 12, "start": 23376, "end": 23393, "lines": ["mov ecx, cs:dword_29338; jumptable 0000000000005AE3 case 5", "lea rdx, unk_1D5D0", "or eax, [rdx+rcx*4]", "retn"], "succs": []}, {"id": 13, "start": 12352, "end": 12384, "lines": ["lea rcx, function; jumptable 0000000000005AE3 default case", "mov edx, 0FD2h; line", "lea rsi, file; \"src/ls.c\"", "lea rdi, assertion; \"sort_type != sort_version\"", "call cs:__assert_fail_ptr"], "succs": []}]}, {"name": "sub_6470", "ea": 25712, "blocks": [{"id": 0, "start": 25712, "end": 25721, "lines": ["cmp rdi, rsi", "jnb locret_6540"], "succs": [[1, "fall"], [13, "jump"]]}, {"id": 1, "start": 25721, "end": 25740, "lines": ["push rbp", "mov r8, rdi", "mov rbp, rsp", "push r12", "mov r12, rsi", "push rbx", "sub rsp, 10h", "jmp short loc_64CE"], "succs": [[6, "jump"]]}, {"id": 2, "start": 25744, "end": 25768, "lines": ["mov rax, r12", "xor edx, edx", "div rcx", "xor edx, edx", "mov r10, rax", "mov rax, rbx", "div rcx", "cmp rax, r10", "jnb short loc_64ED"], "succs": [[3, "fall"], [7, "jump"]]}, {"id": 3, "start": 25768, "end": 25773, "lines": ["cmp rsi, r9", "jnb short loc_6520"], "succs": [[4, "fall"], [12, "jump"]]}, {"id": 4, "start": 25773, "end": 25784, "lines": ["lea rax, [rsi+1]", "mov [rdi+28h], rax", "mov byte ptr [rsi], 9"], "succs": [[5, "fall"]]}, {"id": 5, "start": 25784, "end": 25806, "lines": ["mov rax, r8", "xor edx, edx", "div rcx", "add rcx, r8", "sub rcx, rdx", "mov r8, rcx", "cmp r8, r12", "jnb short loc_6505"], "succs": [[6, "fall"], [10, "jump"]]}, {"id": 6, "start": 25806, "end": 25837, "lines": ["mov rdi, cs:stdout; _IO_FILE *", "mov rcx, cs:qword_292C0", "lea rbx, [r8+1]", "mov rsi, [rdi+28h]", "mov r9, [rdi+30h]", "test rcx, rcx", "jnz short loc_6490"], "succs": [[2, "jump"], [7, "fall"]]}, {"id": 7, "start": 25837, "end": 25842, "lines": ["cmp rsi, r9", "jnb short loc_6510"], "succs": [[8, "fall"], [11, "jump"]]}, {"id": 8, "start": 25842, "end": 25853, "lines": ["lea rax, [rsi+1]", "mov [rdi+28h], rax", "mov byte ptr [rsi], 20h ; ' '"], "succs": [[9, "fall"]]}, {"id": 9, "start": 25853, "end": 25861, "lines": ["mov r8, rbx", "cmp r8, r12", "jb short loc_64CE"], "succs": [[6, "jump"], [10, "fall"]]}, {"id": 10, "start": 25861, "end": 25870, "lines": ["add rsp, 10h", "pop rbx", "pop r12", "pop rbp", "retn"], "succs": []}, {"id": 11, "start": 25872, "end": 25885, "lines": ["mov esi, 20h ; ' '; int", "call cs:__overflow_ptr", "jmp short loc_64FD"], "succs": [[9, "jump"]]}, {"id": 12, "start": 25888, "end": 25919, "lines": ["mov [rbp-18h], r8", "mov esi, 9; int", "call cs:__overflow_ptr", "mov rcx, cs:qword_292C0", "mov r8, [rbp-18h]", "jmp loc_64B8"], "succs": [[5, "jump"]]}, {"id": 13, "start": 25920, "end": 25921, "lines": ["retn"], "succs": []}]}, {"name": "sub_A280", "ea": 41600, "blocks": [{"id": 0, "start": 41600, "end": 41635, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 9", "setz al", "cmp edx, 3", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_A2D0"], "succs": [[1, "fall"], [5, "jump"]]}, {"id": 1, "start": 41635, "end": 41640, "lines": ["cmp ecx, 9", "jz short loc_A2D0"], "succs": [[2, "fall"], [5, "jump"]]}, {"id": 2, "start": 41640, "end": 41660, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_A2D0"], "succs": [[3, "fall"], [5, "jump"]]}, {"id": 3, "start": 41660, "end": 41664, "lines": ["test al, al", "jz short loc_A338"], "succs": [[4, "fall"], [12, "jump"]]}, {"id": 4, "start": 41664, "end": 41670, "lines": ["mov eax, 0FFFFFFFFh", "retn"], "succs": []}, {"id": 5, "start": 41680, "end": 41684, "lines": ["test al, al", "jnz short loc_A300"], "succs": [[6, "fall"], [9, "jump"]]}, {"id": 6, "start": 41684, "end": 41689, "lines": ["mov eax, 1"], "succs": [[7, "fall"]]}, {"id": 7, "start": 41689, "end": 41717, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jz short loc_A300"], "succs": [[8, "fall"], [9, "jump"]]}, {"id": 8, "start": 41717, "end": 41718, "lines": ["retn"], "succs": []}, {"id": 9, "start": 41728, "end": 41760, "lines": ["push rbp", "mov rbp, rsp", "sub rsp, 10h", "mov rdi, [rdi]", "mov rsi, [rsi]", "mov [rbp-8], rdi", "mov [rbp-10h], rsi", "call sub_11930", "test eax, eax", "jnz short locret_A330"], "succs": [[10, "fall"], [11, "jump"]]}, {"id": 10, "start": 41760, "end": 41775, "lines": ["mov rsi, [rbp-10h]; s2", "mov rdi, [rbp-8]; s1", "leave", "jmp cs:strcmp_ptr"], "succs": [[13, "jump"]]}, {"id": 11, "start": 41776, "end": 41778, "lines": ["leave", "retn"], "succs": []}, {"id": 12, "start": 41784, "end": 41788, "lines": ["xor eax, eax", "jmp short loc_A2D9"], "succs": [[7, "jump"]]}, {"id": 13, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_A340", "ea": 41792, "blocks": [{"id": 0, "start": 41792, "end": 41827, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 9", "setz al", "cmp edx, 3", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_A390"], "succs": [[1, "fall"], [5, "jump"]]}, {"id": 1, "start": 41827, "end": 41832, "lines": ["cmp ecx, 9", "jz short loc_A390"], "succs": [[2, "fall"], [5, "jump"]]}, {"id": 2, "start": 41832, "end": 41852, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_A390"], "succs": [[3, "fall"], [5, "jump"]]}, {"id": 3, "start": 41852, "end": 41860, "lines": ["test al, al", "jz loc_A400"], "succs": [[4, "fall"], [12, "jump"]]}, {"id": 4, "start": 41860, "end": 41866, "lines": ["mov eax, 0FFFFFFFFh", "retn"], "succs": []}, {"id": 5, "start": 41872, "end": 41876, "lines": ["test al, al", "jnz short loc_A3C0"], "succs": [[6, "fall"], [9, "jump"]]}, {"id": 6, "start": 41876, "end": 41881, "lines": ["mov eax, 1"], "succs": [[7, "fall"]]}, {"id": 7, "start": 41881, "end": 41909, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jz short loc_A3C0"], "succs": [[8, "fall"], [9, "jump"]]}, {"id": 8, "start": 41909, "end": 41910, "lines": ["retn"], "succs": []}, {"id": 9, "start": 41920, "end": 41955, "lines": ["push rbp", "mov rbp, rsp", "sub rsp, 10h", "mov rdx, [rsi]", "mov rsi, [rdi]", "mov [rbp-8], rdx", "mov rdi, rdx", "mov [rbp-10h], rsi", "call sub_11930", "test eax, eax", "jnz short locret_A3F8"], "succs": [[10, "fall"], [11, "jump"]]}, {"id": 10, "start": 41955, "end": 41970, "lines": ["mov rsi, [rbp-10h]; s2", "mov rdi, [rbp-8]; s1", "leave", "jmp cs:strcmp_ptr"], "succs": [[13, "jump"]]}, {"id": 11, "start": 41976, "end": 41978, "lines": ["leave", "retn"], "succs": []}, {"id": 12, "start": 41984, "end": 41988, "lines": ["xor eax, eax", "jmp short loc_A399"], "succs": [[7, "jump"]]}, {"id": 13, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_F500", "ea": 62720, "blocks": [{"id": 0, "start": 62720, "end": 62753, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r15", "push r14", "push r13", "push r12", "push rbx", "sub rsp, 38h", "mov r15, [rsi]", "test r15, r15", "jz loc_F606"], "succs": [[1, "fall"], [13, "jump"]]}, {"id": 1, "start": 62753, "end": 62796, "lines": ["mov [rbp+var_58], rdx", "mov r13, rcx", "mov r12, rdx", "xor ebx, ebx", "mov [rbp+var_48], rsi", "mov [rbp+s2], rdi", "call cs:strlen_ptr", "mov [rbp+var_49], 0", "mov [rbp+var_38], 0FFFFFFFFFFFFFFFFh", "mov r14, rax", "jmp short loc_F58C"], "succs": [[5, "jump"]]}, {"id": 2, "start": 62800, "end": 62809, "lines": ["mov rax, [rbp+var_58]", "test rax, rax", "jz short loc_F5C0"], "succs": [[3, "fall"], [9, "jump"]]}, {"id": 3, "start": 62809, "end": 62840, "lines": ["mov rdi, [rbp+var_38]", "mov rdx, r13; n", "mov rsi, r12; s2", "imul rdi, r13", "add rdi, rax; s1", "call cs:memcmp_ptr", "test eax, eax", "setnz al", "or [rbp+var_49], al"], "succs": [[4, "fall"]]}, {"id": 4, "start": 62840, "end": 62860, "lines": ["mov rax, [rbp+var_48]", "add rbx, 1", "add r12, r13", "mov r15, [rax+rbx*8]", "test r15, r15", "jz short loc_F5D0"], "succs": [[5, "fall"], [10, "jump"]]}, {"id": 5, "start": 62860, "end": 62880, "lines": ["mov rsi, [rbp+s2]; s2", "mov rdx, r14; n", "mov rdi, r15; s1", "call cs:strncmp_ptr", "test eax, eax", "jnz short loc_F578"], "succs": [[4, "jump"], [6, "fall"]]}, {"id": 6, "start": 62880, "end": 62894, "lines": ["mov rdi, r15; s", "call cs:strlen_ptr", "cmp rax, r14", "jz short loc_F600"], "succs": [[7, "fall"], [12, "jump"]]}, {"id": 7, "start": 62894, "end": 62901, "lines": ["cmp [rbp+var_38], 0FFFFFFFFFFFFFFFFh", "jnz short loc_F550"], "succs": [[2, "jump"], [8, "fall"]]}, {"id": 8, "start": 62901, "end": 62907, "lines": ["mov [rbp+var_38], rbx", "jmp short loc_F578"], "succs": [[4, "jump"]]}, {"id": 9, "start": 62912, "end": 62918, "lines": ["mov [rbp+var_49], 1", "jmp short loc_F578"], "succs": [[4, "jump"]]}, {"id": 10, "start": 62928, "end": 62948, "lines": ["cmp [rbp+var_49], 0", "mov rax, 0FFFFFFFFFFFFFFFEh", "cmovz rax, [rbp+var_38]", "mov [rbp+var_38], rax"], "succs": [[11, "fall"]]}, {"id": 11, "start": 62948, "end": 62967, "lines": ["mov rax, [rbp+var_38]", "add rsp, 38h", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 12, "start": 62976, "end": 62982, "lines": ["mov [rbp+var_38], rbx", "jmp short loc_F5E4"], "succs": [[11, "jump"]]}, {"id": 13, "start": 62982, "end": 62992, "lines": ["mov [rbp+var_38], 0FFFFFFFFFFFFFFFFh", "jmp short loc_F5E4"], "succs": [[11, "jump"]]}]}, {"name": "sub_12640", "ea": 75328, "blocks": [{"id": 0, "start": 75328, "end": 75357, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r13", "push r12", "mov r12, rdi", "push rbx", "sub rsp, 8", "mov r13, [rdi]", "cmp r13, [rdi+8]", "jb short loc_1266B"], "succs": [[1, "fall"], [3, "jump"]]}, {"id": 1, "start": 75357, "end": 75359, "lines": ["jmp short loc_126D7"], "succs": [[13, "jump"]]}, {"id": 2, "start": 75360, "end": 75371, "lines": ["add r13, 10h", "cmp r13, [r12+8]", "jnb short loc_126D7"], "succs": [[3, "fall"], [13, "jump"]]}, {"id": 3, "start": 75371, "end": 75378, "lines": ["cmp qword ptr [r13+0], 0", "jz short loc_12660"], "succs": [[2, "jump"], [4, "fall"]]}, {"id": 4, "start": 75378, "end": 75392, "lines": ["mov rbx, [r13+8]", "mov rdx, [r12+40h]", "test rbx, rbx", "jnz short loc_1268B"], "succs": [[5, "fall"], [7, "jump"]]}, {"id": 5, "start": 75392, "end": 75394, "lines": ["jmp short loc_126B8"], "succs": [[10, "jump"]]}, {"id": 6, "start": 75400, "end": 75403, "lines": ["mov rbx, rax"], "succs": [[7, "fall"]]}, {"id": 7, "start": 75403, "end": 75408, "lines": ["test rdx, rdx", "jz short loc_1269A"], "succs": [[8, "fall"], [9, "jump"]]}, {"id": 8, "start": 75408, "end": 75418, "lines": ["mov rdi, [rbx]", "call rdx", "mov rdx, [r12+40h]"], "succs": [[9, "fall"]]}, {"id": 9, "start": 75418, "end": 75448, "lines": ["mov rax, [rbx+8]", "mov rcx, [r12+48h]", "mov qword ptr [rbx], 0", "mov [rbx+8], rcx", "mov [r12+48h], rbx", "test rax, rax", "jnz short loc_12688"], "succs": [[6, "jump"], [10, "fall"]]}, {"id": 10, "start": 75448, "end": 75453, "lines": ["test rdx, rdx", "jz short loc_126C3"], "succs": [[11, "fall"], [12, "jump"]]}, {"id": 11, "start": 75453, "end": 75459, "lines": ["mov rdi, [r13+0]", "call rdx"], "succs": [[12, "fall"]]}, {"id": 12, "start": 75459, "end": 75479, "lines": ["pxor xmm1, xmm1", "add r13, 10h", "movups xmmword ptr [r13-10h], xmm1", "cmp r13, [r12+8]", "jb short loc_1266B"], "succs": [[3, "jump"], [13, "fall"]]}, {"id": 13, "start": 75479, "end": 75500, "lines": ["pxor xmm0, xmm0", "movups xmmword ptr [r12+18h], xmm0", "add rsp, 8", "pop rbx", "pop r12", "pop r13", "pop rbp", "retn"], "succs": []}]}, {"name": "sub_17F50", "ea": 98128, "blocks": [{"id": 0, "start": 98128, "end": 98227, "lines": ["endbr64", "push rbp", "xor ecx, ecx", "mov rbp, rsp", "push r15", "push r14", "push r13", "push r12", "mov r12, rdi", "push rbx", "sub rsp, 8", "mov r14, [rdi+18h]", "sub r14, [rdi+10h]", "add rsi, r14", "mov rax, [rdi+30h]", "mov rdx, rsi", "setb cl", "neg rdx", "and rdx, rax", "add rdx, rsi", "setb sil", "movzx esi, sil", "or rcx, rsi", "lea rsi, [rax+10h]", "mov rax, r14", "add rsi, rdx", "setb dl", "shr rax, 3", "movzx edx, dl", "add rax, 64h ; 'd'", "or rdx, rcx", "add rax, rsi", "jb short loc_17FB6"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 98227, "end": 98230, "lines": ["mov rsi, rax"], "succs": [[2, "fall"]]}, {"id": 2, "start": 98230, "end": 98239, "lines": ["test rdx, rdx", "jnz loc_180CA"], "succs": [[3, "fall"], [13, "jump"]]}, {"id": 3, "start": 98239, "end": 98270, "lines": ["mov rax, [r12]", "mov r13, [r12+8]", "cmp rsi, rax", "cmovnb rax, rsi", "mov rbx, rax", "test byte ptr [r12+50h], 1", "jnz loc_18080"], "succs": [[4, "fall"], [9, "jump"]]}, {"id": 4, "start": 98270, "end": 98281, "lines": ["mov rdi, rax", "call qword ptr [r12+38h]", "mov r15, rax"], "succs": [[5, "fall"]]}, {"id": 5, "start": 98281, "end": 98290, "lines": ["test r15, r15", "jz loc_180CA"], "succs": [[6, "fall"], [13, "jump"]]}, {"id": 6, "start": 98290, "end": 98371, "lines": ["mov rdx, [r12+30h]", "mov [r12+8], r15", "mov [r15+8], r13", "sub rbx, rdx", "lea rax, [r15+rbx]", "neg rax", "and rax, rdx", "add rax, rbx", "add rax, r15", "mov [r12+20h], rax", "mov [r15], rax", "lea rax, [r15+10h]", "mov rsi, [r12+10h]; src", "neg rax", "and rax, rdx", "mov rdx, r14; n", "lea rbx, [r15+rax+10h]", "mov rdi, rbx; dest", "call cs:memcpy_ptr", "test byte ptr [r12+50h], 2", "jnz short loc_1805B"], "succs": [[7, "fall"], [8, "jump"]]}, {"id": 7, "start": 98371, "end": 98395, "lines": ["lea rdx, [r13+10h]", "neg rdx", "and rdx, [r12+30h]", "lea rax, [r13+rdx+10h]", "cmp [r12+10h], rax", "jz short loc_18098"], "succs": [[8, "fall"], [10, "jump"]]}, {"id": 8, "start": 98395, "end": 98429, "lines": ["mov [r12+10h], rbx", "add rbx, r14", "and byte ptr [r12+50h], 0FDh", "mov [r12+18h], rbx", "add rsp, 8", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 9, "start": 98432, "end": 98453, "lines": ["mov rdi, [r12+48h]", "mov rsi, rax", "call qword ptr [r12+38h]", "mov r15, rax", "jmp loc_17FE9"], "succs": [[5, "jump"]]}, {"id": 10, "start": 98456, "end": 98472, "lines": ["mov rax, [r13+8]", "mov [r15+8], rax", "test byte ptr [r12+50h], 1", "jz short loc_180C0"], "succs": [[11, "fall"], [12, "jump"]]}, {"id": 11, "start": 98472, "end": 98487, "lines": ["mov rdi, [r12+48h]", "mov rsi, r13", "call qword ptr [r12+40h]", "jmp short loc_1805B"], "succs": [[8, "jump"]]}, {"id": 12, "start": 98496, "end": 98506, "lines": ["mov rdi, r13", "call qword ptr [r12+40h]", "jmp short loc_1805B"], "succs": [[8, "jump"]]}, {"id": 13, "start": 98506, "end": 98512, "lines": ["call cs:obstack_alloc_failed_handler"], "succs": []}]}, {"name": "sub_19C50", "ea": 105552, "blocks": [{"id": 0, "start": 105552, "end": 105629, "lines": ["push rbp", "mov rbp, rsp", "push r15", "push r14", "push r13", "push r12", "push rbx", "movsxd rbx, edi", "sub rsp, 38h", "mov [rbp+var_48], rsi", "mov [rbp+var_50], rdx", "mov r15, fs:28h", "mov [rbp+var_38], r15", "mov r15, rcx", "call cs:__errno_location_ptr", "mov r14, cs:off_28240", "mov r12, rax", "mov eax, [rax]", "mov [rbp+var_54], eax", "cmp ebx, 7FFFFFFEh", "ja loc_34DB"], "succs": [[1, "fall"], [13, "jump"]]}, {"id": 1, "start": 105629, "end": 105639, "lines": ["mov eax, cs:dword_28238", "cmp eax, ebx", "jg short loc_19D15"], "succs": [[2, "fall"], [5, "jump"]]}, {"id": 2, "start": 105639, "end": 105672, "lines": ["movsxd rdx, eax", "mov [rbp+var_40], rdx", "mov edx, ebx", "sub edx, eax", "lea rax, off_28250", "add edx, 1", "movsxd rdx, edx", "cmp r14, rax", "jz loc_19DF0"], "succs": [[3, "fall"], [11, "jump"]]}, {"id": 3, "start": 105672, "end": 105706, "lines": ["mov rdi, r14", "lea rsi, [rbp+var_40]", "mov r8d, 10h", "mov ecx, 7FFFFFFFh", "call sub_1BA20", "mov cs:off_28240, rax", "mov r14, rax"], "succs": [[4, "fall"]]}, {"id": 4, "start": 105706, "end": 105749, "lines": ["movsxd rdi, cs:dword_28238", "mov rdx, [rbp+var_40]", "xor esi, esi; c", "sub rdx, rdi", "shl rdi, 4", "shl rdx, 4; n", "add rdi, r14; s", "call cs:memset_ptr", "mov rax, [rbp+var_40]", "mov cs:dword_28238, eax"], "succs": [[5, "fall"]]}, {"id": 5, "start": 105749, "end": 105827, "lines": ["mov eax, [r15+4]", "shl rbx, 4", "sub rsp, 8", "mov r8d, [r15]", "add rbx, r14", "lea r14, [r15+8]", "mov rcx, [rbp+var_50]", "mov rdx, [rbp+var_48]", "or eax, 1", "mov rsi, [rbx]", "mov r13, [rbx+8]", "mov [rbp+var_58], eax", "mov r9d, eax", "push qword ptr [r15+30h]", "mov rdi, r13", "push qword ptr [r15+28h]", "push r14", "mov [rbp+var_60], rsi", "call sub_18400", "add rsp, 20h", "cmp rax, [rbp+var_60]", "jb short loc_19DC8"], "succs": [[6, "fall"], [9, "jump"]]}, {"id": 6, "start": 105827, "end": 105846, "lines": ["lea rsi, [rax+1]", "lea rax, unk_29440", "mov [rbx], rsi", "cmp r13, rax", "jz short loc_19D87"], "succs": [[7, "fall"], [8, "jump"]]}, {"id": 7, "start": 105846, "end": 105863, "lines": ["mov [rbp+var_60], rsi", "mov rdi, r13; ptr", "call cs:free_ptr", "mov rsi, [rbp+var_60]"], "succs": [[8, "fall"]]}, {"id": 8, "start": 105863, "end": 105928, "lines": ["mov rdi, rsi", "mov [rbp+var_60], rsi", "call sub_1B830", "sub rsp, 8", "mov r9d, [rbp+var_58]", "mov r8d, [r15]", "mov [rbx+8], rax", "mov rcx, [rbp+var_50]", "mov rdi, rax", "mov r13, rax", "mov rdx, [rbp+var_48]", "mov rsi, [rbp+var_60]", "push qword ptr [r15+30h]", "push qword ptr [r15+28h]", "push r14", "call sub_18400", "add rsp, 20h"], "succs": [[9, "fall"]]}, {"id": 9, "start": 105928, "end": 105950, "lines": ["mov eax, [rbp+var_54]", "mov [r12], eax", "mov rax, [rbp+var_38]", "sub rax, fs:28h", "jnz short loc_19E21"], "succs": [[10, "fall"], [12, "jump"]]}, {"id": 10, "start": 105950, "end": 105968, "lines": ["lea rsp, [rbp-28h]", "mov rax, r13", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 11, "start": 105968, "end": 106017, "lines": ["lea rsi, [rbp+var_40]", "mov r8d, 10h", "mov ecx, 7FFFFFFFh", "xor edi, edi", "call sub_1BA20", "movdqa xmm0, xmmword ptr cs:off_28250", "mov cs:off_28240, rax", "mov r14, rax", "movups xmmword ptr [rax], xmm0", "jmp loc_19CEA"], "succs": [[4, "jump"]]}, {"id": 12, "start": 106017, "end": 106023, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 13, "start": 13531, "end": 13537, "lines": ["call cs:abort_ptr"], "succs": []}]}, {"name": "sub_1AD50", "ea": 109904, "blocks": [{"id": 0, "start": 109904, "end": 109953, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r12", "mov r12, rdi", "lea rdi, aTz; \"TZ\"", "push rbx", "sub rsp, 10h", "call cs:getenv_ptr", "mov rdx, rax", "movzx eax, byte ptr [r12+8]", "test rdx, rdx", "jz loc_1AE30"], "succs": [[1, "fall"], [12, "jump"]]}, {"id": 1, "start": 109953, "end": 109957, "lines": ["test al, al", "jnz short loc_1ADC0"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 109957, "end": 109977, "lines": ["mov rdi, rdx", "call sub_1AAF0", "mov rbx, rax", "test rax, rax", "jz loc_1AE21"], "succs": [[3, "fall"], [11, "jump"]]}, {"id": 3, "start": 109977, "end": 109994, "lines": ["lea rdi, aTz; \"TZ\"", "call cs:unsetenv_ptr", "test eax, eax", "jnz short loc_1AE0A"], "succs": [[4, "fall"], [9, "jump"]]}, {"id": 4, "start": 109994, "end": 110000, "lines": ["call cs:tzset_ptr"], "succs": [[5, "fall"]]}, {"id": 5, "start": 110000, "end": 110012, "lines": ["add rsp, 10h", "mov rax, rbx", "pop rbx", "pop r12", "pop rbp", "retn"], "succs": []}, {"id": 6, "start": 110016, "end": 110047, "lines": ["mov [rbp+var_18], rdx", "mov rsi, rdx; s2", "lea rdi, [r12+9]; s1", "mov ebx, 1", "call cs:strcmp_ptr", "mov rdx, [rbp+var_18]", "test eax, eax", "jz short loc_1ADB0"], "succs": [[5, "jump"], [7, "fall"]]}, {"id": 7, "start": 110047, "end": 110063, "lines": ["mov rdi, rdx", "call sub_1AAF0", "mov rbx, rax", "test rax, rax", "jz short loc_1AE21"], "succs": [[8, "fall"], [11, "jump"]]}, {"id": 8, "start": 110063, "end": 110090, "lines": ["lea rsi, [r12+9]; value", "mov edx, 1; replace", "lea rdi, aTz; \"TZ\"", "call cs:setenv_ptr", "test eax, eax", "jz short loc_1ADAA"], "succs": [[4, "jump"], [9, "fall"]]}, {"id": 9, "start": 110090, "end": 110096, "lines": ["cmp rbx, 1", "jz short loc_1AE21"], "succs": [[10, "fall"], [11, "jump"]]}, {"id": 10, "start": 110096, "end": 110113, "lines": ["mov rdi, rbx; ptr", "mov rbx, [rbx]", "call cs:free_ptr", "test rbx, rbx", "jnz short loc_1AE10"], "succs": [[11, "fall"], [10, "jump"]]}, {"id": 11, "start": 110113, "end": 110127, "lines": ["add rsp, 10h", "xor ebx, ebx", "mov rax, rbx", "pop rbx", "pop r12", "pop rbp", "retn"], "succs": []}, {"id": 12, "start": 110128, "end": 110137, "lines": ["mov ebx, 1", "test al, al", "jnz short loc_1ADDF"], "succs": [[7, "jump"], [13, "fall"]]}, {"id": 13, "start": 110137, "end": 110149, "lines": ["add rsp, 10h", "mov rax, rbx", "pop rbx", "pop r12", "pop rbp", "retn"], "succs": []}]}, {"name": "sub_8E20", "ea": 36384, "blocks": [{"id": 0, "start": 36384, "end": 36419, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 9", "setz al", "cmp edx, 3", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_8E70"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 36419, "end": 36424, "lines": ["cmp ecx, 9", "jz short loc_8E70"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 36424, "end": 36444, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_8E70"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 36444, "end": 36452, "lines": ["test al, al", "jz loc_8EE0"], "succs": [[4, "fall"], [11, "jump"]]}, {"id": 4, "start": 36452, "end": 36457, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 36457, "end": 36458, "lines": ["retn"], "succs": []}, {"id": 6, "start": 36464, "end": 36468, "lines": ["test al, al", "jnz short loc_8E95"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 36468, "end": 36473, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 36473, "end": 36501, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_8E69"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 36501, "end": 36563, "lines": ["mov rax, [rsi+80h]", "xor edx, edx", "cmp [rdi+80h], rax", "setnle al", "setl dl", "movzx eax, al", "sub edx, eax", "mov rax, [rsi+88h]", "cmp [rdi+88h], rax", "setl al", "setnle cl", "movzx eax, al", "movzx ecx, cl", "sub eax, ecx", "lea eax, [rax+rdx*2]", "test eax, eax", "jnz short locret_8E69"], "succs": [[5, "jump"], [10, "fall"]]}, {"id": 10, "start": 36563, "end": 36575, "lines": ["mov rsi, [rsi]; s2", "mov rdi, [rdi]; s1", "jmp cs:strcmp_ptr"], "succs": [[12, "jump"]]}, {"id": 11, "start": 36576, "end": 36580, "lines": ["xor eax, eax", "jmp short loc_8E79"], "succs": [[8, "jump"]]}, {"id": 12, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_8F80", "ea": 36736, "blocks": [{"id": 0, "start": 36736, "end": 36771, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 9", "setz al", "cmp edx, 3", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_8FD0"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 36771, "end": 36776, "lines": ["cmp ecx, 9", "jz short loc_8FD0"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 36776, "end": 36796, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_8FD0"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 36796, "end": 36804, "lines": ["test al, al", "jz loc_9048"], "succs": [[4, "fall"], [11, "jump"]]}, {"id": 4, "start": 36804, "end": 36809, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 36809, "end": 36810, "lines": ["retn"], "succs": []}, {"id": 6, "start": 36816, "end": 36820, "lines": ["test al, al", "jnz short loc_8FF5"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 36820, "end": 36825, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 36825, "end": 36853, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_8FC9"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 36853, "end": 36915, "lines": ["mov rax, [rdi+80h]", "xor edx, edx", "cmp [rsi+80h], rax", "setnle al", "setl dl", "movzx eax, al", "sub edx, eax", "mov rax, [rdi+88h]", "cmp [rsi+88h], rax", "setl al", "setnle cl", "movzx eax, al", "movzx ecx, cl", "sub eax, ecx", "lea eax, [rax+rdx*2]", "test eax, eax", "jnz short locret_8FC9"], "succs": [[5, "jump"], [10, "fall"]]}, {"id": 10, "start": 36915, "end": 36930, "lines": ["mov rax, [rdi]", "mov rdi, [rsi]; s1", "mov rsi, rax; s2", "jmp cs:strcmp_ptr"], "succs": [[12, "jump"]]}, {"id": 11, "start": 36936, "end": 36940, "lines": ["xor eax, eax", "jmp short loc_8FD9"], "succs": [[8, "jump"]]}, {"id": 12, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_90E0", "ea": 37088, "blocks": [{"id": 0, "start": 37088, "end": 37123, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 9", "setz al", "cmp edx, 3", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_9130"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 37123, "end": 37128, "lines": ["cmp ecx, 9", "jz short loc_9130"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 37128, "end": 37148, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_9130"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 37148, "end": 37152, "lines": ["test al, al", "jz short loc_9198"], "succs": [[4, "fall"], [11, "jump"]]}, {"id": 4, "start": 37152, "end": 37157, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 37157, "end": 37158, "lines": ["retn"], "succs": []}, {"id": 6, "start": 37168, "end": 37172, "lines": ["test al, al", "jnz short loc_9155"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 37172, "end": 37177, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 37177, "end": 37205, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_9125"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 37205, "end": 37255, "lines": ["mov rax, [rsi+70h]", "xor edx, edx", "cmp [rdi+70h], rax", "setnle al", "setl dl", "movzx eax, al", "sub edx, eax", "mov rax, [rsi+78h]", "cmp [rdi+78h], rax", "setl al", "setnle cl", "movzx eax, al", "movzx ecx, cl", "sub eax, ecx", "lea eax, [rax+rdx*2]", "test eax, eax", "jnz short locret_9125"], "succs": [[5, "jump"], [10, "fall"]]}, {"id": 10, "start": 37255, "end": 37267, "lines": ["mov rsi, [rsi]; s2", "mov rdi, [rdi]; s1", "jmp cs:strcmp_ptr"], "succs": [[12, "jump"]]}, {"id": 11, "start": 37272, "end": 37276, "lines": ["xor eax, eax", "jmp short loc_9139"], "succs": [[8, "jump"]]}, {"id": 12, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_9230", "ea": 37424, "blocks": [{"id": 0, "start": 37424, "end": 37459, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 9", "setz al", "cmp edx, 3", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_9280"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 37459, "end": 37464, "lines": ["cmp ecx, 9", "jz short loc_9280"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 37464, "end": 37484, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_9280"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 37484, "end": 37492, "lines": ["test al, al", "jz loc_92F0"], "succs": [[4, "fall"], [11, "jump"]]}, {"id": 4, "start": 37492, "end": 37497, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 37497, "end": 37498, "lines": ["retn"], "succs": []}, {"id": 6, "start": 37504, "end": 37508, "lines": ["test al, al", "jnz short loc_92A5"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 37508, "end": 37513, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 37513, "end": 37541, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_9279"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 37541, "end": 37591, "lines": ["mov rax, [rdi+70h]", "xor edx, edx", "cmp [rsi+70h], rax", "setnle al", "setl dl", "movzx eax, al", "sub edx, eax", "mov rax, [rdi+78h]", "cmp [rsi+78h], rax", "setl al", "setnle cl", "movzx eax, al", "movzx ecx, cl", "sub eax, ecx", "lea eax, [rax+rdx*2]", "test eax, eax", "jnz short locret_9279"], "succs": [[5, "jump"], [10, "fall"]]}, {"id": 10, "start": 37591, "end": 37606, "lines": ["mov rax, [rdi]", "mov rdi, [rsi]; s1", "mov rsi, rax; s2", "jmp cs:strcmp_ptr"], "succs": [[12, "jump"]]}, {"id": 11, "start": 37616, "end": 37620, "lines": ["xor eax, eax", "jmp short loc_9289"], "succs": [[8, "jump"]]}, {"id": 12, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_9390", "ea": 37776, "blocks": [{"id": 0, "start": 37776, "end": 37811, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 9", "setz al", "cmp edx, 3", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_93E0"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 37811, "end": 37816, "lines": ["cmp ecx, 9", "jz short loc_93E0"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 37816, "end": 37836, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_93E0"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 37836, "end": 37840, "lines": ["test al, al", "jz short loc_9448"], "succs": [[4, "fall"], [11, "jump"]]}, {"id": 4, "start": 37840, "end": 37845, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 37845, "end": 37846, "lines": ["retn"], "succs": []}, {"id": 6, "start": 37856, "end": 37860, "lines": ["test al, al", "jnz short loc_9405"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 37860, "end": 37865, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 37865, "end": 37893, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_93D5"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 37893, "end": 37943, "lines": ["mov rax, [rsi+60h]", "xor edx, edx", "cmp [rdi+60h], rax", "setnle al", "setl dl", "movzx eax, al", "sub edx, eax", "mov rax, [rsi+68h]", "cmp [rdi+68h], rax", "setl al", "setnle cl", "movzx eax, al", "movzx ecx, cl", "sub eax, ecx", "lea eax, [rax+rdx*2]", "test eax, eax", "jnz short locret_93D5"], "succs": [[5, "jump"], [10, "fall"]]}, {"id": 10, "start": 37943, "end": 37955, "lines": ["mov rsi, [rsi]; s2", "mov rdi, [rdi]; s1", "jmp cs:strcmp_ptr"], "succs": [[12, "jump"]]}, {"id": 11, "start": 37960, "end": 37964, "lines": ["xor eax, eax", "jmp short loc_93E9"], "succs": [[8, "jump"]]}, {"id": 12, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_94E0", "ea": 38112, "blocks": [{"id": 0, "start": 38112, "end": 38147, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 9", "setz al", "cmp edx, 3", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_9530"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 38147, "end": 38152, "lines": ["cmp ecx, 9", "jz short loc_9530"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 38152, "end": 38172, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_9530"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 38172, "end": 38180, "lines": ["test al, al", "jz loc_95A0"], "succs": [[4, "fall"], [11, "jump"]]}, {"id": 4, "start": 38180, "end": 38185, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 38185, "end": 38186, "lines": ["retn"], "succs": []}, {"id": 6, "start": 38192, "end": 38196, "lines": ["test al, al", "jnz short loc_9555"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 38196, "end": 38201, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 38201, "end": 38229, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_9529"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 38229, "end": 38279, "lines": ["mov rax, [rdi+60h]", "xor edx, edx", "cmp [rsi+60h], rax", "setnle al", "setl dl", "movzx eax, al", "sub edx, eax", "mov rax, [rdi+68h]", "cmp [rsi+68h], rax", "setl al", "setnle cl", "movzx eax, al", "movzx ecx, cl", "sub eax, ecx", "lea eax, [rax+rdx*2]", "test eax, eax", "jnz short locret_9529"], "succs": [[5, "jump"], [10, "fall"]]}, {"id": 10, "start": 38279, "end": 38294, "lines": ["mov rax, [rdi]", "mov rdi, [rsi]; s1", "mov rsi, rax; s2", "jmp cs:strcmp_ptr"], "succs": [[12, "jump"]]}, {"id": 11, "start": 38304, "end": 38308, "lines": ["xor eax, eax", "jmp short loc_9539"], "succs": [[8, "jump"]]}, {"id": 12, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_9640", "ea": 38464, "blocks": [{"id": 0, "start": 38464, "end": 38499, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 9", "setz al", "cmp edx, 3", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_9690"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 38499, "end": 38504, "lines": ["cmp ecx, 9", "jz short loc_9690"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 38504, "end": 38524, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_9690"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 38524, "end": 38528, "lines": ["test al, al", "jz short loc_96F8"], "succs": [[4, "fall"], [11, "jump"]]}, {"id": 4, "start": 38528, "end": 38533, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 38533, "end": 38534, "lines": ["retn"], "succs": []}, {"id": 6, "start": 38544, "end": 38548, "lines": ["test al, al", "jnz short loc_96B5"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 38548, "end": 38553, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 38553, "end": 38581, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_9685"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 38581, "end": 38631, "lines": ["mov rax, [rsi+70h]", "xor edx, edx", "cmp [rdi+70h], rax", "setnle al", "setl dl", "movzx eax, al", "sub edx, eax", "mov rax, [rsi+78h]", "cmp [rdi+78h], rax", "setl al", "setnle cl", "movzx eax, al", "movzx ecx, cl", "sub eax, ecx", "lea eax, [rax+rdx*2]", "test eax, eax", "jnz short locret_9685"], "succs": [[5, "jump"], [10, "fall"]]}, {"id": 10, "start": 38631, "end": 38643, "lines": ["mov rsi, [rsi]; s2", "mov rdi, [rdi]; s1", "jmp cs:strcmp_ptr"], "succs": [[12, "jump"]]}, {"id": 11, "start": 38648, "end": 38652, "lines": ["xor eax, eax", "jmp short loc_9699"], "succs": [[8, "jump"]]}, {"id": 12, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_9790", "ea": 38800, "blocks": [{"id": 0, "start": 38800, "end": 38835, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 9", "setz al", "cmp edx, 3", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_97E0"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 38835, "end": 38840, "lines": ["cmp ecx, 9", "jz short loc_97E0"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 38840, "end": 38860, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_97E0"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 38860, "end": 38868, "lines": ["test al, al", "jz loc_9850"], "succs": [[4, "fall"], [11, "jump"]]}, {"id": 4, "start": 38868, "end": 38873, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 38873, "end": 38874, "lines": ["retn"], "succs": []}, {"id": 6, "start": 38880, "end": 38884, "lines": ["test al, al", "jnz short loc_9805"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 38884, "end": 38889, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 38889, "end": 38917, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_97D9"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 38917, "end": 38967, "lines": ["mov rax, [rdi+70h]", "xor edx, edx", "cmp [rsi+70h], rax", "setnle al", "setl dl", "movzx eax, al", "sub edx, eax", "mov rax, [rdi+78h]", "cmp [rsi+78h], rax", "setl al", "setnle cl", "movzx eax, al", "movzx ecx, cl", "sub eax, ecx", "lea eax, [rax+rdx*2]", "test eax, eax", "jnz short locret_97D9"], "succs": [[5, "jump"], [10, "fall"]]}, {"id": 10, "start": 38967, "end": 38982, "lines": ["mov rax, [rdi]", "mov rdi, [rsi]; s1", "mov rsi, rax; s2", "jmp cs:strcmp_ptr"], "succs": [[12, "jump"]]}, {"id": 11, "start": 38992, "end": 38996, "lines": ["xor eax, eax", "jmp short loc_97E9"], "succs": [[8, "jump"]]}, {"id": 12, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_9860", "ea": 39008, "blocks": [{"id": 0, "start": 39008, "end": 39043, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 9", "setz al", "cmp edx, 3", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_98B0"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 39043, "end": 39048, "lines": ["cmp ecx, 9", "jz short loc_98B0"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 39048, "end": 39068, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_98B0"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 39068, "end": 39076, "lines": ["test al, al", "jz loc_9920"], "succs": [[4, "fall"], [11, "jump"]]}, {"id": 4, "start": 39076, "end": 39081, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 39081, "end": 39082, "lines": ["retn"], "succs": []}, {"id": 6, "start": 39088, "end": 39092, "lines": ["test al, al", "jnz short loc_98D5"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 39092, "end": 39097, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 39097, "end": 39125, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_98A9"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 39125, "end": 39149, "lines": ["mov rax, [rsi+48h]", "cmp [rdi+48h], rax", "setl al", "setnle dl", "movzx eax, al", "movzx edx, dl", "sub eax, edx", "jnz short locret_98A9"], "succs": [[5, "jump"], [10, "fall"]]}, {"id": 10, "start": 39149, "end": 39198, "lines": ["push rbp", "mov rbp, rsp", "sub rsp, 10h", "mov rdi, [rdi]", "mov rsi, [rsi]", "mov [rbp-10h], rdi", "mov [rbp-8], rsi", "call cs:__errno_location_ptr", "mov rsi, [rbp-8]; s2", "mov rdi, [rbp-10h]; s1", "mov dword ptr [rax], 0", "leave", "jmp cs:strcoll_ptr"], "succs": [[12, "jump"]]}, {"id": 11, "start": 39200, "end": 39204, "lines": ["xor eax, eax", "jmp short loc_98B9"], "succs": [[8, "jump"]]}, {"id": 12, "start": 169992, "end": 169992, "lines": [], "succs": []}]}, {"name": "sub_9930", "ea": 39216, "blocks": [{"id": 0, "start": 39216, "end": 39251, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 9", "setz al", "cmp edx, 3", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_9980"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 39251, "end": 39256, "lines": ["cmp ecx, 9", "jz short loc_9980"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 39256, "end": 39276, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_9980"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 39276, "end": 39280, "lines": ["test al, al", "jz short loc_99D0"], "succs": [[4, "fall"], [11, "jump"]]}, {"id": 4, "start": 39280, "end": 39285, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 39285, "end": 39286, "lines": ["retn"], "succs": []}, {"id": 6, "start": 39296, "end": 39300, "lines": ["test al, al", "jnz short loc_99A5"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 39300, "end": 39305, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 39305, "end": 39333, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_9975"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 39333, "end": 39357, "lines": ["mov rax, [rsi+48h]", "cmp [rdi+48h], rax", "setl al", "setnle dl", "movzx eax, al", "movzx edx, dl", "sub eax, edx", "jnz short locret_9975"], "succs": [[5, "jump"], [10, "fall"]]}, {"id": 10, "start": 39357, "end": 39369, "lines": ["mov rsi, [rsi]; s2", "mov rdi, [rdi]; s1", "jmp cs:strcmp_ptr"], "succs": [[12, "jump"]]}, {"id": 11, "start": 39376, "end": 39380, "lines": ["xor eax, eax", "jmp short loc_9989"], "succs": [[8, "jump"]]}, {"id": 12, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_99E0", "ea": 39392, "blocks": [{"id": 0, "start": 39392, "end": 39427, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 9", "setz al", "cmp edx, 3", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_9A30"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 39427, "end": 39432, "lines": ["cmp ecx, 9", "jz short loc_9A30"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 39432, "end": 39452, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_9A30"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 39452, "end": 39460, "lines": ["test al, al", "jz loc_9AA0"], "succs": [[4, "fall"], [11, "jump"]]}, {"id": 4, "start": 39460, "end": 39465, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 39465, "end": 39466, "lines": ["retn"], "succs": []}, {"id": 6, "start": 39472, "end": 39476, "lines": ["test al, al", "jnz short loc_9A55"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 39476, "end": 39481, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 39481, "end": 39509, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_9A29"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 39509, "end": 39533, "lines": ["mov rax, [rdi+48h]", "cmp [rsi+48h], rax", "setl al", "setnle dl", "movzx eax, al", "movzx edx, dl", "sub eax, edx", "jnz short locret_9A29"], "succs": [[5, "jump"], [10, "fall"]]}, {"id": 10, "start": 39533, "end": 39582, "lines": ["push rbp", "mov rbp, rsp", "push rbx", "sub rsp, 18h", "mov rbx, [rsi]", "mov rsi, [rdi]", "mov [rbp-18h], rsi", "call cs:__errno_location_ptr", "mov rsi, [rbp-18h]; s2", "mov rdi, rbx; s1", "mov rbx, [rbp-8]", "mov dword ptr [rax], 0", "leave", "jmp cs:strcoll_ptr"], "succs": [[12, "jump"]]}, {"id": 11, "start": 39584, "end": 39588, "lines": ["xor eax, eax", "jmp short loc_9A39"], "succs": [[8, "jump"]]}, {"id": 12, "start": 169992, "end": 169992, "lines": [], "succs": []}]}, {"name": "sub_9AB0", "ea": 39600, "blocks": [{"id": 0, "start": 39600, "end": 39635, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 9", "setz al", "cmp edx, 3", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_9B00"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 39635, "end": 39640, "lines": ["cmp ecx, 9", "jz short loc_9B00"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 39640, "end": 39660, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_9B00"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 39660, "end": 39664, "lines": ["test al, al", "jz short loc_9B50"], "succs": [[4, "fall"], [11, "jump"]]}, {"id": 4, "start": 39664, "end": 39669, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 39669, "end": 39670, "lines": ["retn"], "succs": []}, {"id": 6, "start": 39680, "end": 39684, "lines": ["test al, al", "jnz short loc_9B25"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 39684, "end": 39689, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 39689, "end": 39717, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_9AF5"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 39717, "end": 39741, "lines": ["mov rax, [rdi+48h]", "cmp [rsi+48h], rax", "setl al", "setnle dl", "movzx eax, al", "movzx edx, dl", "sub eax, edx", "jnz short locret_9AF5"], "succs": [[5, "jump"], [10, "fall"]]}, {"id": 10, "start": 39741, "end": 39756, "lines": ["mov rax, [rdi]", "mov rdi, [rsi]; s1", "mov rsi, rax; s2", "jmp cs:strcmp_ptr"], "succs": [[12, "jump"]]}, {"id": 11, "start": 39760, "end": 39764, "lines": ["xor eax, eax", "jmp short loc_9B09"], "succs": [[8, "jump"]]}, {"id": 12, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_10720", "ea": 67360, "blocks": [{"id": 0, "start": 67360, "end": 67394, "lines": ["push rbp", "mov rbp, rsp", "push r15", "mov r15d, r8d", "push r14", "mov r14, rcx", "push r13", "push r12", "mov r12d, edx", "push rbx", "mov rbx, rdi", "sub rsp, 8", "test rsi, rsi", "jz short loc_10796"], "succs": [[1, "fall"], [5, "jump"]]}, {"id": 1, "start": 67394, "end": 67412, "lines": ["mov r13, rsi", "mov rsi, rdi", "mov rdi, r13", "call sub_10640", "test al, al", "jnz short loc_107BB"], "succs": [[2, "fall"], [9, "jump"]]}, {"id": 2, "start": 67412, "end": 67419, "lines": ["cmp qword ptr [r13+8], 0", "js short loc_10770"], "succs": [[3, "fall"], [4, "jump"]]}, {"id": 3, "start": 67419, "end": 67434, "lines": ["add rsp, 8", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 4, "start": 67440, "end": 67478, "lines": ["mov r13d, [r13+1Ch]", "mov edi, r13d", "call sub_F320", "cmp r13d, 7", "mov edx, eax", "setz al", "cmp r13d, 0Dh", "setz cl", "xor edx, 1", "or eax, ecx", "or al, dl", "jz short loc_1075B"], "succs": [[3, "jump"], [5, "fall"]]}, {"id": 5, "start": 67478, "end": 67483, "lines": ["test r12d, r12d", "jns short loc_107D0"], "succs": [[6, "fall"], [10, "jump"]]}, {"id": 6, "start": 67483, "end": 67492, "lines": ["and r15d, 20000h", "jnz short loc_10810"], "succs": [[7, "fall"], [12, "jump"]]}, {"id": 7, "start": 67492, "end": 67499, "lines": ["mov rax, cs:lgetxattr_ptr"], "succs": [[8, "fall"]]}, {"id": 8, "start": 67499, "end": 67515, "lines": ["xor ecx, ecx; size", "xor edx, edx; value", "mov rsi, rbx; name", "mov rdi, r14; path", "call rax ; lgetxattr", "test eax, eax", "js short loc_107E4"], "succs": [[9, "fall"], [11, "jump"]]}, {"id": 9, "start": 67515, "end": 67535, "lines": ["add rsp, 8", "mov eax, 1", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 10, "start": 67536, "end": 67556, "lines": ["xor ecx, ecx; size", "xor edx, edx; value", "mov rsi, rbx; name", "mov edi, r12d; fd", "call cs:fgetxattr_ptr", "test eax, eax", "jns short loc_107BB"], "succs": [[9, "jump"], [11, "fall"]]}, {"id": 11, "start": 67556, "end": 67593, "lines": ["call cs:__errno_location_ptr", "mov edx, [rax]", "cmp edx, 22h ; '\"'", "setz al", "cmp edx, 7", "setz dl", "add rsp, 8", "pop rbx", "or eax, edx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 12, "start": 67600, "end": 67609, "lines": ["mov rax, cs:getxattr_ptr", "jmp short loc_107AB"], "succs": [[8, "jump"]]}]}, {"name": "sub_12290", "ea": 74384, "blocks": [{"id": 0, "start": 74384, "end": 74424, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r12", "mov r12, rdi", "push rbx", "mov rbx, rsi", "mov rsi, [rdi+10h]", "mov rdi, rbx", "call qword ptr [r12+30h]", "cmp rax, [r12+10h]", "jnb loc_34B7"], "succs": [[1, "fall"], [12, "jump"]]}, {"id": 1, "start": 74424, "end": 74464, "lines": ["shl rax, 4", "add rax, [r12]", "mov rdx, rax", "nop dword ptr [rax+00000000h]", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]"], "succs": [[2, "fall"]]}, {"id": 2, "start": 74464, "end": 74476, "lines": ["mov rcx, [rdx]", "mov rdx, [rdx+8]", "cmp rcx, rbx", "jz short loc_12340"], "succs": [[3, "fall"], [10, "jump"]]}, {"id": 3, "start": 74476, "end": 74481, "lines": ["test rdx, rdx", "jnz short loc_122E0"], "succs": [[2, "jump"], [4, "fall"]]}, {"id": 4, "start": 74481, "end": 74496, "lines": ["nop dword ptr [rax+00h]", "nop word ptr [rax+rax+00000000h]"], "succs": [[5, "fall"]]}, {"id": 5, "start": 74496, "end": 74503, "lines": ["mov rcx, [r12+8]", "jmp short loc_12328"], "succs": [[7, "jump"]]}, {"id": 6, "start": 74528, "end": 74536, "lines": ["mov rdx, [rax]", "test rdx, rdx", "jnz short loc_12333"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 74536, "end": 74545, "lines": ["add rax, 10h", "cmp rax, rcx", "jb short loc_12320"], "succs": [[6, "jump"], [8, "fall"]]}, {"id": 8, "start": 74545, "end": 74547, "lines": ["xor edx, edx"], "succs": [[9, "fall"]]}, {"id": 9, "start": 74547, "end": 74555, "lines": ["pop rbx", "mov rax, rdx", "pop r12", "pop rbp", "retn"], "succs": []}, {"id": 10, "start": 74560, "end": 74565, "lines": ["test rdx, rdx", "jz short loc_12300"], "succs": [[5, "jump"], [11, "fall"]]}, {"id": 11, "start": 74565, "end": 74576, "lines": ["mov rdx, [rdx]", "pop rbx", "pop r12", "pop rbp", "mov rax, rdx", "retn"], "succs": []}, {"id": 12, "start": 13495, "end": 13501, "lines": ["call cs:abort_ptr"], "succs": []}]}, {"name": "sub_18110", "ea": 98576, "blocks": [{"id": 0, "start": 98576, "end": 98608, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r13", "mov r13, rsi", "push r12", "push rbx", "mov rbx, rdi", "sub rsp, 8", "mov rax, [rdi+8]", "test rax, rax", "jnz short loc_1814E"], "succs": [[1, "fall"], [4, "jump"]]}, {"id": 1, "start": 98608, "end": 98610, "lines": ["jmp short loc_18171"], "succs": [[8, "jump"]]}, {"id": 2, "start": 98616, "end": 98635, "lines": ["mov rdi, [rbx+48h]", "mov rsi, rax", "call qword ptr [rbx+40h]", "or byte ptr [rbx+50h], 2", "test r12, r12", "jz short loc_18171"], "succs": [[3, "fall"], [8, "jump"]]}, {"id": 3, "start": 98635, "end": 98638, "lines": ["mov rax, r12"], "succs": [[4, "fall"]]}, {"id": 4, "start": 98638, "end": 98643, "lines": ["cmp rax, r13", "jnb short loc_18158"], "succs": [[5, "fall"], [6, "jump"]]}, {"id": 5, "start": 98643, "end": 98648, "lines": ["cmp [rax], r13", "jnb short loc_18180"], "succs": [[6, "fall"], [10, "jump"]]}, {"id": 6, "start": 98648, "end": 98658, "lines": ["mov r12, [rax+8]", "test byte ptr [rbx+50h], 1", "jnz short loc_18138"], "succs": [[2, "jump"], [7, "fall"]]}, {"id": 7, "start": 98658, "end": 98673, "lines": ["mov rdi, rax", "call qword ptr [rbx+40h]", "or byte ptr [rbx+50h], 2", "test r12, r12", "jnz short loc_1814B"], "succs": [[3, "jump"], [8, "fall"]]}, {"id": 8, "start": 98673, "end": 98678, "lines": ["test r13, r13", "jz short loc_18193"], "succs": [[9, "fall"], [11, "jump"]]}, {"id": 9, "start": 98678, "end": 98683, "lines": ["jmp loc_34CF"], "succs": [[12, "jump"]]}, {"id": 10, "start": 98688, "end": 98707, "lines": ["mov [rbx+18h], r13", "mov [rbx+10h], r13", "mov rdx, [rax]", "mov [rbx+8], rax", "mov [rbx+20h], rdx"], "succs": [[11, "fall"]]}, {"id": 11, "start": 98707, "end": 98718, "lines": ["add rsp, 8", "pop rbx", "pop r12", "pop r13", "pop rbp", "retn"], "succs": []}, {"id": 12, "start": 13519, "end": 13525, "lines": ["call cs:abort_ptr"], "succs": []}]}, {"name": "sub_1BE50", "ea": 114256, "blocks": [{"id": 0, "start": 114256, "end": 114342, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r15", "xor r15d, r15d", "push r14", "mov r14, 0FFFFFFEFFFBFEFFEh", "push r13", "push r12", "push rbx", "lea rbx, [rbp+name]", "sub rsp, 88h", "mov rax, fs:28h", "mov [rbp+var_38], rax", "xor eax, eax", "mov [rbp+var_A8], 64h ; 'd'", "call cs:__errno_location_ptr", "mov r13, rax", "mov eax, 64h ; 'd'", "jmp short loc_1BEE4"], "succs": [[3, "jump"]]}, {"id": 1, "start": 114352, "end": 114358, "lines": ["bt r14, rax", "jb short loc_1BF35"], "succs": [[2, "fall"], [7, "jump"]]}, {"id": 2, "start": 114358, "end": 114404, "lines": ["lea rsi, [rbp+var_A8]", "mov r8d, 1", "mov rcx, 0FFFFFFFFFFFFFFFFh", "xor edi, edi", "mov edx, 1", "call sub_1BA20", "mov rbx, rax", "mov rax, [rbp+var_A8]", "mov r15, rbx"], "succs": [[3, "fall"]]}, {"id": 3, "start": 114404, "end": 114437, "lines": ["lea r12, [rax-1]", "mov byte ptr [rbx+rax-1], 0", "mov rdi, rbx; name", "mov dword ptr [r13+0], 0", "mov rsi, r12; len", "call cs:gethostname_ptr", "test eax, eax", "jnz short loc_1BF1F"], "succs": [[4, "fall"], [6, "jump"]]}, {"id": 4, "start": 114437, "end": 114455, "lines": ["mov rdi, rbx; s", "call cs:strlen_ptr", "add rax, 1", "cmp r12, rax", "jg short loc_1BF60"], "succs": [[5, "fall"], [10, "jump"]]}, {"id": 5, "start": 114455, "end": 114463, "lines": ["mov dword ptr [r13+0], 0"], "succs": [[6, "fall"]]}, {"id": 6, "start": 114463, "end": 114485, "lines": ["mov rdi, r15; ptr", "call cs:free_ptr", "mov eax, [r13+0]", "cmp eax, 24h ; '$'", "jbe loc_1BEB0"], "succs": [[1, "jump"], [7, "fall"]]}, {"id": 7, "start": 114485, "end": 114488, "lines": ["xor r15d, r15d"], "succs": [[8, "fall"]]}, {"id": 8, "start": 114488, "end": 114503, "lines": ["mov rax, [rbp+var_38]", "sub rax, fs:28h", "jnz short loc_1BF76"], "succs": [[9, "fall"], [12, "jump"]]}, {"id": 9, "start": 114503, "end": 114524, "lines": ["add rsp, 88h", "mov rax, r15", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 10, "start": 114528, "end": 114533, "lines": ["test r15, r15", "jnz short loc_1BF38"], "succs": [[8, "jump"], [11, "fall"]]}, {"id": 11, "start": 114533, "end": 114550, "lines": ["mov rsi, rax", "mov rdi, rbx", "call sub_1BBD0", "mov r15, rax", "jmp short loc_1BF38"], "succs": [[8, "jump"]]}, {"id": 12, "start": 114550, "end": 114556, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_7C60", "ea": 31840, "blocks": [{"id": 0, "start": 31840, "end": 31871, "lines": ["push rbp", "mov rbp, rsp", "push r12", "push rbx", "sub rsp, 90h", "mov rax, fs:28h", "mov [rbp+var_18], rax", "xor eax, eax", "jmp short loc_7CDD"], "succs": [[4, "jump"]]}, {"id": 1, "start": 31872, "end": 31923, "lines": ["mov rdi, cs:stdout; stream", "call cs:fflush_unlocked_ptr", "lea rdx, [rbp+oset]; oset", "lea rsi, set; set", "xor edi, edi; how", "call cs:sigprocmask_ptr", "mov ebx, cs:sig", "mov eax, cs:dword_29214", "test eax, eax", "jz short loc_7D20"], "succs": [[2, "fall"], [8, "jump"]]}, {"id": 2, "start": 31923, "end": 31937, "lines": ["sub eax, 1", "mov ebx, 13h", "mov cs:dword_29214, eax"], "succs": [[3, "fall"]]}, {"id": 3, "start": 31937, "end": 31965, "lines": ["mov edi, ebx; sig", "call cs:raise_ptr", "xor edx, edx; oset", "mov edi, 2; how", "lea rsi, [rbp+oset]; set", "call cs:sigprocmask_ptr"], "succs": [[4, "fall"]]}, {"id": 4, "start": 31965, "end": 31975, "lines": ["mov eax, cs:sig", "test eax, eax", "jnz short loc_7CF1"], "succs": [[5, "fall"], [6, "jump"]]}, {"id": 5, "start": 31975, "end": 31985, "lines": ["mov eax, cs:dword_29214", "test eax, eax", "jz short loc_7D30"], "succs": [[6, "fall"], [9, "jump"]]}, {"id": 6, "start": 31985, "end": 31994, "lines": ["cmp cs:byte_29310, 0", "jz short loc_7C80"], "succs": [[1, "jump"], [7, "fall"]]}, {"id": 7, "start": 31994, "end": 32023, "lines": ["lea rdi, qword_28060", "call sub_6E20", "lea rdi, qword_28070", "call sub_6E20", "jmp loc_7C80"], "succs": [[1, "jump"]]}, {"id": 8, "start": 32032, "end": 32044, "lines": ["xor esi, esi; handler", "mov edi, ebx; sig", "call cs:signal_ptr", "jmp short loc_7CC1"], "succs": [[3, "jump"]]}, {"id": 9, "start": 32048, "end": 32063, "lines": ["mov rax, [rbp+var_18]", "sub rax, fs:28h", "jnz short loc_7D4B"], "succs": [[10, "fall"], [11, "jump"]]}, {"id": 10, "start": 32063, "end": 32075, "lines": ["add rsp, 90h", "pop rbx", "pop r12", "pop rbp", "retn"], "succs": []}, {"id": 11, "start": 32075, "end": 32081, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_8D90", "ea": 36240, "blocks": [{"id": 0, "start": 36240, "end": 36275, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 3", "setz al", "cmp edx, 9", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_8DE0"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 36275, "end": 36280, "lines": ["cmp ecx, 9", "jz short loc_8DE0"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 36280, "end": 36300, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_8DE0"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 36300, "end": 36304, "lines": ["test al, al", "jz short loc_8E10"], "succs": [[4, "fall"], [10, "jump"]]}, {"id": 4, "start": 36304, "end": 36309, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 36309, "end": 36310, "lines": ["retn"], "succs": []}, {"id": 6, "start": 36320, "end": 36324, "lines": ["test al, al", "jnz short loc_8E05"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 36324, "end": 36329, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 36329, "end": 36357, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_8DD5"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 36357, "end": 36362, "lines": ["jmp sub_7FD0"], "succs": [[11, "jump"]]}, {"id": 10, "start": 36368, "end": 36372, "lines": ["xor eax, eax", "jmp short loc_8DE9"], "succs": [[8, "jump"]]}, {"id": 11, "start": 32720, "end": 32720, "lines": [], "succs": []}]}, {"name": "sub_8EF0", "ea": 36592, "blocks": [{"id": 0, "start": 36592, "end": 36627, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 3", "setz al", "cmp edx, 9", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_8F40"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 36627, "end": 36632, "lines": ["cmp ecx, 9", "jz short loc_8F40"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 36632, "end": 36652, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_8F40"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 36652, "end": 36656, "lines": ["test al, al", "jz short loc_8F70"], "succs": [[4, "fall"], [10, "jump"]]}, {"id": 4, "start": 36656, "end": 36661, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 36661, "end": 36662, "lines": ["retn"], "succs": []}, {"id": 6, "start": 36672, "end": 36676, "lines": ["test al, al", "jnz short loc_8F65"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 36676, "end": 36681, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 36681, "end": 36709, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_8F35"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 36709, "end": 36714, "lines": ["jmp sub_8050"], "succs": [[11, "jump"]]}, {"id": 10, "start": 36720, "end": 36724, "lines": ["xor eax, eax", "jmp short loc_8F49"], "succs": [[8, "jump"]]}, {"id": 11, "start": 32848, "end": 32848, "lines": [], "succs": []}]}, {"name": "sub_9300", "ea": 37632, "blocks": [{"id": 0, "start": 37632, "end": 37667, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 3", "setz al", "cmp edx, 9", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_9350"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 37667, "end": 37672, "lines": ["cmp ecx, 9", "jz short loc_9350"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 37672, "end": 37692, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_9350"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 37692, "end": 37696, "lines": ["test al, al", "jz short loc_9380"], "succs": [[4, "fall"], [10, "jump"]]}, {"id": 4, "start": 37696, "end": 37701, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 37701, "end": 37702, "lines": ["retn"], "succs": []}, {"id": 6, "start": 37712, "end": 37716, "lines": ["test al, al", "jnz short loc_9375"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 37716, "end": 37721, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 37721, "end": 37749, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_9345"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 37749, "end": 37754, "lines": ["jmp sub_81D0"], "succs": [[11, "jump"]]}, {"id": 10, "start": 37760, "end": 37764, "lines": ["xor eax, eax", "jmp short loc_9359"], "succs": [[8, "jump"]]}, {"id": 11, "start": 33232, "end": 33232, "lines": [], "succs": []}]}, {"name": "sub_9450", "ea": 37968, "blocks": [{"id": 0, "start": 37968, "end": 38003, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 3", "setz al", "cmp edx, 9", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_94A0"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 38003, "end": 38008, "lines": ["cmp ecx, 9", "jz short loc_94A0"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 38008, "end": 38028, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_94A0"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 38028, "end": 38032, "lines": ["test al, al", "jz short loc_94D0"], "succs": [[4, "fall"], [10, "jump"]]}, {"id": 4, "start": 38032, "end": 38037, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 38037, "end": 38038, "lines": ["retn"], "succs": []}, {"id": 6, "start": 38048, "end": 38052, "lines": ["test al, al", "jnz short loc_94C5"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 38052, "end": 38057, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 38057, "end": 38085, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_9495"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 38085, "end": 38090, "lines": ["jmp sub_8250"], "succs": [[11, "jump"]]}, {"id": 10, "start": 38096, "end": 38100, "lines": ["xor eax, eax", "jmp short loc_94A9"], "succs": [[8, "jump"]]}, {"id": 11, "start": 33360, "end": 33360, "lines": [], "succs": []}]}, {"name": "sub_95B0", "ea": 38320, "blocks": [{"id": 0, "start": 38320, "end": 38355, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 3", "setz al", "cmp edx, 9", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_9600"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 38355, "end": 38360, "lines": ["cmp ecx, 9", "jz short loc_9600"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 38360, "end": 38380, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_9600"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 38380, "end": 38384, "lines": ["test al, al", "jz short loc_9630"], "succs": [[4, "fall"], [10, "jump"]]}, {"id": 4, "start": 38384, "end": 38389, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 38389, "end": 38390, "lines": ["retn"], "succs": []}, {"id": 6, "start": 38400, "end": 38404, "lines": ["test al, al", "jnz short loc_9625"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 38404, "end": 38409, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 38409, "end": 38437, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_95F5"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 38437, "end": 38442, "lines": ["jmp sub_82D0"], "succs": [[11, "jump"]]}, {"id": 10, "start": 38448, "end": 38452, "lines": ["xor eax, eax", "jmp short loc_9609"], "succs": [[8, "jump"]]}, {"id": 11, "start": 33488, "end": 33488, "lines": [], "succs": []}]}, {"name": "sub_9700", "ea": 38656, "blocks": [{"id": 0, "start": 38656, "end": 38691, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 3", "setz al", "cmp edx, 9", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_9750"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 38691, "end": 38696, "lines": ["cmp ecx, 9", "jz short loc_9750"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 38696, "end": 38716, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_9750"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 38716, "end": 38720, "lines": ["test al, al", "jz short loc_9780"], "succs": [[4, "fall"], [10, "jump"]]}, {"id": 4, "start": 38720, "end": 38725, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 38725, "end": 38726, "lines": ["retn"], "succs": []}, {"id": 6, "start": 38736, "end": 38740, "lines": ["test al, al", "jnz short loc_9775"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 38740, "end": 38745, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 38745, "end": 38773, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_9745"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 38773, "end": 38778, "lines": ["jmp sub_8350"], "succs": [[11, "jump"]]}, {"id": 10, "start": 38784, "end": 38788, "lines": ["xor eax, eax", "jmp short loc_9759"], "succs": [[8, "jump"]]}, {"id": 11, "start": 33616, "end": 33616, "lines": [], "succs": []}]}, {"name": "sub_9B60", "ea": 39776, "blocks": [{"id": 0, "start": 39776, "end": 39811, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 3", "setz al", "cmp edx, 9", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_9BB0"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 39811, "end": 39816, "lines": ["cmp ecx, 9", "jz short loc_9BB0"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 39816, "end": 39836, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_9BB0"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 39836, "end": 39840, "lines": ["test al, al", "jz short loc_9C10"], "succs": [[4, "fall"], [10, "jump"]]}, {"id": 4, "start": 39840, "end": 39845, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 39845, "end": 39846, "lines": ["retn"], "succs": []}, {"id": 6, "start": 39856, "end": 39860, "lines": ["test al, al", "jnz short loc_9BD5"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 39860, "end": 39865, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 39865, "end": 39893, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_9BA5"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 39893, "end": 39942, "lines": ["push rbp", "mov rbp, rsp", "sub rsp, 10h", "mov rsi, [rsi]", "mov rdi, [rdi]", "mov [rbp-10h], rsi", "mov [rbp-8], rdi", "call cs:__errno_location_ptr", "mov rsi, [rbp-10h]; s2", "mov rdi, [rbp-8]; s1", "mov dword ptr [rax], 0", "leave", "jmp cs:strcoll_ptr"], "succs": [[11, "jump"]]}, {"id": 10, "start": 39952, "end": 39956, "lines": ["xor eax, eax", "jmp short loc_9BB9"], "succs": [[8, "jump"]]}, {"id": 11, "start": 169992, "end": 169992, "lines": [], "succs": []}]}, {"name": "sub_9C20", "ea": 39968, "blocks": [{"id": 0, "start": 39968, "end": 40003, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 9", "setz al", "cmp edx, 3", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_9C70"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 40003, "end": 40008, "lines": ["cmp ecx, 9", "jz short loc_9C70"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 40008, "end": 40028, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_9C70"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 40028, "end": 40032, "lines": ["test al, al", "jz short loc_9CA8"], "succs": [[4, "fall"], [10, "jump"]]}, {"id": 4, "start": 40032, "end": 40037, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 40037, "end": 40038, "lines": ["retn"], "succs": []}, {"id": 6, "start": 40048, "end": 40052, "lines": ["test al, al", "jnz short loc_9C95"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 40052, "end": 40057, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 40057, "end": 40085, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_9C65"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 40085, "end": 40097, "lines": ["mov rsi, [rsi]; s2", "mov rdi, [rdi]; s1", "jmp cs:strcmp_ptr"], "succs": [[11, "jump"]]}, {"id": 10, "start": 40104, "end": 40108, "lines": ["xor eax, eax", "jmp short loc_9C79"], "succs": [[8, "jump"]]}, {"id": 11, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_9CB0", "ea": 40112, "blocks": [{"id": 0, "start": 40112, "end": 40147, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 3", "setz al", "cmp edx, 9", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_9D00"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 40147, "end": 40152, "lines": ["cmp ecx, 9", "jz short loc_9D00"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 40152, "end": 40172, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_9D00"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 40172, "end": 40176, "lines": ["test al, al", "jz short loc_9D60"], "succs": [[4, "fall"], [10, "jump"]]}, {"id": 4, "start": 40176, "end": 40181, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 40181, "end": 40182, "lines": ["retn"], "succs": []}, {"id": 6, "start": 40192, "end": 40196, "lines": ["test al, al", "jnz short loc_9D25"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 40196, "end": 40201, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 40201, "end": 40229, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_9CF5"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 40229, "end": 40278, "lines": ["push rbp", "mov rbp, rsp", "push rbx", "sub rsp, 18h", "mov rbx, [rdi]", "mov rdi, [rsi]", "mov [rbp-18h], rdi", "call cs:__errno_location_ptr", "mov rdi, [rbp-18h]; s1", "mov rsi, rbx; s2", "mov rbx, [rbp-8]", "mov dword ptr [rax], 0", "leave", "jmp cs:strcoll_ptr"], "succs": [[11, "jump"]]}, {"id": 10, "start": 40288, "end": 40292, "lines": ["xor eax, eax", "jmp short loc_9D09"], "succs": [[8, "jump"]]}, {"id": 11, "start": 169992, "end": 169992, "lines": [], "succs": []}]}, {"name": "sub_9D70", "ea": 40304, "blocks": [{"id": 0, "start": 40304, "end": 40339, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 9", "setz al", "cmp edx, 3", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_9DC0"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 40339, "end": 40344, "lines": ["cmp ecx, 9", "jz short loc_9DC0"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 40344, "end": 40364, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_9DC0"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 40364, "end": 40368, "lines": ["test al, al", "jz short loc_9DF8"], "succs": [[4, "fall"], [10, "jump"]]}, {"id": 4, "start": 40368, "end": 40373, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 40373, "end": 40374, "lines": ["retn"], "succs": []}, {"id": 6, "start": 40384, "end": 40388, "lines": ["test al, al", "jnz short loc_9DE5"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 40388, "end": 40393, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 40393, "end": 40421, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_9DB5"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 40421, "end": 40436, "lines": ["mov rax, [rdi]", "mov rdi, [rsi]; s1", "mov rsi, rax; s2", "jmp cs:strcmp_ptr"], "succs": [[11, "jump"]]}, {"id": 10, "start": 40440, "end": 40444, "lines": ["xor eax, eax", "jmp short loc_9DC9"], "succs": [[8, "jump"]]}, {"id": 11, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_9E00", "ea": 40448, "blocks": [{"id": 0, "start": 40448, "end": 40483, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 3", "setz al", "cmp edx, 9", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_9E50"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 40483, "end": 40488, "lines": ["cmp ecx, 9", "jz short loc_9E50"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 40488, "end": 40508, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_9E50"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 40508, "end": 40512, "lines": ["test al, al", "jz short loc_9E80"], "succs": [[4, "fall"], [10, "jump"]]}, {"id": 4, "start": 40512, "end": 40517, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 40517, "end": 40518, "lines": ["retn"], "succs": []}, {"id": 6, "start": 40528, "end": 40532, "lines": ["test al, al", "jnz short loc_9E75"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 40532, "end": 40537, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 40537, "end": 40565, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_9E45"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 40565, "end": 40570, "lines": ["jmp sub_8A50"], "succs": [[11, "jump"]]}, {"id": 10, "start": 40576, "end": 40580, "lines": ["xor eax, eax", "jmp short loc_9E59"], "succs": [[8, "jump"]]}, {"id": 11, "start": 35408, "end": 35408, "lines": [], "succs": []}]}, {"name": "sub_9E90", "ea": 40592, "blocks": [{"id": 0, "start": 40592, "end": 40627, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 9", "setz al", "cmp edx, 3", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_9EE0"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 40627, "end": 40632, "lines": ["cmp ecx, 9", "jz short loc_9EE0"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 40632, "end": 40652, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_9EE0"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 40652, "end": 40656, "lines": ["test al, al", "jz short loc_9F18"], "succs": [[4, "fall"], [10, "jump"]]}, {"id": 4, "start": 40656, "end": 40661, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 40661, "end": 40662, "lines": ["retn"], "succs": []}, {"id": 6, "start": 40672, "end": 40676, "lines": ["test al, al", "jnz short loc_9F05"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 40676, "end": 40681, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 40681, "end": 40709, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_9ED5"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 40709, "end": 40721, "lines": ["mov rdx, cs:strcmp_ptr", "jmp sub_6250"], "succs": [[11, "jump"]]}, {"id": 10, "start": 40728, "end": 40732, "lines": ["xor eax, eax", "jmp short loc_9EE9"], "succs": [[8, "jump"]]}, {"id": 11, "start": 25168, "end": 25168, "lines": [], "succs": []}]}, {"name": "sub_9F20", "ea": 40736, "blocks": [{"id": 0, "start": 40736, "end": 40771, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 3", "setz al", "cmp edx, 9", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_9F70"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 40771, "end": 40776, "lines": ["cmp ecx, 9", "jz short loc_9F70"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 40776, "end": 40796, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_9F70"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 40796, "end": 40800, "lines": ["test al, al", "jz short loc_9FA0"], "succs": [[4, "fall"], [10, "jump"]]}, {"id": 4, "start": 40800, "end": 40805, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 40805, "end": 40806, "lines": ["retn"], "succs": []}, {"id": 6, "start": 40816, "end": 40820, "lines": ["test al, al", "jnz short loc_9F95"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 40820, "end": 40825, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 40825, "end": 40853, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_9F65"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 40853, "end": 40858, "lines": ["jmp sub_89C0"], "succs": [[11, "jump"]]}, {"id": 10, "start": 40864, "end": 40868, "lines": ["xor eax, eax", "jmp short loc_9F79"], "succs": [[8, "jump"]]}, {"id": 11, "start": 35264, "end": 35264, "lines": [], "succs": []}]}, {"name": "sub_9FB0", "ea": 40880, "blocks": [{"id": 0, "start": 40880, "end": 40921, "lines": ["endbr64", "mov rcx, rdi", "mov rdi, rsi", "mov esi, [rsi+0A8h]", "mov edx, [rcx+0A8h]", "cmp edx, 9", "setz al", "cmp edx, 3", "setz dl", "or eax, edx", "cmp esi, 3", "jz short loc_A000"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 40921, "end": 40926, "lines": ["cmp esi, 9", "jz short loc_A000"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 40926, "end": 40946, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_A000"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 40946, "end": 40950, "lines": ["test al, al", "jz short loc_A038"], "succs": [[4, "fall"], [10, "jump"]]}, {"id": 4, "start": 40950, "end": 40955, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 40955, "end": 40956, "lines": ["retn"], "succs": []}, {"id": 6, "start": 40960, "end": 40964, "lines": ["test al, al", "jnz short loc_A025"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 40964, "end": 40969, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 40969, "end": 40997, "lines": ["mov edx, [rcx+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_9FFB"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 40997, "end": 41012, "lines": ["mov rdx, cs:strcmp_ptr", "mov rsi, rcx", "jmp sub_6250"], "succs": [[11, "jump"]]}, {"id": 10, "start": 41016, "end": 41020, "lines": ["xor eax, eax", "jmp short loc_A009"], "succs": [[8, "jump"]]}, {"id": 11, "start": 25168, "end": 25168, "lines": [], "succs": []}]}, {"name": "sub_A040", "ea": 41024, "blocks": [{"id": 0, "start": 41024, "end": 41059, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 3", "setz al", "cmp edx, 9", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_A090"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 41059, "end": 41064, "lines": ["cmp ecx, 9", "jz short loc_A090"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 41064, "end": 41084, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_A090"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 41084, "end": 41088, "lines": ["test al, al", "jz short loc_A0C0"], "succs": [[4, "fall"], [10, "jump"]]}, {"id": 4, "start": 41088, "end": 41093, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 41093, "end": 41094, "lines": ["retn"], "succs": []}, {"id": 6, "start": 41104, "end": 41108, "lines": ["test al, al", "jnz short loc_A0B5"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 41108, "end": 41113, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 41113, "end": 41141, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_A085"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 41141, "end": 41146, "lines": ["jmp sub_8810"], "succs": [[11, "jump"]]}, {"id": 10, "start": 41152, "end": 41156, "lines": ["xor eax, eax", "jmp short loc_A099"], "succs": [[8, "jump"]]}, {"id": 11, "start": 34832, "end": 34832, "lines": [], "succs": []}]}, {"name": "sub_A0D0", "ea": 41168, "blocks": [{"id": 0, "start": 41168, "end": 41203, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 3", "setz al", "cmp edx, 9", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_A120"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 41203, "end": 41208, "lines": ["cmp ecx, 9", "jz short loc_A120"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 41208, "end": 41228, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_A120"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 41228, "end": 41232, "lines": ["test al, al", "jz short loc_A150"], "succs": [[4, "fall"], [10, "jump"]]}, {"id": 4, "start": 41232, "end": 41237, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 41237, "end": 41238, "lines": ["retn"], "succs": []}, {"id": 6, "start": 41248, "end": 41252, "lines": ["test al, al", "jnz short loc_A145"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 41252, "end": 41257, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 41257, "end": 41285, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_A115"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 41285, "end": 41290, "lines": ["jmp sub_7F20"], "succs": [[11, "jump"]]}, {"id": 10, "start": 41296, "end": 41300, "lines": ["xor eax, eax", "jmp short loc_A129"], "succs": [[8, "jump"]]}, {"id": 11, "start": 32544, "end": 32544, "lines": [], "succs": []}]}, {"name": "sub_A160", "ea": 41312, "blocks": [{"id": 0, "start": 41312, "end": 41347, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 3", "setz al", "cmp edx, 9", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_A1B0"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 41347, "end": 41352, "lines": ["cmp ecx, 9", "jz short loc_A1B0"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 41352, "end": 41372, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_A1B0"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 41372, "end": 41376, "lines": ["test al, al", "jz short loc_A1E0"], "succs": [[4, "fall"], [10, "jump"]]}, {"id": 4, "start": 41376, "end": 41381, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 41381, "end": 41382, "lines": ["retn"], "succs": []}, {"id": 6, "start": 41392, "end": 41396, "lines": ["test al, al", "jnz short loc_A1D5"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 41396, "end": 41401, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 41401, "end": 41429, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_A1A5"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 41429, "end": 41434, "lines": ["jmp sub_8750"], "succs": [[11, "jump"]]}, {"id": 10, "start": 41440, "end": 41444, "lines": ["xor eax, eax", "jmp short loc_A1B9"], "succs": [[8, "jump"]]}, {"id": 11, "start": 34640, "end": 34640, "lines": [], "succs": []}]}, {"name": "sub_A1F0", "ea": 41456, "blocks": [{"id": 0, "start": 41456, "end": 41491, "lines": ["endbr64", "mov edx, [rdi+0A8h]", "mov ecx, [rsi+0A8h]", "cmp edx, 3", "setz al", "cmp edx, 9", "setz dl", "or eax, edx", "cmp ecx, 3", "jz short loc_A240"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 41491, "end": 41496, "lines": ["cmp ecx, 9", "jz short loc_A240"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 41496, "end": 41516, "lines": ["mov edx, [rsi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "jz short loc_A240"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 41516, "end": 41520, "lines": ["test al, al", "jz short loc_A270"], "succs": [[4, "fall"], [10, "jump"]]}, {"id": 4, "start": 41520, "end": 41525, "lines": ["mov eax, 0FFFFFFFFh"], "succs": [[5, "fall"]]}, {"id": 5, "start": 41525, "end": 41526, "lines": ["retn"], "succs": []}, {"id": 6, "start": 41536, "end": 41540, "lines": ["test al, al", "jnz short loc_A265"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 41540, "end": 41545, "lines": ["mov eax, 1"], "succs": [[8, "fall"]]}, {"id": 8, "start": 41545, "end": 41573, "lines": ["mov edx, [rdi+0ACh]", "and edx, 0F000h", "cmp edx, 4000h", "setz dl", "movzx edx, dl", "sub eax, edx", "jnz short locret_A235"], "succs": [[5, "jump"], [9, "fall"]]}, {"id": 9, "start": 41573, "end": 41578, "lines": ["jmp sub_8AE0"], "succs": [[11, "jump"]]}, {"id": 10, "start": 41584, "end": 41588, "lines": ["xor eax, eax", "jmp short loc_A249"], "succs": [[8, "jump"]]}, {"id": 11, "start": 35552, "end": 35552, "lines": [], "succs": []}]}, {"name": "sub_15140", "ea": 86336, "blocks": [{"id": 0, "start": 86336, "end": 86353, "lines": ["endbr64", "mov eax, esi", "lea esi, [rsi-786h]", "cmp esi, 30h ; '0'", "jbe short loc_15160"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 86353, "end": 86368, "lines": ["lea esi, [rax-7BBh]", "cmp esi, 78h ; 'x'", "ja loc_15318"], "succs": [[2, "fall"], [11, "jump"]]}, {"id": 2, "start": 86368, "end": 86375, "lines": ["mov esi, edx", "sub esi, 2", "jns short loc_1516D"], "succs": [[3, "fall"], [4, "jump"]]}, {"id": 3, "start": 86375, "end": 86381, "lines": ["lea esi, [rdx+0Ah]", "sub eax, 1"], "succs": [[4, "fall"]]}, {"id": 4, "start": 86381, "end": 86531, "lines": ["lea edx, [rax-76Ch]", "mov r8d, eax", "imul edx, 16Dh", "sar r8d, 2", "lea r9d, [rdx+r8-1DBh]", "movsxd rdx, eax", "mov r8d, eax", "mov eax, eax", "imul rdx, 51EB851Fh", "sar r8d, 1Fh", "imul rax, 51EB851Fh", "sar rdx, 25h", "sub r8d, edx", "shr rax, 27h", "lea edx, [r9+r8+13h]", "lea r8d, [rdx+rax-4]", "imul eax, esi, 99h", "add eax, 2", "movsxd rdx, eax", "sar eax, 1Fh", "imul rdx, 66666667h", "sar rdx, 21h", "sub edx, eax", "lea eax, [rdx+rcx-1]", "lea eax, [r8+rax+2C6h]", "movsxd rcx, eax", "cdq", "imul rcx, 2B7FA0D9h", "sar rcx, 2Bh", "sub ecx, edx", "imul edx, ecx, 2F15h", "sub eax, edx", "cmp eax, 2DA7h", "jg loc_152D8"], "succs": [[5, "fall"], [9, "jump"]]}, {"id": 5, "start": 86531, "end": 86603, "lines": ["movsxd rdx, eax", "mov esi, eax", "imul rdx, 166DB073h", "sar esi, 1Fh", "sar rdx, 27h", "sub edx, esi", "lea esi, [rax+1]", "imul esi, 3DDA809Dh", "add esi, 166DB0h", "cmp esi, 2CDB60h", "setbe r8b", "cmp eax, 27F3h", "setle sil", "imul r9d, edx, 0FFFFFA4Bh", "and r8d, esi", "lea esi, ds:0[rdx*4]"], "succs": [[6, "fall"]]}, {"id": 6, "start": 86603, "end": 86677, "lines": ["lea edx, [rax+r9]", "movzx r8d, r8b", "movsxd rax, edx", "mov r9d, edx", "imul rax, 0FFFFFFFFB38CF9B1h", "sar r9d, 1Fh", "shr rax, 20h", "add eax, edx", "sar eax, 8", "sub eax, r9d", "sub eax, r8d", "mov r8d, ecx", "add esi, eax", "imul eax, 0FFFFFE93h", "shl r8d, 5", "lea ecx, [rcx+r8+4FDh]", "add ecx, esi", "add eax, edx", "cmp eax, 0B9h", "jg short loc_152F8"], "succs": [[7, "fall"], [10, "jump"]]}, {"id": 7, "start": 86677, "end": 86712, "lines": ["movsxd rdx, eax", "mov esi, eax", "imul rdx, 0FFFFFFFF84210843h", "sar esi, 1Fh", "shr rdx, 20h", "add edx, eax", "sar edx, 4", "sub edx, esi", "mov esi, edx", "shl esi, 5", "sub esi, edx", "sub eax, esi"], "succs": [[8, "fall"]]}, {"id": 8, "start": 86712, "end": 86737, "lines": ["add eax, 1", "mov [rdi], ecx", "mov [rdi+8], eax", "lea rax, off_27820", "mov [rdi+10h], rax", "xor eax, eax", "mov [rdi+4], edx", "retn"], "succs": []}, {"id": 9, "start": 86744, "end": 86769, "lines": ["cmp eax, 2F14h", "mov esi, 1Ch", "mov r9d, 0FFFFD80Dh", "setz r8b", "jmp loc_1524B"], "succs": [[6, "jump"]]}, {"id": 10, "start": 86776, "end": 86802, "lines": ["lea edx, [rax-6]", "mov esi, 88888889h", "mov rax, rdx", "imul rdx, rsi", "shr rdx, 24h", "imul esi, edx, 1Eh", "sub eax, esi", "jmp short loc_152B8"], "succs": [[8, "jump"]]}, {"id": 11, "start": 86808, "end": 86814, "lines": ["mov eax, 0FFFFFFFFh", "retn"], "succs": []}]}, {"name": "sub_17D90", "ea": 97680, "blocks": [{"id": 0, "start": 97680, "end": 97699, "lines": ["push rbp", "mov r8, rdi", "mov rcx, rsi", "mov rbp, rsp", "sub rsp, 20h", "test rdx, rdx", "jz short loc_17DF0"], "succs": [[1, "fall"], [4, "jump"]]}, {"id": 1, "start": 97699, "end": 97754, "lines": ["lea r10, [rdx-1]", "xor esi, esi", "mov r9, rdx", "mov edx, 0FA0h", "mov rax, r10", "mov [rdi+30h], r10", "and rax, 0FFFFFFFFFFFFFFF0h", "add rax, 10h", "setb sil", "cmp rax, rdx", "cmovnb rdx, rax", "cmp rcx, rax", "cmovb rcx, rdx", "mov [rdi], rcx", "test rsi, rsi", "jz short loc_17E11"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 97754, "end": 97762, "lines": ["mov qword ptr [rdi+8], 0"], "succs": [[3, "fall"]]}, {"id": 3, "start": 97762, "end": 97768, "lines": ["call cs:obstack_alloc_failed_handler"], "succs": []}, {"id": 4, "start": 97776, "end": 97786, "lines": ["cmp rsi, 0Fh", "jbe loc_17EA0"], "succs": [[5, "fall"], [10, "jump"]]}, {"id": 5, "start": 97786, "end": 97809, "lines": ["mov [r8], rcx", "mov r10d, 0Fh", "mov r9d, 10h", "mov qword ptr [r8+30h], 0Fh"], "succs": [[6, "fall"]]}, {"id": 6, "start": 97809, "end": 97828, "lines": ["test byte ptr [r8+50h], 1", "mov [rbp+var_20], r9", "mov [rbp+var_18], r10", "jnz loc_17ED3"], "succs": [[7, "fall"], [11, "jump"]]}, {"id": 7, "start": 97828, "end": 97862, "lines": ["mov [rbp+var_10], rcx", "mov rdi, rcx", "mov [rbp+var_8], r8", "call qword ptr [r8+38h]", "mov r9, [rbp+var_20]", "mov r10, [rbp+var_18]", "mov rcx, [rbp+var_10]", "mov r8, [rbp+var_8]", "mov rdx, rax"], "succs": [[8, "fall"]]}, {"id": 8, "start": 97862, "end": 97871, "lines": ["mov [r8+8], rdx", "test rdx, rdx", "jz short loc_17DE2"], "succs": [[3, "jump"], [9, "fall"]]}, {"id": 9, "start": 97871, "end": 97945, "lines": ["lea rsi, [rdx+10h]", "neg rsi", "and rsi, r10", "lea rax, [rdx+rsi+10h]", "movq xmm0, rax", "lea rax, [rcx+1]", "sub rax, r9", "punpcklqdq xmm0, xmm0", "lea rcx, [rdx+rax]", "movups xmmword ptr [r8+10h], xmm0", "neg rcx", "and rcx, r10", "add rcx, rax", "add rcx, rdx", "mov [rdx], rcx", "mov [r8+20h], rcx", "mov qword ptr [rdx+8], 0", "and byte ptr [r8+50h], 0F9h", "leave", "retn"], "succs": []}, {"id": 10, "start": 97952, "end": 98003, "lines": ["mov r10d, 0Fh", "mov r9d, 10h", "test byte ptr [r8+50h], 1", "mov qword ptr [rdi], 0FA0h", "mov qword ptr [rdi+30h], 0Fh", "mov ecx, 0FA0h", "mov [rbp+var_20], r9", "mov [rbp+var_18], r10", "jz loc_17E24"], "succs": [[7, "jump"], [11, "fall"]]}, {"id": 11, "start": 98003, "end": 98046, "lines": ["mov [rbp+var_10], rcx", "mov rdi, [r8+48h]", "mov rsi, rcx", "mov [rbp+var_8], r8", "call qword ptr [r8+38h]", "mov r8, [rbp+var_8]", "mov rcx, [rbp+var_10]", "mov r10, [rbp+var_18]", "mov r9, [rbp+var_20]", "mov rdx, rax", "jmp loc_17E46"], "succs": [[8, "jump"]]}]}, {"name": "sub_1AE70", "ea": 110192, "blocks": [{"id": 0, "start": 110192, "end": 110215, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r14", "push r13", "mov r13, rsi", "push r12", "push rbx", "test rdi, rdi", "jz short loc_1AF00"], "succs": [[1, "fall"], [10, "jump"]]}, {"id": 1, "start": 110215, "end": 110234, "lines": ["mov rbx, rdx", "mov r12, rdi", "call sub_1AD50", "mov r14, rax", "test rax, rax", "jz short loc_1AEEE"], "succs": [[2, "fall"], [9, "jump"]]}, {"id": 2, "start": 110234, "end": 110251, "lines": ["mov rsi, rbx; tp", "mov rdi, r13; timer", "call cs:localtime_r_ptr", "test rax, rax", "jz short loc_1AEE0"], "succs": [[3, "fall"], [7, "jump"]]}, {"id": 3, "start": 110251, "end": 110266, "lines": ["mov rsi, rbx", "mov rdi, r12", "call sub_1ABB0", "test al, al", "jz short loc_1AEE0"], "succs": [[4, "fall"], [7, "jump"]]}, {"id": 4, "start": 110266, "end": 110272, "lines": ["cmp r14, 1", "jz short loc_1AECC"], "succs": [[5, "fall"], [6, "jump"]]}, {"id": 5, "start": 110272, "end": 110284, "lines": ["mov rdi, r14; ptr", "call sub_1AA60", "test al, al", "jz short loc_1AEEE"], "succs": [[6, "fall"], [9, "jump"]]}, {"id": 6, "start": 110284, "end": 110296, "lines": ["mov rax, rbx", "pop rbx", "pop r12", "pop r13", "pop r14", "pop rbp", "retn"], "succs": []}, {"id": 7, "start": 110304, "end": 110310, "lines": ["cmp r14, 1", "jz short loc_1AEEE"], "succs": [[8, "fall"], [9, "jump"]]}, {"id": 8, "start": 110310, "end": 110318, "lines": ["mov rdi, r14; ptr", "call sub_1AA60"], "succs": [[9, "fall"]]}, {"id": 9, "start": 110318, "end": 110329, "lines": ["pop rbx", "xor eax, eax", "pop r12", "pop r13", "pop r14", "pop rbp", "retn"], "succs": []}, {"id": 10, "start": 110336, "end": 110356, "lines": ["pop rbx", "mov rdi, r13; timer", "pop r12", "mov rsi, rdx; tp", "pop r13", "pop r14", "pop rbp", "jmp cs:gmtime_r_ptr"], "succs": [[11, "jump"]]}, {"id": 11, "start": 169688, "end": 169688, "lines": [], "succs": []}]}, {"name": "sub_1BFE0", "ea": 114656, "blocks": [{"id": 0, "start": 114656, "end": 114708, "lines": ["endbr64", "push rbp", "mov r9d, edx", "mov rdx, rcx", "mov rbp, rsp", "push r14", "push r13", "push r12", "push rbx", "sub rsp, 10h", "mov r13, fs:28h", "mov [rbp+var_28], r13", "mov r13, r8", "mov ebx, cs:status", "cmp edi, 3", "ja short loc_1C08F"], "succs": [[1, "fall"], [9, "jump"]]}, {"id": 1, "start": 114708, "end": 114713, "lines": ["cmp edi, 1", "jbe short loc_1C069"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 114713, "end": 114720, "lines": ["lea rcx, aInvalidSuffixI; \"invalid suffix in %s%s argument '%s'\""], "succs": [[3, "fall"]]}, {"id": 3, "start": 114720, "end": 114727, "lines": ["movsxd rax, esi", "test esi, esi", "js short loc_1C077"], "succs": [[4, "fall"], [8, "jump"]]}, {"id": 4, "start": 114727, "end": 114742, "lines": ["shl rax, 5", "lea r12, asc_1FB08; \"--\"", "mov r14, [rdx+rax]"], "succs": [[5, "fall"]]}, {"id": 5, "start": 114742, "end": 114793, "lines": ["mov rsi, rcx; msgid", "mov edx, 5; category", "lea rdi, domainname; \"gnulib\"", "call cs:dcgettext_ptr", "mov r9, r13", "mov r8, r14", "mov rcx, r12", "mov rdx, rax", "xor esi, esi", "mov edi, ebx", "xor eax, eax", "call error", "call cs:abort_ptr"], "succs": []}, {"id": 6, "start": 114793, "end": 114802, "lines": ["lea rcx, aSSArgumentSToo; \"%s%s argument '%s' too large\"", "jz short loc_1C020"], "succs": [[3, "jump"], [7, "fall"]]}, {"id": 7, "start": 114802, "end": 114807, "lines": ["jmp loc_3521"], "succs": [[11, "jump"]]}, {"id": 8, "start": 114807, "end": 114831, "lines": ["lea r12, asc_1FB08; \"--\"", "lea r14, [rbp+var_2A]", "sub r12, rax", "movzx eax, r9b", "mov [rbp+var_2A], ax", "jmp short loc_1C036"], "succs": [[5, "jump"]]}, {"id": 9, "start": 114831, "end": 114847, "lines": ["lea rcx, aInvalidSSArgum; \"invalid %s%s argument '%s'\"", "cmp edi, 4", "jnz loc_3521"], "succs": [[10, "fall"], [11, "jump"]]}, {"id": 10, "start": 114847, "end": 114852, "lines": ["jmp loc_1C020"], "succs": [[3, "jump"]]}, {"id": 11, "start": 13601, "end": 13607, "lines": ["call cs:abort_ptr"], "succs": []}]}, {"name": "sub_6300", "ea": 25344, "blocks": [{"id": 0, "start": 25344, "end": 25410, "lines": ["push rbp", "mov rbp, rsp", "push r15", "mov r15, rdi", "push r14", "push r13", "mov r13d, esi", "push r12", "push rbx", "sub rsp, 18h", "call cs:strlen_ptr", "mov edi, 3", "lea rbx, [rax+1]", "mov rsi, rbx", "call sub_1B8F0", "mov [rbp+var_40], rax", "mov r14, rax", "movzx eax, byte ptr [r15]", "test al, al", "jz loc_6440"], "succs": [[1, "fall"], [10, "jump"]]}, {"id": 1, "start": 25410, "end": 25426, "lines": ["lea r9, [rbx+rbx*2]", "lea r10, unk_28FE0", "mov rbx, r9", "jmp short loc_6382"], "succs": [[4, "jump"]]}, {"id": 2, "start": 25432, "end": 25466, "lines": ["mov rdx, r12", "mov [r14], al", "sub rdx, rbx", "add rdx, 1", "cmp rdx, r12", "cmovb rdx, r12", "sub rbx, 1", "add r14, 1", "sub rbx, r12", "add rbx, rdx"], "succs": [[3, "fall"]]}, {"id": 3, "start": 25466, "end": 25474, "lines": ["movzx eax, byte ptr [r15]", "test al, al", "jz short loc_63F4"], "succs": [[4, "fall"], [8, "jump"]]}, {"id": 4, "start": 25474, "end": 25492, "lines": ["add r15, 1", "mov r12, rbx", "cmp r9, rbx", "cmovnb r12, r9", "cmp al, 2Fh ; '/'", "jnz short loc_6399"], "succs": [[5, "fall"], [6, "jump"]]}, {"id": 5, "start": 25492, "end": 25497, "lines": ["test r13b, r13b", "jnz short loc_6410"], "succs": [[6, "fall"], [9, "jump"]]}, {"id": 6, "start": 25497, "end": 25511, "lines": ["movzx edx, al", "movzx r8d, al", "cmp byte ptr [r10+rdx], 0", "jnz short loc_6358"], "succs": [[2, "jump"], [7, "fall"]]}, {"id": 7, "start": 25511, "end": 25588, "lines": ["mov rdx, rbx", "mov [rbp+var_38], r9", "mov rdi, r14", "xor eax, eax", "lea rcx, a02x; \"%%%02x\"", "mov esi, 2", "call cs:__sprintf_chk_ptr", "lea rdx, [r12+3]", "mov r9, [rbp+var_38]", "lea r10, unk_28FE0", "mov rax, rdx", "sub rax, rbx", "cmp rax, r12", "cmovb rax, r12", "sub rbx, rdx", "add r14, 3", "add rbx, rax", "movzx eax, byte ptr [r15]", "test al, al", "jnz short loc_6382"], "succs": [[4, "jump"], [8, "fall"]]}, {"id": 8, "start": 25588, "end": 25611, "lines": ["mov byte ptr [r14], 0", "mov rax, [rbp+var_40]", "add rsp, 18h", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 9, "start": 25616, "end": 25656, "lines": ["mov rax, r12", "mov byte ptr [r14], 2Fh ; '/'", "sub rax, rbx", "add rax, 1", "cmp rax, r12", "cmovb rax, r12", "sub rbx, 1", "add r14, 1", "sub rbx, r12", "add rbx, rax", "jmp loc_637A"], "succs": [[3, "jump"]]}, {"id": 10, "start": 25664, "end": 25670, "lines": ["mov r14, [rbp+var_40]", "jmp short loc_63F4"], "succs": [[8, "jump"]]}]}, {"name": "sub_11130", "ea": 69936, "blocks": [{"id": 0, "start": 69936, "end": 70012, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r15", "push r14", "mov r14, rsi", "push r13", "push r12", "mov r12, rdi", "push rbx", "sub rsp, 28h", "mov [rbp+var_48], rdx", "call sub_F9A0", "mov rbx, rax", "mov rdi, rax", "call sub_FA60", "sub rbx, r12", "mov rdi, r14; s", "mov r13, rax", "add rbx, rax", "call cs:strlen_ptr", "mov [rbp+n], rax", "test r13, r13", "jz short loc_111A8"], "succs": [[1, "fall"], [3, "jump"]]}, {"id": 1, "start": 70012, "end": 70020, "lines": ["cmp byte ptr [r12+rbx-1], 2Fh ; '/'", "jz short loc_111AE"], "succs": [[2, "fall"], [4, "jump"]]}, {"id": 2, "start": 70020, "end": 70050, "lines": ["xor r15d, r15d", "mov esi, 2Fh ; '/'", "cmp byte ptr [r14], 2Fh ; '/'", "mov eax, 0", "cmovz esi, eax", "setnz r15b", "mov [rbp+var_39], sil", "jmp short loc_111B5"], "succs": [[5, "jump"]]}, {"id": 3, "start": 70056, "end": 70062, "lines": ["cmp byte ptr [r14], 2Fh ; '/'", "jz short loc_11228"], "succs": [[4, "fall"], [10, "jump"]]}, {"id": 4, "start": 70062, "end": 70069, "lines": ["mov [rbp+var_39], 0", "xor r15d, r15d"], "succs": [[5, "fall"]]}, {"id": 5, "start": 70069, "end": 70102, "lines": ["mov rax, [rbp+n]", "lea rcx, [rbx+rax+1]", "add rcx, r15", "mov [rbp+var_50], rcx", "mov rdi, rcx; size", "call cs:malloc_ptr", "mov r13, rax", "test rax, rax", "jz short loc_1120F"], "succs": [[6, "fall"], [9, "jump"]]}, {"id": 6, "start": 70102, "end": 70140, "lines": ["mov rdx, rbx", "mov rdi, rax", "mov rcx, [rbp+var_50]", "mov rsi, r12", "call cs:__mempcpy_chk_ptr", "movzx edx, [rbp+var_39]", "lea rdi, [rax+r15]; dest", "mov [rax], dl", "mov rax, [rbp+var_48]", "test rax, rax", "jz short loc_111FF"], "succs": [[7, "fall"], [8, "jump"]]}, {"id": 7, "start": 70140, "end": 70143, "lines": ["mov [rax], rdi"], "succs": [[8, "fall"]]}, {"id": 8, "start": 70143, "end": 70159, "lines": ["mov rdx, [rbp+n]; n", "mov rsi, r14; src", "call cs:mempcpy_ptr", "mov byte ptr [rax], 0"], "succs": [[9, "fall"]]}, {"id": 9, "start": 70159, "end": 70177, "lines": ["add rsp, 28h", "mov rax, r13", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 10, "start": 70184, "end": 70196, "lines": ["mov [rbp+var_39], 2Eh ; '.'", "mov r15d, 1", "jmp short loc_111B5"], "succs": [[5, "jump"]]}]}, {"name": "sub_11A40", "ea": 72256, "blocks": [{"id": 0, "start": 72256, "end": 72296, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r13", "lea r13, [rdi+10h]", "push r12", "push rbx", "mov rbx, rdi", "sub rsp, 18h", "mov rdx, [rdi+8]", "mov r8, [rdi]", "lea r12, [rdx+rdx]", "cmp r8, r13", "jz short loc_11AA8"], "succs": [[1, "fall"], [5, "jump"]]}, {"id": 1, "start": 72296, "end": 72301, "lines": ["cmp r12, rdx", "jb short loc_11AE0"], "succs": [[2, "fall"], [7, "jump"]]}, {"id": 2, "start": 72301, "end": 72334, "lines": ["test r12, r12", "mov esi, 1", "mov rdi, r8; ptr", "cmovnz rsi, r12; size", "call cs:realloc_ptr", "mov rdi, rax", "test rax, rax", "jz loc_11B10"], "succs": [[3, "fall"], [10, "jump"]]}, {"id": 3, "start": 72334, "end": 72346, "lines": ["mov [rbx], rdi", "mov eax, 1", "mov [rbx+8], r12"], "succs": [[4, "fall"]]}, {"id": 4, "start": 72346, "end": 72357, "lines": ["add rsp, 18h", "pop rbx", "pop r12", "pop r13", "pop rbp", "retn"], "succs": []}, {"id": 5, "start": 72360, "end": 72385, "lines": ["mov rdi, r12; size", "mov [rbp+var_30], r8", "mov [rbp+ptr], rdx", "call cs:malloc_ptr", "mov rdi, rax", "test rax, rax", "jz short loc_11B08"], "succs": [[6, "fall"], [9, "jump"]]}, {"id": 6, "start": 72385, "end": 72407, "lines": ["mov rdx, [rbp+ptr]", "mov rsi, [rbp+var_30]", "mov rcx, r12", "call cs:__memcpy_chk_ptr", "mov rdi, rax", "jmp short loc_11A8E"], "succs": [[3, "jump"]]}, {"id": 7, "start": 72416, "end": 72436, "lines": ["mov [rbp+ptr], r8", "call cs:__errno_location_ptr", "mov r8, [rbp+ptr]", "mov dword ptr [rax], 0Ch"], "succs": [[8, "fall"]]}, {"id": 8, "start": 72436, "end": 72456, "lines": ["mov rdi, r8; ptr", "call cs:free_ptr", "mov [rbx], r13", "mov qword ptr [rbx+8], 400h"], "succs": [[9, "fall"]]}, {"id": 9, "start": 72456, "end": 72460, "lines": ["xor eax, eax", "jmp short loc_11A9A"], "succs": [[4, "jump"]]}, {"id": 10, "start": 72464, "end": 72469, "lines": ["mov r8, [rbx]", "jmp short loc_11AF4"], "succs": [[8, "jump"]]}]}, {"name": "sub_11BD0", "ea": 72656, "blocks": [{"id": 0, "start": 72656, "end": 72672, "lines": ["mov rax, [rdi+28h]", "lea rdx, unk_21D90", "cmp rax, rdx", "jz short loc_11C50"], "succs": [[1, "fall"], [9, "jump"]]}, {"id": 1, "start": 72672, "end": 72686, "lines": ["movss xmm0, dword ptr [rax+8]", "comiss xmm0, cs:dword_1D004", "jbe short loc_11C3F"], "succs": [[2, "fall"], [8, "jump"]]}, {"id": 2, "start": 72686, "end": 72699, "lines": ["movss xmm1, cs:dword_1D008", "comiss xmm1, xmm0", "jbe short loc_11C3F"], "succs": [[3, "fall"], [8, "jump"]]}, {"id": 3, "start": 72699, "end": 72713, "lines": ["movss xmm1, dword ptr [rax+0Ch]", "comiss xmm1, cs:dword_1D00C", "jbe short loc_11C3F"], "succs": [[4, "fall"], [8, "jump"]]}, {"id": 4, "start": 72713, "end": 72726, "lines": ["movss xmm1, dword ptr [rax]", "pxor xmm2, xmm2", "comiss xmm1, xmm2", "jb short loc_11C3F"], "succs": [[5, "fall"], [8, "jump"]]}, {"id": 5, "start": 72726, "end": 72744, "lines": ["addss xmm1, cs:dword_1D004", "movss xmm2, dword ptr [rax+4]", "comiss xmm2, xmm1", "jbe short loc_11C3F"], "succs": [[6, "fall"], [8, "jump"]]}, {"id": 6, "start": 72744, "end": 72757, "lines": ["movss xmm3, cs:dword_21D54", "comiss xmm3, xmm2", "jb short loc_11C3F"], "succs": [[7, "fall"], [8, "jump"]]}, {"id": 7, "start": 72757, "end": 72767, "lines": ["comiss xmm0, xmm1", "mov eax, 1", "ja short locret_11C55"], "succs": [[8, "fall"], [10, "jump"]]}, {"id": 8, "start": 72767, "end": 72774, "lines": ["mov [rdi+28h], rdx", "xor eax, eax", "retn"], "succs": []}, {"id": 9, "start": 72784, "end": 72789, "lines": ["mov eax, 1"], "succs": [[10, "fall"]]}, {"id": 10, "start": 72789, "end": 72790, "lines": ["retn"], "succs": []}]}, {"name": "sub_12180", "ea": 74112, "blocks": [{"id": 0, "start": 74112, "end": 74156, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r13", "mov r13, rdi", "push r12", "mov r12, rsi", "push rbx", "sub rsp, 8", "mov rsi, [rdi+10h]", "mov rdi, r12", "call qword ptr [r13+30h]", "cmp rax, [r13+10h]", "jnb loc_34A7"], "succs": [[1, "fall"], [10, "jump"]]}, {"id": 1, "start": 74156, "end": 74175, "lines": ["shl rax, 4", "add rax, [r13+0]", "mov rsi, [rax]", "mov rbx, rax", "test rsi, rsi", "jnz short loc_121DF"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 74175, "end": 74177, "lines": ["jmp short loc_121F8"], "succs": [[8, "jump"]]}, {"id": 3, "start": 74184, "end": 74195, "lines": ["mov rdi, r12", "call qword ptr [r13+38h]", "test al, al", "jnz short loc_12210"], "succs": [[4, "fall"], [9, "jump"]]}, {"id": 4, "start": 74195, "end": 74204, "lines": ["mov rbx, [rbx+8]", "test rbx, rbx", "jz short loc_121F8"], "succs": [[5, "fall"], [8, "jump"]]}, {"id": 5, "start": 74204, "end": 74207, "lines": ["mov rsi, [rbx]"], "succs": [[6, "fall"]]}, {"id": 6, "start": 74207, "end": 74212, "lines": ["cmp r12, rsi", "jnz short loc_121C8"], "succs": [[3, "jump"], [7, "fall"]]}, {"id": 7, "start": 74212, "end": 74226, "lines": ["add rsp, 8", "mov rax, rsi", "pop rbx", "pop r12", "pop r13", "pop rbp", "retn"], "succs": []}, {"id": 8, "start": 74232, "end": 74248, "lines": ["add rsp, 8", "xor esi, esi", "pop rbx", "mov rax, rsi", "pop r12", "pop r13", "pop rbp", "retn"], "succs": []}, {"id": 9, "start": 74256, "end": 74273, "lines": ["mov rsi, [rbx]", "add rsp, 8", "pop rbx", "pop r12", "mov rax, rsi", "pop r13", "pop rbp", "retn"], "succs": []}, {"id": 10, "start": 13479, "end": 13485, "lines": ["call cs:abort_ptr"], "succs": []}]}, {"name": "sub_123C0", "ea": 74688, "blocks": [{"id": 0, "start": 74688, "end": 74718, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r15", "push r14", "push r13", "push r12", "push rbx", "sub rsp, 18h", "mov r14, [rdi]", "cmp r14, [rdi+8]", "jnb short loc_1243C"], "succs": [[1, "fall"], [10, "jump"]]}, {"id": 1, "start": 74718, "end": 74730, "lines": ["mov [rbp+var_38], rdi", "mov r13, rdx", "mov r12, rsi", "xor ebx, ebx"], "succs": [[2, "fall"]]}, {"id": 2, "start": 74730, "end": 74738, "lines": ["mov rdi, [r14]", "test rdi, rdi", "jnz short loc_12418"], "succs": [[3, "fall"], [5, "jump"]]}, {"id": 3, "start": 74738, "end": 74752, "lines": ["mov rax, [rbp+var_38]", "add r14, 10h", "cmp r14, [rax+8]", "jb short loc_123EA"], "succs": [[2, "jump"], [4, "fall"]]}, {"id": 4, "start": 74752, "end": 74770, "lines": ["add rsp, 18h", "mov rax, rbx", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 5, "start": 74776, "end": 74781, "lines": ["mov r15, r14", "jmp short loc_12430"], "succs": [[8, "jump"]]}, {"id": 6, "start": 74784, "end": 74797, "lines": ["mov r15, [r15+8]", "add rbx, 1", "test r15, r15", "jz short loc_123F2"], "succs": [[3, "jump"], [7, "fall"]]}, {"id": 7, "start": 74797, "end": 74800, "lines": ["mov rdi, [r15]"], "succs": [[8, "fall"]]}, {"id": 8, "start": 74800, "end": 74810, "lines": ["mov rsi, r13", "call r12", "test al, al", "jnz short loc_12420"], "succs": [[6, "jump"], [9, "fall"]]}, {"id": 9, "start": 74810, "end": 74812, "lines": ["jmp short loc_12400"], "succs": [[4, "jump"]]}, {"id": 10, "start": 74812, "end": 74816, "lines": ["xor ebx, ebx", "jmp short loc_12400"], "succs": [[4, "jump"]]}]}, {"name": "sub_6550", "ea": 25936, "blocks": [{"id": 0, "start": 25936, "end": 25963, "lines": ["push rbp", "mov rbp, rsp", "push r12", "push rbx", "mov rax, [rsi+18h]", "mov rbx, [rsi+10h]", "mov rdx, rax", "sub rdx, rbx", "shr rdx, 3", "jz short loc_65DC"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 25963, "end": 25971, "lines": ["mov r12, rdx", "cmp rax, rbx", "jz short loc_65E1"], "succs": [[2, "fall"], [7, "jump"]]}, {"id": 2, "start": 25971, "end": 26016, "lines": ["mov rdx, rax", "lea r12, [rbx+r12*8]", "neg rdx", "and rdx, [rsi+30h]", "add rax, rdx", "movq xmm0, rax", "punpcklqdq xmm0, xmm0", "movaps xmmword ptr [rsi+10h], xmm0", "mov rsi, cs:stdout; stream", "call cs:fputs_unlocked_ptr", "xchg ax, ax"], "succs": [[3, "fall"]]}, {"id": 3, "start": 26016, "end": 26048, "lines": ["mov rdx, [rbx]", "add rbx, 8", "lea rsi, aJd; \" %jd\"", "xor eax, eax", "mov edi, 2", "call cs:__printf_chk_ptr", "cmp rbx, r12", "jnz short loc_65A0"], "succs": [[4, "fall"], [3, "jump"]]}, {"id": 4, "start": 26048, "end": 26065, "lines": ["mov rdi, cs:stdout; _IO_FILE *", "mov rax, [rdi+28h]", "cmp rax, [rdi+30h]", "jnb short loc_65E7"], "succs": [[5, "fall"], [8, "jump"]]}, {"id": 5, "start": 26065, "end": 26076, "lines": ["lea rdx, [rax+1]", "mov [rdi+28h], rdx", "mov byte ptr [rax], 0Ah"], "succs": [[6, "fall"]]}, {"id": 6, "start": 26076, "end": 26081, "lines": ["pop rbx", "pop r12", "pop rbp", "retn"], "succs": []}, {"id": 7, "start": 26081, "end": 26087, "lines": ["or byte ptr [rsi+50h], 2", "jmp short loc_6573"], "succs": [[2, "jump"]]}, {"id": 8, "start": 26087, "end": 26102, "lines": ["pop rbx", "mov esi, 0Ah; int", "pop r12", "pop rbp", "jmp cs:__overflow_ptr"], "succs": [[9, "jump"]]}, {"id": 9, "start": 169672, "end": 169672, "lines": [], "succs": []}]}, {"name": "sub_F720", "ea": 63264, "blocks": [{"id": 0, "start": 63264, "end": 63360, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r15", "mov r15, rdi", "push r14", "mov r14, rdx", "mov edx, 5; category", "push r13", "mov r13, rsi", "lea rsi, aValidArguments_0; \"Valid arguments are:\"", "push r12", "xor r12d, r12d", "push rbx", "sub rsp, 18h", "mov rbx, cs:stderr", "mov [rbp+var_38], rdi", "lea rdi, domainname; \"gnulib\"", "call cs:dcgettext_ptr", "mov rdi, rax; s", "mov rsi, rbx; stream", "mov rbx, r13", "call cs:fputs_unlocked_ptr", "mov r15, [r15]", "test r15, r15", "jz loc_F808"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 63360, "end": 63399, "lines": ["mov rdi, r15", "call sub_1A960", "mov rdi, cs:stderr", "mov esi, 2", "lea rdx, aS; \"\\n - %s\"", "mov rcx, rax", "xor eax, eax", "call cs:__fprintf_chk_ptr"], "succs": [[2, "fall"]]}, {"id": 2, "start": 63399, "end": 63416, "lines": ["mov rax, [rbp+var_38]", "add r12, 1", "mov r15, [rax+r12*8]", "test r15, r15", "jz short loc_F808"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 63416, "end": 63438, "lines": ["add rbx, r14", "mov rdx, r14; n", "mov rdi, r13; s1", "mov rsi, rbx; s2", "call cs:memcmp_ptr", "test eax, eax", "jz short loc_F7D8"], "succs": [[4, "fall"], [5, "jump"]]}, {"id": 4, "start": 63438, "end": 63443, "lines": ["mov r13, rbx", "jmp short loc_F780"], "succs": [[1, "jump"]]}, {"id": 5, "start": 63448, "end": 63489, "lines": ["mov rdi, r15", "call sub_1A960", "mov rdi, cs:stderr", "mov esi, 2", "lea rdx, aS_1; \", %s\"", "mov rcx, rax", "xor eax, eax", "call cs:__fprintf_chk_ptr", "jmp short loc_F7A7"], "succs": [[2, "jump"]]}, {"id": 6, "start": 63496, "end": 63513, "lines": ["mov rdi, cs:stderr; _IO_FILE *", "mov rax, [rdi+28h]", "cmp rax, [rdi+30h]", "jnb short loc_F838"], "succs": [[7, "fall"], [8, "jump"]]}, {"id": 7, "start": 63513, "end": 63539, "lines": ["lea rdx, [rax+1]", "mov [rdi+28h], rdx", "mov byte ptr [rax], 0Ah", "add rsp, 18h", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 8, "start": 63544, "end": 63569, "lines": ["add rsp, 18h", "mov esi, 0Ah; int", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "jmp cs:__overflow_ptr"], "succs": [[9, "jump"]]}, {"id": 9, "start": 169672, "end": 169672, "lines": [], "succs": []}]}, {"name": "sub_F860", "ea": 63584, "blocks": [{"id": 0, "start": 63584, "end": 63631, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r15", "mov r15, r8", "push r14", "mov r14, rcx", "push r13", "push r12", "mov r12, rsi", "push rbx", "mov rbx, rdx", "sub rsp, 18h", "mov [rbp+var_40], rdi", "mov [rbp+var_38], r9", "cmp [rbp+arg_0], 0", "jnz short loc_F908"], "succs": [[1, "fall"], [8, "jump"]]}, {"id": 1, "start": 63631, "end": 63642, "lines": ["mov rdi, [rdx]", "xor r13d, r13d", "test rdi, rdi", "jnz short loc_F8E5"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 63642, "end": 63648, "lines": ["nop word ptr [rax+rax+00h]"], "succs": [[3, "fall"]]}, {"id": 3, "start": 63648, "end": 63655, "lines": ["mov rax, 0FFFFFFFFFFFFFFFFh"], "succs": [[4, "fall"]]}, {"id": 4, "start": 63655, "end": 63699, "lines": ["mov rdi, [rbp+var_40]", "mov rdx, rax", "mov rsi, r12", "call sub_F680", "mov rdx, r15", "mov rsi, r14", "mov rdi, rbx", "call sub_F720", "mov rax, [rbp+var_38]", "call rax", "mov rax, 0FFFFFFFFFFFFFFFFh", "jmp short loc_F91E"], "succs": [[9, "jump"]]}, {"id": 5, "start": 63704, "end": 63717, "lines": ["add r13, 1", "mov rdi, [rbx+r13*8]; s1", "test rdi, rdi", "jz short loc_F8A0"], "succs": [[3, "jump"], [6, "fall"]]}, {"id": 6, "start": 63717, "end": 63730, "lines": ["mov rsi, r12; s2", "call cs:strcmp_ptr", "test eax, eax", "jnz short loc_F8D8"], "succs": [[5, "jump"], [7, "fall"]]}, {"id": 7, "start": 63730, "end": 63748, "lines": ["add rsp, 18h", "mov rax, r13", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 8, "start": 63752, "end": 63774, "lines": ["mov rcx, r8", "mov rdx, r14", "mov rsi, rbx", "mov rdi, r12", "call sub_F500", "test rax, rax", "js short loc_F8A7"], "succs": [[4, "jump"], [9, "fall"]]}, {"id": 9, "start": 63774, "end": 63789, "lines": ["add rsp, 18h", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}]}, {"name": "sub_181E0", "ea": 98784, "blocks": [{"id": 0, "start": 98784, "end": 98822, "lines": ["endbr64", "push rbp", "mov esi, 2Fh ; '/'; c", "mov rbp, rsp", "push rbx", "mov rbx, rdi", "sub rsp, 8", "call cs:strrchr_ptr", "mov rdx, rax", "mov rax, rbx", "test rdx, rdx", "jz short loc_1821F"], "succs": [[1, "fall"], [3, "jump"]]}, {"id": 1, "start": 98822, "end": 98838, "lines": ["lea rax, [rdx+1]", "mov rcx, rax", "sub rcx, rbx", "cmp rcx, 6", "jle short loc_1821F"], "succs": [[2, "fall"], [3, "jump"]]}, {"id": 2, "start": 98838, "end": 98847, "lines": ["cmp dword ptr [rdx-6], 696C2E2Fh", "jz short loc_18240"], "succs": [[3, "fall"], [4, "jump"]]}, {"id": 3, "start": 98847, "end": 98874, "lines": ["mov cs:qword_29430, rbx", "mov cs:__progname_full, rbx", "mov rbx, [rbp+var_8]", "mov cs:__progname, rax", "leave", "retn"], "succs": []}, {"id": 4, "start": 98880, "end": 98889, "lines": ["cmp dword ptr [rdx-3], 2F736269h", "jnz short loc_1821F"], "succs": [[3, "jump"], [5, "fall"]]}, {"id": 5, "start": 98889, "end": 98895, "lines": ["cmp byte ptr [rdx+1], 6Ch ; 'l'", "jnz short loc_18268"], "succs": [[6, "fall"], [9, "jump"]]}, {"id": 6, "start": 98895, "end": 98901, "lines": ["cmp byte ptr [rax+1], 74h ; 't'", "jnz short loc_18268"], "succs": [[7, "fall"], [9, "jump"]]}, {"id": 7, "start": 98901, "end": 98907, "lines": ["cmp byte ptr [rax+2], 2Dh ; '-'", "jnz short loc_18268"], "succs": [[8, "fall"], [9, "jump"]]}, {"id": 8, "start": 98907, "end": 98916, "lines": ["lea rbx, [rdx+4]", "mov rax, rbx", "jmp short loc_1821F"], "succs": [[3, "jump"]]}, {"id": 9, "start": 98920, "end": 98925, "lines": ["mov rbx, rax", "jmp short loc_1821F"], "succs": [[3, "jump"]]}]}, {"name": "sub_1A9B0", "ea": 108976, "blocks": [{"id": 0, "start": 108976, "end": 109012, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r13", "mov r13, rsi", "xor esi, esi; locale", "push r12", "mov r12, rdx", "push rbx", "sub rsp, 8", "call cs:setlocale_ptr", "test rax, rax", "jz short loc_1AA40"], "succs": [[1, "fall"], [7, "jump"]]}, {"id": 1, "start": 109012, "end": 109029, "lines": ["mov rbx, rax", "mov rdi, rax; s", "call cs:strlen_ptr", "cmp rax, r12", "jb short loc_1AA00"], "succs": [[2, "fall"], [5, "jump"]]}, {"id": 2, "start": 109029, "end": 109034, "lines": ["test r12, r12", "jnz short loc_1AA20"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 109034, "end": 109039, "lines": ["mov eax, 22h ; '\"'"], "succs": [[4, "fall"]]}, {"id": 4, "start": 109039, "end": 109050, "lines": ["add rsp, 8", "pop rbx", "pop r12", "pop r13", "pop rbp", "retn"], "succs": []}, {"id": 5, "start": 109056, "end": 109085, "lines": ["mov rsi, rbx; src", "mov rdi, r13; dest", "lea rdx, [rax+1]; n", "call cs:memcpy_ptr", "add rsp, 8", "xor eax, eax", "pop rbx", "pop r12", "pop r13", "pop rbp", "retn"], "succs": []}, {"id": 6, "start": 109088, "end": 109113, "lines": ["lea rdx, [r12-1]; n", "mov rsi, rbx; src", "mov rdi, r13; dest", "call cs:memcpy_ptr", "mov byte ptr [r13+r12-1], 0", "jmp short loc_1A9EA"], "succs": [[3, "jump"]]}, {"id": 7, "start": 109120, "end": 109125, "lines": ["test r12, r12", "jz short loc_1AA4A"], "succs": [[8, "fall"], [9, "jump"]]}, {"id": 8, "start": 109125, "end": 109130, "lines": ["mov byte ptr [r13+0], 0"], "succs": [[9, "fall"]]}, {"id": 9, "start": 109130, "end": 109137, "lines": ["mov eax, 16h", "jmp short loc_1A9EF"], "succs": [[4, "jump"]]}]}, {"name": "sub_10580", "ea": 66944, "blocks": [{"id": 0, "start": 66944, "end": 66972, "lines": ["endbr64", "push rbp", "mov rdi, cs:stdout", "mov rbp, rsp", "push r14", "push rbx", "call sub_1C660", "test eax, eax", "jz short loc_105B0"], "succs": [[1, "fall"], [3, "jump"]]}, {"id": 1, "start": 66972, "end": 66981, "lines": ["cmp cs:byte_293D8, 0", "jz short loc_105C6"], "succs": [[2, "fall"], [5, "jump"]]}, {"id": 2, "start": 66981, "end": 66992, "lines": ["call cs:__errno_location_ptr", "cmp dword ptr [rax], 20h ; ' '", "jnz short loc_105C6"], "succs": [[3, "fall"], [5, "jump"]]}, {"id": 3, "start": 66992, "end": 67009, "lines": ["mov rdi, cs:stderr", "call sub_1C660", "test eax, eax", "jnz short loc_10616"], "succs": [[4, "fall"], [7, "jump"]]}, {"id": 4, "start": 67009, "end": 67014, "lines": ["pop rbx", "pop r14", "pop rbp", "retn"], "succs": []}, {"id": 5, "start": 67014, "end": 67054, "lines": ["lea rdi, domainname; \"gnulib\"", "mov edx, 5; category", "lea rsi, aWriteError; \"write error\"", "call cs:dcgettext_ptr", "mov rdi, cs:qword_293E0", "mov rbx, rax", "test rdi, rdi", "jz short loc_10622"], "succs": [[6, "fall"], [8, "jump"]]}, {"id": 6, "start": 67054, "end": 67094, "lines": ["call sub_1A500", "mov r14, rax", "call cs:__errno_location_ptr", "mov r8, rbx", "mov rcx, r14", "xor edi, edi", "mov esi, [rax]", "lea rdx, aSS; \"%s: %s\"", "xor eax, eax", "call error"], "succs": [[7, "fall"]]}, {"id": 7, "start": 67094, "end": 67106, "lines": ["mov edi, cs:status; status", "call cs:_exit_ptr"], "succs": []}, {"id": 8, "start": 67106, "end": 67136, "lines": ["call cs:__errno_location_ptr", "mov rcx, rbx", "lea rdx, aS_1+2; \"%s\"", "xor edi, edi", "mov esi, [rax]", "xor eax, eax", "call error", "jmp short loc_10616"], "succs": [[7, "jump"]]}]}, {"name": "sub_11B20", "ea": 72480, "blocks": [{"id": 0, "start": 72480, "end": 72535, "lines": ["endbr64", "push rbp", "mov edx, 101h", "mov rbp, rsp", "sub rsp, 110h", "mov rsi, fs:28h", "mov [rbp+var_8], rsi", "lea rsi, [rbp+var_110]", "call sub_1A980", "test eax, eax", "mov eax, 0", "jnz short loc_11B72"], "succs": [[1, "fall"], [4, "jump"]]}, {"id": 1, "start": 72535, "end": 72545, "lines": ["cmp word ptr [rbp+var_110], 43h ; 'C'", "jz short loc_11B72"], "succs": [[2, "fall"], [4, "jump"]]}, {"id": 2, "start": 72545, "end": 72557, "lines": ["cmp [rbp+var_110], 49534F50h", "jz short loc_11B88"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 72557, "end": 72562, "lines": ["mov eax, 1"], "succs": [[4, "fall"]]}, {"id": 4, "start": 72562, "end": 72577, "lines": ["mov rdx, [rbp+var_8]", "sub rdx, fs:28h", "jnz short loc_11B96"], "succs": [[5, "fall"], [8, "jump"]]}, {"id": 5, "start": 72577, "end": 72579, "lines": ["leave", "retn"], "succs": []}, {"id": 6, "start": 72584, "end": 72596, "lines": ["xor eax, eax", "cmp [rbp+var_10C], 58h ; 'X'", "jnz short loc_11B6D"], "succs": [[3, "jump"], [7, "fall"]]}, {"id": 7, "start": 72596, "end": 72598, "lines": ["jmp short loc_11B72"], "succs": [[4, "jump"]]}, {"id": 8, "start": 72598, "end": 72604, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_13F60", "ea": 81760, "blocks": [{"id": 0, "start": 81760, "end": 81787, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r14", "push rbx", "sub rsp, 10h", "mov rcx, cs:qword_29420", "test rcx, rcx", "jnz short loc_13F89"], "succs": [[1, "fall"], [3, "jump"]]}, {"id": 1, "start": 81787, "end": 81789, "lines": ["jmp short loc_13FA8"], "succs": [[5, "jump"]]}, {"id": 2, "start": 81792, "end": 81801, "lines": ["mov rcx, [rcx+8]", "test rcx, rcx", "jz short loc_13FA8"], "succs": [[3, "fall"], [5, "jump"]]}, {"id": 3, "start": 81801, "end": 81805, "lines": ["cmp [rcx], edi", "jnz short loc_13F80"], "succs": [[2, "jump"], [4, "fall"]]}, {"id": 4, "start": 81805, "end": 81828, "lines": ["xor edx, edx", "lea rax, [rcx+10h]", "cmp byte ptr [rcx+10h], 0", "cmovz rax, rdx", "add rsp, 10h", "pop rbx", "pop r14", "pop rbp", "retn"], "succs": []}, {"id": 5, "start": 81832, "end": 81846, "lines": ["mov r14d, edi", "call cs:getpwuid_ptr", "test rax, rax", "jz short loc_1400B"], "succs": [[6, "fall"], [8, "jump"]]}, {"id": 6, "start": 81846, "end": 81873, "lines": ["mov rax, [rax]", "mov rdi, rax; s", "mov rbx, rax", "call cs:strlen_ptr", "lea rdi, [rax+18h]", "and rdi, 0FFFFFFFFFFFFFFF8h", "lea rdx, [rdi-10h]"], "succs": [[7, "fall"]]}, {"id": 7, "start": 81873, "end": 81931, "lines": ["mov [rbp+var_20], rdx", "call sub_1B7F0", "mov rdx, [rbp+var_20]", "mov rsi, rbx", "mov [rax], r14d", "lea rdi, [rax+10h]", "mov [rbp+var_18], rax", "call cs:__strcpy_chk_ptr", "mov rax, cs:qword_29420", "mov rcx, [rbp+var_18]", "mov [rcx+8], rax", "mov cs:qword_29420, rcx", "jmp short loc_13F8D"], "succs": [[4, "jump"]]}, {"id": 8, "start": 81931, "end": 81950, "lines": ["mov edx, 8", "mov edi, 18h", "lea rbx, accept+3; \"\"", "jmp short loc_13FD1"], "succs": [[7, "jump"]]}]}, {"name": "sub_14160", "ea": 82272, "blocks": [{"id": 0, "start": 82272, "end": 82299, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r14", "push rbx", "sub rsp, 10h", "mov rcx, cs:qword_29410", "test rcx, rcx", "jnz short loc_14189"], "succs": [[1, "fall"], [3, "jump"]]}, {"id": 1, "start": 82299, "end": 82301, "lines": ["jmp short loc_141A8"], "succs": [[5, "jump"]]}, {"id": 2, "start": 82304, "end": 82313, "lines": ["mov rcx, [rcx+8]", "test rcx, rcx", "jz short loc_141A8"], "succs": [[3, "fall"], [5, "jump"]]}, {"id": 3, "start": 82313, "end": 82317, "lines": ["cmp [rcx], edi", "jnz short loc_14180"], "succs": [[2, "jump"], [4, "fall"]]}, {"id": 4, "start": 82317, "end": 82340, "lines": ["xor edx, edx", "lea rax, [rcx+10h]", "cmp byte ptr [rcx+10h], 0", "cmovz rax, rdx", "add rsp, 10h", "pop rbx", "pop r14", "pop rbp", "retn"], "succs": []}, {"id": 5, "start": 82344, "end": 82358, "lines": ["mov r14d, edi", "call cs:getgrgid_ptr", "test rax, rax", "jz short loc_1420B"], "succs": [[6, "fall"], [8, "jump"]]}, {"id": 6, "start": 82358, "end": 82385, "lines": ["mov rax, [rax]", "mov rdi, rax; s", "mov rbx, rax", "call cs:strlen_ptr", "lea rdi, [rax+18h]", "and rdi, 0FFFFFFFFFFFFFFF8h", "lea rdx, [rdi-10h]"], "succs": [[7, "fall"]]}, {"id": 7, "start": 82385, "end": 82443, "lines": ["mov [rbp+var_20], rdx", "call sub_1B7F0", "mov rdx, [rbp+var_20]", "mov rsi, rbx", "mov [rax], r14d", "lea rdi, [rax+10h]", "mov [rbp+var_18], rax", "call cs:__strcpy_chk_ptr", "mov rax, cs:qword_29410", "mov rcx, [rbp+var_18]", "mov [rcx+8], rax", "mov cs:qword_29410, rcx", "jmp short loc_1418D"], "succs": [[4, "jump"]]}, {"id": 8, "start": 82443, "end": 82462, "lines": ["mov edx, 8", "mov edi, 18h", "lea rbx, accept+3; \"\"", "jmp short loc_141D1"], "succs": [[7, "jump"]]}]}, {"name": "sub_15320", "ea": 86816, "blocks": [{"id": 0, "start": 86816, "end": 86845, "lines": ["endbr64", "mov eax, esi", "mov esi, edx", "mov r8d, ecx", "lea edx, [rax-76Dh]", "cmp edx, 0C6h", "ja loc_15410"], "succs": [[1, "fall"], [8, "jump"]]}, {"id": 1, "start": 86845, "end": 86856, "lines": ["mov edx, esi", "sub edx, 2", "js loc_15400"], "succs": [[2, "fall"], [7, "jump"]]}, {"id": 2, "start": 86856, "end": 86859, "lines": ["lea esi, [rax+1]"], "succs": [[3, "fall"]]}, {"id": 3, "start": 86859, "end": 86904, "lines": ["imul edx, 99h", "add edx, 2", "movsxd rcx, edx", "sar edx, 1Fh", "imul rcx, 66666667h", "sar rcx, 21h", "sub ecx, edx", "lea ecx, [rcx+r8-1]", "mov r8d, 16Dh", "test sil, 3", "jnz short loc_153AB"], "succs": [[4, "fall"], [6, "jump"]]}, {"id": 4, "start": 86904, "end": 86932, "lines": ["imul edx, esi, 0C28F5C29h", "mov r8d, 16Eh", "mov r9d, edx", "ror r9d, 2", "cmp r9d, 28F5C28h", "ja short loc_153AB"], "succs": [[5, "fall"], [6, "jump"]]}, {"id": 5, "start": 86932, "end": 86955, "lines": ["ror edx, 4", "xor r8d, r8d", "cmp edx, 0A3D70Ah", "setbe r8b", "add r8d, 16Dh"], "succs": [[6, "fall"]]}, {"id": 6, "start": 86955, "end": 87034, "lines": ["add ecx, 0ABh", "mov edx, ecx", "sub edx, r8d", "cmp ecx, r8d", "cmovge eax, esi", "cmovl edx, ecx", "sub eax, 8", "mov ecx, edx", "mov [rdi], eax", "movsxd rax, edx", "sar ecx, 1Fh", "imul rax, 0FFFFFFFF88888889h", "shr rax, 20h", "add eax, edx", "sar eax, 4", "sub eax, ecx", "mov [rdi+4], eax", "imul eax, 1Eh", "sub edx, eax", "lea rax, off_27720", "add edx, 1", "mov [rdi+10h], rax", "xor eax, eax", "mov [rdi+8], edx", "retn"], "succs": []}, {"id": 7, "start": 87040, "end": 87053, "lines": ["lea edx, [rsi+0Ah]", "mov esi, eax", "sub eax, 1", "jmp loc_1534B"], "succs": [[3, "jump"]]}, {"id": 8, "start": 87056, "end": 87062, "lines": ["mov eax, 0FFFFFFFFh", "retn"], "succs": []}]}, {"name": "sub_1B580", "ea": 112000, "blocks": [{"id": 0, "start": 112000, "end": 112050, "lines": ["endbr64", "push rbp", "mov r10, rsi", "mov r11, rdx", "xor r9d, r9d", "mov rbp, rsp", "push rbx", "mov rbx, rcx", "sub rsp, 68h", "mov rcx, fs:28h", "mov [rbp+var_18], rcx", "mov rcx, r8", "lea r8, [rbp+var_70]", "mov rsi, r8", "jmp short loc_1B5DC"], "succs": [[3, "jump"]]}, {"id": 1, "start": 112056, "end": 112078, "lines": ["mov edx, eax", "add eax, 8", "add rdx, [rcx+10h]", "mov [rcx], eax", "mov rax, [rdx]", "mov [rsi], rax", "test rax, rax", "jz short loc_1B600"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 112078, "end": 112092, "lines": ["add r9, 1", "add rsi, 8", "cmp r9, 0Ah", "jz short loc_1B600"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 112092, "end": 112099, "lines": ["mov eax, [rcx]", "cmp eax, 2Fh ; '/'", "jbe short loc_1B5B8"], "succs": [[1, "jump"], [4, "fall"]]}, {"id": 4, "start": 112099, "end": 112122, "lines": ["mov rdx, [rcx+8]", "lea rax, [rdx+8]", "mov [rcx+8], rax", "mov rax, [rdx]", "mov [rsi], rax", "test rax, rax", "jnz short loc_1B5CE"], "succs": [[2, "jump"], [5, "fall"]]}, {"id": 5, "start": 112122, "end": 112128, "lines": ["nop word ptr [rax+rax+00h]"], "succs": [[6, "fall"]]}, {"id": 6, "start": 112128, "end": 112157, "lines": ["mov rcx, rbx", "mov rdx, r11", "mov rsi, r10", "call sub_1B050", "mov rax, [rbp+var_18]", "sub rax, fs:28h", "jnz short loc_1B623"], "succs": [[7, "fall"], [8, "jump"]]}, {"id": 7, "start": 112157, "end": 112163, "lines": ["mov rbx, [rbp+var_8]", "leave", "retn"], "succs": []}, {"id": 8, "start": 112163, "end": 112169, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_1B630", "ea": 112176, "blocks": [{"id": 0, "start": 112176, "end": 112280, "lines": ["endbr64", "push rbp", "mov r10, rsi", "mov r11, rdx", "mov rbp, rsp", "push rbx", "mov rbx, rcx", "mov ecx, 20h ; ' '", "lea rsi, [rbp+arg_0]", "sub rsp, 0B8h", "mov [rbp+var_20], r8", "lea r8, [rbp+var_A0]", "mov [rbp+var_18], r9", "xor r9d, r9d", "mov rax, fs:28h", "mov [rbp+var_48], rax", "xor eax, eax", "lea rax, [rbp+arg_0]", "mov [rbp+var_B8], 20h ; ' '", "mov [rbp+var_B0], rax", "lea rax, [rbp+var_40]", "mov [rbp+var_A8], rax", "mov rax, r8", "jmp short loc_1B6C3"], "succs": [[3, "jump"]]}, {"id": 1, "start": 112288, "end": 112309, "lines": ["mov edx, ecx", "add ecx, 8", "lea rdx, [rbp+rdx+var_40]", "mov rdx, [rdx]", "mov [rax], rdx", "test rdx, rdx", "jz short loc_1B6E0"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 112309, "end": 112323, "lines": ["add r9, 1", "add rax, 8", "cmp r9, 0Ah", "jz short loc_1B6E0"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 112323, "end": 112328, "lines": ["cmp ecx, 2Fh ; '/'", "jbe short loc_1B6A0"], "succs": [[1, "jump"], [4, "fall"]]}, {"id": 4, "start": 112328, "end": 112346, "lines": ["mov rdx, rsi", "add rsi, 8", "mov rdx, [rdx]", "mov [rax], rdx", "test rdx, rdx", "jnz short loc_1B6B5"], "succs": [[2, "jump"], [5, "fall"]]}, {"id": 5, "start": 112346, "end": 112352, "lines": ["nop word ptr [rax+rax+00h]"], "succs": [[6, "fall"]]}, {"id": 6, "start": 112352, "end": 112381, "lines": ["mov rcx, rbx", "mov rdx, r11", "mov rsi, r10", "call sub_1B050", "mov rax, [rbp+var_48]", "sub rax, fs:28h", "jnz short loc_1B703"], "succs": [[7, "fall"], [8, "jump"]]}, {"id": 7, "start": 112381, "end": 112387, "lines": ["mov rbx, [rbp+var_8]", "leave", "retn"], "succs": []}, {"id": 8, "start": 112387, "end": 112393, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_1C810", "ea": 116752, "blocks": [{"id": 0, "start": 116752, "end": 116773, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "sub rsp, 10h", "cmp edi, 6", "jz loc_353D"], "succs": [[1, "fall"], [8, "jump"]]}, {"id": 1, "start": 116773, "end": 116779, "lines": ["cmp rsi, 0FFFFFFFFFFFFFFFFh", "jz short loc_1C860"], "succs": [[2, "fall"], [5, "jump"]]}, {"id": 2, "start": 116779, "end": 116806, "lines": ["mov [rbp+var_C], edi", "shl edi, 10h", "or edi, 0FFFFh; item", "mov [rbp+var_8], rsi", "call cs:nl_langinfo_l_ptr", "cmp byte ptr [rax], 0", "jnz short locret_1C856"], "succs": [[3, "fall"], [4, "jump"]]}, {"id": 3, "start": 116806, "end": 116822, "lines": ["movsxd rdx, [rbp+var_C]", "mov rsi, [rbp+var_8]", "mov rax, [rsi+rdx*8+80h]"], "succs": [[4, "fall"]]}, {"id": 4, "start": 116822, "end": 116829, "lines": ["leave", "mov edx, 3", "retn"], "succs": []}, {"id": 5, "start": 116832, "end": 116843, "lines": ["call sub_1A990", "test rax, rax", "jz short locret_1C878"], "succs": [[6, "fall"], [7, "jump"]]}, {"id": 6, "start": 116843, "end": 116850, "lines": ["leave", "mov edx, 1", "retn"], "succs": []}, {"id": 7, "start": 116856, "end": 116868, "lines": ["leave", "mov rdx, rax", "lea rax, accept+3; \"\"", "retn"], "succs": []}, {"id": 8, "start": 13629, "end": 13635, "lines": ["call cs:abort_ptr"], "succs": []}]}, {"name": "sub_313D", "ea": 12605, "blocks": [{"id": 0, "start": 12605, "end": 12646, "lines": ["push rbp", "mov rbp, rsp", "push r12", "mov r12d, esi", "mov esi, 2", "push rbx", "mov ebx, edi", "mov rdi, cs:stderr", "call cs:__vfprintf_chk_ptr", "inc cs:error_message_count", "test r12d, r12d", "jz short loc_316E"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 12646, "end": 12654, "lines": ["mov edi, r12d", "call sub_30C0"], "succs": [[2, "fall"]]}, {"id": 2, "start": 12654, "end": 12671, "lines": ["mov rdi, cs:stderr; _IO_FILE *", "mov rax, [rdi+28h]", "cmp rax, [rdi+30h]", "jb short loc_318C"], "succs": [[3, "fall"], [4, "jump"]]}, {"id": 3, "start": 12671, "end": 12684, "lines": ["mov esi, 0Ah; int", "call cs:__overflow_ptr", "jmp short loc_3197"], "succs": [[5, "jump"]]}, {"id": 4, "start": 12684, "end": 12695, "lines": ["lea rdx, [rax+1]", "mov [rdi+28h], rdx", "mov byte ptr [rax], 0Ah"], "succs": [[5, "fall"]]}, {"id": 5, "start": 12695, "end": 12712, "lines": ["mov rdi, cs:stderr; stream", "call cs:fflush_unlocked_ptr", "test ebx, ebx", "jz short loc_31B0"], "succs": [[6, "fall"], [7, "jump"]]}, {"id": 6, "start": 12712, "end": 12720, "lines": ["mov edi, ebx; status", "call cs:exit_ptr"], "succs": []}, {"id": 7, "start": 12720, "end": 12725, "lines": ["pop rbx", "pop r12", "pop rbp", "retn"], "succs": []}]}, {"name": "sub_6040", "ea": 24640, "blocks": [{"id": 0, "start": 24640, "end": 24700, "lines": ["push rbp", "or ch, 8", "mov rbp, rsp", "push r12", "push rbx", "mov rbx, rdx", "mov edx, ecx", "sub rsp, 110h", "mov r12, fs:28h", "mov [rbp+var_18], r12", "mov r12d, r8d", "lea r8, [rbp+var_120]", "mov ecx, r12d", "call cs:statx_ptr", "mov ecx, eax", "test eax, eax", "jns short loc_60A0"], "succs": [[1, "fall"], [3, "jump"]]}, {"id": 1, "start": 24700, "end": 24719, "lines": ["mov rax, [rbp+var_18]", "sub rax, fs:28h", "jnz loc_620D"], "succs": [[2, "fall"], [7, "jump"]]}, {"id": 2, "start": 24719, "end": 24733, "lines": ["add rsp, 110h", "mov eax, ecx", "pop rbx", "pop r12", "pop rbp", "retn"], "succs": []}, {"id": 3, "start": 24736, "end": 25042, "lines": ["mov edx, [rbp+var_98]", "mov eax, [rbp+var_94]", "mov rsi, 0FFFFF00000000000h", "movd xmm3, [rbp+var_10C]", "movd xmm1, [rbp+var_11C]", "mov rdi, rdx", "shl rdx, 20h", "movd xmm2, [rbp+var_D8]", "shl rdi, 8", "and rdx, rsi", "and edi, 0FFF00h", "or rdx, rdi", "movzx edi, al", "shl rax, 0Ch", "or rdx, rdi", "mov rdi, 0FFFFFF00000h", "and rax, rdi", "or rax, rdx", "mov edx, [rbp+var_A0]", "movq xmm0, rax", "movzx eax, [rbp+var_104]", "movhps xmm0, [rbp+var_100]", "movups xmmword ptr [rbx], xmm0", "mov r8, rdx", "shl rdx, 20h", "movd xmm0, eax", "mov eax, [rbp+var_110]", "shl r8, 8", "and rdx, rsi", "and r8d, 0FFF00h", "punpckldq xmm0, xmm3", "mov [rbx+10h], rax", "mov eax, [rbp+var_108]", "or rdx, r8", "movq qword ptr [rbx+18h], xmm0", "movq xmm0, [rbp+var_F8]", "mov [rbx+20h], eax", "mov eax, [rbp+var_9C]", "punpcklqdq xmm0, xmm1", "movd xmm1, [rbp+var_A8]", "movzx esi, al", "shl rax, 0Ch", "movups xmmword ptr [rbx+30h], xmm0", "movq xmm0, [rbp+var_B0]", "or rdx, rsi", "and rax, rdi", "or rax, rdx", "punpcklqdq xmm0, xmm1", "and r12d, 800h", "movq xmm1, [rbp+var_E0]", "mov [rbx+28h], rax", "mov rax, [rbp+var_F0]", "punpcklqdq xmm1, xmm2", "movups xmmword ptr [rbx+58h], xmm0", "mov [rbx+40h], rax", "mov rax, [rbp+var_C0]", "movups xmmword ptr [rbx+48h], xmm1", "mov [rbx+68h], rax", "mov eax, [rbp+var_B8]", "mov [rbx+70h], rax", "jz loc_607C"], "succs": [[1, "jump"], [4, "fall"]]}, {"id": 4, "start": 25042, "end": 25051, "lines": ["test [rbp+var_11F], 8", "jz short loc_6200"], "succs": [[5, "fall"], [6, "jump"]]}, {"id": 5, "start": 25051, "end": 25080, "lines": ["movq xmm0, [rbp+var_D0]", "movd xmm1, [rbp+var_C8]", "punpcklqdq xmm0, xmm1", "movups xmmword ptr [rbx+58h], xmm0", "jmp loc_607C"], "succs": [[1, "jump"]]}, {"id": 6, "start": 25088, "end": 25101, "lines": ["pcmpeqd xmm0, xmm0", "movups xmmword ptr [rbx+58h], xmm0", "jmp loc_607C"], "succs": [[1, "jump"]]}, {"id": 7, "start": 25101, "end": 25107, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_6E20", "ea": 28192, "blocks": [{"id": 0, "start": 28192, "end": 28211, "lines": ["push rbp", "cmp cs:byte_29310, 0", "mov rbp, rsp", "push r14", "push rbx", "mov rbx, rdi", "jz short loc_6E50"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 28211, "end": 28240, "lines": ["mov rsi, [rbx]; size", "mov rdi, [rbx+8]; ptr", "mov edx, 1; n", "pop rbx", "mov rcx, cs:stdout; stream", "pop r14", "pop rbp", "jmp cs:fwrite_unlocked_ptr"], "succs": [[7, "jump"]]}, {"id": 2, "start": 28240, "end": 28262, "lines": ["mov cs:byte_29310, 1", "mov edi, 1; fd", "call cs:tcgetpgrp_ptr", "test eax, eax", "jns short loc_6E80"], "succs": [[3, "fall"], [5, "jump"]]}, {"id": 3, "start": 28262, "end": 28272, "lines": ["cmp cs:qword_28088, 0", "jz short loc_6E90"], "succs": [[4, "fall"], [6, "jump"]]}, {"id": 4, "start": 28272, "end": 28286, "lines": ["lea rdi, unk_28080", "call sub_6E20", "jmp short loc_6E33"], "succs": [[1, "jump"]]}, {"id": 5, "start": 28288, "end": 28300, "lines": ["mov edi, 1", "call sub_6B60", "jmp short loc_6E66"], "succs": [[3, "jump"]]}, {"id": 6, "start": 28304, "end": 28345, "lines": ["lea rdi, qword_28060", "call sub_6E20", "lea rdi, unk_28090", "call sub_6E20", "lea rdi, qword_28070", "call sub_6E20", "jmp loc_6E33"], "succs": [[1, "jump"]]}, {"id": 7, "start": 170016, "end": 170016, "lines": [], "succs": []}]}, {"name": "sub_7F20", "ea": 32544, "blocks": [{"id": 0, "start": 32544, "end": 32577, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r12", "mov r12, rsi", "push rbx", "mov rbx, rdi", "sub rsp, 10h", "mov rax, [rdi+0C8h]", "test rax, rax", "jz short loc_7F80"], "succs": [[1, "fall"], [5, "jump"]]}, {"id": 1, "start": 32577, "end": 32592, "lines": ["mov rdx, [r12+0C8h]", "mov ecx, eax", "test rdx, rdx", "jz short loc_7FA4"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 32592, "end": 32596, "lines": ["sub ecx, edx", "jnz short loc_7F70"], "succs": [[3, "fall"], [4, "jump"]]}, {"id": 3, "start": 32596, "end": 32617, "lines": ["mov rsi, [r12]; s2", "mov rdi, [rbx]; s1", "add rsp, 10h", "pop rbx", "pop r12", "pop rbp", "jmp cs:strcmp_ptr"], "succs": [[7, "jump"]]}, {"id": 4, "start": 32624, "end": 32635, "lines": ["add rsp, 10h", "mov eax, ecx", "pop rbx", "pop r12", "pop rbp", "retn"], "succs": []}, {"id": 5, "start": 32640, "end": 32676, "lines": ["mov edx, [rdi+0C4h]", "mov rsi, cs:qword_292D0", "mov rdi, [rdi]", "call sub_7430", "mov rdx, [r12+0C8h]", "mov ecx, eax", "test rdx, rdx", "jnz short loc_7F50"], "succs": [[2, "jump"], [6, "fall"]]}, {"id": 6, "start": 32676, "end": 32711, "lines": ["mov edx, [r12+0C4h]", "mov rdi, [r12]", "mov [rbp+var_14], eax", "mov rsi, cs:qword_292D0", "call sub_7430", "mov ecx, [rbp+var_14]", "mov rdx, rax", "jmp short loc_7F50"], "succs": [[2, "jump"]]}, {"id": 7, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_8750", "ea": 34640, "blocks": [{"id": 0, "start": 34640, "end": 34673, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r12", "mov r12, rsi", "push rbx", "mov rbx, rdi", "sub rsp, 10h", "mov rax, [rsi+0C8h]", "test rax, rax", "jz short loc_87C0"], "succs": [[1, "fall"], [5, "jump"]]}, {"id": 1, "start": 34673, "end": 34687, "lines": ["mov rdx, [rbx+0C8h]", "mov ecx, eax", "test rdx, rdx", "jz short loc_87E3"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 34687, "end": 34691, "lines": ["sub ecx, edx", "jnz short loc_87B0"], "succs": [[3, "fall"], [4, "jump"]]}, {"id": 3, "start": 34691, "end": 34730, "lines": ["call cs:__errno_location_ptr", "mov r12, [r12]", "mov rbx, [rbx]", "mov dword ptr [rax], 0", "add rsp, 10h", "mov rsi, rbx; s2", "mov rdi, r12; s1", "pop rbx", "pop r12", "pop rbp", "jmp cs:strcoll_ptr"], "succs": [[7, "jump"]]}, {"id": 4, "start": 34736, "end": 34747, "lines": ["add rsp, 10h", "mov eax, ecx", "pop rbx", "pop r12", "pop rbp", "retn"], "succs": []}, {"id": 5, "start": 34752, "end": 34787, "lines": ["mov edx, [rsi+0C4h]", "mov rdi, [rsi]", "mov rsi, cs:qword_292D0", "call sub_7430", "mov rdx, [rbx+0C8h]", "mov ecx, eax", "test rdx, rdx", "jnz short loc_877F"], "succs": [[2, "jump"], [6, "fall"]]}, {"id": 6, "start": 34787, "end": 34822, "lines": ["mov edx, [rbx+0C4h]", "mov rdi, [rbx]", "mov [rbp+var_14], eax", "mov rsi, cs:qword_292D0", "call sub_7430", "mov ecx, [rbp+var_14]", "mov rdx, rax", "jmp loc_877F"], "succs": [[2, "jump"]]}, {"id": 7, "start": 169992, "end": 169992, "lines": [], "succs": []}]}, {"name": "sub_8810", "ea": 34832, "blocks": [{"id": 0, "start": 34832, "end": 34865, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r12", "mov r12, rdi", "push rbx", "mov rbx, rsi", "sub rsp, 10h", "mov rax, [rdi+0C8h]", "test rax, rax", "jz short loc_8880"], "succs": [[1, "fall"], [5, "jump"]]}, {"id": 1, "start": 34865, "end": 34879, "lines": ["mov rdx, [rbx+0C8h]", "mov ecx, eax", "test rdx, rdx", "jz short loc_88A3"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 34879, "end": 34883, "lines": ["sub ecx, edx", "jnz short loc_8870"], "succs": [[3, "fall"], [4, "jump"]]}, {"id": 3, "start": 34883, "end": 34922, "lines": ["call cs:__errno_location_ptr", "mov r12, [r12]", "mov rbx, [rbx]", "mov dword ptr [rax], 0", "add rsp, 10h", "mov rsi, rbx; s2", "mov rdi, r12; s1", "pop rbx", "pop r12", "pop rbp", "jmp cs:strcoll_ptr"], "succs": [[7, "jump"]]}, {"id": 4, "start": 34928, "end": 34939, "lines": ["add rsp, 10h", "mov eax, ecx", "pop rbx", "pop r12", "pop rbp", "retn"], "succs": []}, {"id": 5, "start": 34944, "end": 34979, "lines": ["mov edx, [rdi+0C4h]", "mov rsi, cs:qword_292D0", "mov rdi, [rdi]", "call sub_7430", "mov rdx, [rbx+0C8h]", "mov ecx, eax", "test rdx, rdx", "jnz short loc_883F"], "succs": [[2, "jump"], [6, "fall"]]}, {"id": 6, "start": 34979, "end": 35014, "lines": ["mov edx, [rbx+0C4h]", "mov rdi, [rbx]", "mov [rbp+var_14], eax", "mov rsi, cs:qword_292D0", "call sub_7430", "mov ecx, [rbp+var_14]", "mov rdx, rax", "jmp loc_883F"], "succs": [[2, "jump"]]}, {"id": 7, "start": 169992, "end": 169992, "lines": [], "succs": []}]}, {"name": "sub_88D0", "ea": 35024, "blocks": [{"id": 0, "start": 35024, "end": 35044, "lines": ["push rbp", "mov rbp, rsp", "push r12", "push rbx", "sub rsp, 10h", "test rdi, rdi", "jz loc_8988"], "succs": [[1, "fall"], [7, "jump"]]}, {"id": 1, "start": 35044, "end": 35136, "lines": ["mov r12, rdi", "mov esi, 3", "mov [rbp+var_14], edx", "xor ebx, ebx", "call sub_14C90", "mov edx, [rbp+var_14]", "mov rdi, r12; s", "mov ecx, eax", "sub edx, eax", "test eax, eax", "cmovns ebx, edx", "xor eax, eax", "test ebx, ebx", "cmovns eax, ebx", "test ecx, ecx", "cmovns ebx, eax", "call cs:strlen_ptr", "mov rdi, r12", "mov rsi, rax", "call sub_6450", "nop dword ptr [rax+00000000h]", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]"], "succs": [[2, "fall"]]}, {"id": 2, "start": 35136, "end": 35161, "lines": ["mov rdi, cs:stdout; _IO_FILE *", "add cs:qword_291F8, 1", "mov rax, [rdi+28h]", "cmp rax, [rdi+30h]", "jnb short loc_8978"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 35161, "end": 35172, "lines": ["lea rdx, [rax+1]", "mov [rdi+28h], rdx", "mov byte ptr [rax], 20h ; ' '"], "succs": [[4, "fall"]]}, {"id": 4, "start": 35172, "end": 35177, "lines": ["sub ebx, 1", "jnb short loc_8940"], "succs": [[2, "jump"], [5, "fall"]]}, {"id": 5, "start": 35177, "end": 35186, "lines": ["add rsp, 10h", "pop rbx", "pop r12", "pop rbp", "retn"], "succs": []}, {"id": 6, "start": 35192, "end": 35205, "lines": ["mov esi, 20h ; ' '; int", "call cs:__overflow_ptr", "jmp short loc_8964"], "succs": [[4, "jump"]]}, {"id": 7, "start": 35208, "end": 35249, "lines": ["mov rcx, rsi", "mov edi, 2", "xor eax, eax", "lea rsi, aJuJu+6; \"%*ju \"", "call cs:__printf_chk_ptr", "cdqe", "add cs:qword_291F8, rax", "add rsp, 10h", "pop rbx", "pop r12", "pop rbp", "retn"], "succs": []}]}, {"name": "sub_8AE0", "ea": 35552, "blocks": [{"id": 0, "start": 35552, "end": 35585, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r12", "mov r12, rdi", "push rbx", "mov rbx, rsi", "sub rsp, 10h", "mov rax, [rsi+0C8h]", "test rax, rax", "jz short loc_8B40"], "succs": [[1, "fall"], [5, "jump"]]}, {"id": 1, "start": 35585, "end": 35600, "lines": ["mov rdx, [r12+0C8h]", "mov ecx, eax", "test rdx, rdx", "jz short loc_8B64"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 35600, "end": 35604, "lines": ["sub ecx, edx", "jnz short loc_8B30"], "succs": [[3, "fall"], [4, "jump"]]}, {"id": 3, "start": 35604, "end": 35625, "lines": ["mov rsi, [r12]; s2", "mov rdi, [rbx]; s1", "add rsp, 10h", "pop rbx", "pop r12", "pop rbp", "jmp cs:strcmp_ptr"], "succs": [[7, "jump"]]}, {"id": 4, "start": 35632, "end": 35643, "lines": ["add rsp, 10h", "mov eax, ecx", "pop rbx", "pop r12", "pop rbp", "retn"], "succs": []}, {"id": 5, "start": 35648, "end": 35684, "lines": ["mov edx, [rsi+0C4h]", "mov rdi, [rsi]", "mov rsi, cs:qword_292D0", "call sub_7430", "mov rdx, [r12+0C8h]", "mov ecx, eax", "test rdx, rdx", "jnz short loc_8B10"], "succs": [[2, "jump"], [6, "fall"]]}, {"id": 6, "start": 35684, "end": 35719, "lines": ["mov edx, [r12+0C4h]", "mov rdi, [r12]", "mov [rbp+var_14], eax", "mov rsi, cs:qword_292D0", "call sub_7430", "mov ecx, [rbp+var_14]", "mov rdx, rax", "jmp short loc_8B10"], "succs": [[2, "jump"]]}, {"id": 7, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_FAA0", "ea": 64160, "blocks": [{"id": 0, "start": 64160, "end": 64169, "lines": ["endbr64", "cmp rdi, rsi", "jz short loc_FB20"], "succs": [[1, "fall"], [7, "jump"]]}, {"id": 1, "start": 64169, "end": 64174, "lines": ["test rdx, rdx", "jz short loc_FB20"], "succs": [[2, "fall"], [7, "jump"]]}, {"id": 2, "start": 64174, "end": 64194, "lines": ["push rbp", "mov r11, rdi", "sub rdx, 1", "xor r8d, r8d", "mov rbp, rsp", "push rbx", "mov rbx, rsi", "jmp short loc_FAD5"], "succs": [[5, "jump"]]}, {"id": 3, "start": 64200, "end": 64208, "lines": ["add r8, 1", "test eax, eax", "jz short loc_FB12"], "succs": [[4, "fall"], [6, "jump"]]}, {"id": 4, "start": 64208, "end": 64213, "lines": ["cmp sil, cl", "jnz short loc_FB12"], "succs": [[5, "fall"], [6, "jump"]]}, {"id": 5, "start": 64213, "end": 64274, "lines": ["movzx eax, byte ptr [r11+r8]", "lea ecx, [rax-41h]", "mov esi, eax", "lea edi, [rax+20h]", "cmp ecx, 19h", "cmovbe eax, edi", "lea edi, [rsi+20h]", "cmovbe esi, edi", "movzx edi, byte ptr [rbx+r8]", "lea r9d, [rdi-41h]", "mov ecx, edi", "lea r10d, [rdi+20h]", "cmp r9d, 19h", "cmovbe edi, r10d", "lea r10d, [rcx+20h]", "cmovbe ecx, r10d", "cmp r8, rdx", "jnz short loc_FAC8"], "succs": [[3, "jump"], [6, "fall"]]}, {"id": 6, "start": 64274, "end": 64282, "lines": ["mov rbx, [rbp-8]", "sub eax, edi", "leave", "retn"], "succs": []}, {"id": 7, "start": 64288, "end": 64291, "lines": ["xor eax, eax", "retn"], "succs": []}]}, {"name": "sub_10E80", "ea": 69248, "blocks": [{"id": 0, "start": 69248, "end": 69257, "lines": ["endbr64", "test rdi, rdi", "jz short locret_10F08"], "succs": [[1, "fall"], [5, "jump"]]}, {"id": 1, "start": 69257, "end": 69340, "lines": ["push rbp", "mov rbp, rsp", "push r15", "mov r15, rsi", "push r14", "mov r14, rdi", "mov edi, 18h", "push rbx", "sub rsp, 18h", "mov [rbp-28h], rdx", "call sub_1B7F0", "mov rdi, r15", "mov rbx, rax", "call sub_1BC60", "mov rdx, [rbp-28h]", "mov rsi, rbx", "mov rdi, r14", "mov [rbx], rax", "movdqu xmm0, xmmword ptr [rdx]", "shufpd xmm0, xmm0, 1", "movups xmmword ptr [rbx+8], xmm0", "call sub_12CC0", "test rax, rax", "jz short loc_10F09"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 69340, "end": 69345, "lines": ["cmp rbx, rax", "jz short loc_10EF8"], "succs": [[3, "fall"], [4, "jump"]]}, {"id": 3, "start": 69345, "end": 69363, "lines": ["add rsp, 18h", "mov rdi, rbx; ptr", "pop rbx", "pop r14", "pop r15", "pop rbp", "jmp sub_12F50"], "succs": [[7, "jump"]]}, {"id": 4, "start": 69368, "end": 69379, "lines": ["add rsp, 18h", "pop rbx", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}, {"id": 5, "start": 69384, "end": 69385, "lines": ["retn"], "succs": []}, {"id": 6, "start": 69385, "end": 69391, "lines": ["call sub_1BCB0"], "succs": []}, {"id": 7, "start": 77648, "end": 77648, "lines": [], "succs": []}]}, {"name": "sub_119C0", "ea": 72128, "blocks": [{"id": 0, "start": 72128, "end": 72168, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r13", "push r12", "push rbx", "mov rbx, rdi", "lea r13, [rbx+10h]", "sub rsp, 8", "mov rax, [rdi+8]", "mov rdi, [rdi]; ptr", "lea r12, [rax+rax]", "cmp rdi, r13", "jz short loc_119F2"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 72168, "end": 72178, "lines": ["call cs:free_ptr", "mov rax, [rbx+8]"], "succs": [[2, "fall"]]}, {"id": 2, "start": 72178, "end": 72183, "lines": ["cmp r12, rax", "jb short loc_11A20"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 72183, "end": 72197, "lines": ["mov rdi, r12; size", "call cs:malloc_ptr", "test rax, rax", "jz short loc_11A2C"], "succs": [[4, "fall"], [7, "jump"]]}, {"id": 4, "start": 72197, "end": 72202, "lines": ["mov edx, 1"], "succs": [[5, "fall"]]}, {"id": 5, "start": 72202, "end": 72222, "lines": ["mov [rbx], rax", "mov eax, edx", "mov [rbx+8], r12", "add rsp, 8", "pop rbx", "pop r12", "pop r13", "pop rbp", "retn"], "succs": []}, {"id": 6, "start": 72224, "end": 72236, "lines": ["call cs:__errno_location_ptr", "mov dword ptr [rax], 0Ch"], "succs": [[7, "fall"]]}, {"id": 7, "start": 72236, "end": 72249, "lines": ["mov rax, r13", "mov r12d, 400h", "xor edx, edx", "jmp short loc_11A0A"], "succs": [[5, "jump"]]}]}, {"name": "sub_14FA0", "ea": 85920, "blocks": [{"id": 0, "start": 85920, "end": 85930, "lines": ["endbr64", "cmp rsi, 2", "ja short loc_14FF0"], "succs": [[1, "fall"], [6, "jump"]]}, {"id": 1, "start": 85930, "end": 85932, "lines": ["jz short loc_14FB0"], "succs": [[2, "fall"], [3, "jump"]]}, {"id": 2, "start": 85932, "end": 85933, "lines": ["retn"], "succs": []}, {"id": 3, "start": 85936, "end": 85975, "lines": ["push rbp", "mov rbp, rsp", "sub rsp, 20h", "movdqu xmm0, xmmword ptr [rdi]", "mov [rbp-18h], rdi", "movhlps xmm1, xmm0", "movq rdi, xmm0", "movaps xmmword ptr [rbp-10h], xmm0", "movq rsi, xmm1", "call rdx", "test eax, eax", "jle short locret_14FE8"], "succs": [[4, "fall"], [5, "jump"]]}, {"id": 4, "start": 85975, "end": 85992, "lines": ["movdqa xmm0, xmmword ptr [rbp-10h]", "mov rcx, [rbp-18h]", "shufpd xmm0, xmm0, 1", "movups xmmword ptr [rcx], xmm0"], "succs": [[5, "fall"]]}, {"id": 5, "start": 85992, "end": 85994, "lines": ["leave", "retn"], "succs": []}, {"id": 6, "start": 86000, "end": 86012, "lines": ["mov rcx, rdx", "lea rdx, [rdi+rsi*8]", "jmp sub_14CC0"], "succs": [[7, "jump"]]}, {"id": 7, "start": 85184, "end": 85184, "lines": [], "succs": []}]}, {"name": "sub_15000", "ea": 86016, "blocks": [{"id": 0, "start": 86016, "end": 86045, "lines": ["endbr64", "mov eax, 0Ah", "cmp rdi, rax", "cmovnb rax, rdi", "mov rsi, rax", "or rsi, 1", "cmp rsi, 0FFFFFFFFFFFFFFFFh", "jz short loc_1505D"], "succs": [[1, "fall"], [5, "jump"]]}, {"id": 1, "start": 86045, "end": 86048, "lines": ["nop dword ptr [rax]"], "succs": [[2, "fall"]]}, {"id": 2, "start": 86048, "end": 86080, "lines": ["mov r8d, 10h", "mov ecx, 3", "mov edi, 9", "nop dword ptr [rax+rax+00h]", "nop word ptr [rax+rax+00000000h]"], "succs": [[3, "fall"]]}, {"id": 3, "start": 86080, "end": 86093, "lines": ["mov rax, rsi", "xor edx, edx", "div rcx", "test rdx, rdx", "jz short loc_15068"], "succs": [[4, "fall"], [6, "jump"]]}, {"id": 4, "start": 86093, "end": 86109, "lines": ["add rdi, r8", "add rcx, 2", "add r8, 8", "cmp rsi, rdi", "jnb short loc_15040"], "succs": [[3, "jump"], [5, "fall"]]}, {"id": 5, "start": 86109, "end": 86113, "lines": ["mov rax, rsi", "retn"], "succs": []}, {"id": 6, "start": 86120, "end": 86130, "lines": ["add rsi, 2", "cmp rsi, 0FFFFFFFFFFFFFFFFh", "jnz short loc_15020"], "succs": [[2, "jump"], [7, "fall"]]}, {"id": 7, "start": 86130, "end": 86134, "lines": ["mov rax, rsi", "retn"], "succs": []}]}, {"name": "sub_150C0", "ea": 86208, "blocks": [{"id": 0, "start": 86208, "end": 86220, "lines": ["endbr64", "cmp esi, 778h", "jle short loc_15130"], "succs": [[1, "fall"], [7, "jump"]]}, {"id": 1, "start": 86220, "end": 86231, "lines": ["mov [rdi+8], ecx", "cmp esi, 794h", "jg short loc_15100"], "succs": [[2, "fall"], [5, "jump"]]}, {"id": 2, "start": 86231, "end": 86236, "lines": ["cmp edx, 2", "jg short loc_15120"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 86236, "end": 86245, "lines": ["add esi, 21Eh", "add edx, 9"], "succs": [[4, "fall"]]}, {"id": 4, "start": 86245, "end": 86264, "lines": ["lea rax, off_27930", "mov [rdi+4], edx", "mov [rdi+10h], rax", "xor eax, eax", "mov [rdi], esi", "retn"], "succs": []}, {"id": 5, "start": 86272, "end": 86297, "lines": ["add esi, 21Fh", "lea rax, off_27900", "mov [rdi+4], edx", "mov [rdi+10h], rax", "xor eax, eax", "mov [rdi], esi", "retn"], "succs": []}, {"id": 6, "start": 86304, "end": 86315, "lines": ["add esi, 21Fh", "sub edx, 3", "jmp short loc_150E5"], "succs": [[4, "jump"]]}, {"id": 7, "start": 86320, "end": 86326, "lines": ["mov eax, 0FFFFFFFFh", "retn"], "succs": []}]}, {"name": "sub_18320", "ea": 99104, "blocks": [{"id": 0, "start": 99104, "end": 99163, "lines": ["push rbp", "mov edx, 5; category", "mov rbp, rsp", "push r14", "push rbx", "mov rbx, rdi", "sub rsp, 30h", "mov r14, fs:28h", "mov [rbp+var_18], r14", "mov r14d, esi", "mov rsi, rdi; msgid", "lea rdi, domainname; \"gnulib\"", "call cs:dcgettext_ptr", "mov r8, rax", "cmp rbx, rax", "jz short loc_18380"], "succs": [[1, "fall"], [3, "jump"]]}, {"id": 1, "start": 99163, "end": 99182, "lines": ["mov rax, [rbp+var_18]", "sub rax, fs:28h", "jnz loc_183F2"], "succs": [[2, "fall"], [7, "jump"]]}, {"id": 2, "start": 99182, "end": 99194, "lines": ["add rsp, 30h", "mov rax, r8", "pop rbx", "pop r14", "pop rbp", "retn"], "succs": []}, {"id": 3, "start": 99200, "end": 99248, "lines": ["mov [rbp+var_38], rax", "lea rcx, [rbp+var_20]", "lea rdi, [rbp+pc32]; pc32", "mov edx, 3", "mov [rbp+var_20], 0", "lea rsi, byte_222F0; s", "call sub_144B0", "mov r8, [rbp+var_38]", "cmp rax, 3", "jz short loc_183D0"], "succs": [[4, "fall"], [5, "jump"]]}, {"id": 4, "start": 99248, "end": 99272, "lines": ["lea r8, aInvalidSSArgum+19h; \"'\"", "cmp r14d, 9", "lea rax, asc_1F9D3; \"\\\"\"", "cmovz r8, rax", "jmp short loc_1835B"], "succs": [[1, "jump"]]}, {"id": 5, "start": 99280, "end": 99289, "lines": ["cmp [rbp+pc32], 2018h", "jnz short loc_183B0"], "succs": [[4, "jump"], [6, "fall"]]}, {"id": 6, "start": 99289, "end": 99314, "lines": ["xor eax, eax", "cmp byte ptr [r8], 27h ; '''", "lea rcx, byte_222F0", "setz al", "lea r8, [rcx+rax*4]", "jmp loc_1835B"], "succs": [[1, "jump"]]}, {"id": 7, "start": 99314, "end": 99320, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_1A0E0", "ea": 106720, "blocks": [{"id": 0, "start": 106720, "end": 106755, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r13", "push r12", "push rbx", "sub rsp, 8", "mov eax, cs:dword_28238", "mov r13, cs:off_28240", "cmp eax, 1", "jle short loc_1A132"], "succs": [[1, "fall"], [3, "jump"]]}, {"id": 1, "start": 106755, "end": 106784, "lines": ["sub eax, 2", "lea rbx, [r13+18h]", "shl rax, 4", "lea r12, [r13+rax+28h]", "xchg ax, ax", "nop word ptr [rax+rax+00000000h]"], "succs": [[2, "fall"]]}, {"id": 2, "start": 106784, "end": 106802, "lines": ["mov rdi, [rbx]; ptr", "add rbx, 10h", "call cs:free_ptr", "cmp rbx, r12", "jnz short loc_1A120"], "succs": [[3, "fall"], [2, "jump"]]}, {"id": 3, "start": 106802, "end": 106818, "lines": ["mov rdi, [r13+8]; ptr", "lea rbx, unk_29440", "cmp rdi, rbx", "jz short loc_1A15A"], "succs": [[4, "fall"], [5, "jump"]]}, {"id": 4, "start": 106818, "end": 106842, "lines": ["call cs:free_ptr", "mov cs:off_28258, rbx", "mov cs:off_28250, 100h"], "succs": [[5, "fall"]]}, {"id": 5, "start": 106842, "end": 106854, "lines": ["lea rbx, off_28250", "cmp r13, rbx", "jz short loc_1A176"], "succs": [[6, "fall"], [7, "jump"]]}, {"id": 6, "start": 106854, "end": 106870, "lines": ["mov rdi, r13; ptr", "call cs:free_ptr", "mov cs:off_28240, rbx"], "succs": [[7, "fall"]]}, {"id": 7, "start": 106870, "end": 106891, "lines": ["mov cs:dword_28238, 1", "add rsp, 8", "pop rbx", "pop r12", "pop r13", "pop rbp", "retn"], "succs": []}]}, {"name": "sub_1C660", "ea": 116320, "blocks": [{"id": 0, "start": 116320, "end": 116367, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r14", "push rbx", "sub rsp, 10h", "mov [rbp+stream], rdi", "call cs:__fpending_ptr", "mov rdi, [rbp+stream]; stream", "mov r14, rax", "mov ebx, [rdi]", "and ebx, 20h", "call cs:fclose_ptr", "test ebx, ebx", "jnz short loc_1C6B8"], "succs": [[1, "fall"], [5, "jump"]]}, {"id": 1, "start": 116367, "end": 116371, "lines": ["test eax, eax", "jz short loc_1C6A9"], "succs": [[2, "fall"], [4, "jump"]]}, {"id": 2, "start": 116371, "end": 116376, "lines": ["test r14, r14", "jnz short loc_1C6C8"], "succs": [[3, "fall"], [7, "jump"]]}, {"id": 3, "start": 116376, "end": 116393, "lines": ["call cs:__errno_location_ptr", "cmp dword ptr [rax], 9", "setnz al", "movzx eax, al", "neg eax"], "succs": [[4, "fall"]]}, {"id": 4, "start": 116393, "end": 116402, "lines": ["add rsp, 10h", "pop rbx", "pop r14", "pop rbp", "retn"], "succs": []}, {"id": 5, "start": 116408, "end": 116412, "lines": ["test eax, eax", "jnz short loc_1C6C8"], "succs": [[6, "fall"], [7, "jump"]]}, {"id": 6, "start": 116412, "end": 116424, "lines": ["call cs:__errno_location_ptr", "mov dword ptr [rax], 0"], "succs": [[7, "fall"]]}, {"id": 7, "start": 116424, "end": 116431, "lines": ["mov eax, 0FFFFFFFFh", "jmp short loc_1C6A9"], "succs": [[4, "jump"]]}]}, {"name": "sub_14380", "ea": 82816, "blocks": [{"id": 0, "start": 82816, "end": 82849, "lines": ["endbr64", "mov rax, rsi", "mov rcx, rdi", "lea rsi, [rsi+14h]", "mov rdi, 6666666666666667h", "mov byte ptr [rax+14h], 0", "test rcx, rcx", "js short loc_143F8"], "succs": [[1, "fall"], [4, "jump"]]}, {"id": 1, "start": 82849, "end": 82880, "lines": ["nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]"], "succs": [[2, "fall"]]}, {"id": 2, "start": 82880, "end": 82927, "lines": ["mov rax, rcx", "sub rsi, 1", "imul rdi", "mov rax, rcx", "sar rax, 3Fh", "sar rdx, 2", "sub rdx, rax", "lea rax, [rdx+rdx*4]", "add rax, rax", "sub rcx, rax", "add ecx, 30h ; '0'", "mov [rsi], cl", "mov rcx, rdx", "test rdx, rdx", "jnz short loc_143C0"], "succs": [[3, "fall"], [2, "jump"]]}, {"id": 3, "start": 82927, "end": 82931, "lines": ["mov rax, rsi", "retn"], "succs": []}, {"id": 4, "start": 82936, "end": 82944, "lines": ["mov r8, rdi", "nop dword ptr [rax+rax+00h]"], "succs": [[5, "fall"]]}, {"id": 5, "start": 82944, "end": 82991, "lines": ["mov rax, rcx", "mov rdi, rsi", "sub rsi, 1", "imul r8", "mov rax, rcx", "sar rax, 3Fh", "sar rdx, 2", "sub rdx, rax", "lea rax, [rdx+rdx*4]", "lea eax, [rax+rax+30h]", "sub eax, ecx", "mov rcx, rdx", "mov [rsi], al", "test rdx, rdx", "jnz short loc_14400"], "succs": [[6, "fall"], [5, "jump"]]}, {"id": 6, "start": 82991, "end": 83003, "lines": ["mov byte ptr [rsi-1], 2Dh ; '-'", "lea rsi, [rdi-2]", "mov rax, rsi", "retn"], "succs": []}]}, {"name": "sub_1AA60", "ea": 109152, "blocks": [{"id": 0, "start": 109152, "end": 109184, "lines": ["push rbp", "mov rbp, rsp", "push r14", "push r13", "push r12", "push rbx", "mov rbx, rdi", "call cs:__errno_location_ptr", "mov r13d, [rax]", "mov r12, rax", "cmp byte ptr [rbx+8], 0", "jnz short loc_1AAC8"], "succs": [[1, "fall"], [5, "jump"]]}, {"id": 1, "start": 109184, "end": 109201, "lines": ["lea rdi, aTz; \"TZ\"", "call cs:unsetenv_ptr", "test eax, eax", "jz short loc_1AAE2"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 109201, "end": 109216, "lines": ["mov r13d, [r12]", "xor r14d, r14d", "nop dword ptr [rax+rax+00000000h]"], "succs": [[3, "fall"]]}, {"id": 3, "start": 109216, "end": 109233, "lines": ["mov rdi, rbx; ptr", "mov rbx, [rbx]", "call cs:free_ptr", "test rbx, rbx", "jnz short loc_1AAA0"], "succs": [[4, "fall"], [3, "jump"]]}, {"id": 4, "start": 109233, "end": 109249, "lines": ["mov [r12], r13d", "mov eax, r14d", "pop rbx", "pop r12", "pop r13", "pop r14", "pop rbp", "retn"], "succs": []}, {"id": 5, "start": 109256, "end": 109282, "lines": ["lea rsi, [rbx+9]; value", "mov edx, 1; replace", "lea rdi, aTz; \"TZ\"", "call cs:setenv_ptr", "test eax, eax", "jnz short loc_1AA91"], "succs": [[2, "jump"], [6, "fall"]]}, {"id": 6, "start": 109282, "end": 109296, "lines": ["call cs:tzset_ptr", "mov r14d, 1", "jmp short loc_1AAA0"], "succs": [[3, "jump"]]}]}, {"name": "sub_1B9B0", "ea": 113072, "blocks": [{"id": 0, "start": 113072, "end": 113097, "lines": ["endbr64", "push rbp", "mov rcx, rdx", "mov rbp, rsp", "push r12", "mov r12, rsi", "push rbx", "mov rbx, [rsi]", "test rdi, rdi", "jz short loc_1B9F8"], "succs": [[1, "fall"], [4, "jump"]]}, {"id": 1, "start": 113097, "end": 113112, "lines": ["mov rax, rbx", "shr rax, 1", "add rax, 1", "add rbx, rax", "jb short loc_1BA19"], "succs": [[2, "fall"], [6, "jump"]]}, {"id": 2, "start": 113112, "end": 113129, "lines": ["mov rdx, rcx", "mov rsi, rbx", "call sub_1C7D0", "test rax, rax", "jz short loc_1BA19"], "succs": [[3, "fall"], [6, "jump"]]}, {"id": 3, "start": 113129, "end": 113138, "lines": ["mov [r12], rbx", "pop rbx", "pop r12", "pop rbp", "retn"], "succs": []}, {"id": 4, "start": 113144, "end": 113149, "lines": ["test rbx, rbx", "jnz short loc_1B9D8"], "succs": [[2, "jump"], [5, "fall"]]}, {"id": 5, "start": 113149, "end": 113177, "lines": ["xor edx, edx", "mov eax, 80h", "div rcx", "xor edx, edx", "cmp rcx, 80h", "setnbe dl", "lea rbx, [rax+rdx]", "jmp short loc_1B9D8"], "succs": [[2, "jump"]]}, {"id": 6, "start": 113177, "end": 113183, "lines": ["call sub_1BCB0"], "succs": []}]}, {"name": "sub_5B70", "ea": 23408, "blocks": [{"id": 0, "start": 23408, "end": 23460, "lines": ["push rbp", "xor edx, edx", "xor esi, esi", "lea r8, accept+3; \"\"", "mov rbp, rsp", "sub rsp, 10h", "mov rcx, fs:28h", "mov [rbp+var_8], rcx", "lea rcx, [rbp+var_10]", "call sub_1C0C0", "cmp eax, 1", "mov eax, 0", "jz short loc_5BAD"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 23460, "end": 23469, "lines": ["mov rax, 0FFFFFFFFFFFFFFFFh", "jbe short loc_5BC0"], "succs": [[2, "fall"], [4, "jump"]]}, {"id": 2, "start": 23469, "end": 23484, "lines": ["mov rdx, [rbp+var_8]", "sub rdx, fs:28h", "jnz short loc_5BCF"], "succs": [[3, "fall"], [5, "jump"]]}, {"id": 3, "start": 23484, "end": 23486, "lines": ["leave", "retn"], "succs": []}, {"id": 4, "start": 23488, "end": 23503, "lines": ["mov rax, [rbp+var_10]", "xor edx, edx", "test rax, rax", "cmovs rax, rdx", "jmp short loc_5BAD"], "succs": [[2, "jump"]]}, {"id": 5, "start": 23503, "end": 23509, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_7430", "ea": 29744, "blocks": [{"id": 0, "start": 29744, "end": 29855, "lines": ["push rbp", "mov rbp, rsp", "push r12", "push rbx", "sub rsp, 1000h", "or [rsp+1010h+var_1010], 0", "sub rsp, 1000h", "or [rsp+2010h+var_2010], 0", "sub rsp, 30h", "mov rbx, fs:28h", "mov [rbp+var_18], rbx", "mov rbx, rdi", "mov ecx, edx", "lea rdi, [rbp+ptr]", "mov rdx, rsi", "lea r12, [rbp+var_2020]", "lea r9, [rbp+var_2031]", "lea r8, [rbp+var_2028]", "mov [rbp+ptr], r12", "mov rsi, rbx", "call sub_6EC0", "mov rdi, [rbp+ptr]; ptr", "cmp rdi, rbx", "jz short loc_74AA"], "succs": [[1, "fall"], [3, "jump"]]}, {"id": 1, "start": 29855, "end": 29860, "lines": ["cmp rdi, r12", "jz short loc_74AA"], "succs": [[2, "fall"], [3, "jump"]]}, {"id": 2, "start": 29860, "end": 29866, "lines": ["call cs:free_ptr"], "succs": [[3, "fall"]]}, {"id": 3, "start": 29866, "end": 29895, "lines": ["movzx eax, [rbp+var_2031]", "add rax, [rbp+var_2028]", "mov rdx, [rbp+var_18]", "sub rdx, fs:28h", "jnz short loc_74D3"], "succs": [[4, "fall"], [5, "jump"]]}, {"id": 4, "start": 29895, "end": 29907, "lines": ["add rsp, 2030h", "pop rbx", "pop r12", "pop rbp", "retn"], "succs": []}, {"id": 5, "start": 29907, "end": 29913, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_7D60", "ea": 32096, "blocks": [{"id": 0, "start": 32096, "end": 32113, "lines": ["push rbp", "mov rbp, rsp", "sub rsp, 10h", "cmp cs:byte_2932D, 0", "jz short loc_7D98"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 32113, "end": 32148, "lines": ["mov r9d, edi", "lea r8, aJu; \"%ju\"", "xor esi, esi", "xor edi, edi", "leave", "mov rcx, 0FFFFFFFFFFFFFFFFh", "mov edx, 2", "xor eax, eax", "jmp cs:__snprintf_chk_ptr"], "succs": [[4, "jump"]]}, {"id": 2, "start": 32152, "end": 32169, "lines": ["mov [rbp+var_4], edi", "call sub_13F60", "mov edi, [rbp+var_4]", "test rax, rax", "jz short loc_7D71"], "succs": [[1, "jump"], [3, "fall"]]}, {"id": 3, "start": 32169, "end": 32183, "lines": ["leave", "mov esi, 3", "mov rdi, rax", "jmp sub_14C90"], "succs": [[5, "jump"]]}, {"id": 4, "start": 169368, "end": 169368, "lines": [], "succs": []}, {"id": 5, "start": 85136, "end": 85136, "lines": [], "succs": []}]}, {"name": "sub_F610", "ea": 62992, "blocks": [{"id": 0, "start": 62992, "end": 63020, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r13", "mov r13, rdi", "push r12", "push rbx", "sub rsp, 8", "mov rdi, [rsi]", "test rdi, rdi", "jz short loc_F660"], "succs": [[1, "fall"], [5, "jump"]]}, {"id": 1, "start": 63020, "end": 63027, "lines": ["mov r12, rsi", "xor ebx, ebx", "jmp short loc_F645"], "succs": [[3, "jump"]]}, {"id": 2, "start": 63032, "end": 63045, "lines": ["add rbx, 1", "mov rdi, [r12+rbx*8]; s1", "test rdi, rdi", "jz short loc_F660"], "succs": [[3, "fall"], [5, "jump"]]}, {"id": 3, "start": 63045, "end": 63058, "lines": ["mov rsi, r13; s2", "call cs:strcmp_ptr", "test eax, eax", "jnz short loc_F638"], "succs": [[2, "jump"], [4, "fall"]]}, {"id": 4, "start": 63058, "end": 63072, "lines": ["add rsp, 8", "mov rax, rbx", "pop rbx", "pop r12", "pop r13", "pop rbp", "retn"], "succs": []}, {"id": 5, "start": 63072, "end": 63090, "lines": ["add rsp, 8", "mov rax, 0FFFFFFFFFFFFFFFFh", "pop rbx", "pop r12", "pop r13", "pop rbp", "retn"], "succs": []}]}, {"name": "sub_12CC0", "ea": 76992, "blocks": [{"id": 0, "start": 76992, "end": 77035, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push rbx", "lea rdx, [rbp+var_20]", "sub rsp, 18h", "mov rbx, fs:28h", "mov [rbp+var_18], rbx", "mov rbx, rsi", "call sub_12A90", "cmp eax, 0FFFFFFFFh", "jz short loc_12D10"], "succs": [[1, "fall"], [4, "jump"]]}, {"id": 1, "start": 77035, "end": 77045, "lines": ["test eax, eax", "mov rax, rbx", "cmovz rax, [rbp+var_20]"], "succs": [[2, "fall"]]}, {"id": 2, "start": 77045, "end": 77060, "lines": ["mov rdx, [rbp+var_18]", "sub rdx, fs:28h", "jnz short loc_12D14"], "succs": [[3, "fall"], [5, "jump"]]}, {"id": 3, "start": 77060, "end": 77066, "lines": ["mov rbx, [rbp+var_8]", "leave", "retn"], "succs": []}, {"id": 4, "start": 77072, "end": 77076, "lines": ["xor eax, eax", "jmp short loc_12CF5"], "succs": [[2, "jump"]]}, {"id": 5, "start": 77076, "end": 77082, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_18270", "ea": 98928, "blocks": [{"id": 0, "start": 98928, "end": 98986, "lines": ["endbr64", "push rbp", "mov edx, 5; category", "mov rbp, rsp", "push r14", "push rbx", "mov rbx, rdi", "sub rsp, 30h", "mov r14, fs:28h", "mov [rbp+var_18], r14", "mov r14, rsi", "mov rsi, rdi; msgid", "xor edi, edi; domainname", "call cs:dcgettext_ptr", "mov r8, rax", "cmp rbx, rax", "jz short loc_182C8"], "succs": [[1, "fall"], [3, "jump"]]}, {"id": 1, "start": 98986, "end": 99001, "lines": ["mov rax, [rbp+var_18]", "sub rax, fs:28h", "jnz short loc_18305"], "succs": [[2, "fall"], [5, "jump"]]}, {"id": 2, "start": 99001, "end": 99013, "lines": ["add rsp, 30h", "mov rax, r8", "pop rbx", "pop r14", "pop rbp", "retn"], "succs": []}, {"id": 3, "start": 99016, "end": 99064, "lines": ["mov [rbp+var_38], rax", "lea rcx, [rbp+p]; p", "lea rdi, [rbp+pc32]; pc32", "mov edx, 2; n", "mov qword ptr [rbp+p.__count], 0", "lea rsi, byte_21FB0; s", "call cs:mbrtoc32_ptr", "mov r8, [rbp+var_38]", "cmp rax, 2", "jnz short loc_182AA"], "succs": [[1, "jump"], [4, "fall"]]}, {"id": 4, "start": 99064, "end": 99077, "lines": ["cmp [rbp+pc32], 7FFh", "cmovz r8, r14", "jmp short loc_182AA"], "succs": [[1, "jump"]]}, {"id": 5, "start": 99077, "end": 99083, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_1A690", "ea": 108176, "blocks": [{"id": 0, "start": 108176, "end": 108267, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "sub rsp, 40h", "movdqa xmm0, cs:xmmword_29540", "mov rax, fs:28h", "mov [rbp+var_8], rax", "mov rax, rcx", "mov rcx, cs:qword_29570", "movaps [rbp+var_40], xmm0", "movdqa xmm0, cs:xmmword_29550", "mov [rbp+var_10], rcx", "movaps [rbp+var_30], xmm0", "movdqa xmm0, cs:xmmword_29560", "mov dword ptr [rbp+var_40], 0Ah", "movaps [rbp+var_20], xmm0", "test rsi, rsi", "jz loc_3509"], "succs": [[1, "fall"], [5, "jump"]]}, {"id": 1, "start": 108267, "end": 108276, "lines": ["test rdx, rdx", "jz loc_3509"], "succs": [[2, "fall"], [5, "jump"]]}, {"id": 2, "start": 108276, "end": 108318, "lines": ["mov qword ptr [rbp+var_20+8], rsi", "lea rcx, [rbp+var_40]", "mov rsi, rax", "mov [rbp+var_10], rdx", "mov rdx, 0FFFFFFFFFFFFFFFFh", "call sub_19C50", "mov rdx, [rbp+var_8]", "sub rdx, fs:28h", "jnz short loc_1A720"], "succs": [[3, "fall"], [4, "jump"]]}, {"id": 3, "start": 108318, "end": 108320, "lines": ["leave", "retn"], "succs": []}, {"id": 4, "start": 108320, "end": 108326, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 5, "start": 13577, "end": 13583, "lines": ["call cs:abort_ptr"], "succs": []}]}, {"name": "sub_1A730", "ea": 108336, "blocks": [{"id": 0, "start": 108336, "end": 108427, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "sub rsp, 40h", "movdqa xmm0, cs:xmmword_29540", "mov rax, fs:28h", "mov [rbp+var_8], rax", "mov rax, rcx", "mov rcx, cs:qword_29570", "movaps [rbp+var_40], xmm0", "movdqa xmm0, cs:xmmword_29550", "mov [rbp+var_10], rcx", "movaps [rbp+var_30], xmm0", "movdqa xmm0, cs:xmmword_29560", "mov dword ptr [rbp+var_40], 0Ah", "movaps [rbp+var_20], xmm0", "test rsi, rsi", "jz loc_350F"], "succs": [[1, "fall"], [5, "jump"]]}, {"id": 1, "start": 108427, "end": 108436, "lines": ["test rdx, rdx", "jz loc_350F"], "succs": [[2, "fall"], [5, "jump"]]}, {"id": 2, "start": 108436, "end": 108474, "lines": ["mov qword ptr [rbp+var_20+8], rsi", "lea rcx, [rbp+var_40]", "mov rsi, rax", "mov [rbp+var_10], rdx", "mov rdx, r8", "call sub_19C50", "mov rdx, [rbp+var_8]", "sub rdx, fs:28h", "jnz short loc_1A7BC"], "succs": [[3, "fall"], [4, "jump"]]}, {"id": 3, "start": 108474, "end": 108476, "lines": ["leave", "retn"], "succs": []}, {"id": 4, "start": 108476, "end": 108482, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 5, "start": 13583, "end": 13589, "lines": ["call cs:abort_ptr"], "succs": []}]}, {"name": "sub_1A7D0", "ea": 108496, "blocks": [{"id": 0, "start": 108496, "end": 108587, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "sub rsp, 40h", "movdqa xmm0, cs:xmmword_29540", "mov rax, fs:28h", "mov [rbp+var_8], rax", "mov rax, rdx", "mov rdx, cs:qword_29570", "movaps [rbp+var_40], xmm0", "movdqa xmm0, cs:xmmword_29550", "mov [rbp+var_10], rdx", "movaps [rbp+var_30], xmm0", "movdqa xmm0, cs:xmmword_29560", "mov dword ptr [rbp+var_40], 0Ah", "movaps [rbp+var_20], xmm0", "test rdi, rdi", "jz loc_3515"], "succs": [[1, "fall"], [5, "jump"]]}, {"id": 1, "start": 108587, "end": 108596, "lines": ["test rsi, rsi", "jz loc_3515"], "succs": [[2, "fall"], [5, "jump"]]}, {"id": 2, "start": 108596, "end": 108640, "lines": ["mov qword ptr [rbp+var_20+8], rdi", "mov rdx, 0FFFFFFFFFFFFFFFFh", "xor edi, edi", "lea rcx, [rbp+var_40]", "mov [rbp+var_10], rsi", "mov rsi, rax", "call sub_19C50", "mov rdx, [rbp+var_8]", "sub rdx, fs:28h", "jnz short loc_1A862"], "succs": [[3, "fall"], [4, "jump"]]}, {"id": 3, "start": 108640, "end": 108642, "lines": ["leave", "retn"], "succs": []}, {"id": 4, "start": 108642, "end": 108648, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 5, "start": 13589, "end": 13595, "lines": ["call cs:abort_ptr"], "succs": []}]}, {"name": "sub_1A870", "ea": 108656, "blocks": [{"id": 0, "start": 108656, "end": 108750, "lines": ["endbr64", "push rbp", "mov rax, rdx", "mov rbp, rsp", "sub rsp, 40h", "movdqa xmm0, cs:xmmword_29540", "mov rdx, fs:28h", "mov [rbp+var_8], rdx", "mov rdx, rcx", "mov rcx, cs:qword_29570", "movaps [rbp+var_40], xmm0", "movdqa xmm0, cs:xmmword_29550", "mov [rbp+var_10], rcx", "movaps [rbp+var_30], xmm0", "movdqa xmm0, cs:xmmword_29560", "mov dword ptr [rbp+var_40], 0Ah", "movaps [rbp+var_20], xmm0", "test rdi, rdi", "jz loc_351B"], "succs": [[1, "fall"], [5, "jump"]]}, {"id": 1, "start": 108750, "end": 108759, "lines": ["test rsi, rsi", "jz loc_351B"], "succs": [[2, "fall"], [5, "jump"]]}, {"id": 2, "start": 108759, "end": 108796, "lines": ["mov qword ptr [rbp+var_20+8], rdi", "lea rcx, [rbp+var_40]", "xor edi, edi", "mov [rbp+var_10], rsi", "mov rsi, rax", "call sub_19C50", "mov rdx, [rbp+var_8]", "sub rdx, fs:28h", "jnz short loc_1A8FE"], "succs": [[3, "fall"], [4, "jump"]]}, {"id": 3, "start": 108796, "end": 108798, "lines": ["leave", "retn"], "succs": []}, {"id": 4, "start": 108798, "end": 108804, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 5, "start": 13595, "end": 13601, "lines": ["call cs:abort_ptr"], "succs": []}]}, {"name": "sub_1AAF0", "ea": 109296, "blocks": [{"id": 0, "start": 109296, "end": 109316, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r12", "push rbx", "sub rsp, 10h", "test rdi, rdi", "jz short loc_1AB80"], "succs": [[1, "fall"], [4, "jump"]]}, {"id": 1, "start": 109316, "end": 109371, "lines": ["mov [rbp+var_18], rdi", "call cs:strlen_ptr", "lea r12, [rax+1]", "mov eax, 76h ; 'v'", "cmp r12, rax", "cmovnb rax, r12", "lea rbx, [rax+11h]", "and rbx, 0FFFFFFFFFFFFFFF8h", "mov rdi, rbx; size", "call cs:malloc_ptr", "mov rsi, [rbp+var_18]", "test rax, rax", "mov r8, rax", "jz short loc_1AB6B"], "succs": [[2, "fall"], [3, "jump"]]}, {"id": 2, "start": 109371, "end": 109419, "lines": ["mov [rbp+var_18], r8", "lea rdi, [r8+9]", "lea rcx, [rbx-9]", "mov rdx, r12", "mov qword ptr [rax], 0", "mov eax, 1", "mov [r8+8], ax", "call cs:__memcpy_chk_ptr", "mov r8, [rbp+var_18]", "mov byte ptr [r8+r12+9], 0"], "succs": [[3, "fall"]]}, {"id": 3, "start": 109419, "end": 109431, "lines": ["add rsp, 10h", "mov rax, r8", "pop rbx", "pop r12", "pop rbp", "retn"], "succs": []}, {"id": 4, "start": 109440, "end": 109459, "lines": ["mov edi, 80h; size", "call cs:malloc_ptr", "mov r8, rax", "test rax, rax", "jz short loc_1AB6B"], "succs": [[3, "jump"], [5, "fall"]]}, {"id": 5, "start": 109459, "end": 109484, "lines": ["xor edx, edx", "mov qword ptr [rax], 0", "mov [rax+8], dx", "add rsp, 10h", "mov rax, r8", "pop rbx", "pop r12", "pop rbp", "retn"], "succs": []}]}, {"name": "sub_1B950", "ea": 112976, "blocks": [{"id": 0, "start": 112976, "end": 112998, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r12", "mov r12, rsi", "push rbx", "mov rbx, [rsi]", "test rdi, rdi", "jz short loc_1B998"], "succs": [[1, "fall"], [4, "jump"]]}, {"id": 1, "start": 112998, "end": 113013, "lines": ["mov rax, rbx", "shr rax, 1", "add rax, 1", "add rbx, rax", "jb short loc_1B9A6"], "succs": [[2, "fall"], [5, "jump"]]}, {"id": 2, "start": 113013, "end": 113032, "lines": ["mov edx, 1", "mov rsi, rbx", "call sub_1C7D0", "test rax, rax", "jz short loc_1B9A6"], "succs": [[3, "fall"], [5, "jump"]]}, {"id": 3, "start": 113032, "end": 113041, "lines": ["mov [r12], rbx", "pop rbx", "pop r12", "pop rbp", "retn"], "succs": []}, {"id": 4, "start": 113048, "end": 113062, "lines": ["test rbx, rbx", "mov eax, 80h", "cmovz rbx, rax", "jmp short loc_1B975"], "succs": [[2, "jump"]]}, {"id": 5, "start": 113062, "end": 113068, "lines": ["call sub_1BCB0"], "succs": []}]}, {"name": "sub_1C770", "ea": 116592, "blocks": [{"id": 0, "start": 116592, "end": 116614, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push rbx", "sub rsp, 8", "cmp edi, 6", "jz loc_3537"], "succs": [[1, "fall"], [5, "jump"]]}, {"id": 1, "start": 116614, "end": 116630, "lines": ["mov ebx, edi", "xor edi, edi; dataset", "call cs:uselocale_ptr", "cmp rax, 0FFFFFFFFFFFFFFFFh", "jz short loc_1C7B0"], "succs": [[2, "fall"], [4, "jump"]]}, {"id": 2, "start": 116630, "end": 116646, "lines": ["mov rsi, rax", "mov edi, ebx", "call sub_1C810", "test rax, rax", "jz short loc_1C7B0"], "succs": [[3, "fall"], [4, "jump"]]}, {"id": 3, "start": 116646, "end": 116652, "lines": ["mov rbx, [rbp+var_8]", "leave", "retn"], "succs": []}, {"id": 4, "start": 116656, "end": 116684, "lines": ["mov edi, ebx", "call sub_1A9A0", "lea rdx, aC_0; \"C\"", "mov rbx, [rbp+var_8]", "leave", "test rax, rax", "cmovz rax, rdx", "retn"], "succs": []}, {"id": 5, "start": 13623, "end": 13629, "lines": ["call cs:abort_ptr"], "succs": []}]}, {"name": "sub_30C0", "ea": 12480, "blocks": [{"id": 0, "start": 12480, "end": 12527, "lines": ["push rbp", "mov edx, 400h; buflen", "mov rbp, rsp", "sub rsp, 410h", "mov rsi, fs:28h", "mov [rbp+var_8], rsi", "lea rsi, [rbp+buf]; buf", "call cs:strerror_r_ptr", "test rax, rax", "jnz short loc_3108"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 12527, "end": 12552, "lines": ["mov edx, 5; category", "lea rsi, msgid; \"Unknown system error\"", "lea rdi, domainname; \"gnulib\"", "call cs:dcgettext_ptr"], "succs": [[2, "fall"]]}, {"id": 2, "start": 12552, "end": 12597, "lines": ["mov rcx, rax", "mov rdi, cs:stderr", "xor eax, eax", "lea rdx, aSS+2; \": %s\"", "mov esi, 2", "call cs:__fprintf_chk_ptr", "mov rax, [rbp+var_8]", "sub rax, fs:28h", "jz short locret_313B"], "succs": [[3, "fall"], [4, "jump"]]}, {"id": 3, "start": 12597, "end": 12603, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 4, "start": 12603, "end": 12605, "lines": ["leave", "retn"], "succs": []}]}, {"name": "sub_31DF", "ea": 12767, "blocks": [{"id": 0, "start": 12767, "end": 12810, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r14", "mov r14, rcx", "push r13", "mov r13, rdx", "push r12", "mov r12d, esi", "push rbx", "mov ebx, edi", "call sub_31B5", "mov rax, cs:error_print_progname", "test rax, rax", "jz short loc_320E"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 12810, "end": 12814, "lines": ["call rax ; error_print_progname", "jmp short loc_3232"], "succs": [[3, "jump"]]}, {"id": 2, "start": 12814, "end": 12850, "lines": ["call sub_11950", "mov rdi, cs:stderr", "mov esi, 2", "lea rdx, aS_0; \"%s: \"", "mov rcx, rax", "xor eax, eax", "call cs:__fprintf_chk_ptr"], "succs": [[3, "fall"]]}, {"id": 3, "start": 12850, "end": 12874, "lines": ["mov rcx, r14", "mov rdx, r13", "mov esi, r12d", "mov edi, ebx; status", "pop rbx", "pop r12", "pop r13", "pop r14", "pop rbp", "jmp sub_313D"], "succs": [[4, "jump"]]}, {"id": 4, "start": 12605, "end": 12605, "lines": [], "succs": []}]}, {"name": "error", "ea": 12874, "blocks": [{"id": 0, "start": 12874, "end": 12914, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "sub rsp, 0D0h", "mov [rbp+var_98], rcx", "mov [rbp+var_90], r8", "mov [rbp+var_88], r9", "test al, al", "jz short loc_3292"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 12914, "end": 12946, "lines": ["movaps [rbp+var_80], xmm0", "movaps [rbp+var_70], xmm1", "movaps [rbp+var_60], xmm2", "movaps [rbp+var_50], xmm3", "movaps [rbp+var_40], xmm4", "movaps [rbp+var_30], xmm5", "movaps [rbp+var_20], xmm6", "movaps [rbp+var_10], xmm7"], "succs": [[2, "fall"]]}, {"id": 2, "start": 12946, "end": 13039, "lines": ["mov rax, fs:28h", "mov [rbp+var_B8], rax", "xor eax, eax", "lea rax, [rbp+arg_0]", "lea rcx, [rbp+var_D0]", "mov [rbp+var_D0], 18h", "mov [rbp+var_C8], rax", "lea rax, [rbp+var_B0]", "mov [rbp+var_C0], rax", "mov [rbp+var_CC], 30h ; '0'", "call sub_31DF", "mov rax, [rbp+var_B8]", "sub rax, fs:28h", "jz short locret_32F5"], "succs": [[3, "fall"], [4, "jump"]]}, {"id": 3, "start": 13039, "end": 13045, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 4, "start": 13045, "end": 13047, "lines": ["leave", "retn"], "succs": []}]}, {"name": "error_at_line", "ea": 13308, "blocks": [{"id": 0, "start": 13308, "end": 13334, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "sub rsp, 0D0h", "mov [rbp+var_88], r9", "test al, al", "jz short loc_3436"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 13334, "end": 13366, "lines": ["movaps [rbp+var_80], xmm0", "movaps [rbp+var_70], xmm1", "movaps [rbp+var_60], xmm2", "movaps [rbp+var_50], xmm3", "movaps [rbp+var_40], xmm4", "movaps [rbp+var_30], xmm5", "movaps [rbp+var_20], xmm6", "movaps [rbp+var_10], xmm7"], "succs": [[2, "fall"]]}, {"id": 2, "start": 13366, "end": 13459, "lines": ["mov rax, fs:28h", "mov [rbp+var_B8], rax", "xor eax, eax", "lea rax, [rbp+arg_0]", "lea r9, [rbp+var_D0]", "mov [rbp+var_D0], 28h ; '('", "mov [rbp+var_C8], rax", "lea rax, [rbp+var_B0]", "mov [rbp+var_C0], rax", "mov [rbp+var_CC], 30h ; '0'", "call sub_32F7", "mov rax, [rbp+var_B8]", "sub rax, fs:28h", "jz short locret_3499"], "succs": [[3, "fall"], [4, "jump"]]}, {"id": 3, "start": 13459, "end": 13465, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 4, "start": 13465, "end": 13467, "lines": ["leave", "retn"], "succs": []}]}, {"name": "sub_5520", "ea": 21792, "blocks": [{"id": 0, "start": 21792, "end": 21811, "lines": ["lea rdi, __progname", "lea rax, __progname", "cmp rax, rdi", "jz short locret_5548"], "succs": [[1, "fall"], [3, "jump"]]}, {"id": 1, "start": 21811, "end": 21823, "lines": ["mov rax, cs:_ITM_deregisterTMCloneTable_ptr", "test rax, rax", "jz short locret_5548"], "succs": [[2, "fall"], [3, "jump"]]}, {"id": 2, "start": 21823, "end": 21825, "lines": ["jmp rax"], "succs": [[4, "jump"]]}, {"id": 3, "start": 21832, "end": 21833, "lines": ["retn"], "succs": []}, {"id": 4, "start": 170240, "end": 170240, "lines": [], "succs": []}]}, {"name": "sub_5550", "ea": 21840, "blocks": [{"id": 0, "start": 21840, "end": 21876, "lines": ["lea rdi, __progname", "lea rsi, __progname", "sub rsi, rdi", "mov rax, rsi", "shr rsi, 3Fh", "sar rax, 3", "add rsi, rax", "sar rsi, 1", "jz short locret_5588"], "succs": [[1, "fall"], [3, "jump"]]}, {"id": 1, "start": 21876, "end": 21888, "lines": ["mov rax, cs:_ITM_registerTMCloneTable_ptr", "test rax, rax", "jz short locret_5588"], "succs": [[2, "fall"], [3, "jump"]]}, {"id": 2, "start": 21888, "end": 21890, "lines": ["jmp rax"], "succs": [[4, "jump"]]}, {"id": 3, "start": 21896, "end": 21897, "lines": ["retn"], "succs": []}, {"id": 4, "start": 170256, "end": 170256, "lines": [], "succs": []}]}, {"name": "sub_5590", "ea": 21904, "blocks": [{"id": 0, "start": 21904, "end": 21917, "lines": ["endbr64", "cmp cs:byte_282A8, 0", "jnz short locret_55D0"], "succs": [[1, "fall"], [4, "jump"]]}, {"id": 1, "start": 21917, "end": 21931, "lines": ["push rbp", "cmp cs:__cxa_finalize_ptr, 0", "mov rbp, rsp", "jz short loc_55B8"], "succs": [[2, "fall"], [3, "jump"]]}, {"id": 2, "start": 21931, "end": 21944, "lines": ["mov rdi, cs:lpdso_handle; void *", "call cs:__cxa_finalize_ptr"], "succs": [[3, "fall"]]}, {"id": 3, "start": 21944, "end": 21958, "lines": ["call sub_5520", "mov cs:byte_282A8, 1", "pop rbp", "retn"], "succs": []}, {"id": 4, "start": 21968, "end": 21969, "lines": ["retn"], "succs": []}]}, {"name": "sub_5640", "ea": 22080, "blocks": [{"id": 0, "start": 22080, "end": 22106, "lines": ["mov edi, edi", "lea rdx, qword_28060", "xor eax, eax", "shl rdi, 4", "add rdx, rdi", "mov rcx, [rdx]", "test rcx, rcx", "jz short locret_567A"], "succs": [[1, "fall"], [4, "jump"]]}, {"id": 1, "start": 22106, "end": 22112, "lines": ["cmp rcx, 2", "ja short loc_5675"], "succs": [[2, "fall"], [3, "jump"]]}, {"id": 2, "start": 22112, "end": 22133, "lines": ["mov rdx, [rdx+8]", "cmp byte ptr [rdx+rcx-1], 30h ; '0'", "setnz al", "cmp byte ptr [rdx], 30h ; '0'", "setnz dl", "or eax, edx", "retn"], "succs": []}, {"id": 3, "start": 22133, "end": 22138, "lines": ["mov eax, 1"], "succs": [[4, "fall"]]}, {"id": 4, "start": 22138, "end": 22139, "lines": ["retn"], "succs": []}]}, {"name": "sub_5FD0", "ea": 24528, "blocks": [{"id": 0, "start": 24528, "end": 24567, "lines": ["push rbp", "mov rbp, rsp", "push r14", "push r13", "mov r13d, edx", "push r12", "mov r12, rsi", "push rbx", "mov rbx, rdi", "mov edi, 20h ; ' '", "call sub_1B7F0", "mov r14, rax", "test r12, r12", "jz short loc_6003"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 24567, "end": 24579, "lines": ["mov rdi, r12", "call sub_1BC60", "mov r12, rax"], "succs": [[2, "fall"]]}, {"id": 2, "start": 24579, "end": 24588, "lines": ["mov [r14+8], r12", "test rbx, rbx", "jz short loc_6018"], "succs": [[3, "fall"], [4, "jump"]]}, {"id": 3, "start": 24588, "end": 24600, "lines": ["mov rdi, rbx", "call sub_1BC60", "mov rbx, rax"], "succs": [[4, "fall"]]}, {"id": 4, "start": 24600, "end": 24634, "lines": ["mov rax, cs:ptr", "mov [r14], rbx", "mov [r14+10h], r13b", "mov [r14+18h], rax", "pop rbx", "mov cs:ptr, r14", "pop r12", "pop r13", "pop r14", "pop rbp", "retn"], "succs": []}]}, {"name": "sub_6A80", "ea": 27264, "blocks": [{"id": 0, "start": 27264, "end": 27327, "lines": ["push rbp", "mov rbp, rsp", "push r13", "push r12", "mov r12, rsi", "mov rsi, rdx", "push rbx", "mov ebx, edi", "mov edi, 4", "sub rsp, 8", "call sub_1A2E0", "mov r13, rax", "call cs:__errno_location_ptr", "xor edi, edi", "mov rcx, r13", "mov rdx, r12", "mov esi, [rax]", "xor eax, eax", "call error", "test bl, bl", "jz short loc_6AD8"], "succs": [[1, "fall"], [3, "jump"]]}, {"id": 1, "start": 27327, "end": 27337, "lines": ["mov cs:dword_29210, 2"], "succs": [[2, "fall"]]}, {"id": 2, "start": 27337, "end": 27348, "lines": ["add rsp, 8", "pop rbx", "pop r12", "pop r13", "pop rbp", "retn"], "succs": []}, {"id": 3, "start": 27352, "end": 27362, "lines": ["mov eax, cs:dword_29210", "test eax, eax", "jnz short loc_6AC9"], "succs": [[2, "jump"], [4, "fall"]]}, {"id": 4, "start": 27362, "end": 27383, "lines": ["mov cs:dword_29210, 1", "add rsp, 8", "pop rbx", "pop r12", "pop r13", "pop rbp", "retn"], "succs": []}]}, {"name": "sub_F320", "ea": 62240, "blocks": [{"id": 0, "start": 62240, "end": 62249, "lines": ["endbr64", "cmp edi, 26h ; '&'", "jz short loc_F350"], "succs": [[1, "fall"], [4, "jump"]]}, {"id": 1, "start": 62249, "end": 62251, "lines": ["jg short loc_F340"], "succs": [[2, "fall"], [3, "jump"]]}, {"id": 2, "start": 62251, "end": 62266, "lines": ["cmp edi, 16h", "setnz al", "cmp edi, 10h", "setnz dl", "and eax, edx", "retn"], "succs": []}, {"id": 3, "start": 62272, "end": 62279, "lines": ["cmp edi, 5Fh ; '_'", "setnz al", "retn"], "succs": []}, {"id": 4, "start": 62288, "end": 62291, "lines": ["xor eax, eax", "retn"], "succs": []}]}, {"name": "sub_F680", "ea": 63104, "blocks": [{"id": 0, "start": 63104, "end": 63138, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r13", "mov r13, rsi", "push r12", "mov r12, rdi", "push rbx", "sub rsp, 8", "cmp rdx, 0FFFFFFFFFFFFFFFFh", "mov edx, 5; category", "jz short loc_F700"], "succs": [[1, "fall"], [3, "jump"]]}, {"id": 1, "start": 63138, "end": 63161, "lines": ["lea rsi, aAmbiguousArgum; \"ambiguous argument %s for %s\"", "lea rdi, domainname; \"gnulib\"", "call cs:dcgettext_ptr", "mov rbx, rax"], "succs": [[2, "fall"]]}, {"id": 2, "start": 63161, "end": 63224, "lines": ["mov rsi, r12", "mov edi, 1", "call sub_1A940", "mov rdx, r13", "mov esi, 8", "xor edi, edi", "mov r12, rax", "call sub_1A200", "add rsp, 8", "mov r8, r12", "mov rdx, rbx", "mov rcx, rax", "pop rbx", "xor esi, esi", "pop r12", "xor edi, edi", "pop r13", "xor eax, eax", "pop rbp", "jmp error"], "succs": [[4, "jump"]]}, {"id": 3, "start": 63232, "end": 63257, "lines": ["lea rsi, aInvalidArgumen; \"invalid argument %s for %s\"", "lea rdi, domainname; \"gnulib\"", "call cs:dcgettext_ptr", "mov rbx, rax", "jmp short loc_F6B9"], "succs": [[2, "jump"]]}, {"id": 4, "start": 12874, "end": 12874, "lines": [], "succs": []}]}, {"name": "sub_F930", "ea": 63792, "blocks": [{"id": 0, "start": 63792, "end": 63821, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r15", "push r14", "push r13", "push r12", "push rbx", "sub rsp, 8", "mov r15, [rsi]", "test r15, r15", "jz short loc_F982"], "succs": [[1, "fall"], [4, "jump"]]}, {"id": 1, "start": 63821, "end": 63836, "lines": ["mov r13, rcx", "mov r14, rdi", "lea rbx, [rsi+8]", "mov r12, rdx", "jmp short loc_F96F"], "succs": [[3, "jump"]]}, {"id": 2, "start": 63840, "end": 63855, "lines": ["mov r15, [rbx]", "add r12, r13", "add rbx, 8", "test r15, r15", "jz short loc_F982"], "succs": [[3, "fall"], [4, "jump"]]}, {"id": 3, "start": 63855, "end": 63874, "lines": ["mov rdx, r13; n", "mov rsi, r12; s2", "mov rdi, r14; s1", "call cs:memcmp_ptr", "test eax, eax", "jnz short loc_F960"], "succs": [[2, "jump"], [4, "fall"]]}, {"id": 4, "start": 63874, "end": 63892, "lines": ["add rsp, 8", "mov rax, r15", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}]}, {"name": "sub_FA60", "ea": 64096, "blocks": [{"id": 0, "start": 64096, "end": 64118, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push rbx", "mov rbx, rdi", "sub rsp, 8", "call cs:strlen_ptr"], "succs": [[1, "fall"]]}, {"id": 1, "start": 64118, "end": 64124, "lines": ["cmp rax, 1", "jbe short loc_FA83"], "succs": [[2, "fall"], [3, "jump"]]}, {"id": 2, "start": 64124, "end": 64131, "lines": ["cmp byte ptr [rbx+rax-1], 2Fh ; '/'", "jz short loc_FA90"], "succs": [[3, "fall"], [4, "jump"]]}, {"id": 3, "start": 64131, "end": 64137, "lines": ["mov rbx, [rbp+var_8]", "leave", "retn"], "succs": []}, {"id": 4, "start": 64144, "end": 64150, "lines": ["sub rax, 1", "jmp short loc_FA76"], "succs": [[1, "jump"]]}]}, {"name": "sub_10DF0", "ea": 69104, "blocks": [{"id": 0, "start": 69104, "end": 69202, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "sub rsp, 0D0h", "mov rax, fs:28h", "mov [rbp+var_8], rax", "mov eax, [rsi+18h]", "mov rsi, rdi", "mov edi, 0FFFFFFFFh; fd", "mov ecx, eax", "and eax, 0F000h", "shr ecx, 0Ch", "and ecx, 0Fh", "mov edx, ecx", "or dh, 1", "cmp eax, 4000h", "cmovnz ecx, edx", "lea rdx, [rbp+ptr]", "call sub_10850", "mov rdi, [rbp+ptr]; ptr", "mov edx, eax", "lea rax, [rbp+var_A4]", "cmp rdi, rax", "jz short loc_10E64"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 69202, "end": 69220, "lines": ["mov [rbp+var_C4], edx", "call cs:free_ptr", "mov edx, [rbp+var_C4]"], "succs": [[2, "fall"]]}, {"id": 2, "start": 69220, "end": 69235, "lines": ["mov rax, [rbp+var_8]", "sub rax, fs:28h", "jnz short loc_10E77"], "succs": [[3, "fall"], [4, "jump"]]}, {"id": 3, "start": 69235, "end": 69239, "lines": ["leave", "mov eax, edx", "retn"], "succs": []}, {"id": 4, "start": 69239, "end": 69245, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_10F10", "ea": 69392, "blocks": [{"id": 0, "start": 69392, "end": 69424, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "sub rsp, 20h", "mov rax, fs:28h", "mov [rbp+var_8], rax", "xor eax, eax", "test rdi, rdi", "jz short loc_10F51"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 69424, "end": 69457, "lines": ["movdqu xmm0, xmmword ptr [rdx]", "mov [rbp+var_20], rsi", "lea rsi, [rbp+var_20]", "shufpd xmm0, xmm0, 1", "movups [rbp+var_18], xmm0", "call sub_12180", "test rax, rax", "setnz al"], "succs": [[2, "fall"]]}, {"id": 2, "start": 69457, "end": 69472, "lines": ["mov rdx, [rbp+var_8]", "sub rdx, fs:28h", "jnz short loc_10F62"], "succs": [[3, "fall"], [4, "jump"]]}, {"id": 3, "start": 69472, "end": 69474, "lines": ["leave", "retn"], "succs": []}, {"id": 4, "start": 69474, "end": 69480, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_12F80", "ea": 77696, "blocks": [{"id": 0, "start": 77696, "end": 77708, "lines": ["endbr64", "movsx rdx, byte ptr [rdi]", "test dl, dl", "jz short loc_12FC0"], "succs": [[1, "fall"], [4, "jump"]]}, {"id": 1, "start": 77708, "end": 77728, "lines": ["xor eax, eax", "nop dword ptr [rax+00000000h]", "nop word ptr [rax+rax+00000000h]"], "succs": [[2, "fall"]]}, {"id": 2, "start": 77728, "end": 77747, "lines": ["rol rax, 9", "add rdi, 1", "add rax, rdx", "movsx rdx, byte ptr [rdi]", "test dl, dl", "jnz short loc_12FA0"], "succs": [[3, "fall"], [2, "jump"]]}, {"id": 3, "start": 77747, "end": 77756, "lines": ["xor edx, edx", "div rsi", "mov rax, rdx", "retn"], "succs": []}, {"id": 4, "start": 77760, "end": 77766, "lines": ["xor edx, edx", "mov rax, rdx", "retn"], "succs": []}]}, {"name": "sub_1A200", "ea": 107008, "blocks": [{"id": 0, "start": 107008, "end": 107045, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "sub rsp, 40h", "mov rax, fs:28h", "mov [rbp+var_8], rax", "mov rax, rdx", "cmp esi, 0Ah", "jz loc_34EB"], "succs": [[1, "fall"], [4, "jump"]]}, {"id": 1, "start": 107045, "end": 107109, "lines": ["pxor xmm0, xmm0", "mov [rbp+var_40], esi", "lea rcx, [rbp+var_40]", "mov rdx, 0FFFFFFFFFFFFFFFFh", "movups [rbp+var_38], xmm0", "mov rsi, rax", "movups [rbp+var_28], xmm0", "pxor xmm0, xmm0", "mov [rbp+var_3C], 0", "movups [rbp+var_18], xmm0", "call sub_19C50", "mov rdx, [rbp+var_8]", "sub rdx, fs:28h", "jnz short loc_1A267"], "succs": [[2, "fall"], [3, "jump"]]}, {"id": 2, "start": 107109, "end": 107111, "lines": ["leave", "retn"], "succs": []}, {"id": 3, "start": 107111, "end": 107117, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 4, "start": 13547, "end": 13553, "lines": ["call cs:abort_ptr"], "succs": []}]}, {"name": "sub_1A270", "ea": 107120, "blocks": [{"id": 0, "start": 107120, "end": 107160, "lines": ["endbr64", "push rbp", "mov rax, rdx", "mov rbp, rsp", "sub rsp, 40h", "mov rdx, fs:28h", "mov [rbp+var_8], rdx", "mov rdx, rcx", "cmp esi, 0Ah", "jz loc_34F1"], "succs": [[1, "fall"], [4, "jump"]]}, {"id": 1, "start": 107160, "end": 107217, "lines": ["pxor xmm0, xmm0", "mov [rbp+var_40], esi", "lea rcx, [rbp+var_40]", "mov rsi, rax", "movups [rbp+var_38], xmm0", "movups [rbp+var_28], xmm0", "pxor xmm0, xmm0", "mov [rbp+var_3C], 0", "movups [rbp+var_18], xmm0", "call sub_19C50", "mov rdx, [rbp+var_8]", "sub rdx, fs:28h", "jnz short loc_1A2D3"], "succs": [[2, "fall"], [3, "jump"]]}, {"id": 2, "start": 107217, "end": 107219, "lines": ["leave", "retn"], "succs": []}, {"id": 3, "start": 107219, "end": 107225, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 4, "start": 13553, "end": 13559, "lines": ["call cs:abort_ptr"], "succs": []}]}, {"name": "sub_1A2E0", "ea": 107232, "blocks": [{"id": 0, "start": 107232, "end": 107268, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "sub rsp, 40h", "mov rax, fs:28h", "mov [rbp+var_8], rax", "xor eax, eax", "cmp edi, 0Ah", "jz loc_34F7"], "succs": [[1, "fall"], [4, "jump"]]}, {"id": 1, "start": 107268, "end": 107331, "lines": ["pxor xmm0, xmm0", "mov [rbp+var_40], edi", "lea rcx, [rbp+var_40]", "xor edi, edi", "movups [rbp+var_38], xmm0", "mov rdx, 0FFFFFFFFFFFFFFFFh", "movups [rbp+var_28], xmm0", "pxor xmm0, xmm0", "mov [rbp+var_3C], 0", "movups [rbp+var_18], xmm0", "call sub_19C50", "mov rdx, [rbp+var_8]", "sub rdx, fs:28h", "jnz short loc_1A345"], "succs": [[2, "fall"], [3, "jump"]]}, {"id": 2, "start": 107331, "end": 107333, "lines": ["leave", "retn"], "succs": []}, {"id": 3, "start": 107333, "end": 107339, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 4, "start": 13559, "end": 13565, "lines": ["call cs:abort_ptr"], "succs": []}]}, {"name": "sub_1A350", "ea": 107344, "blocks": [{"id": 0, "start": 107344, "end": 107380, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "sub rsp, 40h", "mov rax, fs:28h", "mov [rbp+var_8], rax", "xor eax, eax", "cmp edi, 0Ah", "jz loc_34FD"], "succs": [[1, "fall"], [4, "jump"]]}, {"id": 1, "start": 107380, "end": 107436, "lines": ["pxor xmm0, xmm0", "mov [rbp+var_40], edi", "xor edi, edi", "lea rcx, [rbp+var_40]", "movups [rbp+var_38], xmm0", "movups [rbp+var_28], xmm0", "pxor xmm0, xmm0", "mov [rbp+var_3C], 0", "movups [rbp+var_18], xmm0", "call sub_19C50", "mov rdx, [rbp+var_8]", "sub rdx, fs:28h", "jnz short loc_1A3AE"], "succs": [[2, "fall"], [3, "jump"]]}, {"id": 2, "start": 107436, "end": 107438, "lines": ["leave", "retn"], "succs": []}, {"id": 3, "start": 107438, "end": 107444, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 4, "start": 13565, "end": 13571, "lines": ["call cs:abort_ptr"], "succs": []}]}, {"name": "sub_1A610", "ea": 108048, "blocks": [{"id": 0, "start": 108048, "end": 108085, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "sub rsp, 40h", "mov rax, fs:28h", "mov [rbp+var_8], rax", "mov rax, rdx", "cmp esi, 0Ah", "jz loc_3503"], "succs": [[1, "fall"], [4, "jump"]]}, {"id": 1, "start": 108085, "end": 108157, "lines": ["pxor xmm0, xmm0", "mov [rbp+var_40], esi", "lea rcx, [rbp+var_40]", "mov rdx, 0FFFFFFFFFFFFFFFFh", "movups [rbp+var_18], xmm0", "movdqa xmm0, cs:xmmword_21D70", "mov rsi, rax", "mov [rbp+var_3C], 0", "movups [rbp+var_38], xmm0", "pxor xmm0, xmm0", "movups [rbp+var_28], xmm0", "call sub_19C50", "mov rdx, [rbp+var_8]", "sub rdx, fs:28h", "jnz short loc_1A67F"], "succs": [[2, "fall"], [3, "jump"]]}, {"id": 2, "start": 108157, "end": 108159, "lines": ["leave", "retn"], "succs": []}, {"id": 3, "start": 108159, "end": 108165, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}, {"id": 4, "start": 13571, "end": 13577, "lines": ["call cs:abort_ptr"], "succs": []}]}, {"name": "sub_1C700", "ea": 116480, "blocks": [{"id": 0, "start": 116480, "end": 116502, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push rbx", "sub rsp, 8", "cmp edi, 6", "jz loc_3527"], "succs": [[1, "fall"], [4, "jump"]]}, {"id": 1, "start": 116502, "end": 116523, "lines": ["mov ebx, edi", "xor edi, edi; dataset", "call cs:uselocale_ptr", "mov rsi, rax", "xor eax, eax", "cmp rsi, 0FFFFFFFFFFFFFFFFh", "jz short loc_1C733"], "succs": [[2, "fall"], [3, "jump"]]}, {"id": 2, "start": 116523, "end": 116531, "lines": ["mov edi, ebx", "call sub_1C810"], "succs": [[3, "fall"]]}, {"id": 3, "start": 116531, "end": 116537, "lines": ["mov rbx, [rbp+var_8]", "leave", "retn"], "succs": []}, {"id": 4, "start": 13607, "end": 13613, "lines": ["call cs:abort_ptr"], "succs": []}]}, {"name": "sub_31B5", "ea": 12725, "blocks": [{"id": 0, "start": 12725, "end": 12751, "lines": ["push rbp", "xor eax, eax", "mov esi, 3; cmd", "mov edi, 1; fd", "mov rbp, rsp", "call cs:fcntl_ptr", "test eax, eax", "js short loc_31DD"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 12751, "end": 12765, "lines": ["mov rdi, cs:stdout; stream", "pop rbp", "jmp cs:fflush_unlocked_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 12765, "end": 12767, "lines": ["pop rbp", "retn"], "succs": []}, {"id": 3, "start": 170176, "end": 170176, "lines": [], "succs": []}]}, {"name": "sub_7960", "ea": 31072, "blocks": [{"id": 0, "start": 31072, "end": 31105, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r12", "push rbx", "mov rbx, [rdi]", "mov r12, [rsi]", "mov rdi, rbx", "mov rsi, r12", "call sub_11930", "test eax, eax", "jnz short loc_7998"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 31105, "end": 31121, "lines": ["mov rsi, r12; s2", "mov rdi, rbx; s1", "pop rbx", "pop r12", "pop rbp", "jmp cs:strcmp_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 31128, "end": 31133, "lines": ["pop rbx", "pop r12", "pop rbp", "retn"], "succs": []}, {"id": 3, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_79A0", "ea": 31136, "blocks": [{"id": 0, "start": 31136, "end": 31161, "lines": ["push rbp", "mov rbp, rsp", "push r13", "push r12", "push rbx", "sub rsp, 8", "mov rax, cs:qword_293B0", "test rax, rax", "jle short loc_79FC"], "succs": [[1, "fall"], [3, "jump"]]}, {"id": 1, "start": 31161, "end": 31184, "lines": ["mov rbx, cs:qword_293A0", "lea r13, [rbx+rax*8]", "nop", "nop word ptr [rax+rax+00000000h]"], "succs": [[2, "fall"]]}, {"id": 2, "start": 31184, "end": 31228, "lines": ["mov r12, [rbx]", "add rbx, 8", "mov rdi, [r12]; ptr", "call cs:free_ptr", "mov rdi, [r12+8]; ptr", "call cs:free_ptr", "mov rdi, [r12+10h]; ptr", "call cs:free_ptr", "cmp r13, rbx", "jnz short loc_79D0"], "succs": [[3, "fall"], [2, "jump"]]}, {"id": 3, "start": 31228, "end": 31364, "lines": ["mov cs:qword_293B0, 0", "mov cs:byte_293A9, 0", "mov cs:byte_29368, 0", "mov cs:dword_29364, 0", "mov cs:dword_29360, 0", "mov cs:dword_2935C, 0", "mov cs:dword_29354, 0", "mov cs:dword_29350, 0", "mov cs:dword_2934C, 0", "mov cs:dword_29358, 0", "mov cs:dword_29348, 0", "mov cs:dword_29344, 0", "mov cs:dword_29340, 0", "add rsp, 8", "pop rbx", "pop r12", "pop r13", "pop rbp", "retn"], "succs": []}]}, {"name": "sub_7A90", "ea": 31376, "blocks": [{"id": 0, "start": 31376, "end": 31409, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r12", "push rbx", "mov rbx, [rsi]", "mov r12, [rdi]", "mov rdi, rbx", "mov rsi, r12", "call sub_11930", "test eax, eax", "jnz short loc_7AC8"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 31409, "end": 31425, "lines": ["mov rsi, r12; s2", "mov rdi, rbx; s1", "pop rbx", "pop r12", "pop rbp", "jmp cs:strcmp_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 31432, "end": 31437, "lines": ["pop rbx", "pop r12", "pop rbp", "retn"], "succs": []}, {"id": 3, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_7AD0", "ea": 31440, "blocks": [{"id": 0, "start": 31440, "end": 31468, "lines": ["endbr64", "mov rax, [rdi+48h]", "cmp [rsi+48h], rax", "setl al", "setnle dl", "movzx eax, al", "movzx edx, dl", "sub eax, edx", "jnz short locret_7B00"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 31468, "end": 31483, "lines": ["mov rax, [rdi]", "mov rdi, [rsi]; s1", "mov rsi, rax; s2", "jmp cs:strcmp_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 31488, "end": 31489, "lines": ["retn"], "succs": []}, {"id": 3, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_7B10", "ea": 31504, "blocks": [{"id": 0, "start": 31504, "end": 31570, "lines": ["endbr64", "mov rax, [rdi+80h]", "xor edx, edx", "cmp [rsi+80h], rax", "setnle al", "setl dl", "movzx eax, al", "sub edx, eax", "mov rax, [rdi+88h]", "cmp [rsi+88h], rax", "setl al", "setnle cl", "movzx eax, al", "movzx ecx, cl", "sub eax, ecx", "lea eax, [rax+rdx*2]", "test eax, eax", "jnz short locret_7B68"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 31570, "end": 31585, "lines": ["mov rax, [rdi]", "mov rdi, [rsi]; s1", "mov rsi, rax; s2", "jmp cs:strcmp_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 31592, "end": 31593, "lines": ["retn"], "succs": []}, {"id": 3, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_7B70", "ea": 31600, "blocks": [{"id": 0, "start": 31600, "end": 31654, "lines": ["endbr64", "mov rax, [rdi+70h]", "xor edx, edx", "cmp [rsi+70h], rax", "setnle al", "setl dl", "movzx eax, al", "sub edx, eax", "mov rax, [rdi+78h]", "cmp [rsi+78h], rax", "setl al", "setnle cl", "movzx eax, al", "movzx ecx, cl", "sub eax, ecx", "lea eax, [rax+rdx*2]", "test eax, eax", "jnz short locret_7BB8"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 31654, "end": 31669, "lines": ["mov rax, [rdi]", "mov rdi, [rsi]; s1", "mov rsi, rax; s2", "jmp cs:strcmp_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 31672, "end": 31673, "lines": ["retn"], "succs": []}, {"id": 3, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_7BC0", "ea": 31680, "blocks": [{"id": 0, "start": 31680, "end": 31734, "lines": ["endbr64", "mov rax, [rdi+60h]", "xor edx, edx", "cmp [rsi+60h], rax", "setnle al", "setl dl", "movzx eax, al", "sub edx, eax", "mov rax, [rdi+68h]", "cmp [rsi+68h], rax", "setl al", "setnle cl", "movzx eax, al", "movzx ecx, cl", "sub eax, ecx", "lea eax, [rax+rdx*2]", "test eax, eax", "jnz short locret_7C08"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 31734, "end": 31749, "lines": ["mov rax, [rdi]", "mov rdi, [rsi]; s1", "mov rsi, rax; s2", "jmp cs:strcmp_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 31752, "end": 31753, "lines": ["retn"], "succs": []}, {"id": 3, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_7C10", "ea": 31760, "blocks": [{"id": 0, "start": 31760, "end": 31814, "lines": ["endbr64", "mov rax, [rdi+70h]", "xor edx, edx", "cmp [rsi+70h], rax", "setnle al", "setl dl", "movzx eax, al", "sub edx, eax", "mov rax, [rdi+78h]", "cmp [rsi+78h], rax", "setl al", "setnle cl", "movzx eax, al", "movzx ecx, cl", "sub eax, ecx", "lea eax, [rax+rdx*2]", "test eax, eax", "jnz short locret_7C58"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 31814, "end": 31829, "lines": ["mov rax, [rdi]", "mov rdi, [rsi]; s1", "mov rsi, rax; s2", "jmp cs:strcmp_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 31832, "end": 31833, "lines": ["retn"], "succs": []}, {"id": 3, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_7E20", "ea": 32288, "blocks": [{"id": 0, "start": 32288, "end": 32316, "lines": ["endbr64", "mov rax, [rsi+48h]", "cmp [rdi+48h], rax", "setl al", "setnle dl", "movzx eax, al", "movzx edx, dl", "sub eax, edx", "jnz short locret_7E70"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 32316, "end": 32365, "lines": ["push rbp", "mov rbp, rsp", "sub rsp, 10h", "mov rdi, [rdi]", "mov rsi, [rsi]", "mov [rbp-10h], rdi", "mov [rbp-8], rsi", "call cs:__errno_location_ptr", "mov rsi, [rbp-8]; s2", "mov rdi, [rbp-10h]; s1", "mov dword ptr [rax], 0", "leave", "jmp cs:strcoll_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 32368, "end": 32369, "lines": ["retn"], "succs": []}, {"id": 3, "start": 169992, "end": 169992, "lines": [], "succs": []}]}, {"name": "sub_7E80", "ea": 32384, "blocks": [{"id": 0, "start": 32384, "end": 32412, "lines": ["endbr64", "mov rax, [rdi+48h]", "cmp [rsi+48h], rax", "setl al", "setnle dl", "movzx eax, al", "movzx edx, dl", "sub eax, edx", "jnz short locret_7ED0"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 32412, "end": 32461, "lines": ["push rbp", "mov rbp, rsp", "push rbx", "sub rsp, 18h", "mov rbx, [rsi]", "mov rsi, [rdi]", "mov [rbp-18h], rsi", "call cs:__errno_location_ptr", "mov rsi, [rbp-18h]; s2", "mov rdi, rbx; s1", "mov rbx, [rbp-8]", "mov dword ptr [rax], 0", "leave", "jmp cs:strcoll_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 32464, "end": 32465, "lines": ["retn"], "succs": []}, {"id": 3, "start": 169992, "end": 169992, "lines": [], "succs": []}]}, {"name": "sub_7EE0", "ea": 32480, "blocks": [{"id": 0, "start": 32480, "end": 32508, "lines": ["endbr64", "mov rax, [rsi+48h]", "cmp [rdi+48h], rax", "setl al", "setnle dl", "movzx eax, al", "movzx edx, dl", "sub eax, edx", "jnz short locret_7F10"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 32508, "end": 32520, "lines": ["mov rsi, [rsi]; s2", "mov rdi, [rdi]; s1", "jmp cs:strcmp_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 32528, "end": 32529, "lines": ["retn"], "succs": []}, {"id": 3, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_7FD0", "ea": 32720, "blocks": [{"id": 0, "start": 32720, "end": 32786, "lines": ["endbr64", "mov rax, [rsi+80h]", "xor edx, edx", "cmp [rdi+80h], rax", "setnle al", "setl dl", "movzx eax, al", "sub edx, eax", "mov rax, [rsi+88h]", "cmp [rdi+88h], rax", "setl al", "setnle cl", "movzx eax, al", "movzx ecx, cl", "sub eax, ecx", "lea eax, [rax+rdx*2]", "test eax, eax", "jnz short locret_8048"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 32786, "end": 32835, "lines": ["push rbp", "mov rbp, rsp", "sub rsp, 10h", "mov rdi, [rdi]", "mov rsi, [rsi]", "mov [rbp-10h], rdi", "mov [rbp-8], rsi", "call cs:__errno_location_ptr", "mov rsi, [rbp-8]; s2", "mov rdi, [rbp-10h]; s1", "mov dword ptr [rax], 0", "leave", "jmp cs:strcoll_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 32840, "end": 32841, "lines": ["retn"], "succs": []}, {"id": 3, "start": 169992, "end": 169992, "lines": [], "succs": []}]}, {"name": "sub_8050", "ea": 32848, "blocks": [{"id": 0, "start": 32848, "end": 32914, "lines": ["endbr64", "mov rax, [rdi+80h]", "xor edx, edx", "cmp [rsi+80h], rax", "setnle al", "setl dl", "movzx eax, al", "sub edx, eax", "mov rax, [rdi+88h]", "cmp [rsi+88h], rax", "setl al", "setnle cl", "movzx eax, al", "movzx ecx, cl", "sub eax, ecx", "lea eax, [rax+rdx*2]", "test eax, eax", "jnz short locret_80C8"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 32914, "end": 32963, "lines": ["push rbp", "mov rbp, rsp", "push rbx", "sub rsp, 18h", "mov rbx, [rsi]", "mov rsi, [rdi]", "mov [rbp-18h], rsi", "call cs:__errno_location_ptr", "mov rsi, [rbp-18h]; s2", "mov rdi, rbx; s1", "mov rbx, [rbp-8]", "mov dword ptr [rax], 0", "leave", "jmp cs:strcoll_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 32968, "end": 32969, "lines": ["retn"], "succs": []}, {"id": 3, "start": 169992, "end": 169992, "lines": [], "succs": []}]}, {"name": "sub_81D0", "ea": 33232, "blocks": [{"id": 0, "start": 33232, "end": 33286, "lines": ["endbr64", "mov rax, [rsi+60h]", "xor edx, edx", "cmp [rdi+60h], rax", "setnle al", "setl dl", "movzx eax, al", "sub edx, eax", "mov rax, [rsi+68h]", "cmp [rdi+68h], rax", "setl al", "setnle cl", "movzx eax, al", "movzx ecx, cl", "sub eax, ecx", "lea eax, [rax+rdx*2]", "test eax, eax", "jnz short locret_8240"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 33286, "end": 33335, "lines": ["push rbp", "mov rbp, rsp", "sub rsp, 10h", "mov rdi, [rdi]", "mov rsi, [rsi]", "mov [rbp-10h], rdi", "mov [rbp-8], rsi", "call cs:__errno_location_ptr", "mov rsi, [rbp-8]; s2", "mov rdi, [rbp-10h]; s1", "mov dword ptr [rax], 0", "leave", "jmp cs:strcoll_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 33344, "end": 33345, "lines": ["retn"], "succs": []}, {"id": 3, "start": 169992, "end": 169992, "lines": [], "succs": []}]}, {"name": "sub_8250", "ea": 33360, "blocks": [{"id": 0, "start": 33360, "end": 33414, "lines": ["endbr64", "mov rax, [rdi+60h]", "xor edx, edx", "cmp [rsi+60h], rax", "setnle al", "setl dl", "movzx eax, al", "sub edx, eax", "mov rax, [rdi+68h]", "cmp [rsi+68h], rax", "setl al", "setnle cl", "movzx eax, al", "movzx ecx, cl", "sub eax, ecx", "lea eax, [rax+rdx*2]", "test eax, eax", "jnz short locret_82C0"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 33414, "end": 33463, "lines": ["push rbp", "mov rbp, rsp", "push rbx", "sub rsp, 18h", "mov rbx, [rsi]", "mov rsi, [rdi]", "mov [rbp-18h], rsi", "call cs:__errno_location_ptr", "mov rsi, [rbp-18h]; s2", "mov rdi, rbx; s1", "mov rbx, [rbp-8]", "mov dword ptr [rax], 0", "leave", "jmp cs:strcoll_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 33472, "end": 33473, "lines": ["retn"], "succs": []}, {"id": 3, "start": 169992, "end": 169992, "lines": [], "succs": []}]}, {"name": "sub_82D0", "ea": 33488, "blocks": [{"id": 0, "start": 33488, "end": 33542, "lines": ["endbr64", "mov rax, [rsi+70h]", "xor edx, edx", "cmp [rdi+70h], rax", "setnle al", "setl dl", "movzx eax, al", "sub edx, eax", "mov rax, [rsi+78h]", "cmp [rdi+78h], rax", "setl al", "setnle cl", "movzx eax, al", "movzx ecx, cl", "sub eax, ecx", "lea eax, [rax+rdx*2]", "test eax, eax", "jnz short locret_8340"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 33542, "end": 33591, "lines": ["push rbp", "mov rbp, rsp", "sub rsp, 10h", "mov rdi, [rdi]", "mov rsi, [rsi]", "mov [rbp-10h], rdi", "mov [rbp-8], rsi", "call cs:__errno_location_ptr", "mov rsi, [rbp-8]; s2", "mov rdi, [rbp-10h]; s1", "mov dword ptr [rax], 0", "leave", "jmp cs:strcoll_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 33600, "end": 33601, "lines": ["retn"], "succs": []}, {"id": 3, "start": 169992, "end": 169992, "lines": [], "succs": []}]}, {"name": "sub_8350", "ea": 33616, "blocks": [{"id": 0, "start": 33616, "end": 33670, "lines": ["endbr64", "mov rax, [rdi+70h]", "xor edx, edx", "cmp [rsi+70h], rax", "setnle al", "setl dl", "movzx eax, al", "sub edx, eax", "mov rax, [rdi+78h]", "cmp [rsi+78h], rax", "setl al", "setnle cl", "movzx eax, al", "movzx ecx, cl", "sub eax, ecx", "lea eax, [rax+rdx*2]", "test eax, eax", "jnz short locret_83C0"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 33670, "end": 33719, "lines": ["push rbp", "mov rbp, rsp", "push rbx", "sub rsp, 18h", "mov rbx, [rsi]", "mov rsi, [rdi]", "mov [rbp-18h], rsi", "call cs:__errno_location_ptr", "mov rsi, [rbp-18h]; s2", "mov rdi, rbx; s1", "mov rbx, [rbp-8]", "mov dword ptr [rax], 0", "leave", "jmp cs:strcoll_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 33728, "end": 33729, "lines": ["retn"], "succs": []}, {"id": 3, "start": 169992, "end": 169992, "lines": [], "succs": []}]}, {"name": "sub_8600", "ea": 34304, "blocks": [{"id": 0, "start": 34304, "end": 34370, "lines": ["endbr64", "mov rax, [rsi+80h]", "xor edx, edx", "cmp [rdi+80h], rax", "setnle al", "setl dl", "movzx eax, al", "sub edx, eax", "mov rax, [rsi+88h]", "cmp [rdi+88h], rax", "setl al", "setnle cl", "movzx eax, al", "movzx ecx, cl", "sub eax, ecx", "lea eax, [rax+rdx*2]", "test eax, eax", "jnz short locret_8650"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 34370, "end": 34382, "lines": ["mov rsi, [rsi]; s2", "mov rdi, [rdi]; s1", "jmp cs:strcmp_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 34384, "end": 34385, "lines": ["retn"], "succs": []}, {"id": 3, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_8660", "ea": 34400, "blocks": [{"id": 0, "start": 34400, "end": 34454, "lines": ["endbr64", "mov rax, [rsi+70h]", "xor edx, edx", "cmp [rdi+70h], rax", "setnle al", "setl dl", "movzx eax, al", "sub edx, eax", "mov rax, [rsi+78h]", "cmp [rdi+78h], rax", "setl al", "setnle cl", "movzx eax, al", "movzx ecx, cl", "sub eax, ecx", "lea eax, [rax+rdx*2]", "test eax, eax", "jnz short locret_86A8"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 34454, "end": 34466, "lines": ["mov rsi, [rsi]; s2", "mov rdi, [rdi]; s1", "jmp cs:strcmp_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 34472, "end": 34473, "lines": ["retn"], "succs": []}, {"id": 3, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_86B0", "ea": 34480, "blocks": [{"id": 0, "start": 34480, "end": 34534, "lines": ["endbr64", "mov rax, [rsi+60h]", "xor edx, edx", "cmp [rdi+60h], rax", "setnle al", "setl dl", "movzx eax, al", "sub edx, eax", "mov rax, [rsi+68h]", "cmp [rdi+68h], rax", "setl al", "setnle cl", "movzx eax, al", "movzx ecx, cl", "sub eax, ecx", "lea eax, [rax+rdx*2]", "test eax, eax", "jnz short locret_86F8"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 34534, "end": 34546, "lines": ["mov rsi, [rsi]; s2", "mov rdi, [rdi]; s1", "jmp cs:strcmp_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 34552, "end": 34553, "lines": ["retn"], "succs": []}, {"id": 3, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_8700", "ea": 34560, "blocks": [{"id": 0, "start": 34560, "end": 34614, "lines": ["endbr64", "mov rax, [rsi+70h]", "xor edx, edx", "cmp [rdi+70h], rax", "setnle al", "setl dl", "movzx eax, al", "sub edx, eax", "mov rax, [rsi+78h]", "cmp [rdi+78h], rax", "setl al", "setnle cl", "movzx eax, al", "movzx ecx, cl", "sub eax, ecx", "lea eax, [rax+rdx*2]", "test eax, eax", "jnz short locret_8748"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 34614, "end": 34626, "lines": ["mov rsi, [rsi]; s2", "mov rdi, [rdi]; s1", "jmp cs:strcmp_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 34632, "end": 34633, "lines": ["retn"], "succs": []}, {"id": 3, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_89C0", "ea": 35264, "blocks": [{"id": 0, "start": 35264, "end": 35372, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r14", "push r13", "push r12", "mov r12, rdi", "push rbx", "mov r13, [rsi]", "mov esi, 2Eh ; '.'; c", "mov rdi, r13; s", "call cs:strrchr_ptr", "mov r14, [r12]", "mov esi, 2Eh ; '.'; c", "mov rbx, rax", "mov rdi, r14; s", "call cs:strrchr_ptr", "mov r12, rax", "lea rax, accept+3; \"\"", "test r12, r12", "cmovz r12, rax", "test rbx, rbx", "cmovz rbx, rax", "call cs:__errno_location_ptr", "mov rsi, r12; s2", "mov dword ptr [rax], 0", "mov rdi, rbx; s1", "call cs:strcoll_ptr", "test eax, eax", "jnz short loc_8A40"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 35372, "end": 35392, "lines": ["pop rbx", "mov rsi, r14; s2", "pop r12", "mov rdi, r13; s1", "pop r13", "pop r14", "pop rbp", "jmp cs:strcoll_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 35392, "end": 35401, "lines": ["pop rbx", "pop r12", "pop r13", "pop r14", "pop rbp", "retn"], "succs": []}, {"id": 3, "start": 169992, "end": 169992, "lines": [], "succs": []}]}, {"name": "sub_8A50", "ea": 35408, "blocks": [{"id": 0, "start": 35408, "end": 35516, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r14", "push r13", "push r12", "mov r12, rsi", "mov esi, 2Eh ; '.'; c", "push rbx", "mov r13, [rdi]", "mov rdi, r13; s", "call cs:strrchr_ptr", "mov r14, [r12]", "mov esi, 2Eh ; '.'; c", "mov rbx, rax", "mov rdi, r14; s", "call cs:strrchr_ptr", "mov r12, rax", "lea rax, accept+3; \"\"", "test r12, r12", "cmovz r12, rax", "test rbx, rbx", "cmovz rbx, rax", "call cs:__errno_location_ptr", "mov rsi, r12; s2", "mov dword ptr [rax], 0", "mov rdi, rbx; s1", "call cs:strcoll_ptr", "test eax, eax", "jnz short loc_8AD0"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 35516, "end": 35536, "lines": ["pop rbx", "mov rsi, r14; s2", "pop r12", "mov rdi, r13; s1", "pop r13", "pop r14", "pop rbp", "jmp cs:strcoll_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 35536, "end": 35545, "lines": ["pop rbx", "pop r12", "pop r13", "pop r14", "pop rbp", "retn"], "succs": []}, {"id": 3, "start": 169992, "end": 169992, "lines": [], "succs": []}]}, {"name": "sub_10820", "ea": 67616, "blocks": [{"id": 0, "start": 67616, "end": 67632, "lines": ["endbr64", "mov rax, [rdi]", "add rdi, 1Ch", "cmp rax, rdi", "jz short locret_10840"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 67632, "end": 67641, "lines": ["mov rdi, rax; ptr", "jmp cs:free_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 67648, "end": 67649, "lines": ["retn"], "succs": []}, {"id": 3, "start": 169384, "end": 169384, "lines": [], "succs": []}]}, {"name": "sub_1AE50", "ea": 110160, "blocks": [{"id": 0, "start": 110160, "end": 110170, "lines": ["endbr64", "cmp rdi, 1", "jz short loc_1AE60"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 110170, "end": 110175, "lines": ["jmp sub_1AA60"], "succs": [[3, "jump"]]}, {"id": 2, "start": 110176, "end": 110182, "lines": ["mov eax, 1", "retn"], "succs": []}, {"id": 3, "start": 109152, "end": 109152, "lines": [], "succs": []}]}, {"name": "sub_1BB90", "ea": 113552, "blocks": [{"id": 0, "start": 113552, "end": 113583, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r12", "mov r12, rdi", "mov rdi, rsi; size", "push rbx", "mov rbx, rsi", "call cs:malloc_ptr", "test rax, rax", "jz short loc_1BBC5"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 113583, "end": 113605, "lines": ["mov rcx, rbx", "mov rdx, rbx", "mov rsi, r12", "pop rbx", "mov rdi, rax", "pop r12", "pop rbp", "jmp cs:__memcpy_chk_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 113605, "end": 113611, "lines": ["call sub_1BCB0"], "succs": []}, {"id": 3, "start": 169872, "end": 169872, "lines": [], "succs": []}]}, {"name": "sub_1BBD0", "ea": 113616, "blocks": [{"id": 0, "start": 113616, "end": 113647, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r12", "mov r12, rdi", "mov rdi, rsi; size", "push rbx", "mov rbx, rsi", "call cs:malloc_ptr", "test rax, rax", "jz short loc_1BC05"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 113647, "end": 113669, "lines": ["mov rcx, rbx", "mov rdx, rbx", "mov rsi, r12", "pop rbx", "mov rdi, rax", "pop r12", "pop rbp", "jmp cs:__memcpy_chk_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 113669, "end": 113675, "lines": ["call sub_1BCB0"], "succs": []}, {"id": 3, "start": 169872, "end": 169872, "lines": [], "succs": []}]}, {"name": "sub_1BC10", "ea": 113680, "blocks": [{"id": 0, "start": 113680, "end": 113718, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r13", "mov r13, rdi", "lea rdi, [rsi+1]; size", "push r12", "push rbx", "mov rbx, rsi", "sub rsp, 8", "call cs:malloc_ptr", "test rax, rax", "jz short loc_1BC57"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 113718, "end": 113751, "lines": ["mov byte ptr [rax+rbx], 0", "add rsp, 8", "lea rcx, [rbx+1]", "mov rdx, rbx", "mov rsi, r13", "pop rbx", "mov rdi, rax", "pop r12", "pop r13", "pop rbp", "jmp cs:__memcpy_chk_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 113751, "end": 113757, "lines": ["call sub_1BCB0"], "succs": []}, {"id": 3, "start": 169872, "end": 169872, "lines": [], "succs": []}]}, {"name": "sub_1BC60", "ea": 113760, "blocks": [{"id": 0, "start": 113760, "end": 113798, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r12", "mov r12, rdi", "push rbx", "call cs:strlen_ptr", "lea rbx, [rax+1]", "mov rdi, rbx; size", "call cs:malloc_ptr", "test rax, rax", "jz short loc_1BC9C"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 113798, "end": 113820, "lines": ["mov rcx, rbx", "mov rdx, rbx", "mov rsi, r12", "pop rbx", "mov rdi, rax", "pop r12", "pop rbp", "jmp cs:__memcpy_chk_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 113820, "end": 113826, "lines": ["call sub_1BCB0"], "succs": []}, {"id": 3, "start": 169872, "end": 169872, "lines": [], "succs": []}]}, {"name": "sub_1C7D0", "ea": 116688, "blocks": [{"id": 0, "start": 116688, "end": 116700, "lines": ["endbr64", "mov rax, rsi", "mul rdx", "jo short loc_1C7F1"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 116700, "end": 116721, "lines": ["mov rsi, rax", "test rax, rax", "mov eax, 1", "cmovz rsi, rax; size", "jmp cs:realloc_ptr"], "succs": [[3, "jump"]]}, {"id": 2, "start": 116721, "end": 116741, "lines": ["push rbp", "mov rbp, rsp", "call cs:__errno_location_ptr", "mov dword ptr [rax], 0Ch", "xor eax, eax", "pop rbp", "retn"], "succs": []}, {"id": 3, "start": 170024, "end": 170024, "lines": [], "succs": []}]}, {"name": ".init_proc", "ea": 12288, "blocks": [{"id": 0, "start": 12288, "end": 12308, "lines": ["endbr64", "sub rsp, 8", "mov rax, cs:__gmon_start___ptr", "test rax, rax", "jz short loc_3016"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 12308, "end": 12310, "lines": ["call rax ; __gmon_start__"], "succs": [[2, "fall"]]}, {"id": 2, "start": 12310, "end": 12315, "lines": ["add rsp, 8", "retn"], "succs": []}]}, {"name": "sub_5680", "ea": 22144, "blocks": [{"id": 0, "start": 22144, "end": 22158, "lines": ["endbr64", "mov eax, cs:sig", "test eax, eax", "jnz short locret_5694"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 22158, "end": 22164, "lines": ["mov cs:sig, edi"], "succs": [[2, "fall"]]}, {"id": 2, "start": 22164, "end": 22165, "lines": ["retn"], "succs": []}]}, {"name": "sub_5BE0", "ea": 23520, "blocks": [{"id": 0, "start": 23520, "end": 23531, "lines": ["movzx eax, cs:byte_2801C", "test al, al", "js short loc_5BF0"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 23531, "end": 23535, "lines": ["and eax, 1", "retn"], "succs": []}, {"id": 2, "start": 23536, "end": 23562, "lines": ["push rbp", "mov edi, 1; fd", "mov rbp, rsp", "call cs:isatty_ptr", "pop rbp", "mov cs:byte_2801C, al", "and eax, 1", "retn"], "succs": []}]}, {"name": "sub_6250", "ea": 25168, "blocks": [{"id": 0, "start": 25168, "end": 25254, "lines": ["push rbp", "mov rbp, rsp", "push r14", "mov r14, rdi", "push r13", "mov r13, rsi", "mov esi, 2Eh ; '.'; c", "push r12", "mov r12, rdx", "push rbx", "mov rdi, [rdi]; s", "call cs:strrchr_ptr", "mov rdi, [r13+0]; s", "mov esi, 2Eh ; '.'; c", "mov rbx, rax", "call cs:strrchr_ptr", "lea rdx, accept+3; \"\"", "test rax, rax", "cmovz rax, rdx", "test rbx, rbx", "cmovnz rdx, rbx", "mov rsi, rax", "mov rdi, rdx", "call r12", "test eax, eax", "jnz short loc_62C0"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 25254, "end": 25274, "lines": ["pop rbx", "mov rsi, [r13+0]", "mov rax, r12", "mov rdi, [r14]", "pop r12", "pop r13", "pop r14", "pop rbp", "jmp rax"], "succs": []}, {"id": 2, "start": 25280, "end": 25289, "lines": ["pop rbx", "pop r12", "pop r13", "pop r14", "pop rbp", "retn"], "succs": []}]}, {"name": "sub_6A60", "ea": 27232, "blocks": [{"id": 0, "start": 27232, "end": 27246, "lines": ["endbr64", "mov eax, cs:sig", "test eax, eax", "jnz short locret_6A7D"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 27246, "end": 27261, "lines": ["mov eax, cs:dword_29214", "add eax, 1", "mov cs:dword_29214, eax"], "succs": [[2, "fall"]]}, {"id": 2, "start": 27261, "end": 27262, "lines": ["retn"], "succs": []}]}, {"name": "sub_6B00", "ea": 27392, "blocks": [{"id": 0, "start": 27392, "end": 27409, "lines": ["mov rdx, [rdi+18h]", "mov rax, [rdi+20h]", "sub rax, rdx", "cmp rax, 7", "jbe short loc_6B28"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 27409, "end": 27425, "lines": ["mov rax, cs:qword_291F8", "mov [rdx], rax", "add qword ptr [rdi+18h], 8", "retn"], "succs": []}, {"id": 2, "start": 27432, "end": 27480, "lines": ["push rbp", "mov esi, 8", "mov rbp, rsp", "sub rsp, 10h", "mov [rbp-8], rdi", "call sub_17F50", "mov rdi, [rbp-8]", "mov rax, cs:qword_291F8", "mov rdx, [rdi+18h]", "mov [rdx], rax", "add qword ptr [rdi+18h], 8", "leave", "retn"], "succs": []}]}, {"name": "sub_11110", "ea": 69904, "blocks": [{"id": 0, "start": 69904, "end": 69923, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "call sub_11130", "test rax, rax", "jz short loc_11125"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 69923, "end": 69925, "lines": ["pop rbp", "retn"], "succs": []}, {"id": 2, "start": 69925, "end": 69931, "lines": ["call sub_1BCB0"], "succs": []}]}, {"name": "sub_11970", "ea": 72048, "blocks": [{"id": 0, "start": 72048, "end": 72108, "lines": ["endbr64", "push rbp", "xor edi, edi; clock_id", "mov rbp, rsp", "sub rsp, 20h", "mov rsi, fs:28h", "mov [rbp+var_8], rsi", "lea rsi, [rbp+tp]; tp", "call cs:clock_gettime_ptr", "mov rax, [rbp+tp.tv_sec]", "mov rdx, [rbp+tp.tv_nsec]", "mov rcx, [rbp+var_8]", "sub rcx, fs:28h", "jnz short loc_119AE"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 72108, "end": 72110, "lines": ["leave", "retn"], "succs": []}, {"id": 2, "start": 72110, "end": 72116, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_12F00", "ea": 77568, "blocks": [{"id": 0, "start": 77568, "end": 77609, "lines": ["endbr64", "movdqu xmm0, xmmword ptr [rdi+8]", "movdqu xmm2, xmmword ptr [rsi+8]", "pxor xmm0, xmm2", "movdqa xmm1, xmm0", "psrldq xmm1, 8", "por xmm0, xmm1", "movq rax, xmm0", "test rax, rax", "jnz short loc_12F48"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 77609, "end": 77634, "lines": ["push rbp", "mov rsi, [rsi]; s2", "mov rdi, [rdi]; s1", "mov rbp, rsp", "call cs:strcmp_ptr", "pop rbp", "test eax, eax", "setz dl", "mov eax, edx", "retn"], "succs": []}, {"id": 2, "start": 77640, "end": 77643, "lines": ["xor eax, eax", "retn"], "succs": []}]}, {"name": "sub_14440", "ea": 83008, "blocks": [{"id": 0, "start": 83008, "end": 83072, "lines": ["endbr64", "mov byte ptr [rsi+14h], 0", "mov rcx, rdi", "mov r8, 0CCCCCCCCCCCCCCCDh", "lea rdi, [rsi+14h]", "nop word ptr [rax+rax+00h]", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]", "nop word ptr [rax+rax+00000000h]"], "succs": [[1, "fall"]]}, {"id": 1, "start": 83072, "end": 83113, "lines": ["mov rax, rcx", "sub rdi, 1", "mul r8", "mov rax, rcx", "shr rdx, 3", "lea rsi, [rdx+rdx*4]", "add rsi, rsi", "sub rax, rsi", "add eax, 30h ; '0'", "cmp rcx, 9", "mov rcx, rdx", "mov [rdi], al", "ja short loc_14480"], "succs": [[2, "fall"], [1, "jump"]]}, {"id": 2, "start": 83113, "end": 83117, "lines": ["mov rax, rdi", "retn"], "succs": []}]}, {"name": "sub_19FE0", "ea": 106464, "blocks": [{"id": 0, "start": 106464, "end": 106671, "lines": ["endbr64", "push rbp", "lea rax, xmmword_29540", "mov rbp, rsp", "push r15", "mov r15, rsi", "push r14", "mov r14, rdi", "push r13", "push r12", "mov r12, rdx", "push rbx", "sub rsp, 28h", "test rcx, rcx", "cmovnz rax, rcx", "mov rbx, rax", "call cs:__errno_location_ptr", "xor r9d, r9d", "test r12, r12", "lea r10, [rbx+8]", "mov r13, rax", "mov eax, [rax]", "setz r9b", "sub rsp, 8", "or r9d, [rbx+4]", "mov r8d, [rbx]", "mov rcx, r15", "mov rdx, r14", "mov [rbp+var_34], eax", "xor esi, esi", "xor edi, edi", "push qword ptr [rbx+30h]", "push qword ptr [rbx+28h]", "push r10", "mov [rbp+var_48], r10", "mov [rbp+var_38], r9d", "call sub_18400", "add rsp, 20h", "lea rsi, [rax+1]", "mov [rbp+var_50], rax", "mov rdi, rsi", "mov [rbp+var_40], rsi", "call sub_1B830", "mov r10, [rbp+var_48]", "sub rsp, 8", "mov r8d, [rbx]", "push qword ptr [rbx+30h]", "mov rsi, [rbp+var_40]", "mov rdi, rax", "mov rcx, r15", "mov r9d, [rbp+var_38]", "push qword ptr [rbx+28h]", "mov rdx, r14", "push r10", "mov [rbp+var_40], rax", "call sub_18400", "mov eax, [rbp+var_34]", "add rsp, 20h", "test r12, r12", "mov rdi, [rbp+var_40]", "mov [r13+0], eax", "jz short loc_1A0B7"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 106671, "end": 106679, "lines": ["mov r11, [rbp+var_50]", "mov [r12], r11"], "succs": [[2, "fall"]]}, {"id": 2, "start": 106679, "end": 106697, "lines": ["lea rsp, [rbp-28h]", "mov rax, rdi", "pop rbx", "pop r12", "pop r13", "pop r14", "pop r15", "pop rbp", "retn"], "succs": []}]}, {"name": "sub_1A3C0", "ea": 107456, "blocks": [{"id": 0, "start": 107456, "end": 107597, "lines": ["endbr64", "push rbp", "mov ecx, edx", "and ecx, 1Fh", "mov rbp, rsp", "sub rsp, 40h", "movdqa xmm0, cs:xmmword_29540", "mov rax, cs:qword_29570", "mov r8, fs:28h", "mov [rbp+var_8], r8", "mov r8, rsi", "mov [rbp+var_10], rax", "mov eax, edx", "movaps [rbp+var_40], xmm0", "movdqa xmm0, cs:xmmword_29550", "shr al, 5", "movzx eax, al", "movaps [rbp+var_30], xmm0", "movdqa xmm0, cs:xmmword_29560", "lea rsi, [rbp+rax*4+var_40+8]", "xor eax, eax", "movaps [rbp+var_20], xmm0", "mov edx, [rsi]", "bt edx, ecx", "setnb al", "shl eax, cl", "lea rcx, [rbp+var_40]", "xor eax, edx", "mov rdx, r8", "mov [rsi], eax", "mov rsi, rdi", "xor edi, edi", "call sub_19C50", "mov rdx, [rbp+var_8]", "sub rdx, fs:28h", "jnz short loc_1A44F"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 107597, "end": 107599, "lines": ["leave", "retn"], "succs": []}, {"id": 2, "start": 107599, "end": 107605, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_1A460", "ea": 107616, "blocks": [{"id": 0, "start": 107616, "end": 107760, "lines": ["endbr64", "push rbp", "mov ecx, esi", "and ecx, 1Fh", "mov rbp, rsp", "sub rsp, 40h", "movdqa xmm0, cs:xmmword_29540", "mov rax, fs:28h", "mov [rbp+var_8], rax", "xor eax, eax", "mov rax, cs:qword_29570", "movaps [rbp+var_40], xmm0", "movdqa xmm0, cs:xmmword_29550", "mov [rbp+var_10], rax", "mov eax, esi", "shr al, 5", "movaps [rbp+var_30], xmm0", "movdqa xmm0, cs:xmmword_29560", "movzx eax, al", "lea rdx, [rbp+rax*4+var_40+8]", "movaps [rbp+var_20], xmm0", "xor eax, eax", "mov esi, [rdx]", "bt esi, ecx", "setnb al", "shl eax, cl", "lea rcx, [rbp+var_40]", "xor eax, esi", "mov rsi, rdi", "xor edi, edi", "mov [rdx], eax", "mov rdx, 0FFFFFFFFFFFFFFFFh", "call sub_19C50", "mov rdx, [rbp+var_8]", "sub rdx, fs:28h", "jnz short loc_1A4F2"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 107760, "end": 107762, "lines": ["leave", "retn"], "succs": []}, {"id": 2, "start": 107762, "end": 107768, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_1A500", "ea": 107776, "blocks": [{"id": 0, "start": 107776, "end": 107898, "lines": ["endbr64", "push rbp", "mov rdx, 0FFFFFFFFFFFFFFFFh", "mov rbp, rsp", "sub rsp, 40h", "movdqa xmm0, cs:xmmword_29540", "mov rax, cs:qword_29570", "mov rsi, fs:28h", "mov [rbp+var_8], rsi", "mov rsi, rdi", "lea rcx, [rbp+var_40]", "xor edi, edi", "movaps [rbp+var_40], xmm0", "movdqa xmm0, cs:xmmword_29550", "mov [rbp+var_10], rax", "mov eax, dword ptr cs:xmmword_29540+0Ch", "movaps [rbp+var_30], xmm0", "movdqa xmm0, cs:xmmword_29560", "or eax, 4000000h", "mov dword ptr [rbp+var_40+0Ch], eax", "movaps [rbp+var_20], xmm0", "call sub_19C50", "mov rdx, [rbp+var_8]", "sub rdx, fs:28h", "jnz short loc_1A57C"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 107898, "end": 107900, "lines": ["leave", "retn"], "succs": []}, {"id": 2, "start": 107900, "end": 107906, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_1A590", "ea": 107920, "blocks": [{"id": 0, "start": 107920, "end": 108038, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "sub rsp, 40h", "movdqa xmm0, cs:xmmword_29540", "mov rax, cs:qword_29570", "mov rdx, fs:28h", "mov [rbp+var_8], rdx", "mov rdx, rsi", "lea rcx, [rbp+var_40]", "mov rsi, rdi", "xor edi, edi", "movaps [rbp+var_40], xmm0", "movdqa xmm0, cs:xmmword_29550", "mov [rbp+var_10], rax", "mov eax, dword ptr cs:xmmword_29540+0Ch", "movaps [rbp+var_30], xmm0", "movdqa xmm0, cs:xmmword_29560", "or eax, 4000000h", "mov dword ptr [rbp+var_40+0Ch], eax", "movaps [rbp+var_20], xmm0", "call sub_19C50", "mov rdx, [rbp+var_8]", "sub rdx, fs:28h", "jnz short loc_1A608"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 108038, "end": 108040, "lines": ["leave", "retn"], "succs": []}, {"id": 2, "start": 108040, "end": 108046, "lines": ["call cs:__stack_chk_fail_ptr"], "succs": []}]}, {"name": "sub_1B7D0", "ea": 112592, "blocks": [{"id": 0, "start": 112592, "end": 112611, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "call sub_1C7D0", "test rax, rax", "jz short loc_1B7E5"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 112611, "end": 112613, "lines": ["pop rbp", "retn"], "succs": []}, {"id": 2, "start": 112613, "end": 112619, "lines": ["call sub_1BCB0"], "succs": []}]}, {"name": "sub_1B7F0", "ea": 112624, "blocks": [{"id": 0, "start": 112624, "end": 112643, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "call cs:malloc_ptr", "test rax, rax", "jz short loc_1B805"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 112643, "end": 112645, "lines": ["pop rbp", "retn"], "succs": []}, {"id": 2, "start": 112645, "end": 112651, "lines": ["call sub_1BCB0"], "succs": []}]}, {"name": "sub_1B810", "ea": 112656, "blocks": [{"id": 0, "start": 112656, "end": 112675, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "call cs:malloc_ptr", "test rax, rax", "jz short loc_1B825"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 112675, "end": 112677, "lines": ["pop rbp", "retn"], "succs": []}, {"id": 2, "start": 112677, "end": 112683, "lines": ["call sub_1BCB0"], "succs": []}]}, {"name": "sub_1B830", "ea": 112688, "blocks": [{"id": 0, "start": 112688, "end": 112707, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "call cs:malloc_ptr", "test rax, rax", "jz short loc_1B845"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 112707, "end": 112709, "lines": ["pop rbp", "retn"], "succs": []}, {"id": 2, "start": 112709, "end": 112715, "lines": ["call sub_1BCB0"], "succs": []}]}, {"name": "sub_1B850", "ea": 112720, "blocks": [{"id": 0, "start": 112720, "end": 112751, "lines": ["endbr64", "push rbp", "test rsi, rsi", "mov eax, 1", "cmovz rsi, rax; size", "mov rbp, rsp", "call cs:realloc_ptr", "test rax, rax", "jz short loc_1B871"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 112751, "end": 112753, "lines": ["pop rbp", "retn"], "succs": []}, {"id": 2, "start": 112753, "end": 112759, "lines": ["call sub_1BCB0"], "succs": []}]}, {"name": "sub_1B880", "ea": 112768, "blocks": [{"id": 0, "start": 112768, "end": 112799, "lines": ["endbr64", "push rbp", "test rsi, rsi", "mov eax, 1", "cmovz rsi, rax; size", "mov rbp, rsp", "call cs:realloc_ptr", "test rax, rax", "jz short loc_1B8A1"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 112799, "end": 112801, "lines": ["pop rbp", "retn"], "succs": []}, {"id": 2, "start": 112801, "end": 112807, "lines": ["call sub_1BCB0"], "succs": []}]}, {"name": "sub_1B8B0", "ea": 112816, "blocks": [{"id": 0, "start": 112816, "end": 112835, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "call sub_1C7D0", "test rax, rax", "jz short loc_1B8C5"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 112835, "end": 112837, "lines": ["pop rbp", "retn"], "succs": []}, {"id": 2, "start": 112837, "end": 112843, "lines": ["call sub_1BCB0"], "succs": []}]}, {"name": "sub_1B8D0", "ea": 112848, "blocks": [{"id": 0, "start": 112848, "end": 112867, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "call sub_1C7D0", "test rax, rax", "jz short loc_1B8E5"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 112867, "end": 112869, "lines": ["pop rbp", "retn"], "succs": []}, {"id": 2, "start": 112869, "end": 112875, "lines": ["call sub_1BCB0"], "succs": []}]}, {"name": "sub_1B8F0", "ea": 112880, "blocks": [{"id": 0, "start": 112880, "end": 112907, "lines": ["endbr64", "push rbp", "mov rdx, rsi", "mov rsi, rdi", "xor edi, edi", "mov rbp, rsp", "call sub_1C7D0", "test rax, rax", "jz short loc_1B90D"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 112907, "end": 112909, "lines": ["pop rbp", "retn"], "succs": []}, {"id": 2, "start": 112909, "end": 112915, "lines": ["call sub_1BCB0"], "succs": []}]}, {"name": "sub_1B920", "ea": 112928, "blocks": [{"id": 0, "start": 112928, "end": 112955, "lines": ["endbr64", "push rbp", "mov rdx, rsi", "mov rsi, rdi", "xor edi, edi", "mov rbp, rsp", "call sub_1C7D0", "test rax, rax", "jz short loc_1B93D"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 112955, "end": 112957, "lines": ["pop rbp", "retn"], "succs": []}, {"id": 2, "start": 112957, "end": 112963, "lines": ["call sub_1BCB0"], "succs": []}]}, {"name": "sub_1BB10", "ea": 113424, "blocks": [{"id": 0, "start": 113424, "end": 113448, "lines": ["endbr64", "push rbp", "mov esi, 1; size", "mov rbp, rsp", "call cs:calloc_ptr", "test rax, rax", "jz short loc_1BB2A"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 113448, "end": 113450, "lines": ["pop rbp", "retn"], "succs": []}, {"id": 2, "start": 113450, "end": 113456, "lines": ["call sub_1BCB0"], "succs": []}]}, {"name": "sub_1BB30", "ea": 113456, "blocks": [{"id": 0, "start": 113456, "end": 113480, "lines": ["endbr64", "push rbp", "mov esi, 1; size", "mov rbp, rsp", "call cs:calloc_ptr", "test rax, rax", "jz short loc_1BB4A"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 113480, "end": 113482, "lines": ["pop rbp", "retn"], "succs": []}, {"id": 2, "start": 113482, "end": 113488, "lines": ["call sub_1BCB0"], "succs": []}]}, {"name": "sub_1BB50", "ea": 113488, "blocks": [{"id": 0, "start": 113488, "end": 113507, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "call cs:calloc_ptr", "test rax, rax", "jz short loc_1BB65"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 113507, "end": 113509, "lines": ["pop rbp", "retn"], "succs": []}, {"id": 2, "start": 113509, "end": 113515, "lines": ["call sub_1BCB0"], "succs": []}]}, {"name": "sub_1BB70", "ea": 113520, "blocks": [{"id": 0, "start": 113520, "end": 113539, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "call cs:calloc_ptr", "test rax, rax", "jz short loc_1BB85"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 113539, "end": 113541, "lines": ["pop rbp", "retn"], "succs": []}, {"id": 2, "start": 113541, "end": 113547, "lines": ["call sub_1BCB0"], "succs": []}]}, {"name": "sub_1BF80", "ea": 114560, "blocks": [{"id": 0, "start": 114560, "end": 114601, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r14", "mov r14, rdi", "lea rdi, [rsi+1]", "push r12", "push rbx", "mov rbx, rsi", "sub rsp, 8", "call sub_1B830", "mov rdi, rax", "test rbx, rbx", "jnz short loc_1BFC0"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 114601, "end": 114619, "lines": ["mov byte ptr [rdi+rbx], 0", "add rsp, 8", "mov rax, rdi", "pop rbx", "pop r12", "pop r14", "pop rbp", "retn"], "succs": []}, {"id": 2, "start": 114624, "end": 114645, "lines": ["lea rcx, [rbx+1]", "mov rdx, rbx", "mov rsi, r14", "call cs:__memcpy_chk_ptr", "mov rdi, rax", "jmp short loc_1BFA9"], "succs": [[1, "jump"]]}]}, {"name": "sub_1C6D0", "ea": 116432, "blocks": [{"id": 0, "start": 116432, "end": 116466, "lines": ["endbr64", "push rbp", "mov edi, 0Eh; item", "mov rbp, rsp", "call nl_langinfo", "mov rdx, rax", "lea rax, aAscii; \"ASCII\"", "test rdx, rdx", "jz short loc_1C6F9"], "succs": [[1, "fall"], [2, "jump"]]}, {"id": 1, "start": 116466, "end": 116473, "lines": ["cmp byte ptr [rdx], 0", "cmovnz rax, rdx"], "succs": [[2, "fall"]]}, {"id": 2, "start": 116473, "end": 116475, "lines": ["pop rbp", "retn"], "succs": []}]}, {"name": "sub_55E0", "ea": 21984, "blocks": [{"id": 0, "start": 21984, "end": 21993, "lines": ["endbr64", "jmp sub_5550"], "succs": [[1, "jump"]]}, {"id": 1, "start": 21840, "end": 21840, "lines": [], "succs": []}]}, {"name": "free", "ea": 23120, "blocks": [{"id": 0, "start": 23120, "end": 23130, "lines": ["endbr64", "jmp cs:free_ptr"], "succs": [[1, "jump"]]}, {"id": 1, "start": 169384, "end": 169384, "lines": [], "succs": []}]}, {"name": "sub_6220", "ea": 25120, "blocks": [{"id": 0, "start": 25120, "end": 25136, "lines": ["endbr64", "mov rsi, [rsi]; s2", "mov rdi, [rdi]; s1", "jmp cs:strcmp_ptr"], "succs": [[1, "jump"]]}, {"id": 1, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_6230", "ea": 25136, "blocks": [{"id": 0, "start": 25136, "end": 25155, "lines": ["endbr64", "mov rax, rsi", "mov rsi, [rdi]; s2", "mov rdi, [rax]; s1", "jmp cs:strcmp_ptr"], "succs": [[1, "jump"]]}, {"id": 1, "start": 169816, "end": 169816, "lines": [], "succs": []}]}, {"name": "sub_62D0", "ea": 25296, "blocks": [{"id": 0, "start": 25296, "end": 25321, "lines": ["endbr64", "mov rax, rsi", "mov rdx, cs:strcmp_ptr", "mov rsi, rdi", "mov rdi, rax", "jmp sub_6250"], "succs": [[1, "jump"]]}, {"id": 1, "start": 25168, "end": 25168, "lines": [], "succs": []}]}, {"name": "sub_62F0", "ea": 25328, "blocks": [{"id": 0, "start": 25328, "end": 25344, "lines": ["endbr64", "mov rdx, cs:strcmp_ptr", "jmp sub_6250"], "succs": [[1, "jump"]]}, {"id": 1, "start": 25168, "end": 25168, "lines": [], "succs": []}]}, {"name": "sub_6450", "ea": 25680, "blocks": [{"id": 0, "start": 25680, "end": 25708, "lines": ["add cs:qword_291F8, rsi", "mov rdx, rsi; n", "mov rcx, cs:stdout; stream", "mov esi, 1; size", "jmp cs:fwrite_unlocked_ptr"], "succs": [[1, "jump"]]}, {"id": 1, "start": 170016, "end": 170016, "lines": [], "succs": []}]}, {"name": "sub_7DC0", "ea": 32192, "blocks": [{"id": 0, "start": 32192, "end": 32237, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r12", "push rbx", "mov r12, [rsi]", "mov rbx, [rdi]", "call cs:__errno_location_ptr", "mov rsi, r12; s2", "mov dword ptr [rax], 0", "mov rdi, rbx; s1", "pop rbx", "pop r12", "pop rbp", "jmp cs:strcoll_ptr"], "succs": [[1, "jump"]]}, {"id": 1, "start": 169992, "end": 169992, "lines": [], "succs": []}]}, {"name": "sub_7DF0", "ea": 32240, "blocks": [{"id": 0, "start": 32240, "end": 32285, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r12", "push rbx", "mov r12, [rdi]", "mov rbx, [rsi]", "call cs:__errno_location_ptr", "mov rsi, r12; s2", "mov dword ptr [rax], 0", "mov rdi, rbx; s1", "pop rbx", "pop r12", "pop rbp", "jmp cs:strcoll_ptr"], "succs": [[1, "jump"]]}, {"id": 1, "start": 169992, "end": 169992, "lines": [], "succs": []}]}, {"name": "sub_10DD0", "ea": 69072, "blocks": [{"id": 0, "start": 69072, "end": 69094, "lines": ["endbr64", "mov ecx, edx", "mov rdx, rsi", "mov rsi, rdi", "mov edi, 0FFFFFFFFh; fd", "jmp sub_10850"], "succs": [[1, "jump"]]}, {"id": 1, "start": 67664, "end": 67664, "lines": [], "succs": []}]}, {"name": "sub_11930", "ea": 71984, "blocks": [{"id": 0, "start": 71984, "end": 72010, "lines": ["endbr64", "mov rdx, rsi", "mov rcx, 0FFFFFFFFFFFFFFFFh", "mov rsi, 0FFFFFFFFFFFFFFFFh", "jmp sub_11750"], "succs": [[1, "jump"]]}, {"id": 1, "start": 71504, "end": 71504, "lines": [], "succs": []}]}, {"name": "sub_11960", "ea": 72032, "blocks": [{"id": 0, "start": 72032, "end": 72047, "lines": ["endbr64", "mov rsi, rdi; tp", "xor edi, edi; clock_id", "jmp cs:clock_gettime_ptr"], "succs": [[1, "jump"]]}, {"id": 1, "start": 169536, "end": 169536, "lines": [], "succs": []}]}, {"name": "sub_12F50", "ea": 77648, "blocks": [{"id": 0, "start": 77648, "end": 77687, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push rbx", "mov rbx, rdi", "sub rsp, 8", "mov rdi, [rdi]; ptr", "call cs:free_ptr", "mov rdi, rbx; ptr", "mov rbx, [rbp+var_8]", "leave", "jmp cs:free_ptr"], "succs": [[1, "jump"]]}, {"id": 1, "start": 169384, "end": 169384, "lines": [], "succs": []}]}, {"name": "sub_14C90", "ea": 85136, "blocks": [{"id": 0, "start": 85136, "end": 85180, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push rbx", "mov ebx, esi", "sub rsp, 18h", "mov [rbp+s], rdi", "call cs:strlen_ptr", "mov rdi, [rbp+s]; s", "mov edx, ebx", "mov rbx, [rbp+var_8]", "leave", "mov rsi, rax", "jmp sub_14AE0"], "succs": [[1, "jump"]]}, {"id": 1, "start": 84704, "end": 84704, "lines": [], "succs": []}]}, {"name": "nl_langinfo", "ea": 86144, "blocks": [{"id": 0, "start": 86144, "end": 86154, "lines": ["endbr64", "jmp cs:nl_langinfo_ptr"], "succs": [[1, "jump"]]}, {"id": 1, "start": 169984, "end": 169984, "lines": [], "succs": []}]}, {"name": "sub_1A940", "ea": 108864, "blocks": [{"id": 0, "start": 108864, "end": 108887, "lines": ["endbr64", "lea rcx, unk_28200", "mov rdx, 0FFFFFFFFFFFFFFFFh", "jmp sub_19C50"], "succs": [[1, "jump"]]}, {"id": 1, "start": 105552, "end": 105552, "lines": [], "succs": []}]}, {"name": "sub_1A960", "ea": 108896, "blocks": [{"id": 0, "start": 108896, "end": 108924, "lines": ["endbr64", "mov rsi, rdi", "lea rcx, unk_28200", "mov rdx, 0FFFFFFFFFFFFFFFFh", "xor edi, edi", "jmp sub_19C50"], "succs": [[1, "jump"]]}, {"id": 1, "start": 105552, "end": 105552, "lines": [], "succs": []}]}, {"name": "sub_1A980", "ea": 108928, "blocks": [{"id": 0, "start": 108928, "end": 108937, "lines": ["endbr64", "jmp sub_1A9B0"], "succs": [[1, "jump"]]}, {"id": 1, "start": 108976, "end": 108976, "lines": [], "succs": []}]}, {"name": "sub_1A990", "ea": 108944, "blocks": [{"id": 0, "start": 108944, "end": 108953, "lines": ["endbr64", "jmp sub_1A9A0"], "succs": [[1, "jump"]]}, {"id": 1, "start": 108960, "end": 108960, "lines": [], "succs": []}]}, {"name": "sub_1A9A0", "ea": 108960, "blocks": [{"id": 0, "start": 108960, "end": 108972, "lines": ["endbr64", "xor esi, esi; locale", "jmp cs:setlocale_ptr"], "succs": [[1, "jump"]]}, {"id": 1, "start": 170040, "end": 170040, "lines": [], "succs": []}]}, {"name": "sub_1B710", "ea": 112400, "blocks": [{"id": 0, "start": 112400, "end": 112578, "lines": ["endbr64", "push rbp", "mov rsi, cs:stdout; stream", "mov edi, 0Ah; c", "mov rbp, rsp", "call cs:fputc_unlocked_ptr", "mov edx, 5; category", "lea rsi, aReportBugsToS; \"Report bugs to: %s\\n\"", "lea rdi, domainname; \"gnulib\"", "call cs:dcgettext_ptr", "lea rdx, aBugCoreutilsGn; \"bug-coreutils@gnu.org\"", "mov edi, 2", "mov rsi, rax", "xor eax, eax", "call cs:__printf_chk_ptr", "mov edx, 5; category", "lea rsi, aSHomePageS; \"%s home page: <%s>\\n\"", "lea rdi, domainname; \"gnulib\"", "call cs:dcgettext_ptr", "lea rcx, aHttpsWwwGnuOrg; \"https://www.gnu.org/software/coreutils/\"", "mov edi, 2", "lea rdx, aGnuCoreutils; \"GNU coreutils\"", "mov rsi, rax", "xor eax, eax", "call cs:__printf_chk_ptr", "mov edx, 5; category", "lea rsi, aGeneralHelpUsi; \"General help using GNU software: <%s>\\n\"", "lea rdi, domainname; \"gnulib\"", "call cs:dcgettext_ptr", "lea rdx, aHttpsWwwGnuOrg_1; \"https://www.gnu.org/gethelp/\"", "mov edi, 2", "pop rbp", "mov rsi, rax", "xor eax, eax", "jmp cs:__printf_chk_ptr"], "succs": [[1, "jump"]]}, {"id": 1, "start": 170048, "end": 170048, "lines": [], "succs": []}]}, {"name": "sub_1C890", "ea": 116880, "blocks": [{"id": 0, "start": 116880, "end": 116899, "lines": ["endbr64", "mov rdx, cs:lpdso_handle; lpdso_handle", "xor esi, esi; obj", "jmp cs:__cxa_atexit_ptr"], "succs": [[1, "jump"]]}, {"id": 1, "start": 170120, "end": 170120, "lines": [], "succs": []}]}, {"name": "sub_34AD", "ea": 13485, "blocks": [{"id": 0, "start": 13485, "end": 13495, "lines": ["push rbp", "mov rbp, rsp", "call cs:abort_ptr"], "succs": []}]}, {"name": "sub_34E1", "ea": 13537, "blocks": [{"id": 0, "start": 13537, "end": 13547, "lines": ["push rbp", "mov rbp, rsp", "call cs:abort_ptr"], "succs": []}]}, {"name": "sub_352D", "ea": 13613, "blocks": [{"id": 0, "start": 13613, "end": 13623, "lines": ["push rbp", "mov rbp, rsp", "call cs:abort_ptr"], "succs": []}]}, {"name": "start", "ea": 21744, "blocks": [{"id": 0, "start": 21744, "end": 21782, "lines": ["endbr64", "xor ebp, ebp", "mov r9, rdx; rtld_fini", "pop rsi; argc", "mov rdx, rsp; ubp_av", "and rsp, 0FFFFFFFFFFFFFFF0h", "push rax", "push rsp; stack_end", "xor r8d, r8d; fini", "xor ecx, ecx; init", "lea rdi, main; main", "call cs:__libc_start_main_ptr", "hlt"], "succs": []}]}, {"name": "sub_5600", "ea": 22016, "blocks": [{"id": 0, "start": 22016, "end": 22032, "lines": ["endbr64", "mov rax, [rdi]", "xor edx, edx", "div rsi", "mov rax, rdx", "retn"], "succs": []}]}, {"name": "sub_5610", "ea": 22032, "blocks": [{"id": 0, "start": 22032, "end": 22073, "lines": ["endbr64", "movdqu xmm1, xmmword ptr [rsi]", "movdqu xmm0, xmmword ptr [rdi]", "pxor xmm0, xmm1", "movdqa xmm1, xmm0", "psrldq xmm1, 8", "por xmm0, xmm1", "movq rax, xmm0", "test rax, rax", "setz al", "retn"], "succs": []}]}, {"name": "sub_5A60", "ea": 23136, "blocks": [{"id": 0, "start": 23136, "end": 23186, "lines": ["push rbp", "mov rbp, rsp", "push rbx", "mov rbx, rdi", "mov edi, 10h", "sub rsp, 8", "call sub_1B7F0", "mov rdx, cs:qword_292E8", "mov [rax], rbx", "mov rbx, [rbp+var_8]", "mov [rax+8], rdx", "mov cs:qword_292E8, rax", "leave", "retn"], "succs": []}]}, {"name": "sub_11950", "ea": 72016, "blocks": [{"id": 0, "start": 72016, "end": 72028, "lines": ["endbr64", "mov rax, cs:__progname", "retn"], "succs": []}]}, {"name": "sub_11BA0", "ea": 72608, "blocks": [{"id": 0, "start": 72608, "end": 72628, "lines": ["endbr64", "mov rax, rdi", "xor edx, edx", "ror rax, 3", "div rsi", "mov rax, rdx", "retn"], "succs": []}]}, {"name": "sub_11BC0", "ea": 72640, "blocks": [{"id": 0, "start": 72640, "end": 72651, "lines": ["endbr64", "cmp rdi, rsi", "setz al", "retn"], "succs": []}]}, {"name": "sub_11F30", "ea": 73520, "blocks": [{"id": 0, "start": 73520, "end": 73529, "lines": ["endbr64", "mov rax, [rdi+20h]", "retn"], "succs": []}]}, {"name": "sub_12ED0", "ea": 77520, "blocks": [{"id": 0, "start": 77520, "end": 77564, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r12", "mov r12, rdi", "push rbx", "mov rbx, rsi", "mov rdi, [rdi]", "call sub_12F80", "xor edx, edx", "xor rax, [r12+8]", "div rbx", "pop rbx", "pop r12", "pop rbp", "mov rax, rdx", "retn"], "succs": []}]}, {"name": "sub_17D40", "ea": 97600, "blocks": [{"id": 0, "start": 97600, "end": 97675, "lines": ["endbr64", "push rbp", "mov edx, 5; category", "lea rsi, aMemoryExhauste; \"memory exhausted\"", "lea rdi, domainname; \"gnulib\"", "mov rbp, rsp", "call cs:dcgettext_ptr", "mov rdi, cs:stderr", "mov esi, 2", "lea rdx, aSSS_0+8; \"%s\\n\"", "mov rcx, rax", "xor eax, eax", "call cs:__fprintf_chk_ptr", "mov edi, cs:status; status", "call cs:exit_ptr"], "succs": []}]}, {"name": "sub_17F00", "ea": 98048, "blocks": [{"id": 0, "start": 98048, "end": 98080, "lines": ["endbr64", "push rbp", "and byte ptr [rdi+50h], 0FEh", "mov [rdi+38h], rcx", "mov [rdi+40h], r8", "mov rbp, rsp", "call sub_17D90", "mov eax, 1", "pop rbp", "retn"], "succs": []}]}, {"name": "sub_17F20", "ea": 98080, "blocks": [{"id": 0, "start": 98080, "end": 98116, "lines": ["endbr64", "push rbp", "or byte ptr [rdi+50h], 1", "mov [rdi+38h], rcx", "mov [rdi+40h], r8", "mov rbp, rsp", "mov [rdi+48h], r9", "call sub_17D90", "mov eax, 1", "pop rbp", "retn"], "succs": []}]}, {"name": "sub_19E30", "ea": 106032, "blocks": [{"id": 0, "start": 106032, "end": 106107, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push r13", "push r12", "push rbx", "mov rbx, rdi", "sub rsp, 8", "call cs:__errno_location_ptr", "test rbx, rbx", "mov esi, 38h ; '8'", "mov r13d, [rax]", "mov r12, rax", "lea rax, xmmword_29540", "cmovnz rax, rbx", "mov rdi, rax", "call sub_1BB90", "mov [r12], r13d", "add rsp, 8", "pop rbx", "pop r12", "pop r13", "pop rbp", "retn"], "succs": []}]}, {"name": "sub_19E80", "ea": 106112, "blocks": [{"id": 0, "start": 106112, "end": 106133, "lines": ["endbr64", "test rdi, rdi", "lea rax, xmmword_29540", "cmovz rdi, rax", "mov eax, [rdi]", "retn"], "succs": []}]}, {"name": "sub_19EA0", "ea": 106144, "blocks": [{"id": 0, "start": 106144, "end": 106165, "lines": ["endbr64", "test rdi, rdi", "lea rax, xmmword_29540", "cmovz rdi, rax", "mov [rdi], esi", "retn"], "succs": []}]}, {"name": "sub_19EC0", "ea": 106176, "blocks": [{"id": 0, "start": 106176, "end": 106233, "lines": ["endbr64", "test rdi, rdi", "lea rax, xmmword_29540", "mov ecx, esi", "cmovz rdi, rax", "mov eax, esi", "and ecx, 1Fh", "and edx, 1", "shr al, 5", "movzx eax, al", "lea rdi, [rdi+rax*4+8]", "mov esi, [rdi]", "mov eax, esi", "shr eax, cl", "and eax, 1", "xor edx, eax", "shl edx, cl", "xor edx, esi", "mov [rdi], edx", "retn"], "succs": []}]}, {"name": "sub_19F60", "ea": 106336, "blocks": [{"id": 0, "start": 106336, "end": 106457, "lines": ["endbr64", "push rbp", "lea rax, xmmword_29540", "mov rbp, rsp", "push r13", "push r12", "push rbx", "sub rsp, 28h", "test r8, r8", "mov [rbp+var_40], rdi", "cmovnz rax, r8", "mov [rbp+var_38], rsi", "mov [rbp+var_30], rdx", "mov rbx, rax", "mov [rbp+var_28], rcx", "call cs:__errno_location_ptr", "add rbx, 8", "sub rsp, 8", "mov r9d, [rbx-4]", "mov r13d, [rax]", "mov r8d, [rbx-8]", "push qword ptr [rbx+28h]", "mov r12, rax", "mov rcx, [rbp+var_28]", "push qword ptr [rbx+20h]", "mov rdx, [rbp+var_30]", "push rbx", "mov rsi, [rbp+var_38]", "mov rdi, [rbp+var_40]", "call sub_18400", "mov [r12], r13d", "lea rsp, [rbp-18h]", "pop rbx", "pop r12", "pop r13", "pop rbp", "retn"], "succs": []}]}, {"name": "sub_1BCB0", "ea": 113840, "blocks": [{"id": 0, "start": 113840, "end": 113912, "lines": ["endbr64", "push rbp", "mov edx, 5; category", "lea rsi, aMemoryExhauste; \"memory exhausted\"", "lea rdi, domainname; \"gnulib\"", "mov rbp, rsp", "push rbx", "sub rsp, 8", "mov ebx, cs:status", "call cs:dcgettext_ptr", "lea rdx, aS_1+2; \"%s\"", "xor esi, esi", "mov rcx, rax", "mov edi, ebx", "xor eax, eax", "call error", "call cs:abort_ptr"], "succs": []}]}, {"name": "sub_1BE20", "ea": 114208, "blocks": [{"id": 0, "start": 114208, "end": 114244, "lines": ["endbr64", "push rbp", "mov rbp, rsp", "push 0", "push r9", "mov r9, r8", "mov r8, rcx", "mov rcx, rdx", "mov rdx, rsi", "mov esi, 0Ah", "call sub_1BD00", "leave", "retn"], "succs": []}]}, {"name": ".term_proc", "ea": 116900, "blocks": [{"id": 0, "start": 116900, "end": 116913, "lines": ["endbr64", "sub rsp, 8", "add rsp, 8", "retn"], "succs": []}]}, {"name": "__ctype_toupper_loc", "ea": 169336, "blocks": [{"id": 0, "start": 169336, "end": 169344, "lines": ["extrn __ctype_toupper_loc:near"], "succs": []}]}, {"name": "getenv", "ea": 169344, "blocks": [{"id": 0, "start": 169344, "end": 169352, "lines": ["extrn getenv:near"], "succs": []}]}, {"name": "cap_to_text", "ea": 169352, "blocks": [{"id": 0, "start": 169352, "end": 169360, "lines": ["extrn cap_to_text:near"], "succs": []}]}, {"name": "sigprocmask", "ea": 169360, "blocks": [{"id": 0, "start": 169360, "end": 169368, "lines": ["extrn sigprocmask:near"], "succs": []}]}, {"name": "__snprintf_chk", "ea": 169368, "blocks": [{"id": 0, "start": 169368, "end": 169376, "lines": ["extrn __snprintf_chk:near"], "succs": []}]}, {"name": "raise", "ea": 169376, "blocks": [{"id": 0, "start": 169376, "end": 169384, "lines": ["extrn raise:near"], "succs": []}]}, {"name": "__imp_free", "ea": 169384, "blocks": [{"id": 0, "start": 169384, "end": 169392, "lines": ["extrn __imp_free:near"], "succs": []}]}, {"name": "__vfprintf_chk", "ea": 169392, "blocks": [{"id": 0, "start": 169392, "end": 169400, "lines": ["extrn __vfprintf_chk:near"], "succs": []}]}, {"name": "__libc_start_main", "ea": 169400, "blocks": [{"id": 0, "start": 169400, "end": 169408, "lines": ["extrn __libc_start_main:near"], "succs": []}]}, {"name": "__mempcpy_chk", "ea": 169408, "blocks": [{"id": 0, "start": 169408, "end": 169416, "lines": ["extrn __mempcpy_chk:near"], "succs": []}]}, {"name": "abort", "ea": 169416, "blocks": [{"id": 0, "start": 169416, "end": 169424, "lines": ["extrn abort:near"], "succs": []}]}, {"name": "__errno_location", "ea": 169424, "blocks": [{"id": 0, "start": 169424, "end": 169432, "lines": ["extrn __errno_location:near"], "succs": []}]}, {"name": "strncmp", "ea": 169432, "blocks": [{"id": 0, "start": 169432, "end": 169440, "lines": ["extrn strncmp:near"], "succs": []}]}, {"name": "localtime_r", "ea": 169440, "blocks": [{"id": 0, "start": 169440, "end": 169448, "lines": ["extrn localtime_r:near"], "succs": []}]}, {"name": "_exit", "ea": 169448, "blocks": [{"id": 0, "start": 169448, "end": 169456, "lines": ["extrn _exit:near"], "succs": []}]}, {"name": "__fpending", "ea": 169456, "blocks": [{"id": 0, "start": 169456, "end": 169464, "lines": ["extrn __fpending:near"], "succs": []}]}, {"name": "flistxattr", "ea": 169464, "blocks": [{"id": 0, "start": 169464, "end": 169472, "lines": ["extrn flistxattr:near"], "succs": []}]}, {"name": "isatty", "ea": 169472, "blocks": [{"id": 0, "start": 169472, "end": 169480, "lines": ["extrn isatty:near"], "succs": []}]}, {"name": "sigaction", "ea": 169480, "blocks": [{"id": 0, "start": 169480, "end": 169488, "lines": ["extrn sigaction:near"], "succs": []}]}, {"name": "iswcntrl", "ea": 169488, "blocks": [{"id": 0, "start": 169488, "end": 169496, "lines": ["extrn iswcntrl:near"], "succs": []}]}, {"name": "localeconv", "ea": 169496, "blocks": [{"id": 0, "start": 169496, "end": 169504, "lines": ["extrn localeconv:near"], "succs": []}]}, {"name": "llistxattr", "ea": 169504, "blocks": [{"id": 0, "start": 169504, "end": 169512, "lines": ["extrn llistxattr:near"], "succs": []}]}, {"name": "faccessat", "ea": 169512, "blocks": [{"id": 0, "start": 169512, "end": 169520, "lines": ["extrn faccessat:near"], "succs": []}]}, {"name": "readlink", "ea": 169520, "blocks": [{"id": 0, "start": 169520, "end": 169528, "lines": ["extrn readlink:near"], "succs": []}]}, {"name": "fcntl", "ea": 169528, "blocks": [{"id": 0, "start": 169528, "end": 169536, "lines": ["extrn fcntl:near"], "succs": []}]}, {"name": "clock_gettime", "ea": 169536, "blocks": [{"id": 0, "start": 169536, "end": 169544, "lines": ["extrn clock_gettime:near"], "succs": []}]}, {"name": "setenv", "ea": 169544, "blocks": [{"id": 0, "start": 169544, "end": 169552, "lines": ["extrn setenv:near"], "succs": []}]}, {"name": "textdomain", "ea": 169552, "blocks": [{"id": 0, "start": 169552, "end": 169560, "lines": ["extrn textdomain:near"], "succs": []}]}, {"name": "fclose", "ea": 169560, "blocks": [{"id": 0, "start": 169560, "end": 169568, "lines": ["extrn fclose:near"], "succs": []}]}, {"name": "lgetxattr", "ea": 169568, "blocks": [{"id": 0, "start": 169568, "end": 169576, "lines": ["extrn lgetxattr:near"], "succs": []}]}, {"name": "opendir", "ea": 169576, "blocks": [{"id": 0, "start": 169576, "end": 169584, "lines": ["extrn opendir:near"], "succs": []}]}, {"name": "getpwuid", "ea": 169584, "blocks": [{"id": 0, "start": 169584, "end": 169592, "lines": ["extrn getpwuid:near"], "succs": []}]}, {"name": "bindtextdomain", "ea": 169592, "blocks": [{"id": 0, "start": 169592, "end": 169600, "lines": ["extrn bindtextdomain:near"], "succs": []}]}, {"name": "listxattr", "ea": 169600, "blocks": [{"id": 0, "start": 169600, "end": 169608, "lines": ["extrn listxattr:near"], "succs": []}]}, {"name": "dcgettext", "ea": 169608, "blocks": [{"id": 0, "start": 169608, "end": 169616, "lines": ["extrn dcgettext:near"], "succs": []}]}, {"name": "__ctype_get_mb_cur_max", "ea": 169616, "blocks": [{"id": 0, "start": 169616, "end": 169624, "lines": ["extrn __ctype_get_mb_cur_max:near"], "succs": []}]}, {"name": "strlen", "ea": 169624, "blocks": [{"id": 0, "start": 169624, "end": 169632, "lines": ["extrn strlen:near"], "succs": []}]}, {"name": "__stack_chk_fail", "ea": 169632, "blocks": [{"id": 0, "start": 169632, "end": 169640, "lines": ["extrn __stack_chk_fail:near"], "succs": []}]}, {"name": "getopt_long", "ea": 169640, "blocks": [{"id": 0, "start": 169640, "end": 169648, "lines": ["extrn getopt_long:near"], "succs": []}]}, {"name": "strchr", "ea": 169648, "blocks": [{"id": 0, "start": 169648, "end": 169656, "lines": ["extrn strchr:near"], "succs": []}]}, {"name": "getgrgid", "ea": 169656, "blocks": [{"id": 0, "start": 169656, "end": 169664, "lines": ["extrn getgrgid:near"], "succs": []}]}, {"name": "snprintf", "ea": 169664, "blocks": [{"id": 0, "start": 169664, "end": 169672, "lines": ["extrn snprintf:near"], "succs": []}]}, {"name": "__overflow", "ea": 169672, "blocks": [{"id": 0, "start": 169672, "end": 169680, "lines": ["extrn __overflow:near"], "succs": []}]}, {"name": "strrchr", "ea": 169680, "blocks": [{"id": 0, "start": 169680, "end": 169688, "lines": ["extrn strrchr:near"], "succs": []}]}, {"name": "gmtime_r", "ea": 169688, "blocks": [{"id": 0, "start": 169688, "end": 169696, "lines": ["extrn gmtime_r:near"], "succs": []}]}, {"name": "__assert_fail", "ea": 169696, "blocks": [{"id": 0, "start": 169696, "end": 169704, "lines": ["extrn __assert_fail:near"], "succs": []}]}, {"name": "fnmatch", "ea": 169704, "blocks": [{"id": 0, "start": 169704, "end": 169712, "lines": ["extrn fnmatch:near"], "succs": []}]}, {"name": "memset", "ea": 169712, "blocks": [{"id": 0, "start": 169712, "end": 169720, "lines": ["extrn memset:near"], "succs": []}]}, {"name": "ioctl", "ea": 169720, "blocks": [{"id": 0, "start": 169720, "end": 169728, "lines": ["extrn ioctl:near"], "succs": []}]}, {"name": "strnlen", "ea": 169728, "blocks": [{"id": 0, "start": 169728, "end": 169736, "lines": ["extrn strnlen:near"], "succs": []}]}, {"name": "getcwd", "ea": 169736, "blocks": [{"id": 0, "start": 169736, "end": 169744, "lines": ["extrn getcwd:near"], "succs": []}]}, {"name": "mbrtoc32", "ea": 169744, "blocks": [{"id": 0, "start": 169744, "end": 169752, "lines": ["extrn mbrtoc32:near"], "succs": []}]}, {"name": "strspn", "ea": 169752, "blocks": [{"id": 0, "start": 169752, "end": 169760, "lines": ["extrn strspn:near"], "succs": []}]}, {"name": "closedir", "ea": 169760, "blocks": [{"id": 0, "start": 169760, "end": 169768, "lines": ["extrn closedir:near"], "succs": []}]}, {"name": "strcspn", "ea": 169768, "blocks": [{"id": 0, "start": 169768, "end": 169776, "lines": ["extrn strcspn:near"], "succs": []}]}, {"name": "memcmp", "ea": 169776, "blocks": [{"id": 0, "start": 169776, "end": 169784, "lines": ["extrn memcmp:near"], "succs": []}]}, {"name": "_setjmp", "ea": 169784, "blocks": [{"id": 0, "start": 169784, "end": 169792, "lines": ["extrn _setjmp:near"], "succs": []}]}, {"name": "fputs_unlocked", "ea": 169792, "blocks": [{"id": 0, "start": 169792, "end": 169800, "lines": ["extrn fputs_unlocked:near"], "succs": []}]}, {"name": "rawmemchr", "ea": 169800, "blocks": [{"id": 0, "start": 169800, "end": 169808, "lines": ["extrn rawmemchr:near"], "succs": []}]}, {"name": "calloc", "ea": 169808, "blocks": [{"id": 0, "start": 169808, "end": 169816, "lines": ["extrn calloc:near"], "succs": []}]}, {"name": "strcmp", "ea": 169816, "blocks": [{"id": 0, "start": 169816, "end": 169824, "lines": ["extrn strcmp:near"], "succs": []}]}, {"name": "__readlink_chk", "ea": 169824, "blocks": [{"id": 0, "start": 169824, "end": 169832, "lines": ["extrn __readlink_chk:near"], "succs": []}]}, {"name": "signal", "ea": 169832, "blocks": [{"id": 0, "start": 169832, "end": 169840, "lines": ["extrn signal:near"], "succs": []}]}, {"name": "dirfd", "ea": 169840, "blocks": [{"id": 0, "start": 169840, "end": 169848, "lines": ["extrn dirfd:near"], "succs": []}]}, {"name": "fputc_unlocked", "ea": 169848, "blocks": [{"id": 0, "start": 169848, "end": 169856, "lines": ["extrn fputc_unlocked:near"], "succs": []}]}, {"name": "getpwnam", "ea": 169856, "blocks": [{"id": 0, "start": 169856, "end": 169864, "lines": ["extrn getpwnam:near"], "succs": []}]}, {"name": "__memmove_chk", "ea": 169864, "blocks": [{"id": 0, "start": 169864, "end": 169872, "lines": ["extrn __memmove_chk:near"], "succs": []}]}, {"name": "__memcpy_chk", "ea": 169872, "blocks": [{"id": 0, "start": 169872, "end": 169880, "lines": ["extrn __memcpy_chk:near"], "succs": []}]}, {"name": "sigemptyset", "ea": 169880, "blocks": [{"id": 0, "start": 169880, "end": 169888, "lines": ["extrn sigemptyset:near"], "succs": []}]}, {"name": "stat", "ea": 169888, "blocks": [{"id": 0, "start": 169888, "end": 169896, "lines": ["extrn stat:near"], "succs": []}]}, {"name": "nl_langinfo_l", "ea": 169896, "blocks": [{"id": 0, "start": 169896, "end": 169904, "lines": ["extrn nl_langinfo_l:near"], "succs": []}]}, {"name": "memcpy", "ea": 169904, "blocks": [{"id": 0, "start": 169904, "end": 169912, "lines": ["extrn memcpy:near"], "succs": []}]}, {"name": "getgrnam", "ea": 169912, "blocks": [{"id": 0, "start": 169912, "end": 169920, "lines": ["extrn getgrnam:near"], "succs": []}]}, {"name": "__isoc23_strtoumax", "ea": 169920, "blocks": [{"id": 0, "start": 169920, "end": 169928, "lines": ["extrn __isoc23_strtoumax:near"], "succs": []}]}, {"name": "tzset", "ea": 169928, "blocks": [{"id": 0, "start": 169928, "end": 169936, "lines": ["extrn tzset:near"], "succs": []}]}, {"name": "tcgetpgrp", "ea": 169936, "blocks": [{"id": 0, "start": 169936, "end": 169944, "lines": ["extrn tcgetpgrp:near"], "succs": []}]}, {"name": "readdir", "ea": 169944, "blocks": [{"id": 0, "start": 169944, "end": 169952, "lines": ["extrn readdir:near"], "succs": []}]}, {"name": "uselocale", "ea": 169952, "blocks": [{"id": 0, "start": 169952, "end": 169960, "lines": ["extrn uselocale:near"], "succs": []}]}, {"name": "strerror_r", "ea": 169960, "blocks": [{"id": 0, "start": 169960, "end": 169968, "lines": ["extrn strerror_r:near"], "succs": []}]}, {"name": "wcwidth", "ea": 169968, "blocks": [{"id": 0, "start": 169968, "end": 169976, "lines": ["extrn wcwidth:near"], "succs": []}]}, {"name": "malloc", "ea": 169976, "blocks": [{"id": 0, "start": 169976, "end": 169984, "lines": ["extrn malloc:near"], "succs": []}]}, {"name": "__imp_nl_langinfo", "ea": 169984, "blocks": [{"id": 0, "start": 169984, "end": 169992, "lines": ["extrn __imp_nl_langinfo:near"], "succs": []}]}, {"name": "strcoll", "ea": 169992, "blocks": [{"id": 0, "start": 169992, "end": 170000, "lines": ["extrn strcoll:near"], "succs": []}]}, {"name": "mktime", "ea": 170000, "blocks": [{"id": 0, "start": 170000, "end": 170008, "lines": ["extrn mktime:near"], "succs": []}]}, {"name": "fgetxattr", "ea": 170008, "blocks": [{"id": 0, "start": 170008, "end": 170016, "lines": ["extrn fgetxattr:near"], "succs": []}]}, {"name": "fwrite_unlocked", "ea": 170016, "blocks": [{"id": 0, "start": 170016, "end": 170024, "lines": ["extrn fwrite_unlocked:near"], "succs": []}]}, {"name": "realloc", "ea": 170024, "blocks": [{"id": 0, "start": 170024, "end": 170032, "lines": ["extrn realloc:near"], "succs": []}]}, {"name": "__strcpy_chk", "ea": 170032, "blocks": [{"id": 0, "start": 170032, "end": 170040, "lines": ["extrn __strcpy_chk:near"], "succs": []}]}, {"name": "setlocale", "ea": 170040, "blocks": [{"id": 0, "start": 170040, "end": 170048, "lines": ["extrn setlocale:near"], "succs": []}]}, {"name": "__printf_chk", "ea": 170048, "blocks": [{"id": 0, "start": 170048, "end": 170056, "lines": ["extrn __printf_chk:near"], "succs": []}]}, {"name": "statx", "ea": 170056, "blocks": [{"id": 0, "start": 170056, "end": 170064, "lines": ["extrn statx:near"], "succs": []}]}, {"name": "timegm", "ea": 170064, "blocks": [{"id": 0, "start": 170064, "end": 170072, "lines": ["extrn timegm:near"], "succs": []}]}, {"name": "strftime", "ea": 170072, "blocks": [{"id": 0, "start": 170072, "end": 170080, "lines": ["extrn strftime:near"], "succs": []}]}, {"name": "mempcpy", "ea": 170080, "blocks": [{"id": 0, "start": 170080, "end": 170088, "lines": ["extrn mempcpy:near"], "succs": []}]}, {"name": "memmove", "ea": 170088, "blocks": [{"id": 0, "start": 170088, "end": 170096, "lines": ["extrn memmove:near"], "succs": []}]}, {"name": "cap_get_file", "ea": 170096, "blocks": [{"id": 0, "start": 170096, "end": 170104, "lines": ["extrn cap_get_file:near"], "succs": []}]}, {"name": "unsetenv", "ea": 170104, "blocks": [{"id": 0, "start": 170104, "end": 170112, "lines": ["extrn unsetenv:near"], "succs": []}]}, {"name": "cap_free", "ea": 170112, "blocks": [{"id": 0, "start": 170112, "end": 170120, "lines": ["extrn cap_free:near"], "succs": []}]}, {"name": "__cxa_atexit", "ea": 170120, "blocks": [{"id": 0, "start": 170120, "end": 170128, "lines": ["extrn __cxa_atexit:near"], "succs": []}]}, {"name": "getxattr", "ea": 170128, "blocks": [{"id": 0, "start": 170128, "end": 170136, "lines": ["extrn getxattr:near"], "succs": []}]}, {"name": "gethostname", "ea": 170136, "blocks": [{"id": 0, "start": 170136, "end": 170144, "lines": ["extrn gethostname:near"], "succs": []}]}, {"name": "__memset_chk", "ea": 170144, "blocks": [{"id": 0, "start": 170144, "end": 170152, "lines": ["extrn __memset_chk:near"], "succs": []}]}, {"name": "sigismember", "ea": 170152, "blocks": [{"id": 0, "start": 170152, "end": 170160, "lines": ["extrn sigismember:near"], "succs": []}]}, {"name": "exit", "ea": 170160, "blocks": [{"id": 0, "start": 170160, "end": 170168, "lines": ["extrn exit:near"], "succs": []}]}, {"name": "__fprintf_chk", "ea": 170168, "blocks": [{"id": 0, "start": 170168, "end": 170176, "lines": ["extrn __fprintf_chk:near"], "succs": []}]}, {"name": "fflush_unlocked", "ea": 170176, "blocks": [{"id": 0, "start": 170176, "end": 170184, "lines": ["extrn fflush_unlocked:near"], "succs": []}]}, {"name": "mbsinit", "ea": 170184, "blocks": [{"id": 0, "start": 170184, "end": 170192, "lines": ["extrn mbsinit:near"], "succs": []}]}, {"name": "iswprint", "ea": 170192, "blocks": [{"id": 0, "start": 170192, "end": 170200, "lines": ["extrn iswprint:near"], "succs": []}]}, {"name": "__cxa_finalize", "ea": 170200, "blocks": [{"id": 0, "start": 170200, "end": 170208, "lines": ["extrn __cxa_finalize:near ; weak"], "succs": []}]}, {"name": "sigaddset", "ea": 170208, "blocks": [{"id": 0, "start": 170208, "end": 170216, "lines": ["extrn sigaddset:near"], "succs": []}]}, {"name": "__ctype_tolower_loc", "ea": 170216, "blocks": [{"id": 0, "start": 170216, "end": 170224, "lines": ["extrn __ctype_tolower_loc:near"], "succs": []}]}, {"name": "__ctype_b_loc", "ea": 170224, "blocks": [{"id": 0, "start": 170224, "end": 170232, "lines": ["extrn __ctype_b_loc:near"], "succs": []}]}, {"name": "__sprintf_chk", "ea": 170232, "blocks": [{"id": 0, "start": 170232, "end": 170240, "lines": ["extrn __sprintf_chk:near"], "succs": []}]}, {"name": "_ITM_deregisterTMCloneTable", "ea": 170240, "blocks": [{"id": 0, "start": 170240, "end": 170248, "lines": ["extrn _ITM_deregisterTMCloneTable:near ; weak"], "succs": []}]}, {"name": "__gmon_start__", "ea": 170248, "blocks": [{"id": 0, "start": 170248, "end": 170256, "lines": ["extrn __gmon_start__:near ; weak"], "succs": []}]}, {"name": "_ITM_registerTMCloneTable", "ea": 170256, "blocks": [{"id": 0, "start": 170256, "end": 170264, "lines": ["extrn _ITM_registerTMCloneTable:near ; weak"], "succs": []}]}]
\ No newline at end of file diff --git a/docs/GRAPH_VIEW.md b/docs/GRAPH_VIEW.md index d588b3d..d4f0180 100644 --- a/docs/GRAPH_VIEW.md +++ b/docs/GRAPH_VIEW.md @@ -61,9 +61,13 @@ text. `graph.layout(blocks, sizer, engine=...)` takes `auto` (the default, also `$IDATUI_GRAPH_ENGINE`), `native` or `triskel`, and `e` cycles them in the view. -`auto` prefers **triskel** where it is installed and the function is at most 250 +`auto` prefers **triskel** where it is installed and the function is at most 180 blocks, and falls back to **native** otherwise — including if triskel raises, -which is never fatal. +which is never fatal, and the status line then says why. + +The 180 is an interactivity budget: layout runs on every open and every zoom +keypress, and triskel's cost knees hard just past it (174 blocks: 66 ms; +233 blocks: 489 ms; 329: 555 ms; 424: 1.5 s, against native's 25/72/93/144). | | native | triskel | |---|---|---| diff --git a/idatui/app.py b/idatui/app.py index b2b1722..4b3d5fb 100644 --- a/idatui/app.py +++ b/idatui/app.py @@ -2685,6 +2685,9 @@ class GraphView(NavMixin, ScrollView, can_focus=True): # installed" on its own sends people to check the wrong python. note = ("" if graph_triskel.available() else f" (no pytriskel in {sys.executable})") + # A fallback with no reason is a bug report nobody can file. + if self.lay and self.lay.stats.get("engine_error"): + note = f" \u2014 {self.lay.stats['engine_error']}" self.app._status(f"graph: engine {self._engine} \u2192 {got}{note}") def action_center(self) -> None: diff --git a/idatui/graph.py b/idatui/graph.py index fbaf87f..f40de07 100644 --- a/idatui/graph.py +++ b/idatui/graph.py @@ -702,11 +702,18 @@ def _native_engine(g: _Graph, root: int) -> tuple[list[Route], int]: #: Engine names accepted by ``layout(engine=...)`` and ``IDATUI_GRAPH_ENGINE``. ENGINES = ("auto", "native", "triskel") -#: Above this many blocks ``auto`` stays native: triskel's SESE decomposition -#: costs ~10x at 424 blocks (1.5s vs 145ms), and a layout that blocks the UI for -#: a second is worse than a layout with more crossings. Measured, see -#: docs/TRISKEL_EVAL.md. -AUTO_TRISKEL_MAX_BLOCKS = 250 +#: Above this many blocks ``auto`` stays native. Layout runs on every open and +#: every zoom keypress, so this is an interactivity budget, not a correctness +#: one. Triskel's cost knees hard (measured on `ls`, 400 functions): +#: +#: blocks 174 233 256 329 424 495 +#: native 25 72 23 93 144 203 ms +#: triskel 66 489 266 555 1501 1968 ms +#: +#: 180 keeps the worst auto-triskel layout in the tens of milliseconds. Raising +#: it buys prettier pictures of graphs nobody can read anyway -- the view +#: refuses to draw past 400 blocks at all. +AUTO_TRISKEL_MAX_BLOCKS = 180 def _pick_engine(engine: str | None, nblocks: int) -> str: @@ -735,6 +742,7 @@ def layout(blocks: list[Block], sizer, entry: int | None = None, g, root = _build(blocks, sizer, entry) layers = 0 + err = None if not g.nodes: routes = [] elif name == "triskel": @@ -744,8 +752,10 @@ def layout(blocks: list[Block], sizer, entry: int | None = None, except Exception as exc: # noqa: BLE001 # Native code with a history of throwing on degenerate CFGs. The # graph view is a convenience; losing it beats losing the session. + # Keep the REASON: a fallback the user can see but not explain is + # only marginally better than a crash. _LOG.warning("triskel layout failed (%s), falling back", exc) - name = "native+triskel-failed" + name, err = "native (triskel failed)", f"{type(exc).__name__}: {exc}" g, root = _build(blocks, sizer, entry) routes, layers = _native_engine(g, root) else: @@ -836,6 +846,7 @@ def layout(blocks: list[Block], sizer, entry: int | None = None, "edges": len(g.edges), "back": sum(1 for e in g.edges if e.back), "engine": name, + "engine_error": err, "ms": (time.perf_counter() - t0) * 1000, } return Layout(nodes=order, by_id={n.id: n for n in g.nodes.values()}, diff --git a/idatui/graph_triskel.py b/idatui/graph_triskel.py index 343e6f5..1741f17 100644 --- a/idatui/graph_triskel.py +++ b/idatui/graph_triskel.py @@ -271,6 +271,56 @@ def _hits(by_col, by_row, p: tuple[int, int], q: tuple[int, int]) -> list[G.Node if n.x < hi and lo < n.right] +def _free_line(blocked: list[tuple[int, int]], want: int, + allow: tuple[int, int] | None = None) -> int | None: + """The coordinate nearest ``want`` that is in none of ``blocked``. + + ``blocked`` is a list of inclusive intervals. Jumping to the near side of + the *first* box in the way is not enough in a dense layout -- that column is + very often inside the next box along -- so consider every box the run + passes and step out of each interval in turn. + + ``allow`` constrains the result to an inclusive range, which is how a port + stays on its own box's border: everything outside becomes blocked. + """ + if allow is not None: + lo, hi = allow + if lo > hi: + return None + blocked = list(blocked) + [(hi + 1, hi + 1 + 10 ** 6)] + if lo > 0: + blocked.append((0, lo - 1)) + if not blocked: + return want + merged: list[list[int]] = [] + for lo, hi in sorted(blocked): + if merged and lo <= merged[-1][1] + 1: + merged[-1][1] = max(merged[-1][1], hi) + else: + merged.append([lo, hi]) + + def inside(v: int) -> list[int] | None: + for iv in merged: + if iv[0] <= v <= iv[1]: + return iv + return None + + if inside(want) is None: + return want + low = want + while (iv := inside(low)) is not None: + low = iv[0] - 1 + if low < 0: + low = None + break + high = want + while (iv := inside(high)) is not None: + high = iv[1] + 1 + if low is None: + return high + return low if want - low <= high - want else high + + def _repair_boxes(g: G._Graph, routes: list[G.Route]) -> int: """Detour any segment that runs through a box. Returns the number moved. @@ -289,38 +339,85 @@ def _repair_boxes(g: G._Graph, routes: list[G.Route]) -> int: and the arrowhead, and those belong on the border. """ by_col, by_row = _box_index(g) + real = [n for n in g.nodes.values() if not n.dummy] moved = 0 for rt in routes: - for i in range(1, len(rt.pts) - 2): - p, q = rt.pts[i], rt.pts[i + 1] - for _ in range(4): - hit = _hits(by_col, by_row, p, q) - if not hit: - break - n = hit[0] + # Moving one segment stretches the two beside it, which can push THEM + # into a box, so sweep until the route stops changing. Three passes is + # plenty in practice and bounds the work on a pathological route. + for _ in range(3): + dirty = False + last = len(rt.pts) - 2 + for i in range(0, len(rt.pts) - 1): + p, q = rt.pts[i], rt.pts[i + 1] + if not _hits(by_col, by_row, p, q): + continue if p[1] == q[1]: # vertical: shift column - col = p[1] - out = n.x - 1 # nearest side of the box - if col - n.x > n.right - col or out < 0: - out = n.right + 1 # never detour off-canvas - p, q = (p[0], out), (q[0], out) - else: # horizontal: shift row - row = p[0] - out = n.y - 1 - if row - n.y > n.bottom - row or out < 0: - out = n.bottom + 1 - p, q = (out, p[1]), (out, q[1]) - rt.pts[i], rt.pts[i + 1] = p, q + lo, hi = sorted((p[0], q[0])) + blocked = [(n.x + 1, n.right - 1) for n in real + if n.y < hi and lo < n.bottom] + # The first and last segments carry the port and the + # arrowhead, so they may only move ALONG their own box's + # border -- but move they must: triskel is happy to park a + # block directly above its successor and drive the final + # approach straight through it. Another port on the same + # border is almost always free. + allow = None + if i == 0 or i == last: + ends = [] + if i == 0: + ends.append(g.nodes[rt.edge.src]) + if i == last: + ends.append(g.nodes[rt.edge.dst]) + allow = (max(n.x + 1 for n in ends), + min(n.right - 1 for n in ends)) + col = _free_line(blocked, p[1], allow) + if col is None: + continue + rt.pts[i], rt.pts[i + 1] = (p[0], col), (q[0], col) + elif i not in (0, last): # horizontal: shift row + lo, hi = sorted((p[1], q[1])) + blocked = [(n.y + 1, n.bottom - 1) for n in real + if n.x < hi and lo < n.right] + row = _free_line(blocked, p[0]) + if row is None: + continue + rt.pts[i], rt.pts[i + 1] = (row, p[1]), (row, q[1]) + else: + continue moved += 1 + dirty = True + if not dirty: + break return moved def _verify(g: G._Graph, routes: list[G.Route]) -> None: - """Raise if any segment still crosses a box, so ``layout()`` falls back. + """Raise if the drawing breaks an invariant, so ``layout()`` falls back. - The invariant is worth more than the engine: a layout with more crossings - beats one that draws edges through the code. + The invariants are worth more than the engine: a layout with more crossings + beats one that draws edges through the code, or one block over another. + + Overlapping boxes are triskel's, not ours -- it superimposes independently + laid out SESE regions, and on 2 of `ls`'s 400 functions two blocks end up a + couple of columns into each other in float space, before any rounding. In a + PNG that is a cosmetic nick on a border. Here the boxes are made of text, so + one block's disassembly overwrites another's. """ + rows: dict[int, list[G.Node]] = {} + for n in g.nodes.values(): + if n.dummy: + continue + for r in range(n.y, n.y + n.h): + rows.setdefault(r, []).append(n) + for r, boxes in rows.items(): + boxes.sort(key=lambda n: n.x) + for a, b in zip(boxes, boxes[1:]): + if b.x <= a.right: + raise RuntimeError( + f"blocks {a.id} and {b.id} overlap on row {r} " + f"(x[{a.x},{a.right}] vs x[{b.x},{b.right}])") + by_col, by_row = _box_index(g) for rt in routes: for p, q in zip(rt.pts, rt.pts[1:]): diff --git a/tests/test_graph.py b/tests/test_graph.py index d882f94..96d4f85 100644 --- a/tests/test_graph.py +++ b/tests/test_graph.py @@ -211,14 +211,38 @@ def t_corpus(path: str) -> None: print(f"\ncorpus: {len(recs)} functions from {path}") worst_ms = 0.0 worst_name = "" + fellback: list[tuple[str, str | None]] = [] + worst_any_ms = 0.0 + worst_any_name = "" t0 = time.perf_counter() for rec in recs: blocks = [G.Block(id=b["id"], start=b["start"], end=b["end"], succs=[(d, k) for d, k in b["succs"]]) for b in rec["blocks"]] lay = layout(blocks, sizer) - if lay.stats["ms"] > worst_ms: + # A SILENT fallback is the failure mode that matters here: the engine + # under test quietly stops being the engine under test, and every + # invariant below then passes for the wrong reason. `ls` main (329 + # blocks) used to fall back on all three zoom levels because a final + # approach was routed through the block above its target. + # + # Falling back is legitimate -- it is how an upstream layout defect is + # kept off the screen -- so this asserts it is rare and explained, + # not that it never happens. + if ENGINE != "auto" and lay.stats["engine"] != ENGINE: + fellback.append((rec["name"], lay.stats.get("engine_error"))) + check(bool(lay.stats.get("engine_error")), + f"corpus {rec['name']}: a fallback must record its reason") + # Time the engine only on the functions it would actually be ASKED for. + # `auto` hands anything over AUTO_TRISKEL_MAX_BLOCKS to native, and the + # view refuses to draw past 400 blocks at all, so a forced triskel run + # on a 495-block monster times a call the app cannot make. + reachable = (ENGINE != "triskel" + or len(blocks) <= G.AUTO_TRISKEL_MAX_BLOCKS) + if reachable and lay.stats["ms"] > worst_ms: worst_ms, worst_name = lay.stats["ms"], rec["name"] + if lay.stats["ms"] > worst_any_ms: + worst_any_ms, worst_any_name = lay.stats["ms"], rec["name"] check(no_box_overlap(lay), f"corpus {rec['name']}: boxes must not overlap") check(len(lay.nodes) == len(blocks), f"corpus {rec['name']}: every block is placed") @@ -230,7 +254,17 @@ def t_corpus(path: str) -> None: total = (time.perf_counter() - t0) * 1000 print(f" laid out {len(recs)} functions in {total:.0f} ms " f"(worst {worst_ms:.0f} ms: {worst_name})") - check(worst_ms < 2000, f"corpus: worst layout under 2s ({worst_ms:.0f} ms)") + if fellback: + print(f" {len(fellback)} fell back to native:") + for name, why in fellback: + print(f" {name}: {why}") + check(len(fellback) <= max(2, len(recs) // 20), + f"corpus: {ENGINE} fell back on {len(fellback)}/{len(recs)} functions") + check(worst_ms < 2000, f"corpus: worst REACHABLE layout under 2s " + f"({worst_ms:.0f} ms: {worst_name})") + # Nothing may blow up quadratically even when forced past its own limits. + check(worst_any_ms < 5000, f"corpus: worst layout at any size under 5s " + f"({worst_any_ms:.0f} ms: {worst_any_name})") def main() -> int: |
