Function at 0x140018cc0
Capabilities:
Read file on windows
Validate payment card number using luhn algorithm
Write file on windows

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xe0
mov qword [rbp - 9], 0xfffffffffffffffe
mov qword [rsp + 0x120], rbx
mov rax, qword [section..data]
xor rax, rsp
mov qword [rbp + 0x1f], rax
mov qword [rbp - 0x11], r9
mov qword [rbp - 0x19], r8
mov qword [rbp - 0x21], rdx
mov rcx, qword [0x1400404e0]
mov qword [rbp - 0x61], rcx
mov rax, qword [0x14003e100]
mov qword [0x140045920], rax
xor r14d, r14d
movzx eax, r14w
mov dword [rbp - 0x69], eax
mov eax, 1
movzx esi, ax
movzx eax, r14w
mov dword [rbp - 0x59], eax
mov ebx, dword [0x1400419e4]
mov ecx, ebx
call qword [sym.imp.MSVCR120.dll_malloc]
mov r13, rax
test rax, rax
jne 0x140018d54
mov eax, 4
jmp 0x14001bbca
mov rcx, rbx
call qword [sym.imp.MSVCR120.dll_malloc]
mov qword [rbp - 0x71], rax
test rax, rax
je 0x140018d4a
mov r12, rax
mov qword [rbp - 0x31], rax
mov rcx, r14
lea rdi, [0x140000000]
nop word [rax + rax]
movzx eax, byte [rcx + rdi + 0x31370]
mov byte [rbp + rcx - 1], al
lea rcx, [rcx + 1]
test al, al
jne 0x140018d80
mov ecx, 0x10
call qword [sym.imp.mfc120u.dll_Ordinal_1484]
mov rbx, rax
mov qword [rbp - 0x49], rax
test rax, rax
je 0x140018ddf
mov word [rax], r14w
mov qword [rax + 8], r14
lea rcx, [rbp - 1]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jle 0x140018de2
inc eax
movsxd rcx, eax
call qword [sym.imp.mfc120u.dll_Ordinal_1484]
mov qword [rbx + 8], rax
lea rdx, [rbp - 1]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_lstrcpyA]
jmp 0x140018de2
mov rbx, r14
mov edx, 0xa
mov rcx, rbx
call fcn.14002ab70
mov qword [rbp - 0x51], rax
test rax, rax
je 0x14001bbc7
test rbx, rbx
je 0x140018e19
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140018e10
call qword [sym.imp.mfc120u.dll_Ordinal_1486]
mov rcx, rbx
call qword [sym.imp.mfc120u.dll_Ordinal_1486]
mov rdx, r14
lea rdi, str.tmpout.hlp
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdx + rdi]
mov byte [rbp + rdx - 1], al
lea rdx, [rdx + 1]
test al, al
jne 0x140018e30
mov ecx, 0x10
call qword [sym.imp.mfc120u.dll_Ordinal_1484]
mov rbx, rax
mov qword [rbp - 0x49], rax
test rax, rax
je 0x140018e8b
mov word [rax], r14w
mov qword [rax + 8], r14
lea rcx, [rbp - 1]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jle 0x140018e8e
inc eax
movsxd rcx, eax
call qword [sym.imp.mfc120u.dll_Ordinal_1484]
mov qword [rbx + 8], rax
lea rdx, [rbp - 1]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_lstrcpyA]
jmp 0x140018e8e
mov rbx, r14
mov edx, 0xb
mov rcx, rbx
call fcn.14002ab70
mov qword [rbp - 0x49], rax
test rax, rax
mov rdi, qword [rbp - 0x71]
je 0x14001bbc7
mov rcx, rbx
call fcn.14002af10
xor ebx, ebx
mov word [0x14003dee4], bx
movzx ecx, word [0x1400401b0]
mov word [rbp - 0x7f], cx
mov r11, qword [rbp - 0x61]
movzx r14d, word [rsp + 0x30]
movzx r15d, word [rsp + 0x34]
cmp cx, word [r11 + 0x80]
jge 0x14001b040
nop word [rax + rax]
mov eax, 1
mov word [0x1400401b4], ax
mov word [0x1400401d8], bx
movzx eax, bx
mov dword [rbp - 0x79], eax
mov word [rbp - 0x7d], bx
mov word [0x14003e118], cx
movsx edx, cx
movzx eax, word [r11 + 0x82]
imul edx, eax
add edx, dword [r11 + 0x28]
xor r8d, r8d
mov rcx, qword [0x1400401c8]
call fcn.14002ad10
cmp eax, 0xffffffff
je 0x14001bbc7
mov rcx, qword [rbp - 0x61]
movzx r8d, word [rcx + 0x82]
mov rcx, qword [0x1400401c8]
mov qword [rsp + 0x20], rbx
lea r9, [rbp - 0x29]
mov rdx, qword [0x140045920]
mov rcx, qword [rcx]
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x140018fa7
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x58
jae 0x140018f8b
mov eax, eax
lea rcx, [0x140000000]
mov ecx, dword [rcx + rax*4 + 0x310a0]
jmp 0x140018f90
mov ecx, 0x106
mov dword [0x1400430b8], ecx
mov dword [0x1400434c8], 2
mov byte [0x1400433c0], 0
mov r11, qword [rbp - 0x61]
movzx eax, word [r11 + 0x82]
cmp dword [rbp - 0x29], eax
jne 0x14001bbc7
movzx r12d, word [0x1400401d8]
add eax, eax
mov dword [rbp - 0x65], eax
movzx edi, word [0x1400401b4]
cmp di, ax
jge 0x14001afd6
mov rbx, qword [0x140045920]
mov r9, qword [0x14003e110]
nop word [rax + rax]
movzx eax, di
sar ax, 1
movsx ecx, di
and ecx, 0x80000001
jge 0x140019008
dec ecx
or ecx, 0xfffffffe
inc ecx
movsx rax, ax
lea r8, [rax + rbx]
movzx edx, byte [r8]
movzx eax, dl
test ecx, ecx
jne 0x140019020
shr al, 4
jmp 0x140019022
and al, 0xf
mov r10d, dword [rbp - 0x79]
cmp al, 0xd
jae 0x14001af1c
test r10w, r10w
jne 0x14001af26
test al, al
jne 0x14001aefd
movsx rax, r12w
cmp rax, 0x100
jae 0x14001b023
lea rcx, [0x140046250]
mov byte [rax + rcx], r10b
mov word [0x140040008], r12w
lea r9, [rbp - 0x7d]
movzx r8d, di
mov rdx, qword [0x14003e100]
mov rcx, r11
call fcn.140006f70
lea edi, [rax + 1]
mov word [rsp + 0x38], di
movzx ecx, di
sar cx, 1
movsx eax, di
and eax, 0x80000001
jge 0x140019099
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
movsx rax, cx
movzx ecx, byte [rax + rbx]
jne 0x1400190aa
shr cl, 4
jmp 0x1400190ad
and cl, 0xf
movzx r12d, cl
lea eax, [rdi + 1]
mov word [0x1400401b4], ax
mov word [0x1400401d8], r12w
movzx eax, word [rbp - 0x7d]
mov word [0x1400401b8], ax
mov rcx, qword [rbp - 0x61]
call fcn.140006e60
cmp ax, 1
jne 0x14001bbc7
lea r8, [0x140046450]
lea rdx, [0x140046250]
call fcn.1400073e0
mov edi, 1
nop dword [rax]
test si, si
je 0x14001928e
mov rbx, qword [rbp - 0x21]
mov r8, rbx
movzx edx, word [0x1400419e4]
mov rcx, r13
call fcn.14002a640
test ax, ax
jle 0x14001a601
mov rcx, rbx
call fcn.14001bd30
test ax, ax
je 0x140019187
movzx r8d, word [0x14003ee5c]
mov word [0x14003e1a4], r8w
movzx ecx, word [0x14003ee60]
imul ecx, r8d
mov eax, 0x51eb851f
imul ecx
mov ecx, edx
sar ecx, 5
mov eax, ecx
shr eax, 0x1f
add ecx, eax
add cx, word [0x14003ee48]
mov word [0x14003ee50], cx
lea rdx, [0x14003e1b0]
call qword [0x140041aa8]
test ax, ax
jne 0x14001aff0
mov rax, qword [rbp - 0x71]
mov ecx, 0x20
mov dword [rax], ecx
xor edi, edi
mov r9, qword [rbp - 0x31]
mov qword [rbp - 0x71], r9
mov rax, r13
mov rdx, r9
movzx ecx, byte [r13 + 1]
or cl, byte [r13]
je 0x140018d4a
movzx r8d, word [r9]
cmp word [rax], r8w
jne 0x1400191db
mov rbx, rax
nop
lea rdx, [rdx + 2]
movzx ecx, word [rdx]
test cx, cx
je 0x1400191ed
add rax, 2
cmp word [rax], cx
je 0x1400191c0
mov rax, rbx
mov rdx, r9
add rax, 2
movzx ecx, byte [rax + 1]
or cl, byte [rax]
je 0x140018d4a
jmp 0x1400191b5
test rbx, rbx
je 0x140018d4a
movzx ecx, di
mov r8, rbx
sub r8, r13
lea r9, [0x140045a50]
test r8, r8
jle 0x140019225
mov rdx, rdi
nop
movzx eax, byte [rdx + r13]
mov byte [rdx + r9], al
inc cx
movsx rdx, cx
cmp rdx, r8
jl 0x140019210
movsx rax, cx
cmp rax, 0x800
jae 0x14001b01d
mov byte [rax + r9], dil
lea eax, [rcx + 1]
movsx rax, ax
cmp rax, 0x800
jae 0x14001b017
mov byte [rax + r9], dil
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.14002a440
test ax, ax
je 0x14001affa
movsx rcx, ax
add rcx, rbx
lea rdx, [rsp + 0x34]
call fcn.14002a440
test ax, ax
je 0x140018d4a
mov esi, edi
movzx r14d, word [rsp + 0x30]
movzx r15d, word [rsp + 0x34]
lea rbx, [0x140045a50]
mov rdx, rbx
lea rcx, [0x140046450]
call fcn.140007550
test ax, ax
js 0x14001a604
mov word [0x1400402fa], r14w
mov ecx, 0x3fff
mov dword [0x1400402fc], ecx
xor esi, esi
mov word [0x140040300], r15w
mov word [0x140040302], si
test ax, ax
jle 0x140019bc1
mov eax, 1
mov word [0x14003dee4], ax
mov rcx, rbx
lea rbx, [0x140046350]
mov rdx, rbx
movzx eax, byte [rcx]
test al, al
jne 0x140019300
cmp byte [rcx + 1], sil
je 0x140019313
mov byte [rdx], al
movzx eax, byte [rcx + 1]
mov byte [rdx + 1], al
add rdx, 2
add rcx, 2
jmp 0x1400192f3
movzx eax, byte [rcx]
mov byte [rdx], al
movzx eax, byte [rcx + 1]
mov byte [rdx + 1], al
lea rdx, [0x14003c328]
mov rcx, rbx
nop dword [rax]
cmp byte [rcx], sil
jne 0x14001933b
cmp byte [rcx + 1], sil
je 0x140019341
add rcx, 2
jmp 0x140019330
movzx eax, byte [rdx]
test al, al
jne 0x14001934e
cmp byte [rdx + 1], sil
je 0x140019361
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x140019341
mov word [rcx], si
movzx edx, r14w
movzx r8d, si
lea r11, [0x140045a00]
nop dword [rax]
nop word [rax + rax]
movzx ecx, dx
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub ecx, eax
add cl, 0x30
movsx rax, r8w
mov byte [rax + r11], cl
inc r8w
test dx, dx
jne 0x140019380
movsx rax, r8w
mov byte [rax + r11], sil
movzx r10d, si
mov r9d, esi
mov rcx, r11
movzx eax, byte [0x140045a00]
test al, al
je 0x1400193db
nop dword [rax]
inc rcx
inc r9d
cmp byte [rcx], sil
jne 0x1400193d0
dec r9w
cmp si, r9w
jge 0x140019420
nop word [rax + rax]
movsx rdx, r10w
movzx r8d, byte [rdx + r11]
movsx rax, r9w
lea rcx, [rax + r11]
movzx eax, byte [rcx]
mov byte [rdx + r11], al
mov byte [rcx], r8b
inc r10w
dec r9w
cmp r10w, r9w
jl 0x1400193f0
movzx eax, byte [0x140045a00]
lea rdi, [0x140045a20]
mov rdx, rdi
mov r8, r11
test al, al
je 0x14001947d
mov ebx, 0x20
lea r11, [0x140000000]
nop dword [rax]
cmp al, 0x7f
ja 0x140019449
movzx ecx, al
jmp 0x14001945d
cmp al, 0xfe
ja 0x14001945b
movzx eax, al
movzx ecx, word [r11 + rax*2 + 0x30350]
jmp 0x14001945d
mov ecx, ebx
mov word [rdx], cx
add rdx, 2
inc r8
movzx eax, byte [r8]
test al, al
jne 0x140019440
lea r11, [0x140045a00]
lea rbx, [0x140046350]
mov word [rdx], si
mov rdx, rdi
mov rcx, rbx
cmp byte [rcx], sil
jne 0x140019491
cmp byte [rcx + 1], sil
je 0x140019497
add rcx, 2
jmp 0x140019486
movzx eax, byte [rdx]
test al, al
jne 0x1400194a4
cmp byte [rdx + 1], sil
je 0x1400194b7
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x140019497
mov word [rcx], si
lea rdx, [0x14003c328]
mov rcx, rbx
cmp byte [rcx], sil
jne 0x1400194cf
cmp byte [rcx + 1], sil
je 0x1400194d5
add rcx, 2
jmp 0x1400194c4
movzx eax, byte [rdx]
test al, al
jne 0x1400194e2
cmp byte [rdx + 1], sil
je 0x1400194f5
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x1400194d5
mov word [rcx], si
mov edx, 0x3fff
movzx r8d, si
movzx ecx, dx
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub ecx, eax
add cl, 0x30
movsx rax, r8w
mov byte [rax + r11], cl
inc r8w
test dx, dx
jne 0x140019501
movsx rax, r8w
mov byte [rax + r11], sil
movzx r10d, si
mov r9d, esi
mov rcx, r11
movzx eax, byte [0x140045a00]
test al, al
je 0x14001955b
nop dword [rax]
inc rcx
inc r9d
cmp byte [rcx], sil
jne 0x140019550
dec r9w
cmp si, r9w
jge 0x1400195a0
nop word [rax + rax]
movsx rdx, r10w
movzx r8d, byte [rdx + r11]
movsx rax, r9w
lea rcx, [rax + r11]
movzx eax, byte [rcx]
mov byte [rdx + r11], al
mov byte [rcx], r8b
inc r10w
dec r9w
cmp r10w, r9w
jl 0x140019570
movzx eax, byte [0x140045a00]
mov rdx, rdi
mov r8, r11
test al, al
je 0x1400195f3
mov ebx, 0x20
lea r11, [0x140000000]
cmp al, 0x7f
ja 0x1400195bf
movzx ecx, al
jmp 0x1400195d3
cmp al, 0xfe
ja 0x1400195d1
movzx eax, al
movzx ecx, word [r11 + rax*2 + 0x30350]
jmp 0x1400195d3
mov ecx, ebx
mov word [rdx], cx
add rdx, 2
inc r8
movzx eax, byte [r8]
test al, al
jne 0x1400195b6
lea r11, [0x140045a00]
lea rbx, [0x140046350]
mov word [rdx], si
mov rdx, rdi
mov rcx, rbx
nop dword [rax]
cmp byte [rcx], sil
jne 0x14001960b
cmp byte [rcx + 1], sil
je 0x140019611
add rcx, 2
jmp 0x140019600
movzx eax, byte [rdx]
test al, al
jne 0x14001961e
cmp byte [rdx + 1], sil
je 0x140019631
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x140019611
mov word [rcx], si
lea rdx, [0x14003c328]
mov rcx, rbx
nop
cmp byte [rcx], sil
jne 0x14001964b
cmp byte [rcx + 1], sil
je 0x140019651
add rcx, 2
jmp 0x140019640
movzx eax, byte [rdx]
test al, al
jne 0x14001965e
cmp byte [rdx + 1], sil
je 0x140019671
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x140019651
mov word [rcx], si
movzx edx, si
movzx r8d, si
nop dword [rax + rax]
movzx ecx, dx
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub ecx, eax
add cl, 0x30
movsx rax, r8w
mov byte [rax + r11], cl
inc r8w
test dx, dx
jne 0x140019680
movsx rax, r8w
mov byte [rax + r11], sil
movzx r10d, si
mov r9d, esi
mov rcx, r11
movzx eax, byte [0x140045a00]
test al, al
je 0x1400196db
nop dword [rax]
inc rcx
inc r9d
cmp byte [rcx], sil
jne 0x1400196d0
dec r9w
cmp si, r9w
jge 0x140019720
nop word [rax + rax]
movsx rdx, r10w
movzx r8d, byte [rdx + r11]
movsx rax, r9w
lea rcx, [rax + r11]
movzx eax, byte [rcx]
mov byte [rdx + r11], al
mov byte [rcx], r8b
inc r10w
dec r9w
cmp r10w, r9w
jl 0x1400196f0
movzx eax, byte [0x140045a00]
mov rdx, rdi
mov r8, r11
test al, al
je 0x140019773
mov ebx, 0x20
lea r11, [0x140000000]
cmp al, 0x7f
ja 0x14001973f
movzx ecx, al
jmp 0x140019753
cmp al, 0xfe
ja 0x140019751
movzx eax, al
movzx ecx, word [r11 + rax*2 + 0x30350]
jmp 0x140019753
mov ecx, ebx
mov word [rdx], cx
add rdx, 2
inc r8
movzx eax, byte [r8]
test al, al
jne 0x140019736
lea r11, [0x140045a00]
lea rbx, [0x140046350]
mov word [rdx], si
mov rdx, rdi
mov rcx, rbx
nop dword [rax]
cmp byte [rcx], sil
jne 0x14001978b
cmp byte [rcx + 1], sil
je 0x140019791
add rcx, 2
jmp 0x140019780
movzx eax, byte [rdx]
test al, al
jne 0x14001979e
cmp byte [rdx + 1], sil
je 0x1400197b1
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x140019791
mov word [rcx], si
lea rdx, [0x14003c328]
mov rcx, rbx
nop
cmp byte [rcx], sil
jne 0x1400197cb
cmp byte [rcx + 1], sil
je 0x1400197d1
add rcx, 2
jmp 0x1400197c0
movzx eax, byte [rdx]
test al, al
jne 0x1400197de
cmp byte [rdx + 1], sil
je 0x1400197f1
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x1400197d1
mov word [rcx], si
movzx edx, r15w
movzx r8d, si
nop dword [rax]
movzx ecx, dx
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub ecx, eax
add cl, 0x30
movsx rax, r8w
mov byte [rax + r11], cl
inc r8w
test dx, dx
jne 0x140019800
movsx rax, r8w
mov byte [rax + r11], sil
movzx r10d, si
mov r9d, esi
mov rcx, r11
movzx eax, byte [0x140045a00]
test al, al
je 0x14001985b
nop dword [rax]
inc rcx
inc r9d
cmp byte [rcx], sil
jne 0x140019850
dec r9w
cmp si, r9w
jge 0x1400198a0
nop word [rax + rax]
movsx rdx, r10w
movzx r8d, byte [rdx + r11]
movsx rax, r9w
lea rcx, [rax + r11]
movzx eax, byte [rcx]
mov byte [rdx + r11], al
mov byte [rcx], r8b
inc r10w
dec r9w
cmp r10w, r9w
jl 0x140019870
movzx eax, byte [0x140045a00]
mov rdx, rdi
mov r8, r11
test al, al
je 0x1400198f3
mov ebx, 0x20
lea r11, [0x140000000]
cmp al, 0x7f
ja 0x1400198bf
movzx ecx, al
jmp 0x1400198d3
cmp al, 0xfe
ja 0x1400198d1
movzx eax, al
movzx ecx, word [r11 + rax*2 + 0x30350]
jmp 0x1400198d3
mov ecx, ebx
mov word [rdx], cx
add rdx, 2
inc r8
movzx eax, byte [r8]
test al, al
jne 0x1400198b6
lea r11, [0x140045a00]
lea rbx, [0x140046350]
mov word [rdx], si
mov rdx, rdi
mov rcx, rbx
nop dword [rax]
cmp byte [rcx], sil
jne 0x14001990b
cmp byte [rcx + 1], sil
je 0x140019911
add rcx, 2
jmp 0x140019900
movzx eax, byte [rdx]
test al, al
jne 0x14001991e
cmp byte [rdx + 1], sil
je 0x140019931
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x140019911
mov word [rcx], si
lea rdx, [0x14003c328]
mov rcx, rbx
nop
cmp byte [rcx], sil
jne 0x14001994b
cmp byte [rcx + 1], sil
je 0x140019951
add rcx, 2
jmp 0x140019940
movzx eax, byte [rdx]
test al, al
jne 0x14001995e
cmp byte [rdx + 1], sil
je 0x140019971
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x140019951
mov word [rcx], si
movzx edx, si
movzx r8d, si
nop dword [rax + rax]
movzx ecx, dx
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub ecx, eax
add cl, 0x30
movsx rax, r8w
mov byte [rax + r11], cl
inc r8w
test dx, dx
jne 0x140019980
movsx rax, r8w
mov byte [rax + r11], sil
movzx r10d, si
mov r9d, esi
mov rcx, r11
movzx eax, byte [0x140045a00]
test al, al
je 0x1400199db
nop dword [rax]
inc rcx
inc r9d
cmp byte [rcx], sil
jne 0x1400199d0
dec r9w
cmp si, r9w
jge 0x140019a20
nop word [rax + rax]
movsx rdx, r10w
movzx r8d, byte [rdx + r11]
movsx rax, r9w
lea rcx, [rax + r11]
movzx eax, byte [rcx]
mov byte [rdx + r11], al
mov byte [rcx], r8b
inc r10w
dec r9w
cmp r10w, r9w
jl 0x1400199f0
movzx eax, byte [0x140045a00]
mov rdx, rdi
mov r8, r11
test al, al
je 0x140019a72
mov ebx, 0x20
lea r14, [0x140000000]
cmp al, 0x7f
ja 0x140019a3f
movzx ecx, al
jmp 0x140019a53
cmp al, 0xfe
ja 0x140019a51
movzx eax, al
movzx ecx, word [r14 + rax*2 + 0x30350]
jmp 0x140019a53
mov ecx, ebx
mov word [rdx], cx
add rdx, 2
inc r8
movzx eax, byte [r8]
test al, al
jne 0x140019a36
movzx r14d, word [rsp + 0x30]
lea rbx, [0x140046350]
mov word [rdx], si
mov rdx, rdi
mov rcx, rbx
nop dword [rax + rax]
cmp byte [rcx], sil
jne 0x140019a8b
cmp byte [rcx + 1], sil
je 0x140019a91
add rcx, 2
jmp 0x140019a80
movzx eax, byte [rdx]
test al, al
jne 0x140019a9e
cmp byte [rdx + 1], sil
je 0x140019ab1
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x140019a91
mov word [rcx], si
lea rdx, [0x14003c320]
mov rcx, rbx
nop
cmp byte [rcx], sil
jne 0x140019acb
cmp byte [rcx + 1], sil
je 0x140019ad1
add rcx, 2
jmp 0x140019ac0
movzx eax, byte [rdx]
test al, al
jne 0x140019ade
cmp byte [rdx + 1], sil
je 0x140019af1
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x140019ad1
mov word [rcx], si
mov rax, rbx
mov ecx, esi
nop dword [rax]
cmp byte [rax], sil
jne 0x140019b0b
cmp byte [rax + 1], sil
je 0x140019b13
add rax, 2
inc ecx
jmp 0x140019b00
lea edi, [rcx + rcx]
mov rcx, rsi
movsxd rbx, edi
lea rdx, [0x140046350]
test edi, edi
jle 0x140019b3b
nop word [rax + rax]
not byte [rcx + rdx]
inc rcx
cmp rcx, rbx
jl 0x140019b30
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 0x39]
mov r8d, edi
mov rax, qword [rbp - 0x51]
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x140019b91
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x58
jae 0x140019b75
mov eax, eax
lea rcx, [0x140000000]
mov ecx, dword [rcx + rax*4 + 0x310a0]
jmp 0x140019b7a
mov ecx, 0x106
mov dword [0x1400430b8], ecx
mov dword [0x1400434c8], 2
mov byte [0x1400433c0], sil
mov rcx, rsi
test edi, edi
jle 0x140019bab
lea rdx, [0x140046350]
nop
not byte [rcx + rdx]
inc rcx
cmp rcx, rbx
jl 0x140019ba0
cmp dword [rbp - 0x39], edi
jne 0x14001bbc7
mov edi, 1
movzx esi, di
jmp 0x140019100
cmp r14w, word [0x1400402f0]
jne 0x140019d06
cmp r15w, word [0x1400402f6]
jne 0x140019d06
mov word [rsp + 0x20], r15w
movzx r9d, r14w
lea rdi, [0x140045930]
mov rdx, rdi
mov rcx, rbx
call fcn.14000ab90
lea rdx, [0x14003c320]
mov rcx, rdi
cmp byte [rcx], sil
jne 0x140019c0e
cmp byte [rcx + 1], sil
je 0x140019c14
add rcx, 2
jmp 0x140019c03
movzx eax, byte [rdx]
test al, al
jne 0x140019c21
cmp byte [rdx + 1], sil
je 0x140019c34
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x140019c14
mov word [rcx], si
mov rax, rdi
mov ecx, esi
nop dword [rax]
cmp byte [rax], sil
jne 0x140019c4b
cmp byte [rax + 1], sil
je 0x140019c53
add rax, 2
inc ecx
jmp 0x140019c40
add cx, cx
mov word [0x14003ee54], cx
movsx r8, cx
mov rcx, rsi
mov rbx, r8
test r8d, r8d
jle 0x140019c7b
nop dword [rax]
not byte [rcx + rdi]
inc rcx
cmp rcx, rbx
jl 0x140019c70
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 0x25]
mov rdx, rdi
mov rax, qword [rbp - 0x49]
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x140019cd1
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x58
jae 0x140019cb5
mov eax, eax
lea rcx, [0x140000000]
mov ecx, dword [rcx + rax*4 + 0x310a0]
jmp 0x140019cba
mov ecx, 0x106
mov dword [0x1400430b8], ecx
mov dword [0x1400434c8], 2
mov byte [0x1400433c0], sil
mov rcx, rsi
test rbx, rbx
jle 0x140019ceb
nop dword [rax]
not byte [rcx + rdi]
inc rcx
cmp rcx, rbx
jl 0x140019ce0
movsx eax, word [0x14003ee54]
cmp dword [rbp - 0x25], eax
jne 0x14001bbc7
mov rax, qword [rbp - 0x19]
inc dword [rax]
jmp 0x14001a5f4
mov eax, 1
mov word [0x14003dee4], ax
cmp cx, word [0x1400402f2]
jne 0x140019d27
cmp si, word [0x1400402f4]
jne 0x140019d27
mov dword [rbp - 0x69], eax
mov rcx, rbx
lea rbx, [0x140046350]
mov rdx, rbx
movzx eax, byte [rcx]
test al, al
jne 0x140019d41
cmp byte [rcx + 1], sil
je 0x140019d54
mov byte [rdx], al
movzx eax, byte [rcx + 1]
mov byte [rdx + 1], al
add rdx, 2
add rcx, 2
jmp 0x140019d34
movzx eax, byte [rcx]
mov byte [rdx], al
movzx eax, byte [rcx + 1]
mov byte [rdx + 1], al
lea rdx, [0x14003c328]
mov rcx, rbx
nop word [rax + rax]
cmp byte [rcx], sil
jne 0x140019d7b
cmp byte [rcx + 1], sil
je 0x140019d81
add rcx, 2
jmp 0x140019d70
movzx eax, byte [rdx]
test al, al
jne 0x140019d8e
cmp byte [rdx + 1], sil
je 0x140019da1
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x140019d81
mov word [rcx], si
movzx edx, r14w
movzx r8d, si
lea r11, [0x140045a00]
nop dword [rax]
nop word [rax + rax]
movzx ecx, dx
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub ecx, eax
add cl, 0x30
movsx rax, r8w
mov byte [rax + r11], cl
inc r8w
test dx, dx
jne 0x140019dc0
movsx rax, r8w
mov byte [rax + r11], sil
movzx r10d, si
mov r9d, esi
mov rcx, r11
movzx eax, byte [0x140045a00]
test al, al
je 0x140019e1b
nop dword [rax]
inc rcx
inc r9d
cmp byte [rcx], sil
jne 0x140019e10
dec r9w
cmp si, r9w
jge 0x140019e60
nop word [rax + rax]
movsx rdx, r10w
movzx r8d, byte [rdx + r11]
movsx rax, r9w
lea rcx, [rax + r11]
movzx eax, byte [rcx]
mov byte [rdx + r11], al
mov byte [rcx], r8b
inc r10w
dec r9w
cmp r10w, r9w
jl 0x140019e30
movzx eax, byte [0x140045a00]
lea rdi, [0x140045a20]
mov rdx, rdi
mov r8, r11
test al, al
je 0x140019ebd
mov ebx, 0x20
lea r11, [0x140000000]
nop dword [rax]
cmp al, 0x7f
ja 0x140019e89
movzx ecx, al
jmp 0x140019e9d
cmp al, 0xfe
ja 0x140019e9b
movzx eax, al
movzx ecx, word [r11 + rax*2 + 0x30350]
jmp 0x140019e9d
mov ecx, ebx
mov word [rdx], cx
add rdx, 2
inc r8
movzx eax, byte [r8]
test al, al
jne 0x140019e80
lea r11, [0x140045a00]
lea rbx, [0x140046350]
mov word [rdx], si
mov rdx, rdi
mov rcx, rbx
cmp byte [rcx], sil
jne 0x140019ed1
cmp byte [rcx + 1], sil
je 0x140019ed7
add rcx, 2
jmp 0x140019ec6
movzx eax, byte [rdx]
test al, al
jne 0x140019ee4
cmp byte [rdx + 1], sil
je 0x140019ef7
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x140019ed7
mov word [rcx], si
lea rdx, [0x14003c328]
mov rcx, rbx
cmp byte [rcx], sil
jne 0x140019f0f
cmp byte [rcx + 1], sil
je 0x140019f15
add rcx, 2
jmp 0x140019f04
movzx eax, byte [rdx]
test al, al
jne 0x140019f22
cmp byte [rdx + 1], sil
je 0x140019f35
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x140019f15
mov word [rcx], si
mov edx, 0x3fff
movzx r8d, si
movzx ecx, dx
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub ecx, eax
add cl, 0x30
movsx rax, r8w
mov byte [rax + r11], cl
inc r8w
test dx, dx
jne 0x140019f41
movsx rax, r8w
mov byte [rax + r11], sil
movzx r10d, si
mov r9d, esi
mov rcx, r11
movzx eax, byte [0x140045a00]
test al, al
je 0x140019f9b
nop dword [rax]
inc rcx
inc r9d
cmp byte [rcx], sil
jne 0x140019f90
dec r9w
cmp si, r9w
jge 0x140019fe0
nop word [rax + rax]
movsx rdx, r10w
movzx r8d, byte [rdx + r11]
movsx rax, r9w
lea rcx, [rax + r11]
movzx eax, byte [rcx]
mov byte [rdx + r11], al
mov byte [rcx], r8b
inc r10w
dec r9w
cmp r10w, r9w
jl 0x140019fb0
movzx eax, byte [0x140045a00]
mov rdx, rdi
mov r8, r11
test al, al
je 0x14001a033
mov ebx, 0x20
lea r11, [0x140000000]
cmp al, 0x7f
ja 0x140019fff
movzx ecx, al
jmp 0x14001a013
cmp al, 0xfe
ja 0x14001a011
movzx eax, al
movzx ecx, word [r11 + rax*2 + 0x30350]
jmp 0x14001a013
mov ecx, ebx
mov word [rdx], cx
add rdx, 2
inc r8
movzx eax, byte [r8]
test al, al
jne 0x140019ff6
lea r11, [0x140045a00]
lea rbx, [0x140046350]
mov word [rdx], si
mov rdx, rdi
mov rcx, rbx
nop dword [rax]
cmp byte [rcx], sil
jne 0x14001a04b
cmp byte [rcx + 1], sil
je 0x14001a051
add rcx, 2
jmp 0x14001a040
movzx eax, byte [rdx]
test al, al
jne 0x14001a05e
cmp byte [rdx + 1], sil
je 0x14001a071
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001a051
mov word [rcx], si
lea rdx, [0x14003c328]
mov rcx, rbx
nop
cmp byte [rcx], sil
jne 0x14001a08b
cmp byte [rcx + 1], sil
je 0x14001a091
add rcx, 2
jmp 0x14001a080
movzx eax, byte [rdx]
test al, al
jne 0x14001a09e
cmp byte [rdx + 1], sil
je 0x14001a0b1
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001a091
mov word [rcx], si
movzx edx, si
movzx r8d, si
nop dword [rax + rax]
movzx ecx, dx
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub ecx, eax
add cl, 0x30
movsx rax, r8w
mov byte [rax + r11], cl
inc r8w
test dx, dx
jne 0x14001a0c0
movsx rax, r8w
mov byte [rax + r11], sil
movzx r10d, si
mov r9d, esi
mov rcx, r11
movzx eax, byte [0x140045a00]
test al, al
je 0x14001a11b
nop dword [rax]
inc rcx
inc r9d
cmp byte [rcx], sil
jne 0x14001a110
dec r9w
cmp si, r9w
jge 0x14001a160
nop word [rax + rax]
movsx rdx, r10w
movzx r8d, byte [rdx + r11]
movsx rax, r9w
lea rcx, [rax + r11]
movzx eax, byte [rcx]
mov byte [rdx + r11], al
mov byte [rcx], r8b
inc r10w
dec r9w
cmp r10w, r9w
jl 0x14001a130
movzx eax, byte [0x140045a00]
mov rdx, rdi
mov r8, r11
test al, al
je 0x14001a1b3
mov ebx, 0x20
lea r11, [0x140000000]
cmp al, 0x7f
ja 0x14001a17f
movzx ecx, al
jmp 0x14001a193
cmp al, 0xfe
ja 0x14001a191
movzx eax, al
movzx ecx, word [r11 + rax*2 + 0x30350]
jmp 0x14001a193
mov ecx, ebx
mov word [rdx], cx
add rdx, 2
inc r8
movzx eax, byte [r8]
test al, al
jne 0x14001a176
lea r11, [0x140045a00]
lea rbx, [0x140046350]
mov word [rdx], si
mov rdx, rdi
mov rcx, rbx
nop dword [rax]
cmp byte [rcx], sil
jne 0x14001a1cb
cmp byte [rcx + 1], sil
je 0x14001a1d1
add rcx, 2
jmp 0x14001a1c0
movzx eax, byte [rdx]
test al, al
jne 0x14001a1de
cmp byte [rdx + 1], sil
je 0x14001a1f1
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001a1d1
mov word [rcx], si
lea rdx, [0x14003c328]
mov rcx, rbx
nop
cmp byte [rcx], sil
jne 0x14001a20b
cmp byte [rcx + 1], sil
je 0x14001a211
add rcx, 2
jmp 0x14001a200
movzx eax, byte [rdx]
test al, al
jne 0x14001a21e
cmp byte [rdx + 1], sil
je 0x14001a231
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001a211
mov word [rcx], si
movzx edx, r15w
movzx r8d, si
nop dword [rax]
movzx ecx, dx
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub ecx, eax
add cl, 0x30
movsx rax, r8w
mov byte [rax + r11], cl
inc r8w
test dx, dx
jne 0x14001a240
movsx rax, r8w
mov byte [rax + r11], sil
movzx r10d, si
mov r9d, esi
mov rcx, r11
movzx eax, byte [0x140045a00]
test al, al
je 0x14001a29b
nop dword [rax]
inc rcx
inc r9d
cmp byte [rcx], sil
jne 0x14001a290
dec r9w
cmp si, r9w
jge 0x14001a2e0
nop word [rax + rax]
movsx rdx, r10w
movzx r8d, byte [rdx + r11]
movsx rax, r9w
lea rcx, [rax + r11]
movzx eax, byte [rcx]
mov byte [rdx + r11], al
mov byte [rcx], r8b
inc r10w
dec r9w
cmp r10w, r9w
jl 0x14001a2b0
movzx eax, byte [0x140045a00]
mov rdx, rdi
mov r8, r11
test al, al
je 0x14001a333
mov ebx, 0x20
lea r11, [0x140000000]
cmp al, 0x7f
ja 0x14001a2ff
movzx ecx, al
jmp 0x14001a313
cmp al, 0xfe
ja 0x14001a311
movzx eax, al
movzx ecx, word [r11 + rax*2 + 0x30350]
jmp 0x14001a313
mov ecx, ebx
mov word [rdx], cx
add rdx, 2
inc r8
movzx eax, byte [r8]
test al, al
jne 0x14001a2f6
lea r11, [0x140045a00]
lea rbx, [0x140046350]
mov word [rdx], si
mov rdx, rdi
mov rcx, rbx
nop dword [rax]
cmp byte [rcx], sil
jne 0x14001a34b
cmp byte [rcx + 1], sil
je 0x14001a351
add rcx, 2
jmp 0x14001a340
movzx eax, byte [rdx]
test al, al
jne 0x14001a35e
cmp byte [rdx + 1], sil
je 0x14001a371
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001a351
mov word [rcx], si
lea rdx, [0x14003c328]
mov rcx, rbx
nop
cmp byte [rcx], sil
jne 0x14001a38b
cmp byte [rcx + 1], sil
je 0x14001a391
add rcx, 2
jmp 0x14001a380
movzx eax, byte [rdx]
test al, al
jne 0x14001a39e
cmp byte [rdx + 1], sil
je 0x14001a3b1
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001a391
mov word [rcx], si
movzx edx, si
movzx r8d, si
nop dword [rax + rax]
movzx ecx, dx
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub ecx, eax
add cl, 0x30
movsx rax, r8w
mov byte [rax + r11], cl
inc r8w
test dx, dx
jne 0x14001a3c0
movsx rax, r8w
mov byte [rax + r11], sil
movzx r10d, si
mov r9d, esi
mov rcx, r11
movzx eax, byte [0x140045a00]
test al, al
je 0x14001a41b
nop dword [rax]
inc rcx
inc r9d
cmp byte [rcx], sil
jne 0x14001a410
dec r9w
cmp si, r9w
jge 0x14001a460
nop word [rax + rax]
movsx rdx, r10w
movzx r8d, byte [rdx + r11]
movsx rax, r9w
lea rcx, [rax + r11]
movzx eax, byte [rcx]
mov byte [rdx + r11], al
mov byte [rcx], r8b
inc r10w
dec r9w
cmp r10w, r9w
jl 0x14001a430
movzx eax, byte [0x140045a00]
mov rdx, rdi
mov r8, r11
test al, al
je 0x14001a4b2
mov ebx, 0x20
lea r14, [0x140000000]
cmp al, 0x7f
ja 0x14001a47f
movzx ecx, al
jmp 0x14001a493
cmp al, 0xfe
ja 0x14001a491
movzx eax, al
movzx ecx, word [r14 + rax*2 + 0x30350]
jmp 0x14001a493
mov ecx, ebx
mov word [rdx], cx
add rdx, 2
inc r8
movzx eax, byte [r8]
test al, al
jne 0x14001a476
movzx r14d, word [rsp + 0x30]
lea rbx, [0x140046350]
mov word [rdx], si
mov rdx, rdi
mov rcx, rbx
nop dword [rax + rax]
cmp byte [rcx], sil
jne 0x14001a4cb
cmp byte [rcx + 1], sil
je 0x14001a4d1
add rcx, 2
jmp 0x14001a4c0
movzx eax, byte [rdx]
test al, al
jne 0x14001a4de
cmp byte [rdx + 1], sil
je 0x14001a4f1
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001a4d1
mov word [rcx], si
lea rdx, [0x14003c320]
mov rcx, rbx
nop
cmp byte [rcx], sil
jne 0x14001a50b
cmp byte [rcx + 1], sil
je 0x14001a511
add rcx, 2
jmp 0x14001a500
movzx eax, byte [rdx]
test al, al
jne 0x14001a51e
cmp byte [rdx + 1], sil
je 0x14001a531
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001a511
mov word [rcx], si
mov rax, rbx
mov ecx, esi
nop dword [rax]
cmp byte [rax], sil
jne 0x14001a54b
cmp byte [rax + 1], sil
je 0x14001a553
add rax, 2
inc ecx
jmp 0x14001a540
lea edi, [rcx + rcx]
mov rcx, rsi
movsxd rbx, edi
lea rdx, [0x140046350]
test edi, edi
jle 0x14001a57b
nop word [rax + rax]
not byte [rcx + rdx]
inc rcx
cmp rcx, rbx
jl 0x14001a570
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 0x41]
mov r8d, edi
mov rax, qword [rbp - 0x51]
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x14001a5d1
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x58
jae 0x14001a5b5
mov eax, eax
lea rcx, [0x140000000]
mov ecx, dword [rcx + rax*4 + 0x310a0]
jmp 0x14001a5ba
mov ecx, 0x106
mov dword [0x1400430b8], ecx
mov dword [0x1400434c8], 2
mov byte [0x1400433c0], sil
mov rcx, rsi
test edi, edi
jle 0x14001a5eb
lea rdx, [0x140046350]
nop
not byte [rcx + rdx]
inc rcx
cmp rcx, rbx
jl 0x14001a5e0
cmp dword [rbp - 0x41], edi
jne 0x14001bbc7
mov edi, 1
movzx esi, di
jmp 0x140019100
mov dword [rbp - 0x59], edi
mov eax, dword [rbp - 0x69]
test ax, ax
jne 0x14001aedc
lea rcx, [0x140046450]
lea rdi, [0x140046350]
mov rdx, rdi
movzx eax, byte [rcx]
test al, al
jne 0x14001a62d
cmp byte [rcx + 1], al
je 0x14001a640
mov byte [rdx], al
movzx eax, byte [rcx + 1]
mov byte [rdx + 1], al
add rdx, 2
add rcx, 2
jmp 0x14001a621
movzx eax, byte [rcx]
mov byte [rdx], al
movzx eax, byte [rcx + 1]
mov byte [rdx + 1], al
lea rdx, [0x14003c328]
mov rcx, rdi
cmp byte [rcx], 0
jne 0x14001a661
cmp byte [rcx + 1], 0
je 0x14001a667
add rcx, 2
jmp 0x14001a656
movzx eax, byte [rdx]
test al, al
jne 0x14001a673
cmp byte [rdx + 1], al
je 0x14001a686
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001a667
mov word [rcx], 0
movzx edx, word [0x1400402f0]
xor ebx, ebx
movzx r8d, bx
lea r11, [0x140045a00]
nop
movzx ecx, dx
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub ecx, eax
add cl, 0x30
movsx rax, r8w
mov byte [rax + r11], cl
inc r8w
test dx, dx
jne 0x14001a6a0
movsx rax, r8w
mov byte [rax + r11], bl
movzx r10d, bx
mov r9d, ebx
mov rcx, r11
movzx eax, byte [0x140045a00]
test al, al
je 0x14001a6fa
nop dword [rax]
inc rcx
inc r9d
cmp byte [rcx], bl
jne 0x14001a6f0
dec r9w
cmp bx, r9w
jge 0x14001a740
nop dword [rax]
nop dword [rax + rax]
movsx rdx, r10w
movzx r8d, byte [rdx + r11]
movsx rax, r9w
lea rcx, [rax + r11]
movzx eax, byte [rcx]
mov byte [rdx + r11], al
mov byte [rcx], r8b
inc r10w
dec r9w
cmp r10w, r9w
jl 0x14001a710
movzx eax, byte [0x140045a00]
lea r9, [0x140045a20]
mov rdx, r9
mov r8, r11
test al, al
je 0x14001a79d
mov edi, 0x20
lea r11, [0x140000000]
nop dword [rax]
cmp al, 0x7f
ja 0x14001a769
movzx ecx, al
jmp 0x14001a77d
cmp al, 0xfe
ja 0x14001a77b
movzx eax, al
movzx ecx, word [r11 + rax*2 + 0x30350]
jmp 0x14001a77d
mov ecx, edi
mov word [rdx], cx
add rdx, 2
inc r8
movzx eax, byte [r8]
test al, al
jne 0x14001a760
lea r11, [0x140045a00]
lea rdi, [0x140046350]
mov word [rdx], bx
mov rdx, r9
mov rcx, rdi
cmp byte [rcx], bl
jne 0x14001a7af
cmp byte [rcx + 1], bl
je 0x14001a7b5
add rcx, 2
jmp 0x14001a7a6
movzx eax, byte [rdx]
test al, al
jne 0x14001a7c1
cmp byte [rdx + 1], bl
je 0x14001a7d4
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001a7b5
mov word [rcx], bx
lea rdx, [0x14003c328]
mov rcx, rdi
cmp byte [rcx], bl
jne 0x14001a7ea
cmp byte [rcx + 1], bl
je 0x14001a7f0
add rcx, 2
jmp 0x14001a7e1
movzx eax, byte [rdx]
test al, al
jne 0x14001a7fc
cmp byte [rdx + 1], bl
je 0x14001a80f
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001a7f0
mov word [rcx], bx
movzx edx, word [0x1400402f2]
movzx r8d, bx
nop dword [rax]
movzx ecx, dx
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub ecx, eax
add cl, 0x30
movsx rax, r8w
mov byte [rax + r11], cl
inc r8w
test dx, dx
jne 0x14001a820
movsx rax, r8w
mov byte [rax + r11], bl
movzx r10d, bx
mov r9d, ebx
mov rcx, r11
movzx eax, byte [0x140045a00]
test al, al
je 0x14001a87a
nop dword [rax]
inc rcx
inc r9d
cmp byte [rcx], bl
jne 0x14001a870
dec r9w
cmp bx, r9w
jge 0x14001a8c0
nop dword [rax]
nop dword [rax + rax]
movsx rdx, r10w
movzx r8d, byte [rdx + r11]
movsx rax, r9w
lea rcx, [rax + r11]
movzx eax, byte [rcx]
mov byte [rdx + r11], al
mov byte [rcx], r8b
inc r10w
dec r9w
cmp r10w, r9w
jl 0x14001a890
movzx eax, byte [0x140045a00]
lea r9, [0x140045a20]
mov rdx, r9
mov r8, r11
test al, al
je 0x14001a91d
mov edi, 0x20
lea r11, [0x140000000]
nop dword [rax]
cmp al, 0x7f
ja 0x14001a8e9
movzx ecx, al
jmp 0x14001a8fd
cmp al, 0xfe
ja 0x14001a8fb
movzx eax, al
movzx ecx, word [r11 + rax*2 + 0x30350]
jmp 0x14001a8fd
mov ecx, edi
mov word [rdx], cx
add rdx, 2
inc r8
movzx eax, byte [r8]
test al, al
jne 0x14001a8e0
lea r11, [0x140045a00]
lea rdi, [0x140046350]
mov word [rdx], bx
mov rdx, r9
mov rcx, rdi
cmp byte [rcx], bl
jne 0x14001a92f
cmp byte [rcx + 1], bl
je 0x14001a935
add rcx, 2
jmp 0x14001a926
movzx eax, byte [rdx]
test al, al
jne 0x14001a941
cmp byte [rdx + 1], bl
je 0x14001a954
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001a935
mov word [rcx], bx
lea rdx, [0x14003c328]
mov rcx, rdi
cmp byte [rcx], bl
jne 0x14001a96a
cmp byte [rcx + 1], bl
je 0x14001a970
add rcx, 2
jmp 0x14001a961
movzx eax, byte [rdx]
test al, al
jne 0x14001a97c
cmp byte [rdx + 1], bl
je 0x14001a98f
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001a970
mov word [rcx], bx
movzx edx, word [0x1400402f4]
movzx r8d, bx
nop dword [rax]
movzx ecx, dx
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub ecx, eax
add cl, 0x30
movsx rax, r8w
mov byte [rax + r11], cl
inc r8w
test dx, dx
jne 0x14001a9a0
movsx rax, r8w
mov byte [rax + r11], bl
movzx r10d, bx
mov r9d, ebx
mov rcx, r11
movzx eax, byte [0x140045a00]
test al, al
je 0x14001a9fa
nop dword [rax]
inc rcx
inc r9d
cmp byte [rcx], bl
jne 0x14001a9f0
dec r9w
cmp bx, r9w
jge 0x14001aa40
nop dword [rax]
nop dword [rax + rax]
movsx rdx, r10w
movzx r8d, byte [rdx + r11]
movsx rax, r9w
lea rcx, [rax + r11]
movzx eax, byte [rcx]
mov byte [rdx + r11], al
mov byte [rcx], r8b
inc r10w
dec r9w
cmp r10w, r9w
jl 0x14001aa10
movzx eax, byte [0x140045a00]
lea r9, [0x140045a20]
mov rdx, r9
mov r8, r11
test al, al
je 0x14001aa9d
mov edi, 0x20
lea r11, [0x140000000]
nop dword [rax]
cmp al, 0x7f
ja 0x14001aa69
movzx ecx, al
jmp 0x14001aa7d
cmp al, 0xfe
ja 0x14001aa7b
movzx eax, al
movzx ecx, word [r11 + rax*2 + 0x30350]
jmp 0x14001aa7d
mov ecx, edi
mov word [rdx], cx
add rdx, 2
inc r8
movzx eax, byte [r8]
test al, al
jne 0x14001aa60
lea r11, [0x140045a00]
lea rdi, [0x140046350]
mov word [rdx], bx
mov rdx, r9
mov rcx, rdi
cmp byte [rcx], bl
jne 0x14001aaaf
cmp byte [rcx + 1], bl
je 0x14001aab5
add rcx, 2
jmp 0x14001aaa6
movzx eax, byte [rdx]
test al, al
jne 0x14001aac1
cmp byte [rdx + 1], bl
je 0x14001aad4
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001aab5
mov word [rcx], bx
lea rdx, [0x14003c328]
mov rcx, rdi
cmp byte [rcx], bl
jne 0x14001aaea
cmp byte [rcx + 1], bl
je 0x14001aaf0
add rcx, 2
jmp 0x14001aae1
movzx eax, byte [rdx]
test al, al
jne 0x14001aafc
cmp byte [rdx + 1], bl
je 0x14001ab0f
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001aaf0
mov word [rcx], bx
movzx edx, word [0x1400402f6]
movzx r8d, bx
nop dword [rax]
movzx ecx, dx
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub ecx, eax
add cl, 0x30
movsx rax, r8w
mov byte [rax + r11], cl
inc r8w
test dx, dx
jne 0x14001ab20
movsx rax, r8w
mov byte [rax + r11], bl
movzx r10d, bx
mov r9d, ebx
mov rcx, r11
movzx eax, byte [0x140045a00]
test al, al
je 0x14001ab7a
nop dword [rax]
inc rcx
inc r9d
cmp byte [rcx], bl
jne 0x14001ab70
dec r9w
cmp bx, r9w
jge 0x14001abc0
nop dword [rax]
nop dword [rax + rax]
movsx rdx, r10w
movzx r8d, byte [rdx + r11]
movsx rax, r9w
lea rcx, [rax + r11]
movzx eax, byte [rcx]
mov byte [rdx + r11], al
mov byte [rcx], r8b
inc r10w
dec r9w
cmp r10w, r9w
jl 0x14001ab90
movzx eax, byte [0x140045a00]
lea r9, [0x140045a20]
mov rdx, r9
mov r8, r11
test al, al
je 0x14001ac1d
mov edi, 0x20
lea r11, [0x140000000]
nop dword [rax]
cmp al, 0x7f
ja 0x14001abe9
movzx ecx, al
jmp 0x14001abfd
cmp al, 0xfe
ja 0x14001abfb
movzx eax, al
movzx ecx, word [r11 + rax*2 + 0x30350]
jmp 0x14001abfd
mov ecx, edi
mov word [rdx], cx
add rdx, 2
inc r8
movzx eax, byte [r8]
test al, al
jne 0x14001abe0
lea r11, [0x140045a00]
lea rdi, [0x140046350]
mov word [rdx], bx
mov rdx, r9
mov rcx, rdi
cmp byte [rcx], bl
jne 0x14001ac2f
cmp byte [rcx + 1], bl
je 0x14001ac35
add rcx, 2
jmp 0x14001ac26
movzx eax, byte [rdx]
test al, al
jne 0x14001ac41
cmp byte [rdx + 1], bl
je 0x14001ac54
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001ac35
mov word [rcx], bx
lea rdx, [0x14003c328]
mov rcx, rdi
cmp byte [rcx], bl
jne 0x14001ac6a
cmp byte [rcx + 1], bl
je 0x14001ac70
add rcx, 2
jmp 0x14001ac61
movzx eax, byte [rdx]
test al, al
jne 0x14001ac7c
cmp byte [rdx + 1], bl
je 0x14001ac8f
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001ac70
mov word [rcx], bx
movzx edx, word [0x1400402f8]
movzx r8d, bx
nop dword [rax]
movzx ecx, dx
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub ecx, eax
add cl, 0x30
movsx rax, r8w
mov byte [rax + r11], cl
inc r8w
test dx, dx
jne 0x14001aca0
movsx rax, r8w
mov byte [rax + r11], bl
movzx r10d, bx
mov r9d, ebx
mov rcx, r11
movzx eax, byte [0x140045a00]
test al, al
je 0x14001acfa
nop dword [rax]
inc rcx
inc r9d
cmp byte [rcx], bl
jne 0x14001acf0
dec r9w
cmp bx, r9w
jge 0x14001ad40
nop dword [rax]
nop dword [rax + rax]
movsx rdx, r10w
movzx r8d, byte [rdx + r11]
movsx rax, r9w
lea rcx, [rax + r11]
movzx eax, byte [rcx]
mov byte [rdx + r11], al
mov byte [rcx], r8b
inc r10w
dec r9w
cmp r10w, r9w
jl 0x14001ad10
movzx eax, byte [0x140045a00]
lea r9, [0x140045a20]
mov rdx, r9
mov r8, r11
test al, al
je 0x14001ad9c
mov edi, 0x20
lea r14, [0x140000000]
nop dword [rax]
cmp al, 0x7f
ja 0x14001ad69
movzx ecx, al
jmp 0x14001ad7d
cmp al, 0xfe
ja 0x14001ad7b
movzx eax, al
movzx ecx, word [r14 + rax*2 + 0x30350]
jmp 0x14001ad7d
mov ecx, edi
mov word [rdx], cx
add rdx, 2
inc r8
movzx eax, byte [r8]
test al, al
jne 0x14001ad60
movzx r14d, word [rsp + 0x30]
lea rdi, [0x140046350]
mov word [rdx], bx
mov rdx, r9
mov rcx, rdi
cmp byte [rcx], bl
jne 0x14001adae
cmp byte [rcx + 1], bl
je 0x14001adb4
add rcx, 2
jmp 0x14001ada5
movzx eax, byte [rdx]
test al, al
jne 0x14001adc0
cmp byte [rdx + 1], bl
je 0x14001add3
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001adb4
mov word [rcx], bx
lea rdx, [0x14003c320]
mov rcx, rdi
cmp byte [rcx], bl
jne 0x14001ade9
cmp byte [rcx + 1], bl
je 0x14001adf0
add rcx, 2
jmp 0x14001ade0
movzx eax, byte [rdx]
test al, al
jne 0x14001adfc
cmp byte [rdx + 1], bl
je 0x14001ae0f
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001adf0
mov word [rcx], bx
mov rax, rdi
mov ecx, ebx
cmp byte [rax], bl
jne 0x14001ae20
cmp byte [rax + 1], bl
je 0x14001ae28
add rax, 2
inc ecx
jmp 0x14001ae17
lea edi, [rcx + rcx]
mov rcx, rbx
movsxd rbx, edi
lea rdx, [0x140046350]
test edi, edi
jle 0x14001ae4b
nop dword [rax]
not byte [rcx + rdx]
inc rcx
cmp rcx, rbx
jl 0x14001ae40
mov qword [rsp + 0x20], 0
lea r9, [rbp - 0x3d]
mov r8d, edi
mov rax, qword [rbp - 0x51]
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x14001aea5
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x58
jae 0x14001ae89
mov eax, eax
lea rcx, [0x140000000]
mov ecx, dword [rcx + rax*4 + 0x310a0]
jmp 0x14001ae8e
mov ecx, 0x106
mov dword [0x1400430b8], ecx
mov dword [0x1400434c8], 2
mov byte [0x1400433c0], 0
xor ecx, ecx
test edi, edi
jle 0x14001aed1
lea rdx, [0x140046350]
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
not al
mov byte [rcx + rdx], al
inc rcx
cmp rcx, rbx
jl 0x14001aec0
cmp dword [rbp - 0x3d], edi
jne 0x14001bbc7
jmp 0x14001aee1
xor eax, eax
mov dword [rbp - 0x69], eax
mov rbx, qword [0x140045920]
mov r9, qword [0x14003e110]
movzx edi, word [rsp + 0x38]
mov r11, qword [rbp - 0x61]
jmp 0x14001afb4
movzx eax, al
movsx rcx, r12w
movzx eax, byte [rax + r9]
lea rdx, [0x140046250]
mov byte [rcx + rdx], al
inc r12w
jmp 0x14001afb4
test r10w, r10w
je 0x14001afae
cmp r10w, 0xd
jne 0x14001af4d
movzx eax, al
add ax, r10w
movsx rcx, ax
movsx rdx, r12w
movzx eax, byte [rcx + r9]
lea rcx, [0x140046250]
mov byte [rdx + rcx], al
jmp 0x14001afa6
cmp r10w, 0xe
jne 0x14001af5d
movzx eax, al
add ax, 0x1d
jmp 0x14001af34
cmp r10w, 0xf
jne 0x14001afaa
test ecx, ecx
je 0x14001af7b
movzx ecx, byte [r8 + 1]
shr cl, 4
movzx eax, dl
shl al, 4
movzx edx, cl
or dl, al
inc di
movzx eax, dl
add ax, 0x2d
mov ecx, 0xff
cmp ax, cx
jge 0x14001afc2
movsx rax, ax
movsx rcx, r12w
movzx eax, byte [rax + r9]
lea rdx, [0x140046250]
mov byte [rcx + rdx], al
inc r12w
xor eax, eax
jmp 0x14001afb1
movzx eax, al
mov dword [rbp - 0x79], eax
inc di
cmp di, word [rbp - 0x65]
jge 0x14001afd4
jmp 0x140018ff0
movzx eax, word [r11 + 0x82]
add ax, ax
mov word [0x1400401b4], ax
xor ebx, ebx
movzx ecx, word [rbp - 0x7f]
inc cx
mov word [rbp - 0x7f], cx
cmp cx, word [r11 + 0x80]
jge 0x14001b029
jmp 0x140018ef0
mov eax, 0xfffffffc
jmp 0x14001bbca
movzx eax, byte [rbx]
sub al, 0x30
cmp al, 9
ja 0x14001b00d
cmp byte [rbx + 1], dil
je 0x140018d4a
mov eax, 7
jmp 0x14001bbca
call fcn.14002cbc8
int3
call fcn.14002cbc8
int3
call fcn.14002cbc8
int3
mov eax, dword [rbp - 0x59]
test ax, ax
jne 0x14001bb06
mov r12, qword [rbp - 0x31]
mov rdi, qword [rbp - 0x71]
nop dword [rax]
test si, si
je 0x14001b1ce
mov rbx, qword [rbp - 0x21]
mov r8, rbx
movzx edx, word [0x1400419e4]
mov rcx, r13
call fcn.14002a640
test ax, ax
jle 0x14001bb06
mov rcx, rbx
call fcn.14001bd30
test ax, ax
je 0x14001b0c7
movzx r8d, word [0x14003ee5c]
mov word [0x14003e1a4], r8w
movzx ecx, word [0x14003ee60]
imul ecx, r8d
mov eax, 0x51eb851f
imul ecx
mov ecx, edx
sar ecx, 5
mov eax, ecx
shr eax, 0x1f
add ecx, eax
add cx, word [0x14003ee48]
mov word [0x14003ee50], cx
lea rdx, [0x14003e1b0]
call qword [0x140041aa8]
test ax, ax
jne 0x14001aff0
mov eax, 0x20
mov dword [rdi], eax
xor esi, esi
mov qword [rbp - 0x71], r12
mov rcx, r13
mov rdx, r12
movzx eax, byte [r13 + 1]
or al, byte [r13]
je 0x140018d4a
movzx r8d, word [r12]
nop
cmp word [rcx], r8w
jne 0x14001b11b
mov rbx, rcx
nop dword [rax]
lea rdx, [rdx + 2]
movzx eax, word [rdx]
test ax, ax
je 0x14001b12d
add rcx, 2
cmp word [rcx], ax
je 0x14001b100
mov rcx, rbx
mov rdx, r12
add rcx, 2
movzx eax, byte [rcx + 1]
or al, byte [rcx]
je 0x140018d4a
jmp 0x14001b0f0
test rbx, rbx
je 0x140018d4a
movzx ecx, si
mov r8, rbx
sub r8, r13
lea r9, [0x140045a50]
test r8, r8
jle 0x14001b165
mov rdx, rsi
nop
movzx eax, byte [rdx + r13]
mov byte [rdx + r9], al
inc cx
movsx rdx, cx
cmp rdx, r8
jl 0x14001b150
movsx rax, cx
cmp rax, 0x800
jae 0x14001bb00
mov byte [rax + r9], sil
lea eax, [rcx + 1]
movsx rax, ax
cmp rax, 0x800
jae 0x14001bafa
mov byte [rax + r9], sil
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.14002a440
test ax, ax
je 0x14001bade
movsx rcx, ax
add rcx, rbx
lea rdx, [rsp + 0x34]
call fcn.14002a440
test ax, ax
je 0x140018d4a
movzx r14d, word [rsp + 0x30]
movzx r15d, word [rsp + 0x34]
jmp 0x14001b1d0
xor esi, esi
mov word [0x1400402fa], r14w
mov dword [0x1400402fc], 0x3fff
mov word [0x140040300], r15w
mov word [0x140040302], si
lea rax, [0x140045a50]
mov rcx, rax
lea rbx, [0x140046350]
mov rdx, rbx
movzx eax, byte [rcx]
test al, al
jne 0x14001b211
cmp byte [rcx + 1], al
je 0x14001b224
mov byte [rdx], al
movzx eax, byte [rcx + 1]
mov byte [rdx + 1], al
add rdx, 2
add rcx, 2
jmp 0x14001b205
movzx eax, byte [rcx]
mov byte [rdx], al
movzx eax, byte [rcx + 1]
mov byte [rdx + 1], al
lea rdx, [0x14003c328]
mov rcx, rbx
nop word [rax + rax]
cmp byte [rcx], 0
jne 0x14001b24b
cmp byte [rcx + 1], 0
je 0x14001b251
add rcx, 2
jmp 0x14001b240
movzx eax, byte [rdx]
test al, al
jne 0x14001b25d
cmp byte [rdx + 1], al
je 0x14001b270
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001b251
mov word [rcx], 0
movzx edx, r14w
movzx r8d, si
lea r11, [0x140045a00]
nop dword [rax]
nop dword [rax + rax]
movzx ecx, dx
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub ecx, eax
add cl, 0x30
movsx rax, r8w
mov byte [rax + r11], cl
inc r8w
test dx, dx
jne 0x14001b290
movsx rax, r8w
mov byte [rax + r11], dl
movzx r10d, si
mov r9d, esi
mov rcx, r11
movzx eax, byte [0x140045a00]
test al, al
je 0x14001b2eb
nop dword [rax]
inc rcx
inc r9d
cmp byte [rcx], 0
jne 0x14001b2e0
dec r9w
cmp si, r9w
jge 0x14001b330
nop word [rax + rax]
movsx rdx, r10w
movzx r8d, byte [rdx + r11]
movsx rax, r9w
lea rcx, [rax + r11]
movzx eax, byte [rcx]
mov byte [rdx + r11], al
mov byte [rcx], r8b
inc r10w
dec r9w
cmp r10w, r9w
jl 0x14001b300
movzx eax, byte [0x140045a00]
lea rdi, [0x140045a20]
mov rdx, rdi
mov r8, r11
test al, al
je 0x14001b38d
mov ebx, 0x20
lea r11, [0x140000000]
nop dword [rax]
cmp al, 0x7f
ja 0x14001b359
movzx ecx, al
jmp 0x14001b36d
cmp al, 0xfe
ja 0x14001b36b
movzx eax, al
movzx ecx, word [r11 + rax*2 + 0x30350]
jmp 0x14001b36d
mov ecx, ebx
mov word [rdx], cx
add rdx, 2
inc r8
movzx eax, byte [r8]
test al, al
jne 0x14001b350
lea r11, [0x140045a00]
lea rbx, [0x140046350]
mov word [rdx], si
mov rdx, rdi
mov rcx, rbx
cmp byte [rcx], 0
jne 0x14001b3a1
cmp byte [rcx + 1], 0
je 0x14001b3a7
add rcx, 2
jmp 0x14001b396
movzx eax, byte [rdx]
test al, al
jne 0x14001b3b3
cmp byte [rdx + 1], al
je 0x14001b3c6
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001b3a7
mov word [rcx], 0
lea rdx, [0x14003c328]
mov rcx, rbx
cmp byte [rcx], 0
jne 0x14001b3e0
cmp byte [rcx + 1], 0
je 0x14001b3e6
add rcx, 2
jmp 0x14001b3d5
movzx eax, byte [rdx]
test al, al
jne 0x14001b3f2
cmp byte [rdx + 1], al
je 0x14001b405
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001b3e6
mov word [rcx], 0
mov edx, 0x3fff
movzx r8d, si
nop dword [rax]
nop word [rax + rax]
movzx ecx, dx
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub ecx, eax
add cl, 0x30
movsx rax, r8w
mov byte [rax + r11], cl
inc r8w
test dx, dx
jne 0x14001b420
movsx rax, r8w
mov byte [rax + r11], dl
movzx r10d, si
mov r9d, esi
mov rcx, r11
movzx eax, byte [0x140045a00]
test al, al
je 0x14001b47b
nop dword [rax]
inc rcx
inc r9d
cmp byte [rcx], 0
jne 0x14001b470
dec r9w
cmp si, r9w
jge 0x14001b4c0
nop word [rax + rax]
movsx rdx, r10w
movzx r8d, byte [rdx + r11]
movsx rax, r9w
lea rcx, [rax + r11]
movzx eax, byte [rcx]
mov byte [rdx + r11], al
mov byte [rcx], r8b
inc r10w
dec r9w
cmp r10w, r9w
jl 0x14001b490
movzx eax, byte [0x140045a00]
mov rdx, rdi
mov r8, r11
test al, al
je 0x14001b513
mov ebx, 0x20
lea r11, [0x140000000]
cmp al, 0x7f
ja 0x14001b4df
movzx ecx, al
jmp 0x14001b4f3
cmp al, 0xfe
ja 0x14001b4f1
movzx eax, al
movzx ecx, word [r11 + rax*2 + 0x30350]
jmp 0x14001b4f3
mov ecx, ebx
mov word [rdx], cx
add rdx, 2
inc r8
movzx eax, byte [r8]
test al, al
jne 0x14001b4d6
lea r11, [0x140045a00]
lea rbx, [0x140046350]
mov word [rdx], si
mov rdx, rdi
mov rcx, rbx
nop dword [rax]
cmp byte [rcx], 0
jne 0x14001b52b
cmp byte [rcx + 1], 0
je 0x14001b531
add rcx, 2
jmp 0x14001b520
movzx eax, byte [rdx]
test al, al
jne 0x14001b53d
cmp byte [rdx + 1], al
je 0x14001b550
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001b531
mov word [rcx], 0
lea rdx, [0x14003c328]
mov rcx, rbx
nop
cmp byte [rcx], 0
jne 0x14001b56b
cmp byte [rcx + 1], 0
je 0x14001b571
add rcx, 2
jmp 0x14001b560
movzx eax, byte [rdx]
test al, al
jne 0x14001b57d
cmp byte [rdx + 1], al
je 0x14001b590
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001b571
mov word [rcx], 0
movzx edx, si
movzx r8d, si
nop dword [rax]
movzx ecx, dx
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub ecx, eax
add cl, 0x30
movsx rax, r8w
mov byte [rax + r11], cl
inc r8w
test dx, dx
jne 0x14001b5a0
movsx rax, r8w
mov byte [rax + r11], dl
movzx r10d, si
mov r9d, esi
mov rcx, r11
movzx eax, byte [0x140045a00]
test al, al
je 0x14001b5fb
nop dword [rax]
inc rcx
inc r9d
cmp byte [rcx], 0
jne 0x14001b5f0
dec r9w
cmp si, r9w
jge 0x14001b640
nop word [rax + rax]
movsx rdx, r10w
movzx r8d, byte [rdx + r11]
movsx rax, r9w
lea rcx, [rax + r11]
movzx eax, byte [rcx]
mov byte [rdx + r11], al
mov byte [rcx], r8b
inc r10w
dec r9w
cmp r10w, r9w
jl 0x14001b610
movzx eax, byte [0x140045a00]
mov rdx, rdi
mov r8, r11
test al, al
je 0x14001b693
mov ebx, 0x20
lea r11, [0x140000000]
cmp al, 0x7f
ja 0x14001b65f
movzx ecx, al
jmp 0x14001b673
cmp al, 0xfe
ja 0x14001b671
movzx eax, al
movzx ecx, word [r11 + rax*2 + 0x30350]
jmp 0x14001b673
mov ecx, ebx
mov word [rdx], cx
add rdx, 2
inc r8
movzx eax, byte [r8]
test al, al
jne 0x14001b656
lea r11, [0x140045a00]
lea rbx, [0x140046350]
mov word [rdx], si
mov rdx, rdi
mov rcx, rbx
nop dword [rax]
cmp byte [rcx], 0
jne 0x14001b6ab
cmp byte [rcx + 1], 0
je 0x14001b6b1
add rcx, 2
jmp 0x14001b6a0
movzx eax, byte [rdx]
test al, al
jne 0x14001b6bd
cmp byte [rdx + 1], al
je 0x14001b6d0
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001b6b1
mov word [rcx], 0
lea rdx, [0x14003c328]
mov rcx, rbx
nop
cmp byte [rcx], 0
jne 0x14001b6eb
cmp byte [rcx + 1], 0
je 0x14001b6f1
add rcx, 2
jmp 0x14001b6e0
movzx eax, byte [rdx]
test al, al
jne 0x14001b6fd
cmp byte [rdx + 1], al
je 0x14001b710
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001b6f1
mov word [rcx], 0
movzx edx, r15w
movzx r8d, si
nop dword [rax]
movzx ecx, dx
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub ecx, eax
add cl, 0x30
movsx rax, r8w
mov byte [rax + r11], cl
inc r8w
test dx, dx
jne 0x14001b720
movsx rax, r8w
mov byte [rax + r11], dl
movzx r10d, si
mov r9d, esi
mov rcx, r11
movzx eax, byte [0x140045a00]
test al, al
je 0x14001b77b
nop dword [rax]
inc rcx
inc r9d
cmp byte [rcx], 0
jne 0x14001b770
dec r9w
cmp si, r9w
jge 0x14001b7c0
nop word [rax + rax]
movsx rdx, r10w
movzx r8d, byte [rdx + r11]
movsx rax, r9w
lea rcx, [rax + r11]
movzx eax, byte [rcx]
mov byte [rdx + r11], al
mov byte [rcx], r8b
inc r10w
dec r9w
cmp r10w, r9w
jl 0x14001b790
movzx eax, byte [0x140045a00]
mov rdx, rdi
mov r8, r11
test al, al
je 0x14001b813
mov ebx, 0x20
lea r11, [0x140000000]
cmp al, 0x7f
ja 0x14001b7df
movzx ecx, al
jmp 0x14001b7f3
cmp al, 0xfe
ja 0x14001b7f1
movzx eax, al
movzx ecx, word [r11 + rax*2 + 0x30350]
jmp 0x14001b7f3
mov ecx, ebx
mov word [rdx], cx
add rdx, 2
inc r8
movzx eax, byte [r8]
test al, al
jne 0x14001b7d6
lea r11, [0x140045a00]
lea rbx, [0x140046350]
mov word [rdx], si
mov rdx, rdi
mov rcx, rbx
nop dword [rax]
cmp byte [rcx], 0
jne 0x14001b82b
cmp byte [rcx + 1], 0
je 0x14001b831
add rcx, 2
jmp 0x14001b820
movzx eax, byte [rdx]
test al, al
jne 0x14001b83d
cmp byte [rdx + 1], al
je 0x14001b850
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001b831
mov word [rcx], 0
lea rdx, [0x14003c328]
mov rcx, rbx
nop
cmp byte [rcx], 0
jne 0x14001b86b
cmp byte [rcx + 1], 0
je 0x14001b871
add rcx, 2
jmp 0x14001b860
movzx eax, byte [rdx]
test al, al
jne 0x14001b87d
cmp byte [rdx + 1], al
je 0x14001b890
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001b871
mov word [rcx], 0
movzx edx, si
movzx r8d, si
nop dword [rax]
movzx ecx, dx
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub ecx, eax
add cl, 0x30
movsx rax, r8w
mov byte [rax + r11], cl
inc r8w
test dx, dx
jne 0x14001b8a0
movsx rax, r8w
mov byte [rax + r11], dl
movzx r10d, si
mov r9d, esi
mov rcx, r11
movzx eax, byte [0x140045a00]
test al, al
je 0x14001b8fb
nop dword [rax]
inc rcx
inc r9d
cmp byte [rcx], 0
jne 0x14001b8f0
dec r9w
cmp si, r9w
jge 0x14001b940
nop word [rax + rax]
movsx rdx, r10w
movzx r8d, byte [rdx + r11]
movsx rax, r9w
lea rcx, [rax + r11]
movzx eax, byte [rcx]
mov byte [rdx + r11], al
mov byte [rcx], r8b
inc r10w
dec r9w
cmp r10w, r9w
jl 0x14001b910
movzx eax, byte [0x140045a00]
mov rdx, rdi
mov r8, r11
test al, al
je 0x14001b990
mov ebx, 0x20
lea r12, [0x140000000]
cmp al, 0x7f
ja 0x14001b95f
movzx ecx, al
jmp 0x14001b973
cmp al, 0xfe
ja 0x14001b971
movzx eax, al
movzx ecx, word [r12 + rax*2 + 0x30350]
jmp 0x14001b973
mov ecx, ebx
mov word [rdx], cx
add rdx, 2
inc r8
movzx eax, byte [r8]
test al, al
jne 0x14001b956
mov r12, qword [rbp - 0x31]
lea rbx, [0x140046350]
mov word [rdx], si
mov rdx, rdi
mov rcx, rbx
nop dword [rax]
cmp byte [rcx], 0
jne 0x14001b9ab
cmp byte [rcx + 1], 0
je 0x14001b9b1
add rcx, 2
jmp 0x14001b9a0
movzx eax, byte [rdx]
test al, al
jne 0x14001b9bd
cmp byte [rdx + 1], al
je 0x14001b9d0
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001b9b1
mov word [rcx], 0
lea rdx, [0x14003c320]
mov rcx, rbx
nop
cmp byte [rcx], 0
jne 0x14001b9eb
cmp byte [rcx + 1], 0
je 0x14001b9f1
add rcx, 2
jmp 0x14001b9e0
movzx eax, byte [rdx]
test al, al
jne 0x14001b9fd
cmp byte [rdx + 1], al
je 0x14001ba10
mov byte [rcx], al
movzx eax, byte [rdx + 1]
mov byte [rcx + 1], al
add rcx, 2
add rdx, 2
jmp 0x14001b9f1
mov word [rcx], 0
mov rax, rbx
mov ecx, esi
nop word [rax + rax]
cmp byte [rax], 0
jne 0x14001ba2b
cmp byte [rax + 1], 0
je 0x14001ba33
add rax, 2
inc ecx
jmp 0x14001ba20
lea edi, [rcx + rcx]
mov rcx, rsi
movsxd rbx, edi
lea rdx, [0x140046350]
test edi, edi
jle 0x14001ba5b
nop word [rax + rax]
not byte [rcx + rdx]
inc rcx
cmp rcx, rbx
jl 0x14001ba50
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 0x65]
mov r8d, edi
mov rax, qword [rbp - 0x51]
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x14001bab1
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x58
jae 0x14001ba95
mov eax, eax
lea rcx, [0x140000000]
mov ecx, dword [rcx + rax*4 + 0x310a0]
jmp 0x14001ba9a
mov ecx, 0x106
mov dword [0x1400430b8], ecx
mov dword [0x1400434c8], 2
mov byte [0x1400433c0], 0
mov rcx, rsi
test edi, edi
jle 0x14001bacb
lea rdx, [0x140046350]
nop
not byte [rcx + rdx]
inc rcx
cmp rcx, rbx
jl 0x14001bac0
cmp dword [rbp - 0x65], edi
jne 0x14001bbc7
mov esi, 1
jmp 0x14001b039
movzx eax, byte [rbx]
sub al, 0x30
cmp al, 9
ja 0x14001b00d
cmp byte [rbx + 1], sil
jne 0x14001b00d
jmp 0x140018d4a
call fcn.14002cbc8
int3
call fcn.14002cbc8
int3
mov rcx, qword [rbp - 0x51]
call fcn.14002a9e0
xor r8d, r8d
xor edx, edx
mov r15, qword [rbp - 0x11]
mov rcx, r15
call fcn.14002ad10
cmp eax, 0xffffffff
jne 0x14001bb2f
mov eax, 3
jmp 0x14001bbca
xor r8d, r8d
xor edx, edx
mov r14, qword [rbp - 0x49]
mov rcx, r14
call fcn.14002ad10
cmp eax, 0xffffffff
je 0x14001bb25
xor r12d, r12d
mov edi, r12d
mov rsi, qword [rbp - 0x19]
cmp dword [rsi], r12d
jbe 0x14001bb99
nop dword [rax]
nop dword [rax + rax]
mov r8, r14
movzx edx, word [0x1400419e4]
mov rcx, r13
call fcn.14002a640
test ax, ax
jle 0x14001bb99
mov rcx, r13
call fcn.14002af90
mov ebx, eax
mov r8d, eax
mov rdx, r13
mov rcx, r15
call fcn.14002a820
cmp eax, ebx
jne 0x14001bb25
inc edi
cmp edi, dword [rsi]
jb 0x14001bb60
mov rcx, r14
call fcn.14002a9e0
lea rcx, str.tmpout.hlp
call qword [sym.imp.MSVCR120.dll__unlink]
mov rcx, qword [rbp - 0x71]
call qword [sym.imp.MSVCR120.dll_free]
mov rcx, r13
call qword [sym.imp.MSVCR120.dll_free]
movzx eax, r12w
jmp 0x14001bbca
or eax, 0xffffffff
mov rcx, qword [rbp + 0x1f]
xor rcx, rsp
call fcn.14002c960
mov rbx, qword [rsp + 0x120]
add rsp, 0xe0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret