Function at 0x140103870
Capabilities:
Hash data using sha256

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x290]
sub rsp, 0x390
mov rax, qword [0x14041f010]
xor rax, rsp
mov qword [rbp + 0x280], rax
mov r12d, dword [rbp + 0x300]
xor r14d, r14d
mov dword [rbp + 0xf0], r9d
mov eax, r12d
and eax, 2
mov dword [rbp - 0x20], r8d
mov dword [rbp - 0x1c], eax
mov r9d, r12d
and r9d, 1
mov qword [rbp + 0x68], rcx
mov eax, r12d
mov dword [rsp + 0x48], r14d
and eax, 4
mov dword [rbp + 0x44], r12d
mov dword [rsp + 0x44], eax
mov r10d, r12d
and r10d, 8
mov dword [rsp + 0x78], r9d
mov eax, r12d
mov dword [rsp + 0x50], r10d
and eax, 0x40
mov r11d, r8d
mov r8, qword [rbp + 0x2f8]
mov rdi, rdx
mov dword [rbp + 0x28], eax
lea eax, [r14 + 1]
mov qword [rbp - 0x48], r8
mov r15, rcx
test r9d, r9d
jne 0x14010392a
test r10d, r10d
jne 0x14010392a
test r8, r8
je 0x140103923
cmp dword [r8 + 0x70], r14d
jne 0x14010392a
mov dword [rsp + 0x74], r14d
jmp 0x14010392e
mov dword [rsp + 0x74], eax
mov r13, qword [0x14045b410]
mov rcx, 0xffffffffffffffff
mov edx, dword [rbp - 0x1c]
mov esi, r14d
mov dword [rbp + 0x90], eax
mov rax, r14
mov qword [rbp - 0x30], rax
mov qword [rbp + 0x18], rax
mov eax, dword [0x14045b53c]
mov dword [rbp + 0x70], r14d
mov dword [rbp - 0x10], r11d
mov qword [rbp + 8], r14
mov qword [rbp + 0x10], r14
mov qword [rbp + 0x78], r14
mov qword [rbp - 0x50], r14
mov dword [rsp + 0x4c], r14d
mov dword [rbp - 0x60], r14d
mov qword [rsp + 0x60], r14
mov qword [rbp + 0xd8], r14
mov qword [rbp + 0x60], r14
mov dword [rbp + 0xf4], r14d
mov dword [rbp - 0x64], r14d
mov dword [rbp - 8], r14d
mov dword [rsp + 0x54], r14d
mov dword [rbp - 0xc], ecx
mov dword [rbp - 0x5c], r14d
mov dword [rsp + 0x58], r14d
mov dword [rbp + 0xa8], r14d
mov dword [rbp - 0x14], r14d
mov dword [rbp - 0x24], r14d
mov dword [rbp], eax
mov dword [rbp + 0xac], r14d
mov dword [rsp + 0x68], r14d
mov dword [rbp - 0x68], r14d
mov qword [rbp + 0x58], r14
mov qword [rbp + 0x88], r14
mov dword [rbp + 0x48], r14d
mov dword [rbp - 0x40], r14d
mov qword [rbp - 0x38], rcx
mov dword [rbp + 0x24], r14d
mov dword [rbp + 0x40], r14d
mov dword [rsp + 0x7c], r14d
mov dword [rbp - 0x70], r14d
mov dword [rbp - 0x18], r14d
mov dword [0x14045b4cc], r14d
mov dword [r13 + 0x1968], r14d
cmp qword [r13 + 0x80], rsi
jne 0x140103ab3
test edx, edx
jne 0x140103ab3
test r15, r15
je 0x140103ab3
cmp dword [0x14045b514], r14d
mov rbx, qword [0x14046a248]
movzx eax, byte [rbx]
je 0x140103ae1
test eax, eax
je 0x140103ab3
nop
cmp eax, 0x66
je 0x140103a5d
mov rcx, rbx
call qword [0x140420bf8]
movsxd rcx, eax
add rbx, rcx
movzx eax, byte [rbx]
test eax, eax
jne 0x140103a40
jmp 0x140103a97
mov r13, qword [0x14045b410]
mov r8, qword [rbp - 0x48]
mov r9d, dword [rsp + 0x78]
mov r10d, dword [rsp + 0x50]
mov r11d, dword [rbp - 0x20]
mov edx, dword [rbp - 0x1c]
test rbx, rbx
je 0x140103ab3
test r12b, 0x10
jne 0x140103ab3
mov rdx, rdi
mov rcx, r15
call fcn.140102950
test eax, eax
je 0x140103cc5
mov edx, dword [rbp - 0x1c]
mov r11d, dword [rbp - 0x20]
mov r10d, dword [rsp + 0x50]
mov r9d, dword [rsp + 0x78]
mov r8, qword [rbp - 0x48]
mov r13, qword [0x14045b410]
mov r12, qword [r13 + 0x80]
mov rax, qword [rbp + 0x68]
mov r15, qword [r13 + 0x90]
mov qword [rbp + 0x80], r15
cmp rax, r12
je 0x140103af7
cmp rdi, r12
je 0x140103af7
mov dword [rbp - 0x80], r14d
mov ecx, 1
jmp 0x140103aff
test eax, eax
je 0x140103ab3
cmp eax, 0x66
je 0x140103a79
movzx eax, byte [rbx + 1]
inc rbx
test eax, eax
jne 0x140103ae5
jmp 0x140103ab3
mov ecx, 1
mov dword [rbp - 0x80], ecx
cmp rax, r15
je 0x140103b0e
mov dword [rsp + 0x6c], r14d
cmp rdi, r15
jne 0x140103b12
mov dword [rsp + 0x6c], ecx
mov ebx, dword [rsp + 0x44]
test rdi, rdi
mov dword [0x14045b554], ecx
mov rcx, rax
cmovne rcx, rdi
mov dword [0x14045b4f0], r14d
mov qword [rbp + 0x38], rcx
test edx, edx
jne 0x140103c31
test ebx, ebx
jne 0x140103c31
lea edi, [rbx + 1]
test r10d, r10d
jne 0x140103c36
movsd xmm0, qword [r13 + 0xfb0]
test r11d, r11d
mov ebx, dword [r13 + 0xfb8]
mov eax, r11d
cmove eax, edi
mov qword [rsp + 0x30], r8
mov dword [r13 + 0xfb0], eax
mov r8, rcx
movsd qword [rbp + 0x98], xmm0
mov dword [r13 + 0xfb4], r14d
test r9d, r9d
je 0x140103bc7
mov qword [rsp + 0x28], r13
lea ecx, [rdi + 8]
xor r9d, r9d
mov dword [rsp + 0x20], 0xfffffffd
xor edx, edx
call fcn.140038a50
test eax, eax
je 0x140103bfa
call fcn.1400f62a0
test eax, eax
jne 0x14010416a
mov rax, qword [0x14045b410]
mov r13d, edi
and dword [rax + 0x74], 0xfffffff7
jmp 0x140103ccd
xor r9d, r9d
mov qword [rsp + 0x28], r14
mov rdx, rcx
mov dword [rsp + 0x20], 0xfffffffd
lea ecx, [r9 + 0x2d]
call fcn.140038a50
test eax, eax
je 0x140103bfa
call fcn.1400f62a0
test eax, eax
mov r13, rsi
sete r13b
jmp 0x140103ccd
test dword [rbp + 0x44], 0x100
mov rax, qword [0x14045b410]
movsd xmm0, qword [rbp + 0x98]
movsd qword [rax + 0xfb0], xmm0
mov dword [rax + 0xfb8], ebx
je 0x140103c2b
mov r13d, 2
jmp 0x140103ccd
mov ebx, dword [rsp + 0x44]
jmp 0x140103c36
mov edi, 1
mov ecx, reloc.WSOCK32.dll_WSAGetLastError
call fcn.1401c55c0
test eax, eax
jne 0x140103c53
mov rax, qword [0x14045b410]
cmp dword [rax + 0x1a08], esi
je 0x140103c5e
cmp dword [0x14046a3b4], esi
mov eax, r14d
je 0x140103c60
mov eax, edi
mov rdi, qword [rbp + 0x68]
mov dword [0x14045b53c], eax
test rdi, rdi
je 0x140103d61
cmp byte [rdi], sil
je 0x140103d61
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rdi + rax], sil
jne 0x140103c83
cmp rax, 0x400
jb 0x140103d19
lea rcx, str.Illegal_file_name
call qword [case.0x1400407ae.0]
mov rcx, qword [0x14045b410]
mov rdx, rdi
mov r8, rax
call fcn.1401034c0
call fcn.140185ef0
mov eax, dword [rbp]
mov dword [0x14045b53c], eax
xor r13d, r13d
mov edi, 1
mov rcx, qword [0x14045b410]
mov eax, r13d
mov rdx, qword [rcx + 8]
test rdx, rdx
je 0x140103cef
cmp dword [rdx + 0x494], 2
jne 0x140103cef
mov dword [rdx + 0x494], edi
mov rcx, qword [rbp + 0x280]
xor rcx, rsp
call fcn.140001200
mov rbx, qword [rsp + 0x3e8]
add rsp, 0x390
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
lea rdx, [rdi + rax]
mov rcx, rdi
call fcn.14018f6e0
test eax, eax
je 0x140103d61
lea rcx, [0x1403bede8]
call qword [case.0x1400407ae.0]
mov rcx, qword [0x14045b410]
mov rdx, rdi
mov r8, rax
call fcn.1401034c0
call fcn.140185ef0
mov eax, dword [rbp]
mov r13d, 2
mov dword [0x14045b53c], eax
jmp 0x140103cc8
test ebx, ebx
jne 0x140103d91
cmp dword [rsp + 0x50], esi
jne 0x140103d91
cmp dword [rbp + 0x28], esi
jne 0x140103d91
cmp dword [0x14046a0cc], esi
jne 0x140103d91
mov rcx, rdi
call fcn.1401e1230
cmp eax, 1
jne 0x140103d91
lea rcx, str.is_a_device__disabled_with_opendevice_option_
jmp 0x140103c9f
mov rbx, qword [rbp - 0x48]
cmp dword [rsp + 0x74], esi
je 0x140103df3
test rbx, rbx
je 0x140103dc3
mov eax, dword [rbx + 0x74]
test eax, eax
je 0x140103dc3
mov ecx, r14d
cmp eax, 0x75
je 0x140103db7
cmp eax, 0x6d
sete cl
inc ecx
mov edx, 4
call fcn.14018e400
jmp 0x140103df8
mov rax, qword [0x140469660]
movzx edx, byte [rax]
test dl, dl
je 0x140103df3
cmp dl, 0x64
je 0x140103de4
cmp dl, 0x6d
mov ecx, 2
cmovne ecx, r14d
jmp 0x140103de9
mov ecx, 1
mov edx, 4
call fcn.14018e400
test rbx, rbx
je 0x140103e29
mov r8d, dword [rbx + 0x6c]
test r8d, r8d
je 0x140103e29
mov rax, qword [0x14045b410]
cmp r8d, 1
mov edx, r14d
mov r8d, 4
sete dl
mov ecx, dword [rax + 0x1608]
mov dword [rax + 0x1608], edx
call fcn.1401c2110
mov r9d, dword [rsp + 0x78]
test r9d, r9d
je 0x140103f1a
mov rbx, qword [0x14045b410]
test byte [rbx + 0x74], 2
je 0x140103e5e
xor edi, edi
mov eax, 1
cmp dword [0x14045b4fc], esi
mov r14d, eax
jne 0x140103e69
mov dword [rbx + 0x17c8], edi
jmp 0x140103e69
test r9d, r9d
je 0x140103f1a
xor edi, edi
mov eax, dword [rsp + 0x44]
mov edx, dword [rsp + 0x50]
test eax, eax
jne 0x140103f22
test edx, edx
jne 0x140103f22
cmp dword [rbp + 0x28], esi
jne 0x140103f22
mov rbx, qword [rbp + 0x68]
lea rdx, [rbp + 0x170]
mov rcx, rbx
call fcn.1401d2d20
mov rcx, qword [0x14045b410]
test eax, eax
js 0x140103ef9
mov eax, dword [rbp + 0x198]
mov dword [rcx + 0x110], eax
mov dword [rcx + 0x114], edi
mov rax, qword [rbp + 0x188]
mov qword [rcx + 0x120], rax
movzx eax, word [rbp + 0x176]
mov dword [rcx + 0x128], eax
mov eax, dword [rcx + 0x110]
mov dword [rcx + 0x118], eax
mov dword [rcx + 0x11c], edi
mov rdx, qword [rbp + 0x188]
and dword [rcx + 0x74], 0xffffffcf
mov qword [rsp + 0x60], rdx
jmp 0x140103f52
and dword [rcx + 0x74], 0xffffffcf
mov qword [rcx + 0x110], rsi
mov qword [rcx + 0x118], rsi
mov qword [rcx + 0x120], rdi
mov dword [rcx + 0x128], edi
jmp 0x140103f52
mov edx, dword [rsp + 0x50]
mov eax, dword [rsp + 0x44]
xor ecx, ecx
mov edi, ecx
test eax, eax
je 0x140103f3e
mov edx, 0x8000
call fcn.14001dab4
xor ecx, ecx
mov r8d, ecx
jmp 0x140104179
mov qword [rsp + 0x60], rcx
mov r8, rcx
test edx, edx
jne 0x140104182
mov rbx, qword [rbp + 0x68]
mov rcx, rbx
call fcn.1401e0270
mov rcx, qword [rbp + 0x68]
xor r8d, r8d
xor edx, edx
mov ebx, eax
call fcn.1401e1080
test ebx, ebx
mov dword [rsp + 0x48], eax
setne dil
test eax, eax
jns 0x140104172
mov eax, dword [rbp]
mov rdi, qword [rbp + 0x68]
mov rcx, rdi
mov dword [0x14045b53c], eax
call fcn.1401d9990
mov ebx, eax
lea rdx, [rbp + 0x1a8]
shr ebx, 4
mov rcx, rdi
and ebx, 1
cmp eax, 0xffffffff
cmove ebx, esi
call fcn.1401d2d20
test eax, eax
jne 0x140103fbb
movzx eax, word [rbp + 0x1ae]
jmp 0x140103fc2
mov rax, 0xffffffffffffffff
test ebx, ebx
je 0x140103fd2
lea rcx, [0x1403bede8]
jmp 0x14010413f
mov ebx, dword [rsp + 0x78]
test ebx, ebx
je 0x140103cc5
test eax, eax
jns 0x140104111
call fcn.140013154
cmp dword [rax], 2
jne 0x140104111
mov rax, qword [0x14045b410]
or dword [rax + 0x74], 0x10
mov rax, qword [rax + 0x1618]
movzx ecx, byte [rax]
lea eax, [rcx - 0x6e]
test al, 0xf9
jne 0x140104015
cmp cl, 0x72
jne 0x140104051
mov ecx, ebx
call fcn.140174a10
mov rax, qword [0x14045b410]
cmp rax, r13
jne 0x1401040e7
cmp dword [rbp - 0x80], esi
je 0x14010403e
cmp r12, qword [rax + 0x80]
jne 0x1401040e7
cmp dword [rsp + 0x6c], esi
je 0x140104051
cmp r15, qword [rax + 0x90]
jne 0x1401040e7
mov rcx, rdi
call fcn.14010d570
test eax, eax
je 0x140104064
call fcn.140051560
jmp 0x140104071
lea rcx, str._New_DIRECTORY_
call qword [case.0x1400407ae.0]
mov rdi, qword [rbp + 0x38]
mov r8, rax
mov rcx, qword [0x14045b410]
mov rdx, rdi
call fcn.1401034c0
call fcn.1403214d0
mov rbx, qword [rbp - 0x48]
test rbx, rbx
je 0x14010409d
mov rcx, rbx
call fcn.140101f20
mov rax, qword [0x14045b410]
xor r9d, r9d
mov qword [rsp + 0x30], rbx
mov r8, rdi
mov qword [rsp + 0x28], rax
mov rdx, rdi
mov dword [rsp + 0x20], 0xfffffffd
lea ecx, [r9 + 8]
call fcn.140038a50
mov rcx, qword [0x14045b410]
call fcn.140056d90
call fcn.1400f62a0
test eax, eax
mov r13, rsi
sete r13b
jmp 0x140103cc8
lea rcx, str.E812:_Autocommands_changed_buffer_or_buffer_name
call qword [case.0x1400407ae.0]
mov rbx, rax
call fcn.140182a30
test eax, eax
jne 0x140103cc5
mov rcx, rbx
call fcn.140182400
jmp 0x140103cc5
call fcn.140013154
cmp dword [rax], 0x1b
jne 0x140104124
lea rcx, str._File_too_big_
jmp 0x14010413f
call fcn.140013154
lea rcx, str._File_too_big_
cmp dword [rax], 0x84
je 0x14010413f
lea rcx, str._Permission_Denied_
call qword [case.0x1400407ae.0]
mov rdx, qword [rbp + 0x38]
mov r8, rax
mov rcx, qword [0x14045b410]
call fcn.1401034c0
mov rax, qword [0x14045b410]
mov edi, 1
mov dword [rax + 0x17c8], edi
xor r13d, r13d
jmp 0x140103ccd
mov r8, qword [rsp + 0x60]
xor ecx, ecx
mov edx, dword [rsp + 0x50]
mov r9d, dword [rsp + 0x78]
mov r15, r8
test r14d, r14d
je 0x14010418e
test edi, edi
jne 0x14010419d
mov rax, qword [0x14045b410]
cmp dword [rax + 0x1a08], esi
je 0x1401041b3
mov rax, qword [0x14045b410]
mov r8d, 1
mov dword [rax + 0x17c8], r8d
jmp 0x1401041b9
mov r8d, 1
cmp dword [rsp + 0x74], esi
je 0x1401041f7
test edx, edx
jne 0x1401041e4
mov rbx, qword [0x14045b410]
mov dword [rbx + 0x16d0], ecx
mov dword [rbx + 0x196c], ecx
mov dword [rbx + 0x16d4], r8d
mov dword [rbx + 0x1970], r8d
mov rbx, qword [0x14045b410]
mov dword [rbx + 0x160c], ecx
mov dword [rbx + 0x1984], ecx
mov rax, qword [0x14045b410]
mov rcx, qword [rax + 0x1618]
movzx edx, byte [rcx]
lea eax, [rdx - 0x6e]
test al, 0xf9
jne 0x140104218
cmp dl, 0x72
jne 0x1401042db
mov rbx, qword [0x14045b410]
mov edi, dword [0x14045b530]
cmp dword [rbx + 0x1a00], esi
je 0x140104246
cmp dword [rbx + 0x17c8], esi
je 0x14010423a
test r9d, r9d
jne 0x140104246
mov rcx, qword [0x14045b410]
call fcn.140176550
mov eax, dword [rsp + 0x44]
mov dword [0x14045b530], edi
mov qword [rsp + 0x60], r15
test eax, eax
jne 0x14010430f
mov rbx, qword [0x14045b410]
cmp rbx, r13
jne 0x1401042a2
cmp dword [rbp - 0x80], esi
je 0x140104277
cmp r12, qword [rbx + 0x80]
jne 0x1401042a2
mov qword [rsp + 0x60], r15
cmp dword [rsp + 0x6c], esi
je 0x14010430f
mov rax, qword [0x14045b410]
mov qword [rsp + 0x60], r15
mov r15, qword [rbp + 0x80]
cmp r15, qword [rax + 0x90]
je 0x1401042e2
lea rcx, str.E812:_Autocommands_changed_buffer_or_buffer_name
call qword [case.0x1400407ae.0]
mov rbx, rax
call fcn.140182a30
test eax, eax
jne 0x1401042c3
mov rcx, rbx
call fcn.140182400
cmp dword [rsp + 0x50], esi
jne 0x140103cc5
mov ecx, dword [rsp + 0x48]
call fcn.14001d780
jmp 0x140103cc5
mov r15, qword [rbp + 0x80]
mov eax, dword [rsp + 0x44]
cmp dword [0x14045b4e4], 2
jne 0x140104318
cmp dword [rsp + 0x50], esi
jne 0x140103cc5
test eax, eax
jne 0x140103cc5
mov ecx, dword [rsp + 0x48]
call fcn.14001d780
jmp 0x140103cc5
mov r15, qword [rbp + 0x80]
jmp 0x1401042e6
mov rbx, qword [0x14045b410]
mov ecx, dword [rbp - 0x20]
mov eax, ecx
inc dword [0x14045b54c]
test ecx, ecx
mov ecx, 1
movsd xmm0, qword [rbx + 0xfb0]
mov r14d, dword [rbx + 0xfb8]
cmove eax, ecx
xor edi, edi
mov dword [rbx + 0xfb0], eax
cmp dword [0x14045b514], esi
mov dword [rbx + 0xfb4], edi
mov rbx, qword [0x140469660]
movsd qword [rbp + 0x98], xmm0
movzx eax, byte [rbx]
je 0x14010438d
test eax, eax
je 0x1401043a1
nop
cmp eax, 0x6d
je 0x1401043a4
mov rcx, rbx
call qword [0x140420bf8]
movsxd rcx, eax
add rbx, rcx
movzx eax, byte [rbx]
test eax, eax
jne 0x140104370
jmp 0x1401043a1
test eax, eax
je 0x1401043a1
cmp eax, 0x6d
je 0x1401043a4
movzx eax, byte [rbx + 1]
inc rbx
test eax, eax
jne 0x140104391
mov rbx, rdi
test rbx, rbx
mov ecx, edi
mov rbx, qword [0x140469660]
setne cl
cmp dword [0x14045b514], esi
mov dword [rbp - 4], ecx
movzx eax, byte [rbx]
je 0x1401043e2
test eax, eax
je 0x1401043f6
cmp eax, 0x64
je 0x1401043f9
mov rcx, rbx
call qword [0x140420bf8]
movsxd rcx, eax
add rbx, rcx
movzx eax, byte [rbx]
test eax, eax
jne 0x1401043c5
jmp 0x1401043f6
test eax, eax
je 0x1401043f6
cmp eax, 0x64
je 0x1401043f9
movzx eax, byte [rbx + 1]
inc rbx
test eax, eax
jne 0x1401043e6
mov rbx, rdi
test rbx, rbx
mov ecx, edi
mov rbx, qword [0x140469660]
setne cl
cmp dword [0x14045b514], esi
mov dword [rbp + 0xb0], ecx
movzx eax, byte [rbx]
je 0x14010443d
test eax, eax
je 0x140104451
nop dword [rax]
cmp eax, 0x78
je 0x140104454
mov rcx, rbx
call qword [0x140420bf8]
movsxd rcx, eax
add rbx, rcx
movzx eax, byte [rbx]
test eax, eax
jne 0x140104420
jmp 0x140104451
test eax, eax
je 0x140104451
cmp eax, 0x78
je 0x140104454
movzx eax, byte [rbx + 1]
inc rbx
test eax, eax
jne 0x140104441
mov rbx, rdi
mov ecx, edi
test rbx, rbx
setne cl
mov dword [rbp - 0x28], ecx
mov ecx, dword [rsp + 0x50]
test ecx, ecx
jne 0x1401046c2
mov eax, dword [rsp + 0x44]
mov ebx, dword [0x14045b53c]
mov edi, dword [0x14046a300]
test eax, eax
jne 0x14010448c
mov ecx, dword [rsp + 0x48]
call fcn.14001d780
mov eax, dword [rsp + 0x44]
mov ecx, 1
mov r8, qword [rbp + 0x38]
mov dword [0x14045b53c], ecx
cmp dword [rbp - 0x1c], esi
je 0x1401044bc
mov rax, qword [rbp - 0x48]
xor edx, edx
mov qword [rsp + 0x30], rax
mov rax, qword [0x14045b410]
mov qword [rsp + 0x28], rax
lea ecx, [rdx + 0x35]
jmp 0x140104502
test eax, eax
mov rax, qword [rbp - 0x48]
mov qword [rsp + 0x30], rax
je 0x1401044dc
mov rax, qword [0x14045b410]
xor edx, edx
mov qword [rsp + 0x28], rax
lea ecx, [rdx + 0x54]
jmp 0x140104502
cmp dword [rsp + 0x78], esi
je 0x1401044f5
mov rax, qword [0x14045b410]
xor edx, edx
mov qword [rsp + 0x28], rax
lea ecx, [rdx + 0xb]
jmp 0x140104502
mov qword [rsp + 0x28], rsi
mov rdx, r8
mov ecx, 0x2f
xor r9d, r9d
mov dword [rsp + 0x20], 0xfffffffd
call fcn.140038a50
mov rcx, qword [0x140469660]
mov edx, WSAGetLastError
call fcn.14028abb0
xor ecx, ecx
mov edx, 0x64
test rax, rax
setne cl
mov dword [rbp - 4], ecx
mov rcx, qword [0x140469660]
call fcn.14028abb0
xor ecx, ecx
mov edx, 0x78
test rax, rax
setne cl
mov dword [rbp + 0xb0], ecx
mov rcx, qword [0x140469660]
call fcn.14028abb0
movsd xmm0, qword [rbp + 0x98]
xor ecx, ecx
test rax, rax
mov rax, qword [0x14045b410]
setne cl
cmp dword [0x14046a300], edi
mov dword [rbp - 0x28], ecx
movsd qword [rax + 0xfb0], xmm0
mov dword [rax + 0xfb8], r14d
jne 0x140104595
mov dword [0x14045b53c], ebx
call fcn.1400f62a0
test eax, eax
je 0x1401045b2
mov eax, dword [rbp]
dec dword [0x14045b54c]
mov dword [0x14045b53c], eax
jmp 0x140104158
mov edx, dword [rsp + 0x44]
test edx, edx
jne 0x1401046cc
mov rax, qword [0x14045b410]
cmp rax, r13
jne 0x140104678
cmp dword [rbp - 0x80], esi
je 0x1401045e0
cmp r12, qword [rax + 0x80]
jne 0x140104678
cmp dword [rsp + 0x6c], esi
je 0x1401045f3
cmp r15, qword [rax + 0x90]
jne 0x140104678
mov rcx, qword [rbp + 0x68]
xor r8d, r8d
xor edx, edx
call fcn.1401e1080
mov dword [rsp + 0x48], eax
mov r12d, eax
test eax, eax
js 0x14010467d
mov ecx, dword [rsp + 0x50]
mov edx, dword [rsp + 0x44]
mov rax, qword [0x14045b410]
lea r14, [0x1403b051f]
mov eax, dword [rax + 0x20]
and eax, 1
cmp dword [0x14045b804], esi
mov dword [rbp + 0xf8], eax
jne 0x1401046f1
cmp dword [rbp - 0x1c], esi
jne 0x1401046f1
test byte [rbp + 0x44], 0x10
jne 0x1401046f1
test edx, edx
je 0x1401046da
cmp dword [0x1404609ec], esi
jne 0x1401046f1
lea rcx, str.Vim:_Reading_from_stdin..._n
call qword [case.0x1400407ae.0]
mov rcx, rax
call fcn.140184d00
jmp 0x1401046f1
mov r12d, dword [rsp + 0x48]
dec dword [0x14045b54c]
lea rcx, str.E200:_ReadPre_autocommands_made_the_file_unreadable
mov eax, dword [rbp]
mov dword [0x14045b53c], eax
test r12d, r12d
js 0x14010469f
lea rcx, str.E201:_ReadPre_autocommands_must_not_change_current_buffer
call qword [case.0x1400407ae.0]
mov rbx, rax
call fcn.140182a30
test eax, eax
jne 0x140104158
mov rcx, rbx
call fcn.140182400
jmp 0x140104158
mov r12d, dword [rsp + 0x48]
jmp 0x140104610
mov r12d, dword [rsp + 0x48]
mov ecx, dword [rsp + 0x50]
jmp 0x140104614
test ecx, ecx
jne 0x1401046f1
mov rdx, qword [rbp + 0x38]
mov r8, r14
mov rcx, qword [0x14045b410]
call fcn.1401034c0
mov rbx, qword [0x14045b410]
lea rcx, str.latin1
xor r13d, r13d
mov dword [0x14045b53c], r13d
mov eax, dword [rbx]
mov dword [rsp + 0x6c], eax
mov rax, qword [rbp - 0x48]
test rax, rax
je 0x140104765
mov r15d, dword [rax + 0x7c]
mov dword [rsp + 0x40], r15d
test r15d, r15d
je 0x140104765
cmp dword [rsp + 0x74], esi
je 0x140104733
mov dword [rbx + 0x1980], r15d
mov rbx, rax
movsxd rax, dword [rbx + 0x78]
test eax, eax
je 0x14010478e
mov rcx, rax
add rcx, qword [rbx + 0x10]
call fcn.14016cfc0
mov r14, rax
mov qword [rbp - 0x58], rax
mov eax, 1
mov dword [rbp - 0x6c], eax
mov qword [rbp + 0xa0], rax
jmp 0x140104a00
mov rax, qword [0x14045b410]
mov r15d, 0x3f
mov rbx, qword [rbp - 0x48]
mov dword [rsp + 0x40], r15d
mov dword [rbp + 0xc0], r15d
mov dword [rax + 0x1980], r13d
test rbx, rbx
jne 0x140104736
mov rax, qword [0x14045b410]
cmp dword [rax + 0x1608], esi
je 0x1401047a6
mov dword [rbp - 0x6c], r13d
jmp 0x1401049f5
mov rax, qword [0x14045b410]
cmp dword [rax + 0x1a08], esi
je 0x1401048e2
movzx edi, byte [0x14045b550]
mov r14, rcx
mov qword [rbp - 0x58], rcx
test dil, dil
jne 0x140104896
cmp dword [rsp + 0x44], esi
jne 0x140104896
mov rcx, qword [rbp + 0x68]
mov rax, 0xffffffffffffffff
cmp byte [rcx + rax + 1], sil
lea rax, [rax + 1]
jne 0x1401047e5
movzx edx, byte [rax + rcx - 1]
lea eax, [rdx - 0x41]
cmp eax, 0x19
lea ecx, [rdx + 0x20]
cmova ecx, edx
cmp ecx, 0x78
jne 0x140104896
lea r8d, [rcx - 0x28]
mov ecx, r12d
lea rdx, [rbp + 0x230]
call fcn.14001e13c
mov ebx, eax
test eax, eax
jns 0x140104848
call fcn.140013154
cmp dword [rax], 4
jne 0x140104848
mov r8d, 0x50
lea rdx, [rbp + 0x230]
mov ecx, r12d
call fcn.14001e13c
mov ebx, eax
test eax, eax
js 0x140104823
xor r8d, r8d
xor edx, edx
mov ecx, r12d
call fcn.14001563c
movsxd rax, ebx
lea rdx, [rbp + 0x230]
add rdx, rax
lea rcx, [rbp + 0x230]
lea rax, [rbp + 0x230]
cmp rax, rdx
jae 0x140104896
cmp byte [rcx], 0x80
jae 0x1401048a2
inc rcx
cmp rcx, rdx
jb 0x140104875
mov rbx, qword [rbp - 0x48]
mov qword [rbp + 0xa0], r13
mov dword [rbp - 0x6c], r13d
jmp 0x140104a00
mov qword [rbp + 0xa0], r13
test dil, dil
je 0x1401048d5
cmp dword [0x14045b550], r13d
lea rax, str.latin1
mov qword [rbp + 0x88], rax
lea r14, str.utf_8
mov rax, r13
mov qword [rbp - 0x58], r14
mov ecx, 1
cmove rax, rcx
mov qword [rbp + 0xa0], rax
mov rbx, qword [rbp - 0x48]
mov dword [rbp - 0x6c], r13d
jmp 0x140104a00
mov rax, qword [0x140469680]
mov dword [rbp - 0x6c], r13d
cmp byte [rax], sil
jne 0x140104905
mov rax, qword [0x14045b410]
mov r14, qword [rax + 0x16e8]
jmp 0x1401049f5
mov r12, rax
movzx eax, byte [rax]
test al, al
jne 0x14010491b
mov qword [rbp + 0x88], r13
jmp 0x1401049f5
cmp dword [0x14045b514], esi
mov rbx, r12
je 0x140104952
cmp eax, 0x2c
je 0x140104973
mov rcx, rbx
call qword [0x140420bf8]
movsxd rcx, eax
add rbx, rcx
movzx eax, byte [rbx]
test eax, eax
jne 0x140104926
mov rbx, qword [rsp + 0x60]
mov qword [rsp + 0x60], rbx
mov dword [rsp + 0x40], r15d
jmp 0x140104978
cmp eax, 0x2c
je 0x140104973
movzx eax, byte [rbx + 1]
inc rbx
test eax, eax
jne 0x140104952
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x60], rax
mov dword [rsp + 0x40], r15d
jmp 0x140104978
test rbx, rbx
jne 0x14010499e
mov rcx, r12
call fcn.14016cfc0
mov rdi, rax
mov rcx, 0xffffffffffffffff
nop word [rax + rax]
inc rcx
cmp byte [r12 + rcx], sil
jne 0x140104990
add r12, rcx
jmp 0x1401049d6
mov rdx, rbx
mov rcx, r12
sub rdx, r12
call fcn.14028ad00
lea r12, [rbx + 1]
mov rdi, rax
test rax, rax
je 0x1401049d6
mov rcx, rax
call fcn.14016cfc0
cmp dword [0x14045b3f8], esi
mov rbx, rax
jne 0x1401049d3
mov rcx, rdi
call fcn.140005660
mov rdi, rbx
mov rbx, qword [rbp - 0x48]
test rdi, rdi
mov edx, r13d
cmove r12, r13
setne dl
mov qword [rbp + 0x88], r12
cmovne r14, rdi
mov dword [rbp - 0x6c], edx
mov qword [rbp + 0xa0], r13
mov qword [rbp - 0x58], r14
mov r12d, dword [rbp + 0x50]
mov dword [rbp - 0x80], r12d
mov edi, dword [rsp + 0x48]
mov rcx, qword [rbp - 0x38]
cmp dword [rbp + 0xa8], 0
je 0x140104a25
mov dword [rbp + 0xa8], r13d
jmp 0x140104ac0
test rbx, rbx
je 0x140104a61
mov eax, dword [rbx + 0x74]
test eax, eax
je 0x140104a61
cmp eax, 0x75
jne 0x140104a3d
mov dword [rsp + 0x58], r13d
jmp 0x140104a4c
cmp eax, 0x6d
mov edx, r13d
sete dl
inc edx
mov dword [rsp + 0x58], edx
mov rcx, qword [rbp - 0x38]
mov dword [rbp - 4], r13d
mov dword [rbp + 0xb0], r13d
mov dword [rbp - 0x28], r13d
jmp 0x140104ac0
mov rax, qword [0x14045b410]
cmp dword [rax + 0x1608], 0
je 0x140104a78
mov dword [rsp + 0x58], r13d
jmp 0x140104ac0
mov rax, qword [0x140469660]
cmp byte [rax], 0
jne 0x140104ab8
mov rax, qword [0x14045b410]
mov rcx, qword [rax + 0x16f0]
movzx eax, byte [rcx]
cmp al, 0x75
je 0x140104aad
mov ecx, r13d
cmp al, 0x6d
sete cl
inc ecx
mov dword [rsp + 0x58], ecx
mov rcx, qword [rbp - 0x38]
jmp 0x140104ac0
mov rcx, qword [rbp - 0x38]
mov dword [rsp + 0x58], r13d
jmp 0x140104ac0
mov dword [rsp + 0x58], 0xffffffff
cmp rcx, 0xffffffffffffffff
je 0x140104ad4
call qword [0x14046a0c0]
mov qword [rbp - 0x38], 0xffffffffffffffff
cmp dword [rbp + 0x48], 0
je 0x140104de3
mov dword [rbp + 0x48], r13d
test rbx, rbx
je 0x140104b59
cmp dword [rbx + 0x78], 0
je 0x140104b59
cmp dword [rbp - 0x6c], 0
mov esi, r13d
mov dword [rbp + 0x40], 1
mov dword [rsp + 0x68], r13d
je 0x140104b18
test r14, r14
je 0x140104b18
cmp dword [0x14045b3f8], 0
jne 0x140104b18
mov rcx, r14
call fcn.140005660
mov dword [rbp - 0x6c], r13d
lea rax, [0x1403b051f]
mov rdi, qword [rbp + 0x58]
mov qword [rbp - 0x58], rax
test rdi, rdi
je 0x140104b50
mov rcx, rdi
call fcn.1401e0f20
cmp dword [0x14045b3f8], 0
jne 0x140104b49
mov rcx, rdi
call fcn.140005660
mov rdi, r13
mov qword [rbp + 0x58], r13
mov r14, qword [rbp - 0x58]
jmp 0x140104de7
cmp dword [rbp - 0x6c], 0
je 0x140104b75
test r14, r14
je 0x140104b75
cmp dword [0x14045b3f8], 0
jne 0x140104b75
mov rcx, r14
call fcn.140005660
mov r14, qword [rbp + 0x88]
test r14, r14
je 0x140104b18
movzx eax, byte [r14]
mov dword [rbp - 0x6c], r13d
test al, al
jne 0x140104b96
mov qword [rbp + 0x88], r13
jmp 0x140104b1c
cmp dword [0x14045b514], 0
mov rbx, r14
je 0x140104c90
cmp eax, 0x2c
je 0x140104d51
mov rcx, rbx
call qword [0x140420bf8]
movsxd rcx, eax
add rbx, rcx
movzx eax, byte [rbx]
test eax, eax
jne 0x140104ba6
mov rax, qword [rbp + 0x10]
mov r14d, dword [rbp - 0x68]
mov rbx, qword [rbp - 0x50]
mov qword [rbp + 0x10], rax
mov rax, qword [rbp + 0x78]
mov qword [rbp + 0x78], rax
mov eax, dword [rbp - 0x60]
mov dword [rbp - 0x60], eax
mov rax, qword [rbp + 0xd8]
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x60], rax
mov eax, dword [rbp - 0x64]
mov dword [rbp - 0x64], eax
mov eax, dword [rbp - 8]
mov dword [rbp - 8], eax
mov eax, dword [rsp + 0x54]
mov dword [rsp + 0x54], eax
mov eax, dword [rbp - 0xc]
mov dword [rbp - 0xc], eax
mov eax, dword [rbp - 0x5c]
mov dword [rbp - 0x5c], eax
mov eax, dword [rbp - 0x14]
mov dword [rbp - 0x14], eax
mov eax, dword [rbp - 0x24]
mov dword [rbp - 0x24], eax
mov rax, qword [rbp + 0x58]
mov qword [rbp + 0x58], rax
mov rax, qword [rbp + 0x88]
mov qword [rbp + 0x88], rax
mov eax, dword [rbp - 0x40]
mov dword [rbp - 0x40], eax
mov eax, dword [rbp + 0x24]
mov dword [rbp - 0x68], r14d
mov r14d, dword [rsp + 0x7c]
mov dword [rbp + 0x24], eax
mov eax, dword [rbp + 0x40]
mov dword [rsp + 0x7c], r14d
mov r14d, dword [rbp - 0x70]
mov qword [rbp - 0x50], rbx
mov rbx, qword [rsp + 0x60]
mov dword [rbp + 0x40], eax
mov eax, dword [rbp - 0x18]
mov dword [rbp - 0x70], r14d
mov r14, qword [rbp + 0x88]
mov dword [rbp - 0x18], eax
mov dword [rsp + 0x48], edi
mov dword [rbp - 0x80], r12d
mov dword [rsp + 0x40], r15d
mov qword [rsp + 0x60], rbx
jmp 0x140104d56
cmp eax, 0x2c
je 0x140104d51
movzx eax, byte [rbx + 1]
inc rbx
test eax, eax
jne 0x140104c90
mov rax, qword [rbp + 0x10]
mov qword [rbp + 0x10], rax
mov rax, qword [rbp + 0x78]
mov qword [rbp + 0x78], rax
mov rax, qword [rbp - 0x50]
mov qword [rbp - 0x50], rax
mov eax, dword [rbp - 0x60]
mov dword [rbp - 0x60], eax
mov rax, qword [rbp + 0xd8]
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x60], rax
mov eax, dword [rbp - 0x64]
mov dword [rbp - 0x64], eax
mov eax, dword [rbp - 8]
mov dword [rbp - 8], eax
mov eax, dword [rsp + 0x54]
mov dword [rsp + 0x54], eax
mov eax, dword [rbp - 0xc]
mov dword [rbp - 0xc], eax
mov eax, dword [rbp - 0x5c]
mov dword [rbp - 0x5c], eax
mov eax, dword [rbp - 0x14]
mov dword [rbp - 0x14], eax
mov eax, dword [rbp - 0x24]
mov dword [rbp - 0x24], eax
mov eax, dword [rbp - 0x68]
mov dword [rbp - 0x68], eax
mov rax, qword [rbp + 0x58]
mov qword [rbp + 0x58], rax
mov eax, dword [rbp - 0x40]
mov dword [rbp - 0x40], eax
mov eax, dword [rbp + 0x24]
mov dword [rbp + 0x24], eax
mov eax, dword [rbp + 0x40]
mov dword [rbp + 0x40], eax
mov eax, dword [rsp + 0x7c]
mov dword [rsp + 0x7c], eax
mov eax, dword [rbp - 0x70]
mov dword [rbp - 0x70], eax
mov eax, dword [rbp - 0x18]
mov dword [rbp - 0x18], eax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x60], rax
mov dword [rsp + 0x48], edi
mov dword [rbp - 0x80], r12d
mov dword [rsp + 0x40], r15d
jmp 0x140104d56
test rbx, rbx
jne 0x140104d7f
mov rcx, r14
call fcn.14016cfc0
mov rdi, rax
mov rcx, 0xffffffffffffffff
nop dword [rax + rax]
inc rcx
cmp byte [r14 + rcx], 0
jne 0x140104d70
add r14, rcx
jmp 0x140104db8
mov rdx, rbx
mov rcx, r14
sub rdx, r14
call fcn.14028ad00
lea r14, [rbx + 1]
mov rdi, rax
test rax, rax
je 0x140104db8
mov rcx, rax
call fcn.14016cfc0
cmp dword [0x14045b3f8], 0
mov rbx, rax
jne 0x140104db5
mov rcx, rdi
call fcn.140005660
mov rdi, rbx
mov rbx, qword [rbp - 0x48]
lea rax, [0x1403b051f]
test rdi, rdi
mov ecx, r13d
cmove r14, r13
setne cl
mov qword [rbp + 0x88], r14
cmovne rax, rdi
mov dword [rbp - 0x6c], ecx
jmp 0x140104b23
mov rdi, qword [rbp + 0x58]
mov rcx, r14
mov dword [rsp + 0x70], r13d
call fcn.140103360
mov dword [rbp + 0xc0], eax
test eax, eax
je 0x140104ed3
mov rcx, r13
lea rdx, str.ucs_bom
nop dword [rax]
movzx eax, byte [r14 + rcx]
inc rcx
cmp al, byte [rdx + rcx - 1]
jne 0x140104e2e
cmp rcx, 8
jne 0x140104e10
mov eax, 0x4000
jmp 0x140104ecf
mov r8d, dword [0x14045b550]
test r8d, r8d
jne 0x140104e64
mov rdx, qword [0x14046a0e8]
lea r9, str.latin1
mov rcx, r13
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
inc rcx
cmp al, byte [r9 + rcx - 1]
jne 0x140104e7b
cmp rcx, 7
jne 0x140104e50
mov rcx, r14
call fcn.1401032f0
mov dword [rsp + 0x70], eax
test eax, eax
jne 0x140104ed3
mov r8d, dword [0x14045b550]
test r8d, r8d
jne 0x140104e95
cmp dword [0x1404212a4], r8d
jg 0x140104e95
lea rdx, str.utf_8
jmp 0x140104f1a
mov rcx, r14
call fcn.14016a820
test eax, eax
jne 0x140104ec9
mov rcx, r13
lea rdx, str.utf_8
nop dword [rax + rax]
movzx eax, byte [r14 + rcx]
inc rcx
cmp al, byte [rdx + rcx - 1]
jne 0x140104f13
cmp rcx, 6
jne 0x140104eb0
mov eax, 0xfde9
shl eax, 0x10
or eax, 0x20
mov dword [rsp + 0x70], eax
mov edx, dword [rsp + 0x44]
cmp byte [r14], 0
mov r8d, dword [rbp + 0x28]
je 0x1401050e3
test edx, edx
jne 0x1401050e3
test r8d, r8d
jne 0x1401050e3
cmp qword [rbp + 0xa0], 0
jne 0x1401050e3
mov r9d, 1
mov qword [rbp + 0x30], r9
jmp 0x1401050ed
mov r8d, dword [0x14045b550]
cmp dword [rbp + 0x24], 0
mov dword [rsp + 0x70], r13d
jne 0x140104f44
mov rcx, qword [0x14046a0e8]
test r8d, r8d
cmovne rcx, rdx
mov rdx, r14
call fcn.14016d370
mov rcx, rax
mov qword [rbp - 0x38], rax
jmp 0x140104f48
mov rcx, qword [rbp - 0x38]
mov edx, dword [rsp + 0x44]
test edx, edx
jne 0x1401050c9
cmp dword [rsp + 0x50], edx
jne 0x1401050c9
mov rax, qword [0x14046a0d0]
cmp byte [rax], dl
je 0x1401050c9
cmp dword [rbp + 0x28], edx
jne 0x1401050c9
cmp rcx, 0xffffffffffffffff
jne 0x140104ed7
mov dword [rbp + 0x24], r13d
test rdi, rdi
jne 0x140104ed7
lea ecx, [rdx + 0x72]
call fcn.1401023c0
mov qword [rbp + 0x58], rax
mov rbx, rax
test rax, rax
jne 0x140104fb4
lea rcx, str.Cant_find_temp_file_for_conversion
call qword [case.0x1400407ae.0]
mov edi, dword [rsp + 0x48]
jmp 0x14010502c
mov ecx, dword [rsp + 0x48]
call fcn.14001d780
cmp dword [0x14045b550], 0
lea rcx, str.utf_8
mov rdx, qword [0x14046a0e8]
mov edi, 0xffffffff
mov r8, qword [rbp + 0x68]
cmovne rdx, rcx
mov rcx, r14
mov dword [rsp + 0x48], edi
mov r9, rbx
call fcn.1400cc710
test eax, eax
jne 0x140105004
lea rcx, str.Conversion_with_charconvert_failed
call qword [case.0x1400407ae.0]
test rax, rax
jne 0x140105031
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.1401e1080
mov dword [rsp + 0x48], eax
mov edi, eax
test eax, eax
jns 0x1401050a6
lea rcx, str.cant_read_output_of_charconvert
call qword [case.0x1400407ae.0]
test rax, rax
je 0x140105060
xor r8d, r8d
xor edx, edx
mov rcx, rax
call fcn.140182fb0
test rbx, rbx
je 0x140105060
mov rcx, rbx
call fcn.1401e0f20
cmp dword [0x14045b3f8], 0
jne 0x14010505c
mov rcx, rbx
call fcn.140005660
mov qword [rbp + 0x58], r13
test edi, edi
jns 0x1401050a6
mov rcx, qword [rbp + 0x68]
xor edx, edx
call fcn.140321bb0
mov rbx, rax
test rax, rax
jne 0x140105082
mov edi, 0xffffffff
mov dword [rsp + 0x48], edi
jmp 0x1401050a6
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.1400196e0
cmp dword [0x14045b3f8], 0
mov edi, eax
mov dword [rsp + 0x48], eax
jne 0x1401050a6
mov rcx, rbx
call fcn.140005660
cmp qword [rbp + 0x58], 0
jne 0x140104ed3
mov dword [rbp + 0x48], 1
test edi, edi
js 0x1401071d2
mov rbx, qword [rbp - 0x48]
jmp 0x140104a0c
cmp rcx, 0xffffffffffffffff
jne 0x140104ed7
mov edi, dword [rsp + 0x48]
mov dword [rbp + 0x48], 1
jmp 0x140104a10
mov qword [rbp + 0x30], r13
mov r9d, 1
mov ecx, dword [rbp - 0x60]
test ecx, ecx
jne 0x14010526e
mov rax, r13
mov dword [rbp - 0x5c], r13d
mov qword [rbp - 0x30], rax
mov qword [rbp + 0x18], rax
mov eax, dword [rbp + 0xf0]
mov dword [rbp - 0x14], eax
mov eax, dword [rbp + 0x2f0]
mov dword [rbp - 0x24], eax
mov qword [rbp + 0xd8], r13
mov dword [rsp + 0x7c], r13d
cmp dword [rsp + 0x78], ecx
je 0x140105241
test byte [rbp + 0x44], 0x20
jne 0x140105241
mov rbx, qword [0x14045b410]
cmp qword [rbx + 0x80], 0
je 0x140105241
cmp dword [rbx + 0x18c4], ecx
je 0x140105241
cmp dword [rbp - 0x1c], ecx
jne 0x140105241
test r8d, r8d
jne 0x140105241
test edx, edx
jne 0x140105241
cmp dword [rsp + 0x50], edx
jne 0x140105241
mov rax, qword [rbp + 0x10]
mov qword [rbp + 0x10], rax
mov rax, qword [rbp + 0x78]
mov qword [rbp + 0x78], rax
mov rax, qword [rbp - 0x50]
mov qword [rbp - 0x50], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x60], rax
mov eax, dword [rbp - 8]
mov dword [rbp - 8], eax
mov eax, dword [rsp + 0x54]
mov dword [rsp + 0x54], eax
mov eax, dword [rbp - 0xc]
mov dword [rbp - 0xc], eax
mov eax, dword [rbp - 0x68]
mov dword [rbp - 0x68], eax
mov eax, dword [rbp - 0x40]
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x70]
mov dword [rbp - 0x70], eax
mov eax, dword [rbp - 0x18]
mov dword [rbp - 0x18], eax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x60], rax
mov dword [rbp - 0x64], r9d
mov qword [rbp + 0x100], 0
mov dword [rbp + 0x108], 0x6a09e667
mov dword [rbp + 0x10c], 0xbb67ae85
mov dword [rbp + 0x110], 0x3c6ef372
mov dword [rbp + 0x114], 0xa54ff53a
mov dword [rbp + 0x118], 0x510e527f
mov dword [rbp + 0x11c], 0x9b05688c
mov dword [rbp + 0x120], 0x1f83d9ab
mov dword [rbp + 0x124], 0x5be0cd19
mov dword [rbp - 0x60], ecx
mov dword [rbp - 0x80], r12d
mov dword [rsp + 0x40], r15d
jmp 0x140105245
mov dword [rbp - 0x64], r13d
mov rax, qword [0x14045b410]
mov rcx, qword [rax + 0x1f38]
test rcx, rcx
je 0x14010526b
call fcn.140073340
mov rax, qword [0x14045b410]
mov qword [rax + 0x1f38], r13
mov ecx, dword [rbp - 0x60]
mov r13, qword [rbp + 8]
jmp 0x140105285
mov r15d, dword [rsp + 0x40]
mov edi, dword [rsp + 0x54]
mov ebx, dword [rbp - 0x5c]
mov r12, qword [rbp - 0x50]
test edi, edi
jne 0x140105361
mov eax, dword [0x14045b41c]
test eax, eax
jne 0x14010725a
test ecx, ecx
jne 0x1401052d4
lea r14d, [rbx + 0x10000]
mov qword [rbp + 0x50], r14
mov dword [rsp + 0x4c], r14d
cmp r14d, 0x100000
jle 0x1401052dd
mov r14d, 0x100000
mov qword [rbp + 0x50], r14
mov dword [rsp + 0x4c], r14d
jmp 0x1401052e6
mov r14d, dword [rsp + 0x4c]
mov qword [rbp + 0x50], r14
test r14d, r14d
js 0x140106bf7
lea eax, [r14 + 1]
add eax, ebx
js 0x140106bf7
cmp ebx, 0x7fffffff
jge 0x140106bf7
test ecx, ecx
jne 0x140105c94
cmp r14d, 0xa
jl 0x1401053ce
lea eax, [r14 + 1]
xor edx, edx
add eax, ebx
movsxd rcx, eax
call fcn.140032b90
mov qword [rbp + 0x78], rax
test rax, rax
jne 0x1401053db
movsxd r14, r14d
shr r14, 1
mov qword [rbp + 0x50], r14
mov dword [rsp + 0x4c], r14d
cmp r14d, 0xa
jge 0x140105310
lea eax, [r14*2 + 1]
add eax, ebx
movsxd rcx, eax
call fcn.140032ad0
mov rax, qword [rbp + 0x18]
mov edi, 1
mov qword [rbp - 0x30], rax
xor r13d, r13d
cmp dword [rbp - 0x24], 0
cmove edi, r13d
mov dword [rsp + 0x54], edi
mov ecx, dword [rbp - 0x5c]
mov r12d, dword [rsp + 0x40]
mov r14, qword [rbp + 8]
test ecx, ecx
je 0x14010726a
mov rbx, qword [0x14045b410]
cmp dword [rbx + 0x1608], 0
jne 0x14010726a
cmp dword [rsp + 0x58], 1
jne 0x14010726a
cmp byte [r14 - 1], 0x1a
mov edx, dword [rsp + 0x74]
jne 0x14010726e
dec r14
dec ecx
test edx, edx
je 0x14010726e
mov dword [rbx + 0x16d0], 1
jmp 0x14010726e
mov rax, qword [rbp + 0x78]
test rax, rax
je 0x140105342
movsxd r12, ebx
mov edi, r15d
mov qword [rbp - 0x78], r12
test ebx, ebx
je 0x1401053fa
sub r13, r12
mov r8, r12
mov rdx, r13
mov rcx, rax
call fcn.140003740
mov rax, qword [rbp + 0x10]
test rax, rax
je 0x140105414
cmp dword [0x14045b3f8], 0
jne 0x140105414
mov rcx, rax
call fcn.140005660
cmp qword [rbp - 0x38], 0xffffffffffffffff
mov ecx, r14d
mov rax, qword [rbp + 0x78]
mov qword [rbp + 0x10], rax
mov qword [rbp - 0x50], rax
mov dword [rbp - 0x40], ecx
lea r13, [r12 + rax]
mov qword [rbp + 8], r13
jne 0x14010548e
mov eax, dword [rsp + 0x70]
test al, 1
je 0x140105449
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
mov r14d, eax
jmp 0x14010549c
test al, 0x14
je 0x140105466
add ecx, ecx
mov eax, 0x55555556
imul ecx
mov r14d, edx
shr r14d, 0x1f
add r14d, edx
and r14d, 0xfffffffe
jmp 0x14010549c
test al, 8
je 0x140105483
add ecx, ecx
mov eax, 0x55555556
imul ecx
mov r14d, edx
shr r14d, 0x1f
add r14d, edx
and r14d, 0xfffffffc
jmp 0x14010549c
cmp eax, 0x4000
je 0x14010548e
test al, 0x20
je 0x1401054a5
mov eax, ecx
cdq
and edx, 7
lea r14d, [rdx + rax]
sar r14d, 3
mov dword [rsp + 0x4c], r14d
mov qword [rbp + 0x50], r14
movsxd r15, dword [rsp + 0x7c]
test r15d, r15d
jle 0x1401054d4
mov r8, r15
lea rdx, [rbp + 0x1e8]
mov rcx, r13
call fcn.140003740
add r13, r15
sub r14d, r15d
mov qword [rbp + 8], r13
mov qword [rbp + 0x50], r14
mov dword [rsp + 0x4c], r14d
cmp dword [rsp + 0x50], 0
mov r15, qword [rsp + 0x60]
mov rax, qword [rbp + 0x18]
mov rbx, r15
mov qword [rbp - 0x30], rax
je 0x14010573a
mov ecx, dword [rbp + 0x90]
cmp ecx, dword [rbp - 0x20]
jle 0x14010550c
mov r15d, dword [rbp - 0x70]
xor edi, edi
mov r14d, edi
mov dword [rsp + 0x4c], edi
jmp 0x1401056ad
xor eax, eax
mov edx, ecx
mov rcx, qword [0x14045b410]
xor r8d, r8d
mov edi, eax
mov ebx, eax
call fcn.140179dc0
mov r11, rax
mov r8, 0xffffffffffffffff
movsxd rax, dword [rbp + 0x70]
add r11, rax
inc r8
cmp byte [r11 + r8], bl
jne 0x140105534
lea eax, [r8 + 1]
cmp eax, r14d
jg 0x14010561b
mov dword [rbp + 0x70], ebx
nop dword [rax]
xor edx, edx
movsxd r15, r8d
test r8d, r8d
jle 0x1401055c0
mov r12d, dword [rsp + 0x40]
xor r14d, r14d
mov rsi, qword [rsp + 0x60]
nop word [rax + rax]
movzx r8d, byte [rdx + r11]
lea r9, [rbx + r13]
inc edi
lea r10, [rbx + 1]
cmp r8b, 0xa
mov ecx, r14d
mov rbx, r10
cmovne ecx, r8d
inc rdx
mov byte [r9], cl
cmp rdx, r15
jl 0x140105570
mov r14, qword [rbp + 0x50]
mov qword [rsp + 0x60], rsi
mov rcx, qword [rsp + 0x60]
mov esi, dword [rsp + 0x68]
mov dword [rsp + 0x40], r12d
mov eax, dword [rsp + 0x40]
mov r12, qword [rbp - 0x78]
mov qword [rsp + 0x60], rcx
mov dword [rsp + 0x40], eax
mov ecx, dword [rbp + 0x90]
mov r15d, edi
inc ecx
mov byte [rbx + r13], 0xa
inc edi
mov dword [rbp + 0x90], ecx
inc rbx
cmp ecx, dword [rbp - 0x20]
jg 0x140105682
mov edx, ecx
xor r8d, r8d
mov rcx, qword [0x14045b410]
call fcn.140179dc0
mov r11, rax
mov rcx, 0xffffffffffffffff
nop
inc rcx
cmp byte [rax + rcx], 0
jne 0x140105600
lea eax, [r15 + 2]
mov r8d, ecx
add eax, ecx
cmp eax, r14d
jle 0x140105550
mov r15d, r14d
xor edx, edx
sub r15d, edi
movsxd rbx, r15d
test r15d, r15d
jle 0x140105678
mov r12, qword [rsp + 0x60]
movsxd rax, edi
mov edi, dword [rsp + 0x40]
nop word [rax + rax]
movzx r8d, byte [rdx + r11]
lea r9, [rax + r13]
xor ecx, ecx
cmp r8b, 0xa
cmovne ecx, r8d
inc rdx
inc rax
mov byte [r9], cl
cmp rdx, rbx
jl 0x140105640
mov qword [rsp + 0x60], r12
mov rax, qword [rsp + 0x60]
mov r12, qword [rbp - 0x78]
mov qword [rsp + 0x60], rax
mov dword [rsp + 0x40], edi
add dword [rbp + 0x70], r15d
mov r15d, dword [rbp - 0x70]
jmp 0x1401056a7
mov rax, qword [0x14045b410]
cmp dword [rax + 0x16d4], 0
cmovne r15d, edi
mov r14d, r15d
mov dword [rsp + 0x4c], r15d
mov eax, 1
mov r15d, eax
mov dword [rbp - 0x70], eax
xor edi, edi
mov rax, qword [rbp - 0x30]
test rax, rax
jne 0x14010592b
test r14d, r14d
jle 0x14010592b
mov rcx, qword [rbp + 0x60]
lea rax, [rbp + 0xf4]
mov qword [rsp + 0x30], rax
lea r9, [rbp + 0x18]
mov rax, qword [rbp + 0x38]
lea r8, [rsp + 0x4c]
mov qword [rsp + 0x28], rax
mov rdx, r13
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x20], eax
call fcn.1401019b0
mov r14d, dword [rsp + 0x4c]
lea r11, [0x140000000]
mov qword [rbp + 0x60], rax
mov rax, qword [0x14045b410]
mov rcx, qword [rax + 0x1f38]
test rcx, rcx
je 0x14010572d
movsxd rax, dword [rcx]
imul rcx, rax, 0x68
mov eax, dword [rbp - 0x64]
cmp dword [rcx + r11 + 0x43383c], 0
cmove eax, edi
mov dword [rbp - 0x64], eax
mov rax, qword [rbp + 0x18]
mov qword [rbp - 0x30], rax
jmp 0x140105932
test rax, rax
jne 0x140105757
call fcn.140072bd0
mov dword [rbp - 0x18], 1
lea r14d, [rax + 0x2029]
jmp 0x1401058b1
jle 0x1401058b1
mov rax, qword [0x14045b410]
mov rcx, qword [rax + 0x1f38]
test rcx, rcx
je 0x1401058b1
movsxd r10, dword [rcx]
lea eax, [r10 - 3]
cmp eax, 1
ja 0x1401058b1
mov dword [rsp + 0x40], edi
mov r14d, 0x2011
mov qword [rsp + 0x60], rbx
cmp r10d, 3
jne 0x1401058b1
cmp dword [rbp - 0x70], 0
mov dword [rsp + 0x40], edi
mov qword [rsp + 0x60], rbx
jne 0x1401058b1
cmp dword [rbp - 0x18], 0
mov dword [rsp + 0x40], edi
mov qword [rsp + 0x60], rbx
je 0x1401058b1
mov edx, dword [0x140433838]
lea rax, [0x140000000]
add edx, dword [0x140433834]
mov r15d, 0
mov r8d, dword [0x140433830]
mov r9d, dword [0x1404338a0]
add r8d, 0xc
add r8d, edx
mov edx, dword [0x140433898]
test r8d, r8d
cmovle r8d, r15d
add edx, dword [0x14043389c]
add r9d, 0xc
add r9d, edx
mov edx, dword [0x140433900]
cmp r9d, r8d
cmovle r9d, r8d
add edx, dword [0x140433904]
mov r8d, dword [0x140433908]
add r8d, 0xc
add r8d, edx
mov edx, dword [reloc.WSOCK32.dll_recv]
cmp r8d, r9d
cmovle r8d, r9d
add edx, dword [0x14043396c]
mov r9d, dword [0x140433970]
add r9d, 0xc
add r9d, edx
mov edx, dword [reloc.WSOCK32.dll_recv]
cmp r9d, r8d
cmovle r9d, r8d
add edx, dword [0x1404339d4]
mov r8d, dword [0x1404339d8]
add r8d, 0xc
add r8d, edx
cmp r8d, r9d
cmovle r8d, r9d
imul rcx, r10, 0x68
mov edx, dword [rcx + rax + 0x433834]
add edx, dword [rcx + rax + 0x433838]
add edx, dword [rcx + rax + 0x433830]
mov ecx, dword [rsp + 0x48]
sub edx, r8d
add edx, 0xc
lea r8d, [r10 - 2]
call fcn.14001559c
mov dword [rbp - 0x18], r15d
mov r15, rbx
mov dword [rsp + 0x40], edi
mov qword [rsp + 0x60], rbx
mov ecx, dword [rsp + 0x48]
mov r8d, r14d
mov rdx, r13
mov edi, r14d
call fcn.14001e13c
mov ebx, eax
test eax, eax
jns 0x1401058f2
mov r12d, dword [rsp + 0x48]
nop
call fcn.140013154
cmp dword [rax], 4
jne 0x1401058ee
mov r8d, r14d
mov rdx, r13
mov ecx, r12d
call fcn.14001e13c
mov ebx, eax
test eax, eax
js 0x1401058d0
mov r12, qword [rbp - 0x78]
mov rcx, qword [rbp + 0xd8]
mov r14d, ebx
movsxd rax, ebx
add rcx, rax
mov dword [rsp + 0x4c], ebx
mov qword [rbp + 0xd8], rcx
cmp ebx, edi
jl 0x14010569c
cmp rcx, r15
je 0x14010569c
xor edi, edi
mov r15d, edi
mov dword [rbp - 0x70], edi
jmp 0x1401056a9
lea r11, [0x140000000]
cmp qword [rbp + 0x60], 0
je 0x140105ad8
mov rbx, qword [0x14045b410]
mov rcx, qword [rbx + 0x1f38]
test rcx, rcx
je 0x140105ad8
test r14d, r14d
jle 0x140105ad8
movsxd rax, dword [rcx]
imul r10, rax, 0x68
cmp dword [r10 + r11 + 0x43383c], 0
je 0x14010598a
movsxd r8, r14d
mov r9, r13
mov rdx, r13
mov dword [rsp + 0x20], r15d
call qword [r10 + r11 + 0x433880]
jmp 0x140105ad8
mov qword [rbp + 0xc8], rdi
mov rbx, qword [rbx + 0x1f38]
movsxd rax, dword [rbx]
imul r15, rax, 0x68
mov rax, qword [r15 + r11 + 0x433870]
test rax, rax
je 0x1401059c9
mov ecx, dword [rbp - 0x70]
lea r9, [rbp + 0xc8]
mov dword [rsp + 0x20], ecx
mov rdx, r13
mov rcx, rbx
movsxd r8, r14d
call rax
mov ebx, eax
jmp 0x140105a10
movsxd rdi, r14d
mov edx, 1
mov rcx, rdi
call fcn.140032b90
mov qword [rbp + 0xc8], rax
test rax, rax
je 0x140107216
mov ecx, dword [rbp - 0x70]
mov r9, rax
mov dword [rsp + 0x20], ecx
lea rax, [0x140000000]
mov rcx, rbx
mov r8, rdi
mov rdx, r13
call qword [r15 + rax + 0x433860]
xor edi, edi
mov ebx, r14d
test ebx, ebx
js 0x14010720f
mov ecx, dword [rbp - 0x60]
je 0x140105280
mov eax, dword [rbp - 0x5c]
test eax, eax
jne 0x140105a3d
mov r15, qword [rbp + 0xc8]
mov qword [rbp + 0x78], r15
test r15, r15
jne 0x140105aa1
jmp 0x140105ad1
inc eax
xor edx, edx
add eax, ebx
movsxd rdi, eax
mov rcx, rdi
call fcn.140032b90
mov r15, rax
test rax, rax
je 0x1401071fd
mov rdx, qword [rbp + 0x10]
mov r8, r12
mov rcx, rax
call fcn.140003740
mov rax, qword [rbp + 0xc8]
test rax, rax
je 0x140105aa1
movsxd r8, ebx
lea rcx, [r12 + r15]
mov rdx, rax
call fcn.140003740
mov rax, qword [rbp + 0xc8]
test rax, rax
je 0x140105aa1
cmp dword [0x14045b3f8], 0
jne 0x140105aa1
mov rcx, rax
call fcn.140005660
mov rax, qword [rbp + 0x10]
test rax, rax
je 0x140105abb
cmp dword [0x14045b3f8], 0
jne 0x140105abb
mov rcx, rax
call fcn.140005660
xor edi, edi
mov qword [rbp + 0x10], r15
lea r13, [r12 + r15]
mov qword [rbp + 0x78], rdi
mov qword [rbp + 8], r13
mov dword [rbp - 0x40], r14d
mov r14d, ebx
mov dword [rsp + 0x4c], ebx
mov rdx, qword [rbp + 0x10]
mov qword [rbp - 0x50], rdx
mov r12, rdx
test r14d, r14d
jg 0x140105afa
mov qword [rbp - 0x50], rdx
jns 0x140105bc3
mov dword [rsp + 0x54], 1
mov r15d, dword [rsp + 0x40]
mov ebx, dword [rsp + 0x70]
mov rdi, qword [rbp - 0x30]
mov dword [rbp - 0x60], 0
test rdi, rdi
je 0x140105b6f
cmp qword [rbp + 0x60], 0
je 0x140105e63
mov rax, qword [0x14045b410]
mov rcx, qword [rax + 0x19f8]
cmp byte [rcx], 0
cmove rcx, qword [0x140469c50]
call fcn.140072d80
movsxd rcx, eax
lea rdx, [0x140000000]
imul rax, rcx, 0x68
mov ecx, dword [rax + rdx + 0x433830]
add ecx, dword [rax + rdx + 0x433834]
mov eax, dword [rax + rdx + 0x433838]
add eax, 0xc
add eax, ecx
cdqe
cmp rdi, rax
jne 0x140105e63
cmp ebx, 0x4000
je 0x140105ca1
mov rax, qword [0x14045b410]
cmp dword [rax + 0x160c], 0
jne 0x140105e63
cmp qword [rbp + 0x58], 0
jne 0x140105e63
mov rcx, qword [rbp - 0x58]
movzx eax, byte [rcx]
cmp al, 0x75
je 0x140105ca5
test al, al
jne 0x140105e63
cmp dword [0x14045b550], 0
je 0x140105e63
jmp 0x140105ca5
movsxd rcx, dword [rsp + 0x7c]
test ecx, ecx
jle 0x140105afa
mov ebx, dword [rsp + 0x70]
mov r8, qword [rbp - 0x38]
test ebx, ebx
jne 0x140105bfb
cmp r8, 0xffffffffffffffff
jne 0x140105bfb
cmp dword [rbp - 0x68], ebx
jne 0x140105c1d
mov rax, qword [0x14045b410]
mov eax, dword [rax]
sub eax, dword [rsp + 0x6c]
inc eax
mov dword [rbp - 0x68], eax
jmp 0x140105c1d
cmp qword [rbp + 0x30], 0
jne 0x140106fc2
test esi, esi
jne 0x140105c1d
mov rax, qword [0x14045b410]
mov esi, dword [rax]
sub esi, dword [rsp + 0x6c]
inc esi
mov dword [rsp + 0x68], esi
mov r15d, dword [rsp + 0x40]
cmp r15d, 0xfffffffe
jne 0x140105c41
mov rax, rcx
mov dword [rsp + 0x7c], edi
mov rcx, r13
mov qword [rbp - 0x50], rdx
sub rcx, rax
mov byte [rcx], 0
jmp 0x140105b03
cmp r15d, 0xffffffff
je 0x140105c66
test ebx, ebx
jne 0x140105c51
cmp r8, 0xffffffffffffffff
je 0x140105c66
dec r13
dec ecx
mov byte [r13], r15b
test ecx, ecx
jg 0x140105c51
mov dword [rsp + 0x7c], ecx
mov qword [rbp + 8], r13
mov qword [rbp - 0x50], rdx
mov ebx, edi
mov dword [rsp + 0x70], ebx
cmp r8, 0xffffffffffffffff
je 0x140105b03
mov rcx, r8
call qword [0x14046a0c0]
mov qword [rbp - 0x38], 0xffffffffffffffff
mov qword [rbp - 0x50], r12
jmp 0x140105b03
mov rbx, qword [rbp + 0x18]
mov qword [rbp - 0x30], rbx
jmp 0x140105aff
mov rcx, qword [rbp - 0x58]
cmp r14d, 2
jl 0x140105e50
mov rax, qword [0x14045b410]
cmp dword [rax + 0x1608], 0
jne 0x140105e50
cmp ebx, 0x4000
jne 0x140105cd2
mov ecx, 0xffffffff
jmp 0x140105cd9
call fcn.1401032f0
mov ecx, eax
movzx edx, byte [r13]
xor edi, edi
lea r8d, [rdi + 2]
cmp dl, 0xef
jne 0x140105d2c
cmp byte [r13 + 1], 0xbb
jne 0x140105dc8
cmp r14d, 3
jl 0x140105dc8
cmp byte [r13 + 2], 0xbf
jne 0x140105dc8
lea eax, [rcx + 1]
cmp eax, 1
jbe 0x140105d1a
cmp ecx, r8d
jne 0x140105dc8
lea rdi, str.utf_8
mov r8d, 3
jmp 0x140105dfd
cmp dl, 0xff
jne 0x140105d91
cmp byte [r13 + 1], 0xfe
jne 0x140105dc8
cmp r14d, 4
jl 0x140105d67
cmp byte [r13 + 2], dil
jne 0x140105d67
cmp byte [r13 + 3], dil
jne 0x140105d67
cmp ecx, 0xffffffff
je 0x140105d5b
cmp ecx, 0x88
jne 0x140105d67
lea rdi, str.ucs_4le
jmp 0x140105df7
cmp ecx, 0x84
jne 0x140105d7b
lea rdi, str.ucs_2le
jmp 0x140105dfd
cmp ecx, 0xffffffff
je 0x140105d88
cmp ecx, 0x90
jne 0x140105dfd
lea rdi, str.utf_16le
jmp 0x140105dfd
cmp dl, 0xfe
jne 0x140105dc8
cmp byte [r13 + 1], 0xff
jne 0x140105dc8
lea eax, [rcx + 1]
cmp eax, 0x11
ja 0x140105dc8
mov r9d, 0x20021
bt r9d, eax
jae 0x140105dc8
cmp ecx, 4
lea rdi, str.ucs_2
lea rax, str.utf_16
cmovne rdi, rax
jmp 0x140105dfd
cmp r14d, 4
jl 0x140105dfd
test dl, dl
jne 0x140105dfd
cmp byte [r13 + 1], dil
jne 0x140105dfd
cmp byte [r13 + 2], 0xfe
jne 0x140105dfd
cmp byte [r13 + 3], 0xff
jne 0x140105dfd
cmp ecx, 0xffffffff
je 0x140105df0
cmp ecx, 8
jne 0x140105dfd
lea rdi, str.ucs_4
mov r8d, 4
test rdi, rdi
je 0x140105e52
mov rcx, qword [rbp - 0x30]
sub r14d, r8d
mov eax, r8d
add rcx, rax
movsxd r8, r14d
mov qword [rbp - 0x30], rcx
mov qword [rbp + 0x18], rcx
mov rcx, r13
lea rdx, [rax + r13]
mov dword [rsp + 0x4c], r14d
call fcn.140003740
cmp dword [rsp + 0x74], 0
mov edx, 1
je 0x140105e57
mov rbx, qword [0x14045b410]
mov dword [rbx + 0x160c], edx
mov dword [rbx + 0x1984], edx
mov ebx, dword [rsp + 0x70]
jmp 0x140105e57
xor edi, edi
mov edx, 1
cmp ebx, 0x4000
je 0x14010700f
movsxd rcx, dword [rsp + 0x7c]
sub r13, rcx
mov dword [rsp + 0x7c], 0
mov qword [rbp + 8], r13
lea r9d, [rcx + r14]
mov dword [rbp - 0x78], r9d
mov dword [rsp + 0x4c], r9d
test r9d, r9d
jle 0x14010723e
mov r11, qword [rbp - 0x38]
mov ecx, r9d
mov r14d, dword [rbp - 0x40]
mov edx, r9d
mov ebx, r9d
mov r8d, r9d
mov edi, r9d
cmp r11, 0xffffffffffffffff
je 0x140106044
movsxd rax, r9d
mov qword [rbp + 0xe8], rax
movsxd rax, r9d
mov qword [rbp + 0x98], r13
add r13, rax
mov eax, r14d
mov qword [rbp + 8], r13
sub eax, r9d
mov qword [rbp + 0xb8], r13
cdqe
mov qword [rbp + 0x80], rax
nop
lea rax, [rbp + 0x80]
mov rcx, r11
lea r9, [rbp + 0xb8]
mov qword [rsp + 0x20], rax
lea r8, [rbp + 0xe8]
lea rdx, [rbp + 0x98]
call qword [0x14046a0d8]
cmp rax, 0xffffffffffffffff
jne 0x140105f24
call qword [0x14046a0b8]
cmp dword [rax], 0x16
je 0x140105f24
mov rbx, qword [rbp + 0xe8]
jmp 0x140105f35
mov rbx, qword [rbp + 0xe8]
cmp rbx, 0x1e
jbe 0x140105fe5
cmp qword [rbp + 0x30], 0
jne 0x140106fc6
mov rdx, qword [rbp + 0xb8]
test esi, esi
jne 0x140105f87
mov rax, qword [0x14045b410]
mov rcx, r13
mov esi, dword [rax]
sub esi, dword [rsp + 0x6c]
inc esi
mov dword [rsp + 0x68], esi
cmp r13, rdx
jae 0x140105f87
nop word [rax + rax]
cmp byte [rcx], 0xa
lea eax, [rsi + 1]
cmovne eax, esi
inc rcx
mov esi, eax
cmp rcx, rdx
jb 0x140105f70
mov dword [rsp + 0x68], eax
mov rax, qword [rbp + 0x98]
dec rbx
mov r11, qword [rbp - 0x38]
inc rax
mov qword [rbp + 0x98], rax
mov qword [rbp + 0xe8], rbx
cmp r15d, 0xffffffff
jne 0x140105fc5
movzx eax, byte [rax - 1]
mov byte [rdx], al
inc qword [rbp + 0xb8]
dec qword [rbp + 0x80]
jmp 0x140105ee0
cmp r15d, 0xfffffffe
je 0x140105ee0
mov byte [rdx], r15b
inc qword [rbp + 0xb8]
dec qword [rbp + 0x80]
jmp 0x140105ee0
test rbx, rbx
je 0x140106004
mov rdx, qword [rbp + 0x98]
lea rcx, [rbp + 0x1e8]
mov r8, rbx
call fcn.140003740
mov dword [rsp + 0x7c], ebx
movsxd r8, dword [rbp - 0x5c]
mov r12, r13
mov rdx, qword [rbp + 0x10]
sub r12, r8
mov rcx, r12
mov qword [rbp - 0x50], r12
call fcn.140003740
mov r9d, dword [rbp + 0xb8]
mov r11, qword [rbp - 0x38]
sub r9d, r13d
mov dword [rbp - 0x78], r9d
mov ecx, r9d
mov dword [rsp + 0x4c], r9d
mov edx, r9d
mov ebx, r9d
mov r8d, r9d
mov edi, r9d
mov r10d, dword [rsp + 0x70]
test r10b, 0x20
je 0x140106336
mov eax, r10d
sar eax, 0x10
movzx r13d, ax
test r15d, r15d
jle 0x140106068
mov byte [rbp + 0x20], r15b
jmp 0x140106071
mov byte [rbp + 0x20], 0x3f
mov ecx, edx
mov ebx, r8d
mov rdi, qword [rbp + 8]
movsxd r8, ecx
mov rdx, rdi
movsxd r12, r14d
sub r12, r8
mov byte [rbp + 0x21], 0
add r12, rdi
mov rcx, r12
call fcn.140003740
mov r14, rdi
test ebx, ebx
jle 0x14010631f
mov ebx, dword [rbp - 0x78]
nop
xor r15d, r15d
cmp r13d, 0xfde9
jne 0x140106175
movzx ebx, byte [r12]
lea rax, [0x140000000]
mov r8d, dword [rbp - 0x78]
movsx edi, byte [rbx + rax + 0x3b1e30]
cmp edi, 1
jne 0x1401060d6
mov eax, 1
mov edi, eax
jmp 0x140106108
cmp edi, r8d
mov eax, edi
mov ecx, 1
cmovg eax, r8d
movsxd rdx, eax
cmp rcx, rdx
jge 0x140106103
nop dword [rax]
movzx eax, byte [r12 + rcx]
and al, 0xc0
cmp al, 0x80
jne 0x1401060cd
inc rcx
cmp rcx, rdx
jl 0x1401060f0
mov eax, 1
cmp edi, r8d
jle 0x140106123
mov ebx, dword [rbp - 0x78]
cmp edi, 0x1e
jle 0x140106305
mov ecx, dword [rbp - 0x80]
mov edi, ebx
mov r15d, eax
jmp 0x140106151
mov rcx, r12
call fcn.14016ce10
cmp eax, 0xffff
jg 0x14010613c
cmp bl, 0x80
jb 0x140106142
cmp edi, 1
jne 0x140106142
mov r15d, 1
mov ebx, dword [rbp - 0x78]
mov ecx, 1
mov word [rbp + 0x1e0], ax
mov dword [rbp - 0x80], ecx
test r15d, r15d
je 0x1401061d6
mov rax, qword [rsp + 0x60]
mov r15d, dword [rsp + 0x40]
mov qword [rsp + 0x60], rax
mov dword [rbp - 0x80], ecx
mov dword [rsp + 0x40], r15d
jmp 0x140106281
mov eax, 1
mov edi, eax
cmp ebx, eax
jl 0x1401061bf
cmp edi, 3
jg 0x1401061ba
lea rax, [rbp + 0x1e0]
mov dword [rsp + 0x28], 3
mov r9d, edi
mov qword [rsp + 0x20], rax
mov r8, r12
mov edx, 8
mov ecx, r13d
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov dword [rbp - 0x80], eax
test eax, eax
jg 0x1401061ba
inc edi
cmp edi, ebx
jle 0x140106180
mov eax, 1
mov ecx, dword [rbp - 0x80]
test ecx, ecx
jne 0x1401061d6
cmp ebx, 1
je 0x140106305
mov edi, eax
jmp 0x14010627c
cmp dword [0x14045b550], 0
je 0x14010622d
xor ebx, ebx
movsxd r15, ecx
test ecx, ecx
jle 0x14010620e
nop dword [rax + rax]
movzx ecx, word [rbp + rbx*2 + 0x1e0]
mov rdx, r14
call fcn.14016cd10
movsxd rcx, eax
inc rbx
add r14, rcx
cmp rbx, r15
jl 0x1401061f0
mov ebx, dword [rbp - 0x78]
sub ebx, edi
movsxd rax, edi
add r12, rax
mov dword [rbp - 0x78], ebx
mov dword [rsp + 0x4c], ebx
test ebx, ebx
jg 0x1401060a0
jmp 0x14010631f
lea rdx, [rbp + 0xd0]
mov dword [rbp + 0xd0], 0
mov qword [rsp + 0x38], rdx
lea r8, [rbp + 0x1e0]
lea rdx, [rbp + 0x20]
mov eax, r12d
mov qword [rsp + 0x30], rdx
sub eax, r14d
mov r9d, ecx
mov dword [rsp + 0x28], eax
mov ecx, dword [0x1404212a4]
xor edx, edx
mov qword [rsp + 0x20], r14
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
cmp dword [rbp + 0xd0], 0
je 0x1401062fb
mov r15d, dword [rsp + 0x40]
cmp qword [rbp + 0x30], 0
jne 0x140106fc6
test esi, esi
jne 0x1401062c7
mov rax, qword [0x14045b410]
mov rcx, qword [rbp + 8]
mov esi, dword [rax]
sub esi, dword [rsp + 0x6c]
inc esi
mov dword [rsp + 0x68], esi
cmp rcx, r14
jae 0x1401062c7
nop dword [rax]
cmp byte [rcx], 0xa
lea eax, [rsi + 1]
cmovne eax, esi
inc rcx
mov esi, eax
cmp rcx, r14
jb 0x1401062b0
mov dword [rsp + 0x68], eax
cmp r15d, 0xfffffffe
je 0x140106211
cmp r15d, 0xffffffff
jne 0x1401062f0
movsxd rbx, edi
mov rdx, r12
mov r8, rbx
mov rcx, r14
call fcn.140003740
add r14, rbx
jmp 0x14010620e
mov byte [r14], r15b
inc r14
jmp 0x140106211
cdqe
add r14, rax
jmp 0x140106211
test ebx, ebx
jle 0x14010631f
movsxd r8, ebx
lea rcx, [rbp + 0x1e8]
mov rdx, r12
call fcn.140003740
mov dword [rsp + 0x7c], ebx
mov r13, qword [rbp + 8]
mov r9d, r14d
mov r12, qword [rbp - 0x50]
sub r9d, r13d
mov dword [rbp - 0x78], r9d
jmp 0x140106a1e
test r10d, r10d
je 0x1401067f7
movsxd r14, r14d
lea eax, [r10 - 1]
add r14, r13
movsxd rbx, r9d
cmp eax, 1
jbe 0x1401063c2
test r10b, 0x14
je 0x1401063b0
and rbx, 0xfffffffffffffffe
mov edx, 0
add rbx, r13
test r9b, 1
cmovne rdx, rbx
test r10b, 0x10
je 0x140106403
cmp rbx, r13
jbe 0x140106403
movzx ecx, byte [rbx - 1]
sub rbx, 2
movzx eax, byte [rbx]
test r10b, r10b
jns 0x140106393
shl ecx, 8
jmp 0x140106396
shl eax, 8
add ecx, eax
lea eax, [rcx - 0xd800]
cmp eax, 0x3ff
ja 0x1401063aa
mov rdx, rbx
jmp 0x140106403
add rbx, 2
jmp 0x140106403
and rbx, 0xfffffffffffffffc
add rbx, r13
test r9b, 3
je 0x140106434
mov rdx, rbx
jmp 0x140106403
add rbx, r13
cmp r10d, 2
jne 0x140106434
lea rdx, [rbx - 1]
cmp rdx, r13
jbe 0x1401063e5
movzx eax, byte [rdx]
and al, 0xc0
cmp al, 0x80
jne 0x1401063e5
dec rdx
cmp rdx, r13
ja 0x1401063d4
movzx eax, byte [rdx]
lea rcx, [0x140000000]
movsx rax, byte [rax + rcx + 0x3b1e30]
add rax, rdx
cmp rax, rbx
jbe 0x140106434
mov rbx, rdx
test rdx, rdx
je 0x140106434
mov edi, r13d
lea rcx, [rbp + 0x1e8]
sub edi, edx
add edi, r9d
movsxd r8, edi
mov dword [rsp + 0x7c], edi
call fcn.140003740
mov r8d, dword [rbp - 0x78]
mov r10d, dword [rsp + 0x70]
sub r8d, edi
mov dword [rsp + 0x4c], r8d
cmp rbx, r13
jbe 0x1401067c3
mov r12d, r10d
and r12d, 1
mov r15, r14
test r12d, r12d
je 0x14010648e
dec rbx
movzx r8d, byte [rbx]
mov r11, qword [rbp + 0x30]
mov r9d, dword [rsp + 0x40]
cmp dword [0x14045b550], 0
je 0x14010673a
cmp r8d, 0x80
jge 0x1401066b4
mov eax, 1
mov ecx, r8d
sub r14, rax
mov rdx, r14
call fcn.14016cd10
jmp 0x1401067b5
test r10b, 0x14
je 0x1401065c3
movzx r8d, byte [rbx - 1]
mov ecx, r10d
and ecx, 0x80
je 0x1401064b6
movzx eax, byte [rbx - 2]
shl r8d, 8
sub rbx, 2
jmp 0x1401064c1
movzx eax, byte [rbx - 2]
sub rbx, 2
shl eax, 8
mov r11, qword [rbp + 0x30]
add r8d, eax
test r10b, 0x10
je 0x140106457
lea eax, [r8 - 0xdc00]
cmp eax, 0x3ff
ja 0x140106457
cmp rbx, r13
jne 0x14010651e
test r11, r11
jne 0x140106fc6
test esi, esi
jne 0x140106505
mov rax, qword [0x14045b410]
mov esi, dword [rax]
sub esi, dword [rsp + 0x6c]
inc esi
mov dword [rsp + 0x68], esi
mov r9d, dword [rsp + 0x40]
cmp r9d, 0xfffffffe
je 0x1401067b5
cmp r9d, 0xffffffff
cmovne r8d, r9d
jmp 0x140106523
mov r9d, dword [rsp + 0x40]
movzx edx, byte [rbx - 1]
sub rbx, 2
movzx eax, byte [rbx]
test ecx, ecx
je 0x140106537
shl edx, 8
jmp 0x14010653a
shl eax, 8
add edx, eax
and r8d, 0x3ff
mov ecx, edx
and ecx, 0x3ff
add ecx, 0x40
shl ecx, 0xa
lea eax, [rdx - 0xd800]
add r8d, ecx
cmp eax, 0x3ff
jbe 0x14010645c
test r11, r11
jne 0x140106fc6
test esi, esi
jne 0x1401065a7
mov rax, qword [0x14045b410]
mov rcx, r13
mov esi, dword [rax]
sub esi, dword [rsp + 0x6c]
inc esi
mov dword [rsp + 0x68], esi
cmp r13, rbx
jae 0x1401065a7
nop dword [rax]
cmp byte [rcx], 0xa
lea eax, [rsi + 1]
cmovne eax, esi
inc rcx
mov esi, eax
cmp rcx, rbx
jb 0x140106590
mov dword [rsp + 0x68], eax
cmp r9d, 0xfffffffe
je 0x1401067b5
cmp r9d, 0xffffffff
je 0x14010645c
mov r8d, r9d
jmp 0x14010645c
test r10b, 8
je 0x140106625
movzx r8d, byte [rbx - 1]
movzx eax, byte [rbx - 2]
mov r9d, dword [rsp + 0x40]
mov r11, qword [rbp + 0x30]
test r10b, r10b
jns 0x140106603
shl eax, 0x10
shl r8d, 0x18
add r8d, eax
movzx eax, byte [rbx - 3]
shl eax, 8
sub rbx, 4
add r8d, eax
movzx eax, byte [rbx]
add r8d, eax
jmp 0x14010645c
shl eax, 8
add r8d, eax
movzx eax, byte [rbx - 3]
shl eax, 0x10
sub rbx, 4
add r8d, eax
movzx eax, byte [rbx]
shl eax, 0x18
add r8d, eax
jmp 0x14010645c
dec rbx
cmp byte [rbx], 0x80
jb 0x14010644f
mov rdx, rbx
mov rcx, r13
call fcn.14016a8c0
movsxd rdi, eax
sub rbx, rdi
mov rcx, rbx
call fcn.14016ce10
mov r8d, eax
test edi, edi
jne 0x140106453
mov r11, qword [rbp + 0x30]
test r11, r11
jne 0x140106fc6
test esi, esi
jne 0x140106698
mov rcx, qword [0x14045b410]
mov esi, dword [rcx]
mov rcx, r13
sub esi, dword [rsp + 0x6c]
inc esi
mov dword [rsp + 0x68], esi
cmp r13, rbx
jae 0x140106698
cmp byte [rcx], 0xa
lea eax, [rsi + 1]
cmovne eax, esi
inc rcx
mov esi, eax
cmp rcx, rbx
jb 0x140106681
mov dword [rsp + 0x68], eax
mov r9d, dword [rsp + 0x40]
cmp r9d, 0xfffffffe
je 0x1401067b5
cmp r9d, 0xffffffff
cmovne r8d, r9d
jmp 0x14010645c
cmp r8d, 0x800
jge 0x1401066d5
mov eax, 2
mov ecx, r8d
sub r14, rax
mov rdx, r14
call fcn.14016cd10
jmp 0x1401067b5
cmp r8d, 0x10000
jge 0x1401066f6
mov eax, 3
mov ecx, r8d
sub r14, rax
mov rdx, r14
call fcn.14016cd10
jmp 0x1401067b5
cmp r8d, 0x200000
jge 0x140106717
mov eax, 4
mov ecx, r8d
sub r14, rax
mov rdx, r14
call fcn.14016cd10
jmp 0x1401067b5
xor eax, eax
mov ecx, r8d
cmp r8d, 0x4000000
setge al
add rax, 5
sub r14, rax
mov rdx, r14
call fcn.14016cd10
jmp 0x1401067b5
dec r14
cmp r8d, 0x100
jl 0x1401067b2
test r11, r11
jne 0x140106fc6
test esi, esi
jne 0x140106787
mov rax, qword [0x14045b410]
mov rcx, r13
mov esi, dword [rax]
sub esi, dword [rsp + 0x6c]
inc esi
mov dword [rsp + 0x68], esi
cmp r13, rbx
jae 0x140106787
nop
cmp byte [rcx], 0xa
lea eax, [rsi + 1]
cmovne eax, esi
inc rcx
mov esi, eax
cmp rcx, rbx
jb 0x140106770
mov dword [rsp + 0x68], eax
cmp r9d, 0xfffffffe
jne 0x140106792
mov r14, r15
jmp 0x1401067b5
cmp r9d, 0xffffffff
je 0x1401067b2
mov rax, qword [rbp - 0x48]
test rax, rax
je 0x1401067ac
cmp dword [rax + 0x7c], 0
je 0x1401067ac
mov byte [r14], r9b
jmp 0x1401067b5
mov byte [r14], 0xbf
jmp 0x1401067b5
mov byte [r14], r8b
mov r10d, dword [rsp + 0x70]
cmp rbx, r13
ja 0x140106444
movsxd r8, dword [rbp - 0x5c]
mov r12, r14
mov rdx, qword [rbp + 0x10]
sub r12, r8
mov rcx, r12
mov qword [rbp - 0x50], r12
call fcn.140003740
mov r9d, r13d
mov qword [rbp + 8], r14
sub r9d, r14d
mov r13, r14
add r9d, dword [rbp - 0x40]
mov dword [rbp - 0x78], r9d
jmp 0x140106a1e
cmp dword [0x14045b550], 0
je 0x140106a1e
mov rax, qword [0x14045b410]
cmp dword [rax + 0x1608], 0
jne 0x140106a1e
xor r14d, r14d
mov rbx, r13
test edi, edi
jle 0x140106a0a
nop word [rax + rax]
movzx eax, byte [rbx]
cmp al, 0x80
jb 0x1401069cc
lea rcx, [0x140000000]
mov r10d, 1
movsx edx, byte [rax + rcx + 0x3b1e30]
cmp edx, r10d
je 0x140106884
cmp edx, edi
mov eax, edx
mov ecx, r10d
cmovg eax, edi
movsxd r8, eax
cmp r10, r8
jge 0x140106887
nop word [rax + rax]
movzx eax, byte [rcx + rbx]
and al, 0xc0
cmp al, 0x80
jne 0x140106884
inc rcx
cmp rcx, r8
jl 0x140106870
jmp 0x140106887
mov edx, r10d
cmp edx, edi
jle 0x1401068a8
test r14d, r14d
jne 0x1401068a8
cmp rbx, r13
ja 0x14010689c
cmp qword [rbp - 0x30], 0
jle 0x14010689f
mov r14d, r10d
cmp rbx, r13
ja 0x1401069e4
cmp edx, 1
je 0x1401068bf
cmp edx, edi
jg 0x1401068bf
lea eax, [rdx - 1]
movsxd rcx, eax
add rbx, rcx
jmp 0x1401069cc
cmp qword [rbp + 0x30], 0
mov r8d, r15d
mov rdx, qword [rsp + 0x60]
je 0x1401068e1
mov dword [rsp + 0x40], r15d
mov qword [rsp + 0x60], rdx
test r14d, r14d
je 0x140106a0a
mov dword [rsp + 0x40], r8d
mov qword [rsp + 0x60], rdx
cmp r11, 0xffffffffffffffff
je 0x140106959
mov dword [rsp + 0x40], r8d
mov qword [rsp + 0x60], rdx
test esi, esi
jne 0x140106996
mov rax, qword [0x14045b410]
mov rcx, r13
mov r10d, dword [rsp + 0x6c]
mov dword [rsp + 0x40], r8d
mov qword [rsp + 0x60], rdx
mov esi, dword [rax]
sub esi, r10d
inc esi
mov dword [rsp + 0x68], esi
cmp r13, rbx
jae 0x14010695e
mov dword [rsp + 0x40], r8d
mov qword [rsp + 0x60], rdx
nop word [rax + rax]
cmp byte [rcx], 0xa
lea eax, [rsi + 1]
cmovne eax, esi
inc rcx
mov esi, eax
cmp rcx, rbx
jb 0x140106940
mov dword [rsp + 0x68], eax
jmp 0x14010695e
mov r10d, dword [rsp + 0x6c]
test esi, esi
jne 0x140106996
cmp dword [rbp - 0x68], esi
jne 0x140106996
mov rax, qword [0x14045b410]
mov rcx, r13
mov edx, dword [rax]
sub edx, r10d
inc edx
mov dword [rbp - 0x68], edx
cmp r13, rbx
jae 0x140106996
cmp byte [rcx], 0xa
lea eax, [rdx + 1]
cmovne eax, edx
inc rcx
mov edx, eax
cmp rcx, rbx
jb 0x140106980
mov dword [rbp - 0x68], eax
cmp r15d, 0xfffffffe
jne 0x1401069c3
mov r8d, edi
lea rdx, [rbx + 1]
dec r8
mov rcx, rbx
call fcn.140003740
mov r9d, dword [rbp - 0x78]
dec rbx
dec r9d
mov dword [rbp - 0x78], r9d
mov dword [rsp + 0x4c], r9d
jmp 0x1401069cc
cmp r15d, 0xffffffff
je 0x1401069cc
mov byte [rbx], r15b
inc rbx
mov edi, r13d
sub edi, ebx
add edi, r9d
test edi, edi
jle 0x140106a0a
mov r11, qword [rbp - 0x38]
jmp 0x140106830
mov r8d, edi
lea rcx, [rbp + 0x1e8]
mov rdx, rbx
mov dword [rsp + 0x7c], edi
call fcn.140003740
mov r9d, dword [rbp - 0x78]
sub r9d, edi
mov dword [rbp - 0x78], r9d
mov dword [rsp + 0x4c], r9d
movsxd rax, r9d
add rax, r13
cmp rbx, rax
jae 0x140106a1e
test r14d, r14d
je 0x140106fc6
mov rax, qword [rbp - 0x30]
mov r10d, dword [rsp + 0x58]
mov r11d, dword [rbp - 0x28]
movsxd rcx, r9d
add rax, rcx
mov qword [rbp - 0x30], rax
mov qword [rbp + 0x18], rax
cmp r10d, 0xffffffff
jne 0x140106ba5
mov r10d, dword [rbp + 0xb0]
test r10d, r10d
jne 0x140106a58
test r11d, r11d
je 0x140106b62
mov r8d, dword [rbp - 4]
lea rdx, [rcx + r13]
test r8d, r8d
mov ebx, 1
mov rax, r13
cmovne r8d, ebx
mov dword [rbp - 4], r8d
cmp r13, rdx
jae 0x140106a99
movzx ecx, byte [rax]
cmp cl, 0xa
je 0x140106ac7
cmp cl, 0xd
jne 0x140106a91
test r8d, r8d
je 0x140106a91
inc r8d
mov dword [rbp - 4], r8d
inc rax
cmp rax, rdx
jb 0x140106a78
cmp r8d, ebx
jne 0x140106b66
call fcn.14018e4f0
mov dword [rsp + 0x58], eax
mov r10d, eax
cmp eax, 0xffffffff
jne 0x140106b84
mov r10d, 2
mov dword [rsp + 0x58], r10d
jmp 0x140106b84
test r11d, r11d
je 0x140106b59
test r10d, r10d
je 0x140106ae0
cmp rax, r13
jbe 0x140106ae0
cmp byte [rax - 1], 0xd
je 0x140106b59
xor r10d, r10d
mov dword [rsp + 0x58], r10d
test r8d, r8d
je 0x140106b84
mov dword [rbp - 4], ebx
mov r8d, ebx
mov dword [rbp - 0x28], ebx
mov r11d, ebx
cmp rax, r13
jb 0x140106b84
cmp byte [rax], 0xd
je 0x140106b15
dec rax
cmp rax, r13
jae 0x140106b06
jmp 0x140106b84
cmp rax, r13
jb 0x140106b84
mov rax, r13
cmp r13, rdx
jae 0x140106b84
movzx ecx, byte [rax]
cmp cl, 0xa
jne 0x140106b2f
inc r11d
jmp 0x140106b37
cmp cl, 0xd
jne 0x140106b37
inc r8d
inc rax
cmp rax, rdx
jb 0x140106b22
mov dword [rbp - 0x28], r11d
mov dword [rbp - 4], r8d
cmp r8d, r11d
jle 0x140106b84
mov r10d, 2
mov dword [rsp + 0x58], r10d
jmp 0x140106b84
mov r10d, ebx
mov dword [rsp + 0x58], ebx
jmp 0x140106b84
mov r8d, dword [rbp - 4]
test r8d, r8d
je 0x140106b78
mov r10d, 2
mov dword [rsp + 0x58], r10d
jmp 0x140106b84
call fcn.14018e4f0
mov r10d, eax
mov dword [rsp + 0x58], eax
cmp dword [rsp + 0x74], 0
je 0x140106ba5
mov edx, 4
mov ecx, r10d
call fcn.14018e400
mov r9d, dword [rbp - 0x78]
mov r10d, dword [rsp + 0x58]
mov r11d, dword [rbp - 0x28]
mov edi, dword [rsp + 0x54]
mov r15d, 1
cmp r10d, 2
jne 0x140106dbf
sub r9d, 1
mov dword [rbp - 0x78], r9d
mov dword [rsp + 0x4c], r9d
js 0x140106d81
nop dword [rax]
movzx eax, byte [r13]
test al, al
je 0x140106d5e
cmp al, 0xd
je 0x140106be9
cmp al, 0xa
jne 0x140106d63
cmp al, 0xa
jne 0x140106c1b
mov byte [r13], recv
jmp 0x140106d63
mov rax, qword [rbp + 0x18]
mov r15d, 1
inc dword [rbp - 8]
mov r9d, r15d
mov r10d, dword [rsp + 0x58]
mov r11d, dword [rbp - 0x28]
mov qword [rbp - 0x30], rax
mov byte [r13], 0xa
jmp 0x140106baf
mov eax, dword [rbp - 0x14]
test eax, eax
jne 0x140106d4f
mov byte [r13], al
mov edi, r13d
mov rax, qword [0x14045b410]
sub edi, r12d
inc edi
cmp qword [rax + 8], 0
jne 0x140106c54
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.14004bde0
test eax, eax
je 0x140106db2
mov eax, dword [rsp + 0x78]
mov r9d, edi
mov edx, dword [rbp - 0x10]
mov r8, r12
mov rcx, qword [0x14045b410]
mov dword [rsp + 0x20], eax
call fcn.140171f70
test eax, eax
je 0x140106db2
cmp dword [rbp - 0x64], 0
je 0x140106d38
test edi, edi
je 0x140106d38
mov eax, dword [rbp + 0x100]
mov r14d, 0x40
mov r15d, eax
add eax, edi
and r15d, 0x3f
mov dword [rbp + 0x100], eax
sub r14d, r15d
cmp eax, edi
jae 0x140106cb3
inc dword [rbp + 0x104]
test r15d, r15d
je 0x140106cf4
cmp edi, r14d
jb 0x140106cf4
mov eax, r15d
lea rcx, [rbp + 0x128]
add rcx, rax
mov r8d, r14d
mov rdx, r12
mov ebx, r14d
call fcn.140003740
lea rdx, [rbp + 0x128]
lea rcx, [rbp + 0x100]
call fcn.140259230
sub edi, r14d
add r12, rbx
xor r15d, r15d
cmp edi, 0x40
jb 0x140106d1c
mov ebx, edi
shr rbx, 6
nop
mov rdx, r12
lea rcx, [rbp + 0x100]
call fcn.140259230
add edi, 0xffffffc0
add r12, 0x40
sub rbx, 1
jne 0x140106d00
test edi, edi
je 0x140106d38
mov eax, r15d
lea rcx, [rbp + 0x128]
add rcx, rax
mov r8d, edi
mov rdx, r12
call fcn.140003740
inc dword [rbp - 0x10]
sub dword [rbp - 0x24], 1
je 0x140106d9e
mov r9d, dword [rbp - 0x78]
lea r12, [r13 + 1]
mov qword [rbp - 0x50], r12
jmp 0x140106d63
dec eax
lea r12, [r13 + 1]
mov dword [rbp - 0x14], eax
mov qword [rbp - 0x50], r12
jmp 0x140106d63
mov byte [r13], 0xa
inc r13
sub r9d, 1
mov qword [rbp + 8], r13
mov dword [rbp - 0x78], r9d
mov dword [rsp + 0x4c], r9d
jns 0x140106bd0
mov edi, dword [rsp + 0x54]
mov ebx, r13d
xor ecx, ecx
sub ebx, r12d
mov dword [rbp - 0x5c], ebx
call fcn.1402c5ec0
mov ecx, dword [rbp - 0x60]
mov r15d, dword [rsp + 0x40]
jmp 0x140105290
mov eax, 1
mov qword [rbp - 0x50], r13
mov edi, eax
mov dword [rsp + 0x54], eax
mov r12, r13
jmp 0x140106d81
mov eax, 1
mov edi, eax
mov dword [rsp + 0x54], eax
jmp 0x140106d81
sub r9d, 1
mov dword [rbp - 0x78], r9d
mov dword [rsp + 0x4c], r9d
js 0x140106d81
nop
movzx eax, byte [r13]
test al, al
je 0x140106f87
cmp al, 0xa
jne 0x140106f8c
mov eax, dword [rbp - 0x14]
test eax, eax
jne 0x140106f78
mov byte [r13], al
mov eax, r13d
sub eax, r12d
lea edi, [rax + 1]
cmp r10d, 1
jne 0x140106e50
cmp r13, r12
jbe 0x140106e18
cmp byte [r13 - 1], 0xd
jne 0x140106e18
mov byte [r13 - 1], 0
mov edi, eax
jmp 0x140106e50
cmp dword [rbp - 0xc], 1
je 0x140106e50
test r11d, r11d
je 0x140106e4c
mov ebx, dword [rsp + 0x44]
test ebx, ebx
jne 0x140106e4c
cmp dword [rsp + 0x50], ebx
jne 0x140107069
mov ecx, dword [rsp + 0x48]
xor r8d, r8d
xor edx, edx
call fcn.14001563c
test rax, rax
je 0x140107069
mov dword [rbp - 0xc], r15d
mov rax, qword [0x14045b410]
cmp qword [rax + 8], 0
jne 0x140106e72
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.14004bde0
test eax, eax
je 0x140106fb5
mov eax, dword [rsp + 0x78]
mov r9d, edi
mov edx, dword [rbp - 0x10]
mov r8, r12
mov rcx, qword [0x14045b410]
mov dword [rsp + 0x20], eax
call fcn.140171f70
test eax, eax
je 0x140106fb5
cmp dword [rbp - 0x64], 0
je 0x140106f58
test edi, edi
je 0x140106f58
mov eax, dword [rbp + 0x100]
mov r14d, 0x40
mov r15d, eax
add eax, edi
and r15d, 0x3f
mov dword [rbp + 0x100], eax
sub r14d, r15d
cmp eax, edi
jae 0x140106ed1
inc dword [rbp + 0x104]
test r15d, r15d
je 0x140106f12
cmp edi, r14d
jb 0x140106f12
mov eax, r15d
lea rcx, [rbp + 0x128]
add rcx, rax
mov r8d, r14d
mov rdx, r12
mov ebx, r14d
call fcn.140003740
lea rdx, [rbp + 0x128]
lea rcx, [rbp + 0x100]
call fcn.140259230
sub edi, r14d
add r12, rbx
xor r15d, r15d
cmp edi, 0x40
jb 0x140106f3c
mov ebx, edi
shr rbx, 6
nop dword [rax]
mov rdx, r12
lea rcx, [rbp + 0x100]
call fcn.140259230
add edi, 0xffffffc0
add r12, 0x40
sub rbx, 1
jne 0x140106f20
test edi, edi
je 0x140106f58
mov eax, r15d
lea rcx, [rbp + 0x128]
add rcx, rax
mov r8d, edi
mov rdx, r12
call fcn.140003740
inc dword [rbp - 0x10]
sub dword [rbp - 0x24], 1
je 0x140106d9e
mov r9d, dword [rbp - 0x78]
lea r12, [r13 + 1]
mov r10d, dword [rsp + 0x58]
mov qword [rbp - 0x50], r12
jmp 0x140106f8c
dec eax
lea r12, [r13 + 1]
mov dword [rbp - 0x14], eax
mov qword [rbp - 0x50], r12
jmp 0x140106f8c
mov byte [r13], 0xa
inc r13
sub r9d, 1
mov qword [rbp + 8], r13
mov dword [rbp - 0x78], r9d
mov dword [rsp + 0x4c], r9d
js 0x140106d7d
mov r11d, dword [rbp - 0x28]
mov r15d, 1
jmp 0x140106dd0
mov edi, r15d
mov dword [rsp + 0x54], r15d
jmp 0x140106d81
mov qword [rbp - 0x50], rdx
mov rax, qword [0x14046a0d0]
cmp byte [rax], 0
je 0x140106ff4
cmp qword [rbp - 0x38], 0xffffffffffffffff
je 0x140106ff4
mov ebx, dword [rsp + 0x44]
mov r15d, 1
mov r14d, dword [rsp + 0x74]
xor r13d, r13d
mov dword [rbp + 0x24], r15d
jmp 0x140107110
mov ebx, dword [rsp + 0x44]
mov r15d, 1
mov r14d, dword [rsp + 0x74]
xor r13d, r13d
mov dword [rbp + 0x48], r15d
jmp 0x140107110
test rdi, rdi
jne 0x14010702e
mov r14, qword [rbp - 0x58]
xor r13d, r13d
mov r12d, dword [rbp - 0x80]
mov rbx, qword [rbp - 0x48]
mov dword [rbp + 0x48], edx
mov dword [rbp - 0x60], edx
jmp 0x140104a08
cmp dword [rbp - 0x6c], 0
je 0x140107046
cmp dword [0x14045b3f8], 0
jne 0x140107046
mov rcx, qword [rbp - 0x58]
call fcn.140005660
mov r12d, dword [rbp - 0x80]
xor r13d, r13d
mov rbx, qword [rbp - 0x48]
mov edx, 1
mov dword [rbp - 0x6c], r13d
mov r14, rdi
mov dword [rbp - 0x60], edx
mov qword [rbp - 0x58], rdi
jmp 0x140104a08
mov r14d, dword [rsp + 0x74]
xor r13d, r13d
mov dword [rsp + 0x58], r13d
test r14d, r14d
je 0x140107109
mov rax, qword [0x14045b410]
lea r9d, [r13 + 5]
lea r8, str.unix
mov dword [rsp + 0x20], r13d
lea edx, [r13 - 1]
lea rcx, [0x1403be7f0]
mov dword [rax + 0x17fc], r13d
call fcn.1401ce460
mov rax, qword [0x14046a5e8]
mov rcx, qword [0x14045b410]
test rax, rax
je 0x1401070fb
cmp qword [rax + 8], rcx
jne 0x1401070f2
cmp dword [rax + 0x12c], r13d
je 0x1401070f2
cmp dword [0x14045b4f4], r13d
mov dword [rax + 0x34c], r15d
jne 0x1401070f2
cmp dword [0x14045b4d4], 0xa
jge 0x1401070f2
mov dword [0x14045b4d4], 0xa
mov rax, qword [rax + 0x18]
test rax, rax
jne 0x1401070c0
mov dword [0x14045b580], r15d
mov dword [0x140420b7c], r15d
mov dword [rbp + 0xa8], r15d
cmp dword [rsp + 0x50], 0
je 0x140107124
mov dword [rbp + 0x90], r15d
mov dword [rbp + 0x70], r13d
jmp 0x140107143
test ebx, ebx
jne 0x140107252
mov ecx, dword [rsp + 0x48]
xor r8d, r8d
xor edx, edx
call fcn.14001563c
test rax, rax
jne 0x140107252
mov edi, dword [rbp - 0x10]
mov esi, dword [rbp - 0x20]
cmp edi, esi
jle 0x14010719a
nop dword [rax]
mov rcx, qword [0x14045b410]
call fcn.1401714a0
cmp edi, 1
jl 0x140107191
mov rbx, qword [0x14045b410]
cmp edi, dword [rbx]
jg 0x140107191
lea r8d, [rdi + 1]
mov r9d, 0xffffffff
mov edx, edi
mov rcx, rbx
call fcn.140056830
mov rcx, qword [0x14045b410]
xor r8d, r8d
mov edx, edi
call fcn.1401717e0
dec edi
cmp edi, esi
jg 0x140107150
mov dword [rbp - 0x10], edi
test r14d, r14d
je 0x1401071b4
mov rbx, qword [0x14045b410]
mov dword [rbx + 0x160c], r13d
mov dword [rbx + 0x1984], r13d
mov r15d, dword [rsp + 0x40]
mov esi, r13d
mov r12d, dword [rbp - 0x80]
mov r14, qword [rbp - 0x58]
mov rbx, qword [rbp - 0x48]
mov dword [rsp + 0x68], r13d
jmp 0x140104a08
lea rcx, str.E202:_Conversion_made_file_unreadable_
call qword [case.0x1400407ae.0]
mov rbx, rax
call fcn.140182a30
test eax, eax
jne 0x1401071f3
mov rcx, rbx
call fcn.140182400
mov edi, 1
jmp 0x140105364
mov rcx, rdi
call fcn.140032ad0
mov edi, 1
jmp 0x140105361
mov rax, qword [rbp + 0xc8]
mov edi, 1
test rax, rax
je 0x140105361
cmp dword [0x14045b3f8], 0
jne 0x140105361
mov rcx, rax
call fcn.140005660
jmp 0x140105361
mov edi, dword [rsp + 0x54]
xor r13d, r13d
test edi, edi
jne 0x140105364
jmp 0x140105370
mov edi, r15d
jmp 0x140105364
mov rax, qword [rbp + 0x18]
xor r13d, r13d
mov qword [rbp - 0x30], rax
jmp 0x140105370
mov edx, dword [rsp + 0x74]
cmp dword [rsp + 0x54], 0
jne 0x14010731e
mov eax, dword [0x14045b41c]
test eax, eax
jne 0x140107316
test ecx, ecx
je 0x140107316
mov rcx, qword [0x14045b410]
test edx, edx
je 0x1401072a1
mov dword [rcx + 0x16d4], r13d
mov rbx, qword [rbp - 0x50]
mov byte [r14], 0
sub r14d, ebx
cmp qword [rcx + 8], 0
jne 0x1401072ca
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.14004bde0
test eax, eax
je 0x1401072e9
mov rcx, qword [0x14045b410]
mov eax, dword [rsp + 0x78]
lea r9d, [r14 + 1]
mov r15d, dword [rbp - 0x10]
mov r8, rbx
mov edx, r15d
mov dword [rsp + 0x20], eax
call fcn.140171f70
test eax, eax
jne 0x1401072f3
mov dword [rsp + 0x54], 1
jmp 0x140107316
cmp dword [rbp - 0x64], 0
je 0x14010730c
lea r8d, [r14 + 1]
mov rdx, rbx
lea rcx, [rbp + 0x100]
call fcn.14025bc20
lea eax, [r15 + 1]
mov dword [rbp + 0xac], eax
mov rax, qword [rbp + 0x18]
mov qword [rbp - 0x30], rax
mov r14d, dword [rsp + 0x74]
test r14d, r14d
je 0x140107334
mov rcx, qword [0x14045b410]
call fcn.140056d90
mov rax, qword [0x14045b410]
mov rbx, qword [rax + 0x1f38]
test rbx, rbx
je 0x1401073b1
mov eax, dword [rbx]
mov rcx, qword [rbx + 8]
add eax, 0xfffffffd
cmp eax, 1
jbe 0x14010736a
test rcx, rcx
je 0x140107392
cmp dword [0x14045b3f8], 0
jne 0x1401073a3
call fcn.140005660
jmp 0x140107392
add rcx, 8
mov edx, 0x20
call qword [0x14045b3a8]
mov rcx, qword [rbx + 8]
mov edx, 0x60
call qword [0x14045b390]
mov rcx, qword [rbx + 8]
call qword [0x14045b3e0]
cmp dword [0x14045b3f8], 0
jne 0x1401073a3
mov rcx, rbx
call fcn.140005660
mov rax, qword [0x14045b410]
mov qword [rax + 0x1f38], r13
mov rcx, qword [rbp + 0x60]
test rcx, rcx
je 0x1401073ec
mov rax, qword [0x14045b410]
cmp rcx, qword [rax + 0x1770]
je 0x1401073ec
cmp byte [rcx], 0
mov rax, rcx
je 0x1401073de
mov byte [rax], 0
lea rax, [rax + 1]
cmp byte [rax], 0
jne 0x1401073d2
cmp dword [0x14045b3f8], 0
jne 0x1401073ec
call fcn.140005660
test r14d, r14d
je 0x14010755d
lea rcx, str.fenc
call fcn.1401c2920
test eax, eax
jns 0x140107439
lea rcx, str.E685:_Internal_error:__s
call qword [case.0x1400407ae.0]
mov rcx, rax
lea rdx, str.set_string_option_direct__
call fcn.1401860c0
lea rdx, str.fenc
lea rcx, str.For_option__s
call fcn.140185590
jmp 0x14010755d
mov rdi, qword [rbp - 0x58]
lea r15, [0x140000000]
cdqe
imul rbx, rax, 0x58
cmp qword [rbx + r15 + 0x448d18], 0
je 0x140107561
mov rcx, rdi
call fcn.14028ad70
mov r14, rax
test rax, rax
je 0x140107561
lea rcx, [r15 + 0x448d00]
mov edx, 5
add rcx, rbx
call fcn.1401b6cd0
test byte [rbx + r15 + 0x448d10], 8
mov rdi, rax
je 0x1401074b1
mov rcx, qword [rax]
lea rax, [0x1403b051f]
cmp rcx, rax
je 0x1401074b1
test rcx, rcx
je 0x1401074b1
cmp dword [0x14045b3f8], 0
jne 0x1401074b1
call fcn.140005660
movups xmm0, xmmword [0x14045b4b0]
mov qword [rdi], r14
or qword [rbx + r15 + 0x448d10], 8
mov eax, dword [0x140420ac8]
mov r8d, dword [rbx + r15 + 0x448d20]
dec eax
movsxd rcx, eax
mov rax, qword [0x140420ad8]
movups xmmword [rbp + 0xd8], xmm0
lea rdx, [rcx + rcx*2]
psrldq xmm0, 8
add rdx, rdx
movd ecx, xmm0
add ecx, dword [rax + rdx*8]
mov dword [rbp + 0xe0], ecx
movups xmm0, xmmword [rbp + 0xd8]
test r8d, 0x6000
jne 0x140107517
movups xmmword [rbx + r15 + 0x448d48], xmm0
bt r8d, 0xe
jae 0x14010753b
mov rax, qword [0x14045b410]
mov ecx, r8d
and ecx, 0xfff
add rcx, rcx
movups xmmword [rax + rcx*8 + 0x105c], xmm0
jmp 0x14010755d
bt r8d, 0xd
jae 0x14010755d
mov rax, qword [0x14046a618]
mov ecx, r8d
and ecx, 0xfff
add rcx, 0x4f
add rcx, rcx
movups xmmword [rax + rcx*8], xmm0
mov rdi, qword [rbp - 0x58]
cmp dword [rbp - 0x6c], 0
je 0x14010757d
test rdi, rdi
je 0x14010757d
cmp dword [0x14045b3f8], 0
jne 0x14010757d
mov rcx, rdi
call fcn.140005660
mov rax, qword [rbp - 0x38]
cmp rax, 0xffffffffffffffff
je 0x140107590
mov rcx, rax
call qword [0x14046a0c0]
mov ebx, dword [rsp + 0x50]
mov edi, dword [rsp + 0x44]
test ebx, ebx
jne 0x1401075a9
test edi, edi
jne 0x1401075a9
mov ecx, dword [rsp + 0x48]
call fcn.14001d780
mov rax, qword [rbp + 0x10]
test rax, rax
je 0x1401075c3
cmp dword [0x14045b3f8], 0
jne 0x1401075c3
mov rcx, rax
call fcn.140005660
test edi, edi
je 0x1401075d8
xor ecx, ecx
call fcn.14001d780
mov ecx, 2
call fcn.14001e8c8
mov rdi, qword [rbp + 0x58]
test rdi, rdi
je 0x1401075fa
mov rcx, rdi
call fcn.1401e0f20
cmp dword [0x14045b3f8], 0
jne 0x1401075fa
mov rcx, rdi
call fcn.140005660
dec dword [0x14045b54c]
cmp dword [0x14045b804], 0
jne 0x14010808d
mov r14d, dword [rsp + 0x78]
test r14d, r14d
je 0x140107674
cmp dword [rbp + 0xf8], 0
je 0x140107674
mov rbx, qword [0x14045b410]
test byte [rbx + 0x20], 1
jne 0x140107670
mov edi, dword [rbx]
mov rcx, rbx
call fcn.1401714a0
cmp edi, 1
jl 0x14010766c
mov rbx, qword [0x14045b410]
cmp edi, dword [rbx]
jg 0x14010766c
lea r8d, [rdi + 1]
mov r9d, 0xffffffff
mov edx, edi
mov rcx, rbx
call fcn.140056830
mov rcx, qword [0x14045b410]
xor r8d, r8d
mov edx, edi
call fcn.1401717e0
dec dword [rsp + 0x6c]
mov ebx, dword [rsp + 0x50]
mov rax, qword [0x14045b410]
mov r15d, dword [rax]
sub r15d, dword [rsp + 0x6c]
cmp qword [rbp - 0x30], 0
cmove r15d, r13d
test r14d, r14d
jne 0x1401076d0
test ebx, ebx
jne 0x1401076d0
lea edi, [rbx + 1]
test r15d, r15d
je 0x140107842
mov ebx, dword [rbp - 0x20]
xor r9d, r9d
inc ebx
mov dword [rsp + 0x20], edi
mov ecx, ebx
mov r8d, r15d
mov edx, 0x7fffffff
call fcn.1401604d0
mov r9d, r15d
mov r8d, ebx
xor edx, edx
mov ecx, ebx
call fcn.140054c60
jmp 0x140107842
mov rax, qword [0x14046a5e8]
mov rdx, qword [0x14045b410]
mov ecx, dword [0x14045b548]
test rax, rax
je 0x140107738
nop dword [rax]
cmp qword [rax + 8], rdx
jne 0x14010772f
test ecx, ecx
jne 0x14010772f
cmp dword [0x14045b4f4], ecx
jne 0x14010772f
cmp dword [rax + 0x33c], 0x28
jge 0x14010772f
cmp dword [0x14045b4d4], 0x28
mov dword [rax + 0x33c], 0x28
mov dword [rax + 0x300], r13d
jge 0x14010772f
mov dword [0x14045b4d4], 0x28
mov rax, qword [rax + 0x18]
test rax, rax
jne 0x1401076f0
mov rax, qword [0x14046a618]
cmp qword [rax + 8], rdx
jne 0x14010777e
test ecx, ecx
jne 0x14010777e
cmp dword [0x14045b4f4], ecx
jne 0x14010777e
cmp dword [rax + 0x33c], 0x28
jge 0x14010777e
cmp dword [0x14045b4d4], 0x28
mov dword [rax + 0x33c], 0x28
mov dword [rax + 0x300], r13d
jge 0x14010777e
mov dword [0x14045b4d4], 0x28
mov rbx, qword [0x14046a608]
mov rdi, qword [0x14045b410]
test rbx, rbx
je 0x1401077f1
mov esi, 1
nop word [rax + rax]
mov edx, r13d
lea rax, [rbx + 0x60]
mov rcx, r13
nop word [rax + rax]
cmp qword [rax], rdi
je 0x1401077c4
inc edx
inc rcx
add rax, 8
cmp rcx, 8
jl 0x1401077b0
cmp edx, 8
je 0x1401077df
cmp rbx, qword [0x14046a5f0]
mov dword [rbx + 0xa0], esi
jne 0x1401077df
mov ecx, esi
call fcn.14007ec90
mov rbx, qword [rbx]
test rbx, rbx
jne 0x1401077a0
mov ecx, dword [0x14045b548]
mov esi, dword [rsp + 0x68]
mov rax, qword [0x14046a618]
mov byte [rax + 0x329], 1
test ecx, ecx
jne 0x14010783d
cmp dword [0x14045b4f4], ecx
jne 0x14010783d
cmp dword [rax + 0x33c], 0x28
jge 0x14010783d
cmp dword [0x14045b4d4], 0x28
lea edi, [rcx + 1]
mov dword [rax + 0x33c], 0x28
mov dword [rax + 0x300], r13d
jge 0x140107842
mov dword [0x14045b4d4], 0x28
jmp 0x140107842
mov edi, 1
cmp dword [rsp + 0x44], 0
je 0x140107908
mov eax, dword [0x14045b974]
test eax, eax
je 0x1401078b9
mov eax, dword [0x14045b990]
cmp eax, 2
je 0x1401078b9
cmp dword [0x14045b780], 0
je 0x140107896
cmp eax, 1
je 0x140107896
cmp dword [0x14045b6b4], 0
jne 0x14010787f
mov dword [0x14045b6b4], edi
call fcn.1402ab410
mov rcx, qword [0x1404688d8]
call fcn.1402ab4a0
mov dword [0x140465000], edi
call fcn.1402ac330
mov ecx, 2
call fcn.1401df350
mov dword [0x14045b990], 2
call fcn.140193ce0
call fcn.1402ac330
call fcn.1402ab760
cmp dword [0x14045b6bc], 0
je 0x1401078fa
cmp dword [0x14045b8e4], 0
jne 0x1401078fa
cmp dword [0x14045b404], 0
jne 0x1401078fa
cmp dword [0x14045b4f8], 0
jne 0x1401078fa
call fcn.1402ac330
mov edx, edi
mov ecx, 0x3ee
call fcn.1402c60f0
mov dword [0x14045b6bc], r13d
xor ecx, ecx
call fcn.140245ba0
mov ecx, edi
call fcn.140244850
mov eax, dword [0x14045b41c]
test eax, eax
je 0x1401079bf
test byte [rbp + 0x44], 0x10
jne 0x14010794e
lea rcx, str.Interrupted
call qword [case.0x1400407ae.0]
mov rdx, qword [rbp + 0x38]
mov r8, rax
mov rcx, qword [0x14045b410]
call fcn.1401034c0
test r14d, r14d
je 0x14010794e
mov rax, qword [0x14045b410]
mov dword [rax + 0x17c8], edi
mov eax, dword [rbp]
mov dword [0x14045b53c], eax
mov rax, qword [0x14045b410]
cmp dword [rax + 0xfd4], 0
jne 0x1401079aa
mov ecx, 0x27
call fcn.140320b90
test rax, rax
je 0x1401079aa
movzx ecx, byte [rax]
sub ecx, 0x30
cmp ecx, 0xa
jae 0x1401079aa
mov rcx, rax
call fcn.14000b638
test eax, eax
jle 0x1401079aa
mov rax, qword [0x14045b410]
cmp qword [rax + 0x80], 0
je 0x1401079aa
mov edx, 6
xor ecx, ecx
call fcn.1403212a0
mov rax, qword [0x14045b410]
mov r13d, edi
mov dword [rax + 0xfd4], edi
jmp 0x140103ccd
cmp dword [rbp - 0x1c], 0
jne 0x140107ed9
test byte [rbp + 0x44], 0x10
jne 0x140107ed9
mov rax, qword [rbp + 0x38]
lea rdx, str._stdin_
mov r8, qword [0x14046a328]
test rax, rax
mov rcx, qword [0x14045b410]
mov r9d, 0x3fd
cmovne rdx, rax
mov dword [rsp + 0x20], edi
inc r8
call fcn.1401113d0
mov rdx, qword [0x14046a328]
mov byte [rdx], 0x22
dec rdx
cmp byte [rdx + 1], 0
lea rdx, [rdx + 1]
jne 0x140107a12
movzx eax, word [0x1403befb0]
xor bl, bl
mov word [rdx], ax
movzx eax, byte [0x1403befb2]
mov byte [rdx + 2], al
mov rax, qword [0x14045b410]
cmp dword [rax + 0x17c8], 0
je 0x140107a92
mov ecx, WSAStartup
call fcn.1401c55c0
lea rcx, str._RO_
test eax, eax
jne 0x140107a5e
lea rcx, str._readonly_
call qword [case.0x1400407ae.0]
mov rcx, qword [0x14046a328]
mov r8, rax
dec rcx
cmp byte [rcx + 1], bl
lea rcx, [rcx + 1]
jne 0x140107a71
xor edx, edx
nop dword [rax]
movzx eax, byte [r8 + rdx]
mov byte [rcx + rdx], al
lea rdx, [rdx + 1]
test al, al
jne 0x140107a80
mov bl, 1
cmp dword [rbp + 0xac], 0
je 0x140107aa2
call fcn.140102570
mov bl, 1
cmp dword [rbp - 0xc], 1
jne 0x140107ae2
lea rcx, str._CR_missing_
call qword [case.0x1400407ae.0]
mov rcx, qword [0x14046a328]
mov r8, rax
dec rcx
cmp byte [rcx + 1], 0
lea rcx, [rcx + 1]
jne 0x140107ac2
xor edx, edx
nop
movzx eax, byte [r8 + rdx]
mov byte [rcx + rdx], al
lea rdx, [rdx + 1]
test al, al
jne 0x140107ad0
mov bl, 1
cmp dword [rbp - 8], 0
je 0x140107b22
lea rcx, str._long_lines_split_
call qword [case.0x1400407ae.0]
mov rcx, qword [0x14046a328]
mov r8, rax
dec rcx
cmp byte [rcx + 1], 0
lea rcx, [rcx + 1]
jne 0x140107b02
xor edx, edx
nop
movzx eax, byte [r8 + rdx]
mov byte [rcx + rdx], al
lea rdx, [rdx + 1]
test al, al
jne 0x140107b10
mov bl, 1
cmp dword [rbp + 0x40], 0
je 0x140107b62
lea rcx, str._NOT_converted_
call qword [case.0x1400407ae.0]
mov rcx, qword [0x14046a328]
mov r8, rax
dec rcx
cmp byte [rcx + 1], 0
lea rcx, [rcx + 1]
jne 0x140107b42
xor edx, edx
nop
movzx eax, byte [r8 + rdx]
mov byte [rcx + rdx], al
lea rdx, [rdx + 1]
test al, al
jne 0x140107b50
jmp 0x140107bb0
cmp dword [rbp + 0xc0], 0
je 0x140107bb2
lea rcx, str._converted_
call qword [case.0x1400407ae.0]
mov rcx, qword [0x14046a328]
mov r8, rax
dec rcx
cmp byte [rcx + 1], 0
lea rcx, [rcx + 1]
jne 0x140107b85
xor edx, edx
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [r8 + rdx]
mov byte [rcx + rdx], al
lea rdx, [rdx + 1]
test al, al
jne 0x140107ba0
mov bl, 1
mov r14, qword [rbp + 0x60]
test r14, r14
je 0x140107bc9
mov rcx, qword [0x14045b410]
call fcn.140073150
mov bl, 1
test esi, esi
je 0x140107c0e
lea rcx, str._CONVERSION_ERROR_in_line__ld_
call qword [case.0x1400407ae.0]
mov rdx, qword [0x14046a328]
mov rcx, 0xffffffffffffffff
nop dword [rax + rax]
inc rcx
cmp byte [rdx + rcx], 0
jne 0x140107bf0
add rcx, rdx
mov r8d, esi
mov rdx, rax
call fcn.140001010
mov bl, 1
jmp 0x140107c97
mov edi, dword [rbp - 0x68]
test edi, edi
jle 0x140107c49
lea rcx, str._ILLEGAL_BYTE_in_line__ld_
call qword [case.0x1400407ae.0]
mov rdx, qword [0x14046a328]
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rdx + rcx], 0
jne 0x140107c30
add rcx, rdx
mov r8d, edi
mov rdx, rax
call fcn.140001010
jmp 0x140107c90
cmp dword [rsp + 0x54], 0
je 0x140107c92
lea rcx, str._READ_ERRORS_
call qword [case.0x1400407ae.0]
mov rcx, qword [0x14046a328]
mov r8, rax
dec rcx
nop word [rax + rax]
cmp byte [rcx + 1], 0
lea rcx, [rcx + 1]
jne 0x140107c70
xor edx, edx
nop dword [rax]
movzx eax, byte [r8 + rdx]
mov byte [rcx + rdx], al
lea rdx, [rdx + 1]
test al, al
jne 0x140107c80
mov bl, 1
mov edi, 1
mov ecx, dword [rsp + 0x58]
call fcn.1401022e0
test eax, eax
cmovne ebx, edi
test r14, r14
je 0x140107cfb
mov rax, qword [0x14045b410]
mov rcx, qword [rax + 0x19f8]
cmp byte [rcx], 0
cmove rcx, qword [0x140469c50]
call fcn.140072d80
mov r8, qword [rbp + 0x18]
lea rdx, [0x140000000]
movsxd rcx, eax
imul rax, rcx, 0x68
mov ecx, dword [rax + rdx + 0x433830]
add ecx, dword [rax + rdx + 0x433834]
mov eax, dword [rax + rdx + 0x433838]
add ecx, 0xc
add eax, ecx
cdqe
sub r8, rax
jmp 0x140107cff
mov r8, qword [rbp + 0x18]
mov edx, r15d
movzx ecx, bl
call fcn.140103770
mov rcx, qword [0x14045b840]
test rcx, rcx
je 0x140107d2b
cmp dword [0x14045b3f8], 0
jne 0x140107d24
call fcn.140005660
mov qword [0x14045b840], r13
cmp dword [0x14046a49c], 0
mov dword [0x14045b78c], edi
jle 0x140107d44
xor edx, edx
lea ecx, [rdx + 0xd]
call fcn.140184470
cmp dword [0x14045b8bc], 0
mov r14, qword [0x14046a328]
mov rbx, r14
jne 0x140107e2a
cmp dword [0x14045b530], 0
jne 0x140107e2a
cmp dword [0x140461960], 0xc8
jle 0x140107d85
call fcn.1401821d0
cmp dword [0x140461960], 0xc8
jg 0x140107d74
mov edx, edi
mov ecx, 0x18
call fcn.140032b90
mov rdi, rax
test rax, rax
je 0x140107e25
mov rdx, 0xffffffffffffffff
inc rdx
cmp byte [r14 + rdx], 0
jne 0x140107da4
test edx, edx
jle 0x140107dc0
cmp byte [rbx], 0xa
jne 0x140107dc0
inc rbx
dec edx
test edx, edx
jg 0x140107db2
movsxd rax, edx
test edx, edx
jle 0x140107de2
lea rcx, [rbx - 1]
add rcx, rax
nop
cmp byte [rcx], 0xa
jne 0x140107de2
dec edx
dec rax
dec rcx
test rax, rax
jg 0x140107dd0
movsxd rdx, edx
mov rcx, rbx
call fcn.14028ad00
mov qword [rdi + 8], rax
mov rax, qword [0x140461938]
mov qword [rdi], r13
mov dword [rdi + 0x10], r13d
test rax, rax
je 0x140107e07
mov qword [rax], rdi
cmp qword [0x140461968], 0
mov qword [0x140461938], rdi
jne 0x140107e1f
mov qword [0x140461968], rdi
inc dword [0x140461960]
mov edi, 1
mov rdx, r14
xor ecx, ecx
call fcn.1401833c0
xor r8d, r8d
mov dword [0x14045b8bc], edi
xor edx, edx
mov rcx, rax
mov rbx, rax
call fcn.140182fb0
test eax, eax
mov dword [0x14045b8bc], r13d
mov rdi, r13
cmovne rdi, rbx
cmp dword [rsp + 0x44], 0
jne 0x140107e83
cmp dword [rsp + 0x50], 0
jne 0x140107e83
cmp dword [0x14045b518], 0
jne 0x140107e83
cmp dword [0x14046a300], 0
je 0x140107ecd
cmp dword [0x14045b4e0], 0
jne 0x140107ecd
mov rcx, qword [0x14045b840]
test rcx, rcx
je 0x140107e9d
cmp dword [0x14045b3f8], 0
jne 0x140107e9d
call fcn.140005660
test rdi, rdi
je 0x140107eb5
cmp dword [0x14045b530], 0
jne 0x140107eb5
mov rcx, rdi
call fcn.14028ad70
jmp 0x140107eb8
mov rax, r13
mov qword [0x14045b840], rax
mov dword [0x14045b9ec], r13d
mov dword [0x14045b93c], r13d
mov r14d, dword [rsp + 0x78]
mov dword [0x14045b78c], r13d
mov r9, qword [0x14045b410]
test r14d, r14d
je 0x140107f09
cmp dword [rsp + 0x54], 0
jne 0x140107efb
test esi, esi
jne 0x140107efb
cmp dword [rbp - 0x68], esi
jle 0x140107f09
cmp r12d, 0xffffffff
je 0x140107f09
mov esi, 1
mov dword [r9 + 0x17c8], esi
jmp 0x140107f0e
mov esi, 1
mov rcx, qword [r9 + 0x1018]
test rcx, rcx
je 0x140107f44
cmp dword [0x14045b3f8], 0
jne 0x140107f2f
call fcn.140005660
mov r9, qword [0x14045b410]
mov qword [r9 + 0x1018], r13
mov dword [r9 + 0x1020], r13d
mov dword [r9 + 0x1028], r13d
cmp dword [0x14045b694], 0
mov edi, dword [rbp - 0x20]
mov rcx, qword [0x14046a618]
lea eax, [rdi + r15]
jne 0x140107f5e
lea eax, [rdi + 1]
mov dword [rcx + 0x38], eax
lea r8, [rcx + 0x38]
mov edx, dword [r9]
cmp dword [r8], edx
jle 0x140107f96
mov qword [rsp + 0x28], r13
xor r9d, r9d
mov dword [rsp + 0x20], esi
call fcn.14011e280
mov r9, qword [0x14045b410]
mov rcx, qword [0x14046a618]
test eax, eax
jne 0x140107f96
mov eax, dword [r9]
mov dword [rcx + 0x38], eax
mov edx, dword [rcx + 0x38]
test edx, edx
jg 0x140107fa2
mov dword [rcx + 0x38], esi
mov edx, esi
mov qword [rcx + 0x3c], 0
xor r8d, r8d
mov rcx, r9
call fcn.140179dc0
mov rdx, qword [0x14046a618]
mov rcx, rax
nop
movzx eax, byte [rcx]
cmp al, 0x20
je 0x140107fcb
cmp al, 9
jne 0x140107fdd
cmp byte [rcx + 1], 0
lea rax, [rcx + 1]
mov rcx, rax
je 0x140107fdd
inc dword [rdx + 0x3c]
jmp 0x140107fc0
mov dword [rdx + 0x48], esi
call fcn.140198870
test dword [0x14046a500], 0x800
jne 0x140108019
mov rbx, qword [0x14045b410]
lea eax, [rdi + 1]
mov dword [rbx + 0xfb0], eax
lea eax, [rdi + r15]
mov dword [rbx + 0xfc8], eax
mov dword [rbx + 0xfb4], r13d
mov dword [rbx + 0xfcc], r13d
mov r12d, dword [rsp + 0x50]
test r14d, r14d
je 0x140108095
cmp dword [rsp + 0x44], 0
jne 0x140108095
test r12d, r12d
jne 0x140108095
mov rcx, qword [rbp + 0x68]
lea rdx, [rbp + 0x170]
call fcn.1401d2d20
test eax, eax
js 0x140108095
mov rcx, qword [0x14045b410]
mov eax, dword [rbp + 0x198]
mov dword [rcx + 0x110], eax
mov dword [rcx + 0x114], r13d
mov rax, qword [rbp + 0x188]
mov qword [rcx + 0x120], rax
movzx eax, word [rbp + 0x176]
mov dword [rcx + 0x128], eax
mov eax, dword [rcx + 0x110]
mov dword [rcx + 0x118], eax
mov dword [rcx + 0x11c], r13d
jmp 0x140108095
mov r12d, ebx
mov esi, 1
mov eax, dword [rbp]
mov dword [0x14045b53c], eax
mov rax, qword [0x14045b410]
cmp dword [rax + 0xfd4], 0
jne 0x1401080f1
mov ecx, 0x27
call fcn.140320b90
test rax, rax
je 0x1401080f1
movzx ecx, byte [rax]
sub ecx, 0x30
cmp ecx, 0xa
jae 0x1401080f1
mov rcx, rax
call fcn.14000b638
test eax, eax
jle 0x1401080f1
mov rax, qword [0x14045b410]
cmp qword [rax + 0x80], 0
je 0x1401080f1
mov edx, 6
xor ecx, ecx
call fcn.1403212a0
test byte [rbp + 0x44], 0x20
mov rbx, qword [0x14045b410]
mov eax, dword [rbp + 0xac]
mov dword [rbx + 0xfd4], esi
mov dword [rbx + 0x1968], eax
je 0x1401081b0
cmp qword [rbx + 0xfe8], 0
mov r15, qword [rbx + 0xfe0]
jne 0x1401081b0
test r15, r15
je 0x1401081b0
mov r14, qword [r15 + 0x28]
cmp dword [r14 + 8], 0
jne 0x1401081b0
cmp dword [r14 + 0xc], 0
jne 0x1401081b0
mov eax, dword [rbx]
mov edi, esi
cmp eax, 1
jle 0x14010819e
mov esi, reloc.WSOCK32.dll_recv
cmp edi, dword [r14 + 0x20]
jg 0x14010819e
mov rcx, qword [0x14045b410]
xor r8d, r8d
mov edx, edi
call fcn.140179dc0
mov rcx, qword [r14 + 0x18]
mov rbx, qword [0x14045b410]
movsxd rdx, dword [rcx + rsi - 8]
cmp edx, dword [rbx + 0x24]
jne 0x1401081a4
mov r8, rdx
mov rdx, qword [rcx + rsi - 0x10]
mov rcx, rax
call fcn.140032120
test eax, eax
jne 0x1401081a4
mov eax, dword [rbx]
inc edi
add rsi, 0x10
cmp edi, eax
jl 0x140108152
cmp eax, dword [r14 + 0x20]
je 0x1401081b0
mov dword [r15 + 0x38], edi
mov qword [r15 + 0x3c], 0
cmp dword [rbp - 0x64], 0
je 0x1401081db
lea rdx, [rbp + 0x208]
lea rcx, [rbp + 0x100]
call fcn.14025bd40
mov r8, qword [rbp + 0x68]
lea rdx, [rbp + 0x208]
xor ecx, ecx
call fcn.1402cadb0
cmp dword [rsp + 0x44], 0
jne 0x140108330
cmp dword [rbp + 0x28], 0
jne 0x140108330
mov rbx, qword [rbp + 0x38]
test r12d, r12d
je 0x140108202
test rbx, rbx
je 0x140108330
cmp dword [rsp + 0x74], 0
mov edi, dword [0x14045b53c]
mov esi, dword [0x14046a300]
je 0x140108221
mov rcx, qword [0x14045b410]
call fcn.140056d90
cmp dword [rbp - 0x1c], 0
mov r14d, 1
mov dword [0x14045b53c], r14d
je 0x140108259
mov rax, qword [rbp - 0x48]
xor r9d, r9d
mov qword [rsp + 0x30], rax
xor edx, edx
mov rax, qword [0x14045b410]
mov r8, rbx
mov qword [rsp + 0x28], rax
lea ecx, [rdx + 0x34]
jmp 0x1401082e9
cmp dword [rsp + 0x78], 0
jne 0x140108287
test r12d, r12d
je 0x14010826a
test rbx, rbx
jne 0x140108287
mov rax, qword [rbp - 0x48]
xor r9d, r9d
mov qword [rsp + 0x30], rax
mov r8, rbx
mov qword [rsp + 0x28], r13
mov rdx, rbx
lea ecx, [r9 + 0x2e]
jmp 0x1401082e9
mov rax, qword [rbp - 0x48]
xor edx, edx
mov qword [rsp + 0x30], rax
xor r9d, r9d
mov rax, qword [0x14045b410]
mov r8, rbx
mov qword [rsp + 0x28], rax
lea ecx, [rdx + 0xa]
mov dword [rsp + 0x20], 0xfffffffd
call fcn.140038a50
cmp dword [0x14045b4cc], 0
jne 0x1401082f6
mov rbx, qword [0x14045b410]
mov rdx, qword [rbx + 0x16f8]
cmp byte [rdx], 0
je 0x1401082f6
mov r8, qword [rbx + 0x90]
mov r9d, r14d
mov qword [rsp + 0x30], r13
mov ecx, 0x30
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x20], 0xfffffffd
call fcn.140038a50
cmp dword [0x14046a300], esi
jne 0x140108304
mov dword [0x14045b53c], edi
cmp dword [0x14046a334], 0
je 0x140108316
cmp dword [0x14045b70c], 0
jne 0x140108351
mov eax, dword [0x14045b41c]
test eax, eax
jne 0x140103cc5
cmp dword [0x14045b7ec], eax
jne 0x140103cc5
cmp dword [0x14045b804], 0
je 0x140108344
cmp dword [rsp + 0x54], 0
jne 0x140103cc8
mov edi, 1
mov r13d, edi
jmp 0x140103ccd
mov rdi, r14
jmp 0x140103ccd