Function at 0x14018ff70
Capabilities:
Parse credit card information
Terminate process

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x50]
sub rsp, 0x150
mov rax, qword [0x1403c2c80]
xor rax, rsp
mov qword [rbp + 0x48], rax
mov r15, qword [r8]
movsxd rax, edx
mov rdx, qword [r8 + 0x18]
add rax, rcx
mov rbx, rcx
mov qword [rbp - 0x80], rcx
xor ecx, ecx
mov qword [rsp + 0x58], rax
lea rax, [rbp - 0x60]
mov r14, r8
mov qword [rbp - 0x68], r8
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0x60], rax
mov r13d, ecx
mov qword [rsp + 0x50], rcx
mov esi, ecx
mov qword [rsp + 0x38], rcx
mov r12d, ecx
mov qword [rsp + 0x40], rcx
mov rdi, r15
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x68], 1
mov dword [r8 + 0x20], ecx
call fcn.14018fa20
cmp dword [r14 + 8], esi
jne 0x14019003f
mov rcx, qword [r14]
mov dword [r14 + 8], 0x1c
test rcx, rcx
je 0x14019001d
lea edx, [r12 + 0x1c]
call qword [sym.imp.MSVCR100.dll_realloc]
jmp 0x140190028
mov ecx, 0x1c
call qword [sym.imp.MSVCR100.dll_malloc]
mov qword [r14], rax
mov r15, rax
test rax, rax
je 0x1401928c8
mov rdi, rax
mov qword [rsp + 0x30], rax
mov r9, qword [rsp + 0x58]
cmp rbx, r9
je 0x1401928e3
mov r10d, dword [0x1403d8f20]
mov r11, rbx
mov edx, 0x10000
lea rcx, [0x140000000]
cmp r11, r9
je 0x1401928da
mov r8, qword [rsp + 0x70]
movzx ebx, byte [r11]
inc r11
mov qword [rsp + 0x48], r11
test r8, r8
je 0x140190087
movzx ebx, byte [rbx + r8]
lea eax, [rbx - 0xa]
cmp eax, 0x72
ja case.0x1401900ac.22
movzx eax, byte [rcx + rax + 0x192948]
mov ecx, dword [rcx + rax*4 + 0x192914]
lea rax, [0x140000000]
add rcx, rax
jmp rcx
mov edi, r10d
mov rdx, r11
and edi, 0x20
jne 0x1401900f4
cmp r11, r9
je 0x1401900f4
lea rcx, [r11 + 1]
cmp byte [rdx], 0x5c
jne 0x1401900f4
cmp rcx, r9
je 0x1401900f4
movzx eax, byte [rcx]
cmp al, 0x3c
je 0x1401900e7
cmp al, 0x3e
je 0x1401900e7
cmp al, 0x60
je 0x1401900e7
cmp al, 0x27
je 0x1401900e7
cmp al, 0x62
je 0x1401900e7
cmp al, 0x42
jne 0x1401900f4
add rdx, 2
add rcx, 2
cmp rdx, r9
jne 0x1401900c2
test r10b, 8
je 0x1401901e1
test edi, edi
jne 0x14019010b
cmp rdx, r9
jne case.0x1401900ac.22
test rsi, rsi
je 0x14019011d
mov r8, r15
mov dl, 4
mov rcx, rsi
call fcn.14018faa0
xor eax, eax
mov rcx, r15
sub rcx, qword [r14]
mov esi, eax
mov qword [rsp + 0x38], rax
movsxd rax, dword [r14 + 8]
inc rcx
cmp rcx, rax
jl 0x1401901c9
mov rbx, qword [rsp + 0x30]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
mov ecx, 0x10000
cmp eax, ecx
je 0x1401928d1
add eax, eax
cmp eax, ecx
cmovg eax, ecx
mov rcx, rdi
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rsi, rsi
je 0x14019018b
add rsi, rax
mov qword [rsp + 0x38], rsi
test r12, r12
je 0x140190198
add r12, rax
mov qword [rsp + 0x40], r12
add rbx, rax
mov qword [rsp + 0x30], rbx
test r13, r13
je 0x1401901ad
add r13, rax
mov qword [rsp + 0x50], r13
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jge 0x140190141
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x30]
mov byte [r15], 3
mov r10d, dword [0x1403d8f20]
inc r15
jmp 0x140191ac9
bt r10d, 0xf
jae 0x1401901f9
cmp rdx, r9
je 0x140190258
lea rax, str.Invalid_regular_expression
jmp 0x1401928ec
cmp rdx, r9
je 0x140190258
movzx ecx, byte [rdx]
cmp cl, 0xa
je 0x140190258
test edi, edi
jne 0x140190258
test r10b, 1
je 0x140190220
xor edi, edi
cmp cl, 0x29
mov eax, edi
sete al
test eax, eax
jne 0x140190258
jmp 0x14019022d
cmp cl, 0x5c
jne 0x14019022b
cmp byte [rdx + 1], 0x29
je 0x140190258
xor edi, edi
test r10b, 2
je 0x140190245
cmp cl, 0x7c
mov eax, edi
sete al
test eax, eax
je case.0x1401900ac.22
jmp 0x140190258
cmp cl, 0x5c
jne case.0x1401900ac.22
cmp byte [rdx + 1], 0x7c
jne case.0x1401900ac.22
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jl 0x1401901c9
mov rbx, qword [rsp + 0x30]
nop word [rax + rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
mov ecx, 0x10000
cmp eax, ecx
je 0x1401928d1
add eax, eax
cmp eax, ecx
cmovg eax, ecx
mov rcx, rdi
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rsi, rsi
je 0x1401902ca
add rsi, rax
mov qword [rsp + 0x38], rsi
test r12, r12
je 0x1401902d7
add r12, rax
mov qword [rsp + 0x40], r12
add rbx, rax
mov qword [rsp + 0x30], rbx
test r13, r13
je 0x1401902ec
add r13, rax
mov qword [rsp + 0x50], r13
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jge 0x140190280
jmp 0x1401901bf
bt r10d, 0xf
jae 0x1401903eb
test r12, r12
jne 0x1401901ed
mov rcx, qword [rbp - 0x80]
test r10b, 8
je 0x14019041d
lea rax, [rcx + 1]
cmp r11, rax
je 0x140190338
test r10b, 0x20
je case.0x1401900ac.22
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jl 0x1401903d0
nop
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
cmp eax, edx
je 0x1401928d1
add eax, eax
mov rcx, rdi
cmp eax, edx
cmovg eax, edx
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rsi, rsi
je 0x140190395
add rsi, rax
mov qword [rsp + 0x38], rsi
test r12, r12
je 0x1401903a2
add r12, rax
mov qword [rsp + 0x40], r12
test r13, r13
je 0x1401903af
add r13, rax
mov qword [rsp + 0x50], r13
movsxd rax, dword [r14 + 8]
mov rcx, r15
mov edx, 0x10000
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jge 0x140190350
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
mov byte [r15], 2
mov r10d, dword [0x1403d8f20]
inc r15
mov rdi, r15
mov qword [rsp + 0x30], r15
jmp 0x140191ac9
test r12, r12
je 0x140190317
mov rcx, qword [rbp - 0x80]
lea rax, [r11 - 2]
cmp rax, rcx
jb 0x14019031b
cmp byte [rax], 0xa
je 0x14019031b
test r10b, 0x20
je case.0x1401900ac.22
jmp 0x14019031b
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jl 0x1401904d1
nop word [rax + rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
cmp eax, edx
je 0x1401928d1
add eax, eax
mov rcx, rdi
cmp eax, edx
cmovg eax, edx
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rsi, rsi
je 0x140190485
add rsi, rax
mov qword [rsp + 0x38], rsi
test r12, r12
je 0x140190492
add r12, rax
mov qword [rsp + 0x40], r12
mov rdi, qword [rsp + 0x30]
add rdi, rax
mov qword [rsp + 0x30], rdi
test r13, r13
je 0x1401904ac
add r13, rax
mov qword [rsp + 0x50], r13
movsxd rax, dword [r14 + 8]
mov rcx, r15
mov edx, 0x10000
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jge 0x140190440
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
mov byte [r15], 2
mov r10d, dword [0x1403d8f20]
inc r15
jmp 0x140191ac9
test r10b, 4
jne case.0x1401900ac.22
test edx, r10d
jne case.0x1401900ac.22
test r12, r12
jne 0x140190511
bt r10d, 0xf
jb 0x1401901ed
test r10b, 0x20
je case.0x1401900ac.22
cmp ebx, 0x2b
setne sil
cmp ebx, 0x3f
setne dl
cmp r11, r9
je 0x1401923ad
movzx ecx, byte [r11]
inc r11
mov qword [rsp + 0x48], r11
test r8, r8
je 0x14019053d
movzx ecx, byte [rcx + r8]
cmp ecx, 0x2a
je 0x140190592
mov eax, r10d
and eax, 4
jne 0x140190554
cmp ecx, 0x2b
je 0x140190595
cmp ecx, 0x3f
je 0x140190592
test eax, eax
je 0x1401923a5
cmp ecx, 0x5c
jne 0x1401923a5
cmp r11, r9
je 0x1401928da
movzx ecx, byte [r11]
inc r11
mov qword [rsp + 0x48], r11
test r8, r8
je 0x140190584
movzx ecx, byte [rcx + r8]
cmp ecx, 0x2b
je 0x140190595
cmp ecx, 0x3f
jne 0x14019239f
cmp ecx, 0x2b
setne al
or sil, al
cmp ecx, 0x3f
setne al
or dl, al
cmp r11, r9
jne 0x140190527
jmp 0x1401923ad
movsxd rax, dword [r14 + 8]
mov rcx, r15
mov r12, r15
sub rcx, qword [r14]
mov qword [rsp + 0x40], r15
inc rcx
cmp rcx, rax
jl 0x140190661
nop
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
cmp eax, edx
je 0x1401928d1
add eax, eax
mov rcx, rdi
cmp eax, edx
cmovg eax, edx
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rsi, rsi
je 0x140190615
add rsi, rax
mov qword [rsp + 0x38], rsi
test r12, r12
je 0x140190622
add r12, rax
mov qword [rsp + 0x40], r12
mov rdi, qword [rsp + 0x30]
add rdi, rax
mov qword [rsp + 0x30], rdi
test r13, r13
je 0x14019063c
add r13, rax
mov qword [rsp + 0x50], r13
movsxd rax, dword [r14 + 8]
mov rcx, r15
mov edx, 0x10000
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jge 0x1401905d0
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
mov byte [r15], reloc.OLEAUT32.dll_VariantTimeToDosDateTime
mov r10d, dword [0x1403d8f20]
inc r15
jmp 0x140191ac9
cmp r11, r9
je 0x1401901ed
mov eax, dword [r14 + 8]
mov rbx, qword [rsp + 0x30]
mov rcx, r15
sub rcx, qword [r14]
sub eax, 0x23
cdqe
cmp rcx, rax
jle 0x140190720
nop word [rax + rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
cmp eax, edx
je 0x1401928d1
add eax, eax
mov rcx, rdi
cmp eax, edx
cmovg eax, edx
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rsi, rsi
je 0x1401906e5
add rsi, rax
mov qword [rsp + 0x38], rsi
test r12, r12
je 0x1401906ed
add r12, rax
add rbx, rax
mov qword [rsp + 0x30], rbx
test r13, r13
je 0x140190702
add r13, rax
mov qword [rsp + 0x50], r13
mov eax, dword [r14 + 8]
mov rcx, r15
mov edx, 0x10000
sub rcx, qword [r14]
sub eax, 0x23
cdqe
cmp rcx, rax
jg 0x1401906a0
mov r11, qword [rsp + 0x48]
movsxd rax, dword [r14 + 8]
mov rcx, r15
mov r12, r15
sub rcx, qword [r14]
mov qword [rsp + 0x40], r15
inc rcx
cmp byte [r11], 0x5e
jne 0x1401907e7
cmp rcx, rax
jl 0x1401907d3
nop dword [rax + rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
cmp eax, edx
je 0x1401928d1
add eax, eax
mov rcx, rdi
cmp eax, edx
cmovg eax, edx
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rsi, rsi
je 0x140190795
add rsi, rax
mov qword [rsp + 0x38], rsi
test r12, r12
je 0x1401907a2
add r12, rax
mov qword [rsp + 0x40], r12
add rbx, rax
mov qword [rsp + 0x30], rbx
test r13, r13
je 0x1401907b7
add r13, rax
mov qword [rsp + 0x50], r13
movsxd rax, dword [r14 + 8]
mov rcx, r15
mov edx, 0x10000
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jge 0x140190750
mov r11, qword [rsp + 0x48]
mov byte [r15], 0xe
inc r15
inc r11
mov qword [rsp + 0x48], r11
jmp 0x14019087a
cmp rcx, rax
jl 0x140190873
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
cmp eax, edx
je 0x1401928d1
add eax, eax
mov rcx, rdi
cmp eax, edx
cmovg eax, edx
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rsi, rsi
je 0x140190835
add rsi, rax
mov qword [rsp + 0x38], rsi
test r12, r12
je 0x140190842
add r12, rax
mov qword [rsp + 0x40], r12
add rbx, rax
mov qword [rsp + 0x30], rbx
test r13, r13
je 0x140190857
add r13, rax
mov qword [rsp + 0x50], r13
movsxd rax, dword [r14 + 8]
mov rcx, r15
mov edx, 0x10000
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jge 0x1401907f0
mov r11, qword [rsp + 0x48]
mov byte [r15], 0xd
inc r15
movsxd rax, dword [r14 + 8]
mov rcx, r15
mov r13, r11
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jl 0x140190920
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x38]
nop dword [rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
mov ecx, 0x10000
cmp eax, ecx
je 0x1401928d1
add eax, eax
cmp eax, ecx
cmovg eax, ecx
mov rcx, rdi
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rbx, rbx
je 0x1401908ea
add rbx, rax
mov qword [rsp + 0x38], rbx
test r12, r12
je 0x1401908f7
add r12, rax
mov qword [rsp + 0x40], r12
add qword [rsp + 0x30], rax
test rsi, rsi
je 0x140190909
add rsi, rax
mov qword [rsp + 0x50], rsi
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jge 0x1401908a0
mov r11, qword [rsp + 0x48]
mov byte [r15], 0x20
inc r15
xor eax, eax
mov qword [r15], rax
mov qword [r15 + 8], rax
mov qword [r15 + 0x10], rax
mov qword [r15 + 0x18], rax
mov r10d, dword [0x1403d8f20]
bt r10d, 0xb
jae 0x140190959
cmp byte [r15 - 2], 0xe
jne 0x140190959
or byte [r15 + 1], 4
mov r10d, dword [0x1403d8f20]
mov rbx, qword [rsp + 0x70]
nop
mov r9, qword [rsp + 0x58]
cmp r11, r9
je 0x1401928da
movzx r8d, byte [r11]
inc r11
test r10b, 0x40
je 0x1401909b7
cmp r8d, 0x5c
jne 0x1401909b7
cmp r11, r9
je 0x1401928da
movzx ecx, byte [r11]
inc r11
test rbx, rbx
je 0x14019099a
movzx ecx, byte [rcx + rbx]
mov edx, ecx
shr rdx, 3
and ecx, 7
mov eax, 1
shl al, cl
or byte [rdx + r15], al
mov r10d, dword [0x1403d8f20]
jmp 0x140190965
cmp r8d, 0x5d
jne 0x1401909da
lea rax, [r13 + 1]
cmp r11, rax
jne 0x140190e77
bt r10d, 0xe
jae 0x1401909da
cmp r11, r9
je 0x1401901ed
movzx ecx, byte [r11]
cmp cl, 0x2d
jne 0x140190aaa
cmp byte [r11 + 1], 0x5d
lea rax, [r11 + 1]
je 0x140190aaa
cmp r11, r9
je 0x1401928da
mov r11, rax
cmp rax, r9
je 0x1401928da
movzx r9d, byte [rax]
inc r11
bt r10d, 0x11
jae 0x140190a22
cmp r8d, r9d
ja 0x1401901ed
bt r10d, 0x12
jae 0x140190a39
cmp r9d, 0x2d
jne 0x140190a39
cmp byte [r11], 0x5d
jne 0x1401901ed
cmp r8d, r9d
ja 0x140190960
mov r10, rbx
lea rsi, [rbx + r8]
neg r10
nop dword [rax]
test rbx, rbx
je 0x140190a7a
movzx ecx, byte [rsi]
mov edx, ecx
shr rdx, 3
and ecx, 0x80000007
jge 0x140190a6d
dec ecx
or ecx, 0xfffffff8
inc ecx
mov eax, 1
shl al, cl
or byte [rdx + r15], al
jmp 0x140190a93
lea rdi, [r10 + rsi]
mov ecx, r8d
mov edx, 1
and ecx, 7
shr rdi, 3
shl dl, cl
or byte [rdi + r15], dl
inc r8d
inc rsi
cmp r8d, r9d
jbe 0x140190a50
mov r10d, dword [0x1403d8f20]
jmp 0x140190960
bt r10d, 9
jae 0x140190e29
cmp r8d, 0x5b
jne 0x140190e29
cmp cl, 0x3a
jne 0x140190e29
cmp r11, r9
je 0x1401928da
xor r10d, r10d
inc r11
mov edx, r10d
cmp r11, r9
je 0x1401901ed
movzx ecx, byte [r11]
inc r11
cmp ecx, 0x3a
je 0x140190b08
cmp ecx, 0x5d
je 0x140190b08
cmp r11, r9
je 0x140190b08
cmp edx, 6
je 0x140190b08
mov eax, edx
inc edx
mov byte [rbp + rax + 0x40], cl
jmp 0x140190ae3
mov eax, edx
mov byte [rbp + rax + 0x40], r10b
cmp r11, r9
je 0x140190e0a
cmp ecx, 0x5d
je 0x140190e0a
cmp byte [r11], 0x5d
jne 0x140190e0a
lea rax, [r11 + 1]
cmp rax, r9
je 0x140190e0a
lea rsi, [rbp + 0x40]
lea rdi, str.alpha
mov ecx, 6
repe cmpsb byte [rsi], byte [rdi]
je 0x140190c28
lea rsi, [rbp + 0x40]
lea rdi, str.upper
mov ecx, 6
repe cmpsb byte [rsi], byte [rdi]
je 0x140190c28
lea rsi, [rbp + 0x40]
lea rdi, str.lower
mov ecx, 6
repe cmpsb byte [rsi], byte [rdi]
je 0x140190c28
lea rsi, [rbp + 0x40]
lea rdi, str.digit
mov ecx, 6
repe cmpsb byte [rsi], byte [rdi]
je 0x140190c28
lea rsi, [rbp + 0x40]
lea rdi, str.alnum
mov ecx, 6
repe cmpsb byte [rsi], byte [rdi]
je 0x140190c28
lea rsi, [rbp + 0x40]
lea rdi, str.xdigit
mov ecx, 7
repe cmpsb byte [rsi], byte [rdi]
je 0x140190c28
lea rsi, [rbp + 0x40]
lea rdi, str.space
mov ecx, 6
repe cmpsb byte [rsi], byte [rdi]
je 0x140190c28
lea rsi, [rbp + 0x40]
lea rdi, str.print
mov ecx, 6
repe cmpsb byte [rsi], byte [rdi]
je 0x140190c28
lea rsi, [rbp + 0x40]
lea rdi, str.punct
mov ecx, 6
repe cmpsb byte [rsi], byte [rdi]
je 0x140190c28
lea rsi, [rbp + 0x40]
lea rdi, str.graph
mov ecx, 6
repe cmpsb byte [rsi], byte [rdi]
je 0x140190c28
lea rsi, [rbp + 0x40]
lea rdi, str.cntrl
mov ecx, 6
repe cmpsb byte [rsi], byte [rdi]
jne 0x140190e0a
mov qword [rsp + 0x48], rax
test rbx, rbx
je 0x140190c3c
cmp byte [rbx + 0x5d], 0x5d
jne 0x1401901ed
mov ebx, r10d
mov r12, r10
nop word [rax + rax]
lea rsi, [rbp + 0x40]
lea rdi, str.alpha
mov ecx, 6
repe cmpsb byte [rsi], byte [rdi]
jne 0x140190c74
mov ecx, ebx
call qword [sym.imp.MSVCR100.dll_isalpha]
test eax, eax
jne 0x140190dd8
lea rsi, [rbp + 0x40]
lea rdi, str.upper
mov ecx, 6
repe cmpsb byte [rsi], byte [rdi]
jne 0x140190c98
mov ecx, ebx
call qword [sym.imp.MSVCR100.dll_isupper]
test eax, eax
jne 0x140190dd8
lea rsi, [rbp + 0x40]
lea rdi, str.lower
mov ecx, 6
repe cmpsb byte [rsi], byte [rdi]
jne 0x140190cbc
mov ecx, ebx
call qword [sym.imp.MSVCR100.dll_islower]
test eax, eax
jne 0x140190dd8
lea rsi, [rbp + 0x40]
lea rdi, str.digit
mov ecx, 6
repe cmpsb byte [rsi], byte [rdi]
jne 0x140190ce0
mov ecx, ebx
call qword [sym.imp.MSVCR100.dll_isdigit]
test eax, eax
jne 0x140190dd8
lea rsi, [rbp + 0x40]
lea rdi, str.alnum
mov ecx, 6
repe cmpsb byte [rsi], byte [rdi]
jne 0x140190d04
mov ecx, ebx
call qword [sym.imp.MSVCR100.dll_isalnum]
test eax, eax
jne 0x140190dd8
lea rsi, [rbp + 0x40]
lea rdi, str.xdigit
mov ecx, 7
repe cmpsb byte [rsi], byte [rdi]
jne 0x140190d28
mov ecx, ebx
call qword [sym.imp.MSVCR100.dll_isxdigit]
test eax, eax
jne 0x140190dd8
lea rsi, [rbp + 0x40]
lea rdi, str.space
mov ecx, 6
repe cmpsb byte [rsi], byte [rdi]
jne 0x140190d4c
mov ecx, ebx
call qword [sym.imp.MSVCR100.dll_isspace]
test eax, eax
jne 0x140190dd8
lea rsi, [rbp + 0x40]
lea rdi, str.print
mov ecx, 6
repe cmpsb byte [rsi], byte [rdi]
jne 0x140190d6c
mov ecx, ebx
call qword [sym.imp.MSVCR100.dll_isprint]
test eax, eax
jne 0x140190dd8
lea rsi, [rbp + 0x40]
lea rdi, str.punct
mov ecx, 6
repe cmpsb byte [rsi], byte [rdi]
jne 0x140190d8c
mov ecx, ebx
call qword [sym.imp.MSVCR100.dll_ispunct]
test eax, eax
jne 0x140190dd8
lea rsi, [rbp + 0x40]
lea rdi, str.graph
mov ecx, 6
repe cmpsb byte [rsi], byte [rdi]
jne 0x140190db8
mov ecx, ebx
call qword [sym.imp.MSVCR100.dll_isprint]
test eax, eax
je 0x140190db8
mov ecx, ebx
call qword [sym.imp.MSVCR100.dll_isspace]
test eax, eax
je 0x140190dd8
lea rsi, [rbp + 0x40]
lea rdi, str.cntrl
mov ecx, 6
repe cmpsb byte [rsi], byte [rdi]
jne 0x140190def
mov ecx, ebx
call qword [sym.imp.MSVCR100.dll_iscntrl]
test eax, eax
je 0x140190def
mov ecx, ebx
mov rdi, r12
mov edx, 1
and ecx, 7
shr rdi, 3
shl dl, cl
or byte [rdi + r15], dl
inc ebx
inc r12
cmp ebx, 0x100
jb 0x140190c50
mov r11, qword [rsp + 0x48]
jmp 0x140190952
inc edx
je 0x140190e13
mov eax, edx
sub r11, rax
or byte [r15 + 0xb], 8
or byte [r15 + 7], 4
mov r10d, dword [0x1403d8f20]
jmp 0x140190965
test rbx, rbx
je 0x140190e51
movzx ecx, byte [r8 + rbx]
mov edx, ecx
shr rdx, 3
and ecx, 0x80000007
jge 0x1401909a3
dec ecx
or ecx, 0xfffffff8
inc ecx
jmp 0x1401909a3
mov rdx, r8
and r8d, 7
mov eax, 1
movzx ecx, r8b
shr rdx, 3
shl al, cl
or byte [rdx + r15], al
mov r10d, dword [0x1403d8f20]
jmp 0x140190965
cmp byte [r15 - 1], 0
jle 0x140190e9e
nop
movsx rcx, byte [r15 - 1]
cmp byte [rcx + r15 - 1], 0
jne 0x140190e97
dec cl
mov byte [r15 - 1], cl
test cl, cl
jg 0x140190e80
mov r10d, dword [0x1403d8f20]
movsx rax, byte [r15 - 1]
mov r12, qword [rsp + 0x40]
mov r13, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x30]
add r15, rax
jmp 0x140191ac4
test r10b, 1
je case.0x1401900ac.22
jmp 0x140190f7f
test r10b, 1
je case.0x1401900ac.22
jmp 0x140191142
test r10b, 0x10
je case.0x1401900ac.22
jmp 0x140191316
bt r10d, 0xf
jae 0x140190f00
test r12, r12
je 0x1401901ed
cmp r11, r9
je 0x1401901ed
test r10b, 2
je case.0x1401900ac.22
jmp 0x140191316
mov ecx, r10d
and ecx, 0x100
je case.0x1401900ac.22
mov edx, r10d
and edx, 0x80
jne 0x14019144b
jmp case.0x1401900ac.22
cmp r11, r9
je 0x1401901ed
movzx ebx, byte [r11]
inc r11
lea eax, [rbx - 0x27]
mov qword [rsp + 0x48], r11
cmp eax, 0x55
ja case.0x140190f73.53
lea rcx, [0x140000000]
movzx eax, byte [rcx + rax + 0x1929f8]
mov ecx, dword [rcx + rax*4 + 0x1929bc]
lea rax, [0x140000000]
add rcx, rax
jmp rcx
test r10b, 1
jne case.0x140190f73.53
mov rbx, qword [rsp + 0x60]
lea rax, [rbp + 0x40]
cmp rbx, rax
je 0x140192893
mov eax, r15d
sub eax, dword [r14]
mov dword [rbx], eax
mov eax, dword [rsp + 0x68]
cmp eax, 0xa
jae 0x1401910f4
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jl 0x140191039
nop dword [rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
cmp eax, edx
je 0x1401928d1
add eax, eax
mov rcx, rdi
cmp eax, edx
cmovg eax, edx
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rsi, rsi
je 0x140191000
add rsi, rax
test r12, r12
je 0x140191008
add r12, rax
mov rdi, qword [rsp + 0x30]
add rdi, rax
mov qword [rsp + 0x30], rdi
test r13, r13
je 0x140191022
add r13, rax
mov qword [rsp + 0x50], r13
movsxd rax, dword [r14 + 8]
mov rcx, r15
mov edx, 0x10000
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jge 0x140190fc0
mov byte [r15], 0xf
movsxd rax, dword [r14 + 8]
inc r15
mov rcx, r15
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jl 0x1401910d9
nop word [rax + rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
cmp eax, edx
je 0x1401928d1
add eax, eax
mov rcx, rdi
cmp eax, edx
cmovg eax, edx
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rsi, rsi
je 0x1401910a0
add rsi, rax
test r12, r12
je 0x1401910a8
add r12, rax
mov rdi, qword [rsp + 0x30]
add rdi, rax
mov qword [rsp + 0x30], rdi
test r13, r13
je 0x1401910c2
add r13, rax
mov qword [rsp + 0x50], r13
movsxd rax, dword [r14 + 8]
mov rcx, r15
mov edx, 0x10000
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jge 0x140191060
mov eax, dword [rsp + 0x68]
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
mov byte [r15], al
mov r10d, dword [0x1403d8f20]
inc r15
test rsi, rsi
je 0x1401910ff
sub rsi, qword [r14]
inc rsi
sub edi, dword [r14]
mov dword [rbx + 4], esi
mov dword [rbx + 8], eax
inc eax
mov dword [rbx + 0xc], edi
add rbx, 0x10
mov dword [rsp + 0x68], eax
xor eax, eax
mov qword [rsp + 0x60], rbx
mov rdi, r15
mov qword [rsp + 0x30], r15
mov esi, eax
mov qword [rsp + 0x38], rax
mov r12d, eax
mov qword [rsp + 0x40], rax
jmp 0x140191ace
test r10b, 1
jne case.0x140190f73.53
mov rbx, qword [rsp + 0x60]
lea rax, [rbp - 0x60]
cmp rbx, rax
je 0x14019289c
movsxd rdi, dword [rbx - 4]
add rdi, qword [r14]
mov qword [rsp + 0x30], rdi
test rsi, rsi
je 0x14019117e
mov r8, r15
mov dl, 4
mov rcx, rsi
call fcn.14018faa0
mov r10d, dword [0x1403d8f20]
mov edx, 0x10000
cmp dword [rbx - 8], 0xa
jge 0x1401912c6
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jl 0x140191219
nop word [rax + rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
cmp eax, edx
je 0x1401928d1
add eax, eax
mov rcx, rdi
cmp eax, edx
cmovg eax, edx
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rsi, rsi
je 0x1401911e0
add rsi, rax
test r12, r12
je 0x1401911e8
add r12, rax
mov rdi, qword [rsp + 0x30]
add rdi, rax
mov qword [rsp + 0x30], rdi
test r13, r13
je 0x140191202
add r13, rax
mov qword [rsp + 0x50], r13
movsxd rax, dword [r14 + 8]
mov rcx, r15
mov edx, 0x10000
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jge 0x1401911a0
mov byte [r15], 0x10
movsxd rax, dword [r14 + 8]
inc r15
mov rcx, r15
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jl 0x1401912ab
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
mov ecx, 0x10000
cmp eax, ecx
je 0x1401928d1
add eax, eax
cmp eax, ecx
cmovg eax, ecx
mov rcx, rdi
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rsi, rsi
je 0x140191277
add rsi, rax
test r12, r12
je 0x14019127f
add r12, rax
mov rdi, qword [rsp + 0x30]
add rdi, rax
mov qword [rsp + 0x30], rdi
test r13, r13
je 0x140191299
add r13, rax
mov qword [rsp + 0x50], r13
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jge 0x140191232
movzx eax, byte [rbx - 8]
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
mov byte [r15], al
mov r10d, dword [0x1403d8f20]
inc r15
movsxd rax, dword [rbx - 0xc]
test eax, eax
je 0x1401912e0
mov rcx, rax
mov rax, qword [r14]
lea rsi, [rcx + rax - 1]
mov qword [rsp + 0x38], rsi
jmp 0x1401912e9
xor eax, eax
mov esi, eax
mov qword [rsp + 0x38], rax
movsxd r12, dword [rbx - 0x10]
sub rbx, 0x10
add r12, qword [r14]
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x40], r12
jmp 0x140191ace
test edx, r10d
jne case.0x140190f73.53
test r10b, 2
jne case.0x140190f73.53
test edx, r10d
jne case.0x1401900ac.22
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
add rcx, 6
cmp rcx, rax
jl 0x1401913ba
nop word [rax + rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
cmp eax, edx
je 0x1401928d1
add eax, eax
mov rcx, rdi
cmp eax, edx
cmovg eax, edx
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rsi, rsi
je 0x140191380
add rsi, rax
test r12, r12
je 0x140191388
add r12, rax
mov rdi, qword [rsp + 0x30]
add rdi, rax
mov qword [rsp + 0x30], rdi
test r13, r13
je 0x14019139d
add r13, rax
movsxd rax, dword [r14 + 8]
mov rcx, r15
mov edx, 0x10000
sub rcx, qword [r14]
add rcx, 6
cmp rcx, rax
jge 0x140191340
mov r11, qword [rsp + 0x48]
lea r8, [r15 + 6]
mov r9, r15
mov rdx, rdi
mov cl, 5
call fcn.14018fac0
xor eax, eax
add r15, 3
mov r13d, eax
mov qword [rsp + 0x50], rax
test rsi, rsi
je 0x1401913ed
mov r8, r15
mov dl, 4
mov rcx, rsi
call fcn.14018faa0
xor eax, eax
mov r10d, dword [0x1403d8f20]
mov r9, qword [rsp + 0x58]
mov rsi, r15
mov qword [rsp + 0x38], r15
add r15, 3
mov r12, rax
mov rdi, r15
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x40], rax
jmp 0x140191ac9
mov edx, r10d
and edx, 0x80
je case.0x140190f73.53
mov ecx, r10d
and ecx, 0x100
jne case.0x140190f73.53
lea rax, [r11 - 2]
cmp rax, qword [rbp - 0x80]
jne 0x14019144b
cmp r11, r9
je case.0x140190f73.53
lea rdi, [r11 - 1]
mov qword [rbp - 0x70], rdi
test r12, r12
jne 0x140191468
bt r10d, 0xf
jb 0x1401901ed
jmp case.0x140190f73.53
movzx eax, byte [r12]
cmp al, 0xc
je 0x1401914a8
cmp al, 0xd
je 0x1401914a8
cmp al, 0xe
je 0x1401914a8
cmp al, 0xf
je 0x1401914a8
cmp al, 1
jne 0x140191488
cmp byte [r12 + 1], al
je 0x1401914a8
bt r10d, 0xc
jb 0x140191493
cmp al, 0x11
je 0x1401914a8
test ecx, ecx
jne case.0x1401900ac.22
test edx, edx
jne 0x1401901ed
jmp case.0x140190f73.53
or r13d, 0xffffffff
or r12d, r13d
mov dword [rsp + 0x78], r13d
mov dword [rbp - 0x78], r12d
cmp r11, r9
je 0x140191558
movzx ebx, byte [r11]
inc r11
mov qword [rsp + 0x48], r11
test r8, r8
je 0x1401914d7
movzx ebx, byte [rbx + r8]
mov ecx, ebx
call qword [sym.imp.MSVCR100.dll_isdigit]
test eax, eax
je 0x140191542
mov r14, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x58]
mov r12, qword [rsp + 0x70]
xor esi, esi
test r13d, r13d
cmovs r13d, esi
lea eax, [r13 + r13*4]
lea r13d, [rbx + rax*2 - 0x30]
cmp r14, rdi
je 0x140191527
movzx ebx, byte [r14]
inc r14
test r12, r12
je 0x14019151b
movzx ebx, byte [rbx + r12]
mov ecx, ebx
call qword [sym.imp.MSVCR100.dll_isdigit]
test eax, eax
jne 0x1401914f4
mov rdi, qword [rbp - 0x70]
mov r12d, dword [rbp - 0x78]
mov rsi, qword [rsp + 0x38]
mov qword [rsp + 0x48], r14
mov r14, qword [rbp - 0x68]
mov dword [rsp + 0x78], r13d
mov r10d, dword [0x1403d8f20]
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
mov r8, qword [rsp + 0x70]
cmp ebx, 0x2c
jne 0x140191606
cmp r11, r9
je 0x1401915fe
movzx ebx, byte [r11]
inc r11
mov qword [rsp + 0x48], r11
test r8, r8
je 0x140191580
movzx ebx, byte [rbx + r8]
mov ecx, ebx
call qword [sym.imp.MSVCR100.dll_isdigit]
test eax, eax
je 0x1401915f7
mov r14, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x58]
mov r13, qword [rsp + 0x70]
xor esi, esi
nop dword [rax]
test r12d, r12d
cmovs r12d, esi
lea eax, [r12 + r12*4]
lea r12d, [rbx + rax*2 - 0x30]
cmp r14, rdi
je 0x1401915d2
movzx ebx, byte [r14]
inc r14
test r13, r13
je 0x1401915c6
movzx ebx, byte [rbx + r13]
mov ecx, ebx
call qword [sym.imp.MSVCR100.dll_isdigit]
test eax, eax
jne 0x1401915a0
mov rdi, qword [rbp - 0x70]
mov r13d, dword [rsp + 0x78]
mov rsi, qword [rsp + 0x38]
mov qword [rsp + 0x48], r14
mov r14, qword [rbp - 0x68]
test r12d, r12d
js 0x1401915f7
mov r10d, dword [0x1403d8f20]
jmp 0x140191609
mov r10d, dword [0x1403d8f20]
mov r12d, 0x3fff
jmp 0x140191609
mov r12d, r13d
mov ecx, r10d
and ecx, 0x100
jne 0x14019164c
cmp ebx, 0x5c
jne 0x1401901ed
mov r8, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
cmp r8, r9
je 0x1401928da
mov rdx, qword [rsp + 0x70]
movzx ebx, byte [r8]
inc r8
mov qword [rsp + 0x48], r8
test rdx, rdx
je 0x140191656
movzx ebx, byte [rbx + rdx]
jmp 0x140191656
mov r8, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
cmp ebx, 0x7d
jne 0x140191b02
test r13d, r13d
js 0x140191b02
cmp r12d, 0x3fff
jg 0x140191b02
cmp r13d, r12d
jg 0x140191b02
test ecx, ecx
je 0x140191691
cmp r8, r9
je 0x140191691
cmp byte [r8], 0x7b
je 0x140191b02
test r12d, r12d
jne 0x140191756
movsxd rax, dword [r14 + 8]
mov r12, qword [rsp + 0x40]
mov rcx, r15
sub rcx, qword [r14]
add rcx, 3
cmp rcx, rax
jl 0x140191737
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x38]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
mov ecx, 0x10000
cmp eax, ecx
je 0x1401928d1
add eax, eax
cmp eax, ecx
cmovg eax, ecx
mov rcx, rdi
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rbx, rbx
je 0x14019170a
add rbx, rax
mov qword [rsp + 0x38], rbx
test r12, r12
je 0x140191717
add r12, rax
mov qword [rsp + 0x40], r12
add qword [rsp + 0x30], rax
test rsi, rsi
je 0x140191724
add rsi, rax
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
add rcx, 3
cmp rcx, rax
jge 0x1401916c0
lea r8, [r15 + 3]
mov r9, r15
mov rdx, r12
mov cl, 4
call fcn.14018fac0
mov rdi, qword [rsp + 0x30]
add r15, 3
jmp 0x140191aa9
cmp r12d, 1
mov eax, 5
mov ebx, 0xa
cmove ebx, eax
movsxd rax, dword [r14 + 8]
movsxd rsi, ebx
mov rcx, rsi
sub rcx, qword [r14]
add rcx, r15
cmp rcx, rax
jl 0x140191818
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
mov ecx, 0x10000
cmp eax, ecx
je 0x1401928d1
add eax, eax
cmp eax, ecx
cmovg eax, ecx
mov rcx, rdi
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
mov rdi, qword [rsp + 0x38]
add r15, rax
test rdi, rdi
je 0x1401917cf
add rdi, rax
mov qword [rsp + 0x38], rdi
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x1401917e1
add rcx, rax
mov qword [rsp + 0x40], rcx
mov rdi, qword [rsp + 0x30]
mov r11, qword [rsp + 0x50]
add rdi, rax
mov qword [rsp + 0x30], rdi
test r11, r11
je 0x140191800
add r11, rax
mov qword [rsp + 0x50], r11
movsxd rax, dword [r14 + 8]
mov rcx, rsi
sub rcx, qword [r14]
add rcx, r15
cmp rcx, rax
jge 0x140191780
jmp 0x14019181d
mov rdi, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
mov r8d, ebx
mov r9, r15
mov cl, 9
mov rdx, rsi
add r8, r15
mov dword [rsp + 0x20], r13d
call fcn.14018fb20
add r15, 5
cmp r12d, 1
jle 0x1401919dc
lea r9d, [r12 - 1]
mov r8, rsi
mov dl, 0xa
mov rcx, r15
call fcn.14018faf0
movsxd rax, dword [r14 + 8]
add r15, 5
mov rcx, r15
mov ebx, 0x10000
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jl 0x14019190c
nop dword [rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
cmp eax, ebx
je 0x1401928d1
add eax, eax
mov rcx, rdi
cmp eax, ebx
cmovg eax, ebx
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
mov rdi, qword [rsp + 0x38]
add r15, rax
test rdi, rdi
je 0x1401918ca
add rdi, rax
mov qword [rsp + 0x38], rdi
test rsi, rsi
je 0x1401918d7
add rsi, rax
mov qword [rsp + 0x40], rsi
mov rdi, qword [rsp + 0x30]
mov r11, qword [rsp + 0x50]
add rdi, rax
mov qword [rsp + 0x30], rdi
test r11, r11
je 0x1401918f6
add r11, rax
mov qword [rsp + 0x50], r11
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jge 0x140191880
mov byte [r15], VariantTimeToDosDateTime
movsxd rax, dword [r14 + 8]
inc r15
mov rcx, r15
sub rcx, qword [r14]
add rcx, 2
cmp rcx, rax
jl 0x1401919bd
nop word [rax + rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
cmp eax, ebx
je 0x1401928d1
add eax, eax
mov rcx, rdi
cmp eax, ebx
cmovg eax, ebx
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
mov rdi, qword [rsp + 0x38]
add r15, rax
test rdi, rdi
je 0x14019197a
add rdi, rax
mov qword [rsp + 0x38], rdi
test rsi, rsi
je 0x140191987
add rsi, rax
mov qword [rsp + 0x40], rsi
mov rdi, qword [rsp + 0x30]
mov r11, qword [rsp + 0x50]
add rdi, rax
mov qword [rsp + 0x30], rdi
test r11, r11
je 0x1401919a6
add r11, rax
mov qword [rsp + 0x50], r11
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
add rcx, 2
cmp rcx, rax
jge 0x140191930
mov word [r15], 0xfffb
lea eax, [r12 - 1]
mov byte [r15 + 2], al
lea eax, [r12 - 1]
sar eax, 8
add r15, 4
mov byte [r15 - 1], al
movsxd rax, dword [r14 + 8]
mov r12, qword [rsp + 0x40]
mov rcx, r15
sub rcx, qword [r14]
add rcx, 5
cmp rcx, rax
jl 0x140191a8d
mov rbx, qword [rsp + 0x38]
nop dword [rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
mov ecx, 0x10000
cmp eax, ecx
je 0x1401928d1
add eax, eax
cmp eax, ecx
cmovg eax, ecx
mov rcx, rdi
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rbx, rbx
je 0x140191a4a
add rbx, rax
mov qword [rsp + 0x38], rbx
test r12, r12
je 0x140191a57
add r12, rax
mov qword [rsp + 0x40], r12
mov rdi, qword [rsp + 0x30]
mov r11, qword [rsp + 0x50]
add rdi, rax
mov qword [rsp + 0x30], rdi
test r11, r11
je 0x140191a76
add r11, rax
mov qword [rsp + 0x50], r11
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
add rcx, 5
cmp rcx, rax
jge 0x140191a00
mov r9d, 5
mov r8, r15
mov rdx, r12
mov cl, VariantTimeToDosDateTime
mov dword [rsp + 0x20], r13d
call fcn.14018fb60
add r15, 5
xor eax, eax
mov r13d, eax
mov qword [rsp + 0x50], rax
mov r10d, dword [0x1403d8f20]
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x60]
cmp r11, r9
jne 0x140190057
test rsi, rsi
je 0x140191ae9
mov r8, r15
mov dl, 4
mov rcx, rsi
call fcn.14018faa0
lea rax, [rbp - 0x60]
cmp rbx, rax
je 0x1401928e3
lea rax, str.Unmatched__
jmp 0x1401928ec
test ecx, ecx
je 0x1401901ed
test rdi, rdi
je 0x1401928a5
cmp rdi, r9
je 0x1401928da
mov r8, qword [rsp + 0x70]
movzx ebx, byte [rdi]
mov r12, qword [rsp + 0x40]
mov r13, qword [rsp + 0x50]
lea r11, [rdi + 1]
mov qword [rsp + 0x48], r11
test r8, r8
je case.0x1401900ac.22
movzx ebx, byte [rbx + r8]
jmp case.0x1401900ac.22
movsxd rax, dword [r14 + 8]
mov rcx, r15
mov r12, r15
sub rcx, qword [r14]
mov qword [rsp + 0x40], r15
inc rcx
cmp rcx, rax
jl 0x140191c01
nop dword [rax + rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
cmp eax, edx
je 0x1401928d1
add eax, eax
mov rcx, rdi
cmp eax, edx
cmovg eax, edx
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rsi, rsi
je 0x140191bb5
add rsi, rax
mov qword [rsp + 0x38], rsi
test r12, r12
je 0x140191bc2
add r12, rax
mov qword [rsp + 0x40], r12
mov rdi, qword [rsp + 0x30]
add rdi, rax
mov qword [rsp + 0x30], rdi
test r13, r13
je 0x140191bdc
add r13, rax
mov qword [rsp + 0x50], r13
movsxd rax, dword [r14 + 8]
mov rcx, r15
mov edx, 0x10000
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jge 0x140191b70
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
mov byte [r15], shutdown
mov r10d, dword [0x1403d8f20]
inc r15
jmp 0x140191ac9
movsxd rax, dword [r14 + 8]
mov rcx, r15
mov r12, r15
sub rcx, qword [r14]
mov qword [rsp + 0x40], r15
inc rcx
cmp rcx, rax
jl 0x140191cd1
nop word [rax + rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
cmp eax, edx
je 0x1401928d1
add eax, eax
mov rcx, rdi
cmp eax, edx
cmovg eax, edx
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rsi, rsi
je 0x140191c85
add rsi, rax
mov qword [rsp + 0x38], rsi
test r12, r12
je 0x140191c92
add r12, rax
mov qword [rsp + 0x40], r12
mov rdi, qword [rsp + 0x30]
add rdi, rax
mov qword [rsp + 0x30], rdi
test r13, r13
je 0x140191cac
add r13, rax
mov qword [rsp + 0x50], r13
movsxd rax, dword [r14 + 8]
mov rcx, r15
mov edx, 0x10000
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jge 0x140191c40
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
mov byte [r15], shutdown
mov r10d, dword [0x1403d8f20]
inc r15
jmp 0x140191ac9
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jl 0x140191d91
nop word [rax + rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
cmp eax, edx
je 0x1401928d1
add eax, eax
mov rcx, rdi
cmp eax, edx
cmovg eax, edx
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rsi, rsi
je 0x140191d45
add rsi, rax
mov qword [rsp + 0x38], rsi
test r12, r12
je 0x140191d52
add r12, rax
mov qword [rsp + 0x40], r12
mov rdi, qword [rsp + 0x30]
add rdi, rax
mov qword [rsp + 0x30], rdi
test r13, r13
je 0x140191d6c
add r13, rax
mov qword [rsp + 0x50], r13
movsxd rax, dword [r14 + 8]
mov rcx, r15
mov edx, 0x10000
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jge 0x140191d00
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
mov byte [r15], reloc.WSOCK32.dll_shutdown
mov r10d, dword [0x1403d8f20]
inc r15
jmp 0x140191ac9
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jl 0x140191e51
nop word [rax + rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
cmp eax, edx
je 0x1401928d1
add eax, eax
mov rcx, rdi
cmp eax, edx
cmovg eax, edx
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rsi, rsi
je 0x140191e05
add rsi, rax
mov qword [rsp + 0x38], rsi
test r12, r12
je 0x140191e12
add r12, rax
mov qword [rsp + 0x40], r12
mov rdi, qword [rsp + 0x30]
add rdi, rax
mov qword [rsp + 0x30], rdi
test r13, r13
je 0x140191e2c
add r13, rax
mov qword [rsp + 0x50], r13
movsxd rax, dword [r14 + 8]
mov rcx, r15
mov edx, 0x10000
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jge 0x140191dc0
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
mov byte [r15], 0x17
mov r10d, dword [0x1403d8f20]
inc r15
jmp 0x140191ac9
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jl 0x140191f11
nop word [rax + rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
cmp eax, edx
je 0x1401928d1
add eax, eax
mov rcx, rdi
cmp eax, edx
cmovg eax, edx
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rsi, rsi
je 0x140191ec5
add rsi, rax
mov qword [rsp + 0x38], rsi
test r12, r12
je 0x140191ed2
add r12, rax
mov qword [rsp + 0x40], r12
mov rdi, qword [rsp + 0x30]
add rdi, rax
mov qword [rsp + 0x30], rdi
test r13, r13
je 0x140191eec
add r13, rax
mov qword [rsp + 0x50], r13
movsxd rax, dword [r14 + 8]
mov rcx, r15
mov edx, 0x10000
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jge 0x140191e80
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
mov byte [r15], 0x18
mov r10d, dword [0x1403d8f20]
inc r15
jmp 0x140191ac9
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jl 0x140191fd1
nop word [rax + rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
cmp eax, edx
je 0x1401928d1
add eax, eax
mov rcx, rdi
cmp eax, edx
cmovg eax, edx
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rsi, rsi
je 0x140191f85
add rsi, rax
mov qword [rsp + 0x38], rsi
test r12, r12
je 0x140191f92
add r12, rax
mov qword [rsp + 0x40], r12
mov rdi, qword [rsp + 0x30]
add rdi, rax
mov qword [rsp + 0x30], rdi
test r13, r13
je 0x140191fac
add r13, rax
mov qword [rsp + 0x50], r13
movsxd rax, dword [r14 + 8]
mov rcx, r15
mov edx, 0x10000
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jge 0x140191f40
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
mov byte [r15], 0x19
mov r10d, dword [0x1403d8f20]
inc r15
jmp 0x140191ac9
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jl 0x140192091
nop word [rax + rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
cmp eax, edx
je 0x1401928d1
add eax, eax
mov rcx, rdi
cmp eax, edx
cmovg eax, edx
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rsi, rsi
je 0x140192045
add rsi, rax
mov qword [rsp + 0x38], rsi
test r12, r12
je 0x140192052
add r12, rax
mov qword [rsp + 0x40], r12
mov rdi, qword [rsp + 0x30]
add rdi, rax
mov qword [rsp + 0x30], rdi
test r13, r13
je 0x14019206c
add r13, rax
mov qword [rsp + 0x50], r13
movsxd rax, dword [r14 + 8]
mov rcx, r15
mov edx, 0x10000
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jge 0x140192000
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
mov byte [r15], 0x12
mov r10d, dword [0x1403d8f20]
inc r15
jmp 0x140191ac9
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jl 0x140192151
nop word [rax + rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
cmp eax, edx
je 0x1401928d1
add eax, eax
mov rcx, rdi
cmp eax, edx
cmovg eax, edx
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rsi, rsi
je 0x140192105
add rsi, rax
mov qword [rsp + 0x38], rsi
test r12, r12
je 0x140192112
add r12, rax
mov qword [rsp + 0x40], r12
mov rdi, qword [rsp + 0x30]
add rdi, rax
mov qword [rsp + 0x30], rdi
test r13, r13
je 0x14019212c
add r13, rax
mov qword [rsp + 0x50], r13
movsxd rax, dword [r14 + 8]
mov rcx, r15
mov edx, 0x10000
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jge 0x1401920c0
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
mov byte [r15], shutdown
mov r10d, dword [0x1403d8f20]
inc r15
jmp 0x140191ac9
bt r10d, 0xc
jb case.0x1401900ac.22
lea esi, [rbx - 0x30]
cmp esi, dword [rsp + 0x68]
jb 0x1401921ef
bt r10d, 0xd
jb 0x1401901ed
mov rsi, qword [rsp + 0x38]
test r13, r13
je 0x14019272b
movsx rdx, byte [r13]
mov rax, rdx
lea rcx, [rdx + r13 + 1]
cmp rcx, r15
jne 0x14019272b
cmp dl, 0x7f
je 0x14019272b
movzx ecx, byte [r11]
cmp cl, 0x2a
je 0x14019272b
cmp cl, 0x5e
je 0x14019272b
test r10b, 4
je 0x140192616
cmp cl, 0x5c
jne 0x140192628
movzx eax, byte [r11 + 1]
cmp al, 0x2b
je 0x14019272b
cmp al, 0x3f
jne 0x140192628
jmp 0x14019272b
mov rax, qword [rsp + 0x60]
lea rcx, [rbp - 0x60]
add rax, 0xfffffffffffffff8
cmp rax, rcx
jbe 0x140192216
cmp dword [rax], esi
je 0x14019217f
lea rcx, [rbp - 0x60]
sub rax, 0x10
cmp rax, rcx
ja 0x140192201
movsxd rax, dword [r14 + 8]
mov rbx, qword [rsp + 0x38]
mov rcx, r15
sub rcx, qword [r14]
mov r12, r15
mov qword [rsp + 0x40], r15
inc rcx
cmp rcx, rax
jl 0x1401922c7
nop dword [rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
cmp eax, edx
je 0x1401928d1
add eax, eax
mov rcx, rdi
cmp eax, edx
cmovg eax, edx
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rbx, rbx
je 0x140192285
add rbx, rax
mov qword [rsp + 0x38], rbx
test r12, r12
je 0x140192292
add r12, rax
mov qword [rsp + 0x40], r12
mov rdi, qword [rsp + 0x30]
add rdi, rax
mov qword [rsp + 0x30], rdi
test r13, r13
je 0x1401922ac
add r13, rax
mov qword [rsp + 0x50], r13
movsxd rax, dword [r14 + 8]
mov rcx, r15
mov edx, 0x10000
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jge 0x140192240
mov byte [r15], 0x11
movsxd rax, dword [r14 + 8]
inc r15
mov rcx, r15
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jl 0x140192377
nop word [rax + rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
cmp eax, edx
je 0x1401928d1
add eax, eax
mov rcx, rdi
cmp eax, edx
cmovg eax, edx
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rbx, rbx
je 0x140192335
add rbx, rax
mov qword [rsp + 0x38], rbx
test r12, r12
je 0x140192342
add r12, rax
mov qword [rsp + 0x40], r12
mov rdi, qword [rsp + 0x30]
add rdi, rax
mov qword [rsp + 0x30], rdi
test r13, r13
je 0x14019235c
add r13, rax
mov qword [rsp + 0x50], r13
movsxd rax, dword [r14 + 8]
mov rcx, r15
mov edx, 0x10000
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jge 0x1401922f0
mov byte [r15], sil
inc r15
jmp 0x140191ab3
test r10b, 4
jne case.0x1401900ac.14
test r8, r8
je case.0x1401900ac.22
movzx ebx, byte [rbx + r8]
jmp case.0x1401900ac.22
sub r11, 2
jmp 0x1401923a8
dec r11
mov qword [rsp + 0x48], r11
test r12, r12
je 0x140191ac4
mov rbx, qword [rsp + 0x38]
test dl, dl
je 0x14019246a
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
add rcx, 3
cmp rcx, rax
jl 0x140192457
nop word [rax + rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
mov ecx, 0x10000
cmp eax, ecx
je 0x1401928d1
add eax, eax
cmp eax, ecx
cmovg eax, ecx
mov rcx, rdi
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rbx, rbx
je 0x14019242a
add rbx, rax
mov qword [rsp + 0x38], rbx
test r12, r12
je 0x140192437
add r12, rax
mov qword [rsp + 0x40], r12
add qword [rsp + 0x30], rax
test r13, r13
je 0x140192444
add r13, rax
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
add rcx, 3
cmp rcx, rax
jge 0x1401923e0
lea r8, [r12 - 3]
mov dl, 7
mov rcx, r15
call fcn.14018faa0
add r15, 3
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
add rcx, 3
cmp rcx, rax
jl 0x1401924f7
nop dword [rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
mov ecx, 0x10000
cmp eax, ecx
je 0x1401928d1
add eax, eax
cmp eax, ecx
cmovg eax, ecx
mov rcx, rdi
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rbx, rbx
je 0x1401924ca
add rbx, rax
mov qword [rsp + 0x38], rbx
test r12, r12
je 0x1401924d7
add r12, rax
mov qword [rsp + 0x40], r12
add qword [rsp + 0x30], rax
test r13, r13
je 0x1401924e4
add r13, rax
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
add rcx, 3
cmp rcx, rax
jge 0x140192480
lea rdi, [r15 + 3]
mov r9, r15
mov rdx, r12
mov r8, rdi
mov cl, 5
call fcn.14018fac0
xor eax, eax
test sil, sil
mov rsi, qword [rsp + 0x38]
mov r15, rdi
mov r13d, eax
mov qword [rsp + 0x50], rax
jne 0x1401925fb
movsxd rax, dword [r14 + 8]
mov rcx, rdi
sub rcx, qword [r14]
add rcx, 6
cmp rcx, rax
jl 0x1401925ca
nop dword [rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
mov ecx, 0x10000
cmp eax, ecx
je 0x1401928d1
add eax, eax
cmp eax, ecx
cmovg eax, ecx
mov rcx, rdi
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rsi, rsi
je 0x14019258a
add rsi, rax
mov qword [rsp + 0x38], rsi
test r12, r12
je 0x140192597
add r12, rax
mov qword [rsp + 0x40], r12
mov rdi, qword [rsp + 0x30]
add rdi, rax
mov qword [rsp + 0x30], rdi
test r13, r13
je 0x1401925b1
add r13, rax
mov qword [rsp + 0x50], r13
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
add rcx, 6
cmp rcx, rax
jge 0x140192540
jmp 0x1401925cf
mov rdi, qword [rsp + 0x30]
lea r8, [r12 + 6]
mov r9, r15
mov rdx, r12
mov cl, 8
call fcn.14018fac0
mov r10d, dword [0x1403d8f20]
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
add r15, 3
jmp 0x140191ac9
mov r10d, dword [0x1403d8f20]
mov rdi, qword [rsp + 0x30]
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
jmp 0x140191ac9
cmp cl, 0x2b
je 0x14019272b
cmp cl, 0x3f
je 0x14019272b
test r10b, r10b
jns 0x140192648
bt r10d, 8
jae 0x140192717
xor eax, eax
cmp cl, 0x7b
sete al
test eax, eax
jne 0x14019272b
mov rdi, qword [rsp + 0x30]
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jl 0x1401926f7
nop word [rax + rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
mov ecx, 0x10000
cmp eax, ecx
je 0x1401928d1
add eax, eax
cmp eax, ecx
cmovg eax, ecx
mov rcx, rdi
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rsi, rsi
je 0x1401926ba
add rsi, rax
mov qword [rsp + 0x38], rsi
test r12, r12
je 0x1401926c7
add r12, rax
mov qword [rsp + 0x40], r12
mov rdi, qword [rsp + 0x30]
add rdi, rax
mov qword [rsp + 0x30], rdi
test r13, r13
je 0x1401926e1
add r13, rax
mov qword [rsp + 0x50], r13
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jge 0x140192670
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
mov byte [r15], bl
inc r15
inc byte [r13]
mov r10d, dword [0x1403d8f20]
jmp 0x140191ac9
cmp cl, 0x5c
jne 0x140192648
cmp byte [r11 + 1], 0x7b
jne 0x140192648
movsxd rax, dword [r14 + 8]
mov rcx, r15
mov r12, r15
sub rcx, qword [r14]
mov qword [rsp + 0x40], r15
inc rcx
cmp rcx, rax
jl 0x1401927d0
nop dword [rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
mov ecx, 0x10000
cmp eax, ecx
je 0x1401928d1
add eax, eax
cmp eax, ecx
cmovg eax, ecx
mov rcx, rdi
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rsi, rsi
je 0x14019279a
add rsi, rax
mov qword [rsp + 0x38], rsi
test r12, r12
je 0x1401927a7
add r12, rax
mov qword [rsp + 0x40], r12
mov rdi, qword [rsp + 0x30]
add rdi, rax
mov qword [rsp + 0x30], rdi
test r13, r13
je 0x1401927bc
add r13, rax
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jge 0x140192750
jmp 0x1401927d5
mov rdi, qword [rsp + 0x30]
mov byte [r15], 1
movsxd rax, dword [r14 + 8]
inc r15
mov rcx, r15
mov r13, r15
mov qword [rsp + 0x50], r15
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jl 0x140192887
nop word [rax + rax]
mov eax, dword [r14 + 8]
mov rdi, qword [r14]
mov ecx, 0x10000
cmp eax, ecx
je 0x1401928d1
add eax, eax
cmp eax, ecx
cmovg eax, ecx
mov rcx, rdi
movsxd rdx, eax
mov dword [r14 + 8], eax
call qword [sym.imp.MSVCR100.dll_realloc]
mov qword [r14], rax
test rax, rax
je 0x1401928c8
sub rax, rdi
add r15, rax
test rsi, rsi
je 0x14019284a
add rsi, rax
mov qword [rsp + 0x38], rsi
test r12, r12
je 0x140192857
add r12, rax
mov qword [rsp + 0x40], r12
mov rdi, qword [rsp + 0x30]
add rdi, rax
mov qword [rsp + 0x30], rdi
test r13, r13
je 0x140192871
add r13, rax
mov qword [rsp + 0x50], r13
movsxd rax, dword [r14 + 8]
mov rcx, r15
sub rcx, qword [r14]
inc rcx
cmp rcx, rax
jge 0x140192800
mov byte [r15], 0
inc r15
jmp 0x14019264d
lea rax, str.Nesting_too_deep
jmp 0x1401928ec
lea rax, [0x14030c9e8]
jmp 0x1401928ec
call qword [sym.imp.MSVCR100.dll___iob_func]
lea rdx, str.regex:_no_interval_beginning_to_which_to_backtrack._n
lea rcx, [rax + 0x60]
call qword [sym.imp.MSVCR100.dll_fprintf]
mov ecx, 1
call qword [sym.imp.MSVCR100.dll_exit]
int3
lea rax, str.Memory_exhausted
jmp 0x1401928ec
lea rax, str.Regular_expression_too_big
jmp 0x1401928ec
lea rax, str.Premature_end_of_regular_expression
jmp 0x1401928ec
sub r15d, dword [r14]
xor eax, eax
mov dword [r14 + 0xc], r15d
mov rcx, qword [rbp + 0x48]
xor rcx, rsp
call fcn.1402912a0
mov rbx, qword [rsp + 0x198]
add rsp, 0x150
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret