Function at 0x14011e2a0
Capabilities:
Encode data using base64
Parse credit card information

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x18]
sub rsp, 0x118
xor ebx, ebx
mov r11, r9
mov r10d, edx
mov qword [rbp], rbx
mov r8d, r10d
mov qword [rbp - 8], rbx
shr r8d, 2
mov r12, rcx
mov rax, qword [r11]
and r8d, 1
mov r15, qword [r11 + 0xe0]
mov r9d, ebx
mov rsi, qword [r11 + 0xe8]
movzx edi, bx
mov r13, qword [r11 + 0x40]
mov r14d, ebx
mov edx, dword [rax + 0x40]
mov eax, r10d
shr eax, 0x13
and eax, 1
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x58], rsi
mov dword [rbp - 0x68], ebx
mov dword [rbp - 0x30], ebx
mov dword [rbp - 0x38], edx
mov word [rbp + 0x68], bx
mov dword [rbp - 0x50], ebx
mov dword [rbp - 0x4c], ebx
mov dword [rsp + 0x54], ebx
mov dword [rsp + 0x74], ebx
mov dword [rbp - 0x48], ebx
mov dword [rbp - 0x78], eax
mov dword [rbp - 0x34], r8d
mov qword [rsp + 0x78], r13
mov qword [rbp + 8], rbx
test dl, 8
je 0x14011e355
mov dword [r15], 0x80090000
jmp 0x14011e361
test dl, 4
je 0x14011e372
mov dword [r15], 0x80180005
mov dword [r15 + 4], 0x801a0000
add r15, 8
mov qword [rsp + 0x60], r15
mov qword [rbp - 0x28], rax
bt r10d, 0x19
jae 0x14011e471
cmp rcx, r13
jae 0x140120ffb
mov r9d, r8d
mov ecx, 0xfc00
mov ebx, 0x10000
mov r10, r14
nop word [rax + rax]
cmp r15, rsi
jae 0x14011e467
movzx edx, word [r12]
mov r8, r12
add r12, 2
test rax, rax
je 0x14011e3e5
mov eax, edx
and eax, ecx
cmp eax, 0xd800
jne 0x14011e3e5
movzx ecx, word [r12]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
add edx, ebx
add r12, 2
test r9, r9
je 0x14011e444
mov rcx, r15
test r10, r10
je 0x14011e417
mov rax, r8
sub rax, qword [r11 + 0x38]
sar rax, 1
sub eax, dword [r10 + 4]
mov dword [r10 + 8], eax
lea rax, [r15 - 0x10]
cmp r10, rax
jne 0x14011e417
cmp dword [r10 + 0xc], 0xff
je 0x14011e431
mov r10, r15
mov dword [r15], 0x80060000
lea rcx, [r15 + 0x10]
mov dword [r15 + 8], r14d
mov dword [r15 + 0xc], 0xff
sub r8, qword [r11 + 0x38]
mov r15, rcx
sar r8, 1
mov dword [r10 + 4], r8d
mov qword [rsp + 0x68], r10
mov rax, qword [rbp - 0x28]
mov ecx, 0xfc00
mov dword [r15], edx
add r15, 4
cmp r12, r13
jb 0x14011e3a0
mov r9, qword [rsp + 0x68]
jmp 0x140120ff4
mov edx, 0xa3
jmp 0x1401210a5
mov r8, qword [r11 + 0x50]
movabs rax, 0xaaaaaaaaaaaaaaab
add r8, r8
mov qword [rbp - 0x58], rbx
mul r8
mov rcx, r8
shr rdx, 3
lea rax, [rdx + rdx*2]
shl rax, 2
sub rcx, rax
mov rax, qword [r11 + 0x28]
sub rax, rcx
mov ecx, 0x80
add rax, r8
mov r8d, r10d
or r8d, ecx
mov qword [rbp - 0x10], rax
mov eax, r10d
movzx ecx, bx
and eax, 0x1000000
cmove r8d, r10d
mov r10d, 0xfc00
mov dword [rsp + 0x50], r8d
jmp case.default.0x14011ef6b
mov r13, rbx
jmp case.default.0x14011ef6b
mov r8d, dword [rsp + 0x50]
mov r9, qword [rsp + 0x68]
mov r10d, 0xfc00
mov rsi, qword [rsp + 0x58]
nop word [rax + rax]
movzx edi, cx
cmp r12, r13
jae 0x140120fe6
cmp r15, rsi
jae 0x14011e467
mov rdx, qword [r11]
movzx eax, cx
cmp eax, dword [rdx + 0x3c]
ja 0x140120fdc
movzx esi, word [r12]
mov rbx, r12
add r12, 2
mov dword [rsp + 0x70], esi
cmp dword [rbp - 0x78], 0
mov qword [rbp + 0x60], r12
je 0x14011e56a
mov eax, esi
and eax, r10d
cmp eax, 0xd800
jne 0x14011e56a
movzx ecx, word [r12]
and esi, 0x3ff
mov eax, esi
and ecx, 0x3ff
shl eax, 0xa
mov esi, ecx
movzx ecx, word [rbp + 0x68]
or esi, eax
add esi, 0x10000
add r12, 2
mov dword [rsp + 0x70], esi
mov qword [rbp + 0x60], r12
cmp dword [rsp + 0x74], 0
je 0x14011e64c
cmp esi, 0x5c
jne 0x14011e598
cmp r12, r13
jae 0x14011e598
cmp word [r12], 0x45
jne 0x14011e598
mov dword [rsp + 0x74], 0
add r12, 2
jmp 0x14011e4e5
cmp dword [rbp - 0x4c], 0
jg 0x14011eaba
cmp dword [rbp - 0x48], 0
jne 0x14011e632
mov ecx, dword [rbp - 0x50]
mov eax, ecx
dec ecx
mov dword [rbp - 0x50], ecx
test eax, eax
jg 0x14011e62c
mov rcx, r15
test r9, r9
je 0x14011e5d4
mov rax, rbx
sub rax, qword [r11 + 0x38]
sar rax, 1
sub eax, dword [r9 + 4]
mov dword [r9 + 8], eax
cmp dword [rbp - 0x34], 0
jne 0x14011e5df
xor r9d, r9d
jmp 0x14011e624
test r9, r9
je 0x14011e5fa
lea rax, [r15 - 0x10]
cmp r9, rax
mov eax, 0xff
jne 0x14011e5ff
cmp dword [r9 + 0xc], eax
je 0x14011e619
jmp 0x14011e5ff
mov eax, 0xff
mov r9, r15
mov dword [r15], 0x80060000
lea rcx, [r15 + 0x10]
mov dword [r15 + 8], 0
mov dword [r15 + 0xc], eax
sub rbx, qword [r11 + 0x38]
sar rbx, 1
mov dword [r9 + 4], ebx
mov qword [rsp + 0x68], r9
mov r15, rcx
mov r14d, 1
xor edx, edx
mov dword [rbp - 0x68], edx
movzx ecx, word [rbp + 0x68]
mov dword [r15], esi
add r15, 4
mov qword [rsp + 0x60], r15
jmp 0x14011e4e5
cmp dword [rbp - 0x48], 0
je 0x14011e7b5
mov eax, r8d
and eax, 0x400080
cmp eax, 0x400080
jne 0x14011e6b2
mov eax, 0xff
cmp esi, eax
jbe 0x14011e681
mov eax, esi
or eax, 1
cmp eax, 0x200f
je 0x14011e681
cmp eax, 0x2029
jne 0x14011e6b2
test esi, 0xffffff00
jne 0x14011e7b5
cmp esi, 0x23
je 0x14011e7b5
mov rax, qword [r11 + 0x20]
mov ecx, esi
test byte [rsi + rax], 1
jne 0x14011e7b5
cmp esi, 0x85
je 0x14011e7b5
cmp esi, 0x29
je 0x14011e755
cmp esi, 0x5c
jne 0x14011e637
bt r8d, 0x16
jae 0x14011e726
mov eax, dword [rdx + 0x40]
lea r9, [rsp + 0x54]
mov qword [rsp + 0x38], r11
lea rcx, [rbp + 0x60]
mov dword [rsp + 0x30], 0
mov rdx, r13
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r8d
lea r8, [rsp + 0x70]
call fcn.1401178b0
mov edx, dword [rsp + 0x54]
mov ecx, eax
test edx, edx
jne 0x140120f9b
mov r12, qword [rbp + 0x60]
mov r10d, 0xfc00
mov esi, dword [rsp + 0x70]
mov r11, qword [rbp + 0x78]
mov r9, qword [rsp + 0x68]
mov r8d, dword [rsp + 0x50]
jmp 0x14011e728
xor ecx, ecx
test ecx, ecx
je 0x14011e637
mov rsi, qword [rsp + 0x58]
sub ecx, 0x19
je 0x14011e7ac
sub ecx, 1
jne 0x140120e22
movzx ecx, word [rbp + 0x68]
mov eax, 1
mov dword [rsp + 0x74], eax
jmp case.default.0x14011ef6b
xor edi, edi
mov rax, r12
sub rax, qword [rbp + 8]
mov ecx, 0xffff
sar rax, 1
dec rax
mov dword [rbp - 0x48], edi
cmp rax, rcx
jg 0x140120e2c
mov rdx, qword [rbp]
mov rax, r15
mov ebx, dword [rbp - 0x30]
sub rax, rdx
movzx ecx, word [rbp + 0x68]
mov rsi, qword [rsp + 0x58]
sar rax, 2
dec eax
mov dword [rdx], eax
test ebx, ebx
je case.default.0x14011ef6b
mov dword [r15], ebx
mov ecx, edi
add r15, 4
mov dword [rbp - 0x30], ecx
mov qword [rsp + 0x60], r15
movzx ecx, word [rbp + 0x68]
jmp case.default.0x14011ef6b
cmp esi, 0x5c
jne 0x14011e7ea
cmp r12, r13
jae 0x14011e7ea
movzx eax, word [r12]
cmp ax, 0x51
je 0x14011e7d0
cmp ax, 0x45
jne 0x14011e7ea
movzx ecx, word [rbp + 0x68]
xor ebx, ebx
cmp ax, 0x51
sete bl
add r12, 2
mov dword [rsp + 0x74], ebx
jmp 0x14011e4e5
test r8b, r8b
jns 0x14011e941
cmp esi, 0x100
jae 0x14011e80f
mov rax, qword [r11 + 0x20]
mov ecx, esi
movzx ecx, word [rbp + 0x68]
test byte [rsi + rax], 1
jne 0x14011e4e5
movzx ecx, word [rbp + 0x68]
cmp esi, 0x85
je 0x14011e4e5
mov eax, esi
or eax, 1
cmp eax, 0x200f
je 0x14011e4e5
cmp eax, 0x2029
je 0x14011e4e5
cmp esi, 0x23
jne 0x14011e941
mov rsi, qword [rsp + 0x58]
cmp r12, r13
jae case.default.0x14011ef6b
mov edx, dword [r11 + 0x100]
test edx, edx
je 0x14011e8a9
mov r8, qword [r11 + 0x40]
cmp r12, r8
jae 0x14011e8e3
mov eax, dword [rbp - 0x78]
lea rbx, [r11 + 0x104]
mov r9, rbx
mov dword [rsp + 0x20], eax
mov rcx, r12
call fcn.140155f60
mov r11, qword [rbp + 0x78]
mov r10d, 0xfc00
test eax, eax
je 0x14011e8e3
mov eax, dword [rbx]
mov r8d, dword [rsp + 0x50]
mov r9, qword [rsp + 0x68]
movzx ecx, word [rbp + 0x68]
lea r12, [r12 + rax*2]
jmp 0x14011e4e5
lea rbx, [r11 + 0x104]
mov ecx, dword [rbx]
imul rax, rcx, 0xfffffffffffffffe
add rax, qword [r11 + 0x40]
cmp r12, rax
ja 0x14011e8e3
movzx eax, word [r11 + 0x110]
cmp word [r12], ax
jne 0x14011e8e3
cmp ecx, 1
je 0x14011e890
movzx eax, word [r11 + 0x112]
cmp word [r12 + 2], ax
je 0x14011e890
add r12, 2
cmp dword [rbp - 0x78], 0
je 0x14011e920
mov r9, qword [rsp + 0x68]
mov r8d, dword [rsp + 0x50]
movzx ecx, word [rbp + 0x68]
mov rsi, qword [rsp + 0x58]
cmp r12, r13
jae case.default.0x14011ef6b
movzx eax, word [r12]
mov ecx, 0xdc00
and ax, r10w
cmp ax, cx
jne 0x14011e920
add r12, 2
mov r9, qword [rsp + 0x68]
mov r8d, dword [rsp + 0x50]
movzx ecx, word [rbp + 0x68]
mov rsi, qword [rsp + 0x58]
cmp r12, r13
jb 0x14011e851
jmp case.default.0x14011ef6b
cmp esi, 0x28
jne 0x14011e992
mov rax, r13
sub rax, r12
and rax, 0xfffffffffffffffe
cmp rax, 4
jl 0x14011e9dd
cmp word [r12], 0x3f
jne 0x14011e9dd
cmp word [r12 + 2], 0x23
jne 0x14011e9dd
nop dword [rax + rax]
add r12, 2
cmp r12, r13
jae 0x140120e3a
cmp word [r12], 0x29
jne 0x14011e970
movzx ecx, word [rbp + 0x68]
add r12, 2
jmp 0x14011e4e5
lea eax, [rsi - 0x2a]
cmp eax, 1
jbe 0x14011ea62
cmp esi, 0x3f
je 0x14011ea62
cmp esi, 0x7b
jne 0x14011e9dd
lea rax, [rsp + 0x54]
mov qword [rbp - 0x70], r12
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
lea rcx, [rbp - 0x70]
mov rdx, r13
call fcn.140122910
test eax, eax
jne 0x14011ea62
mov r11, qword [rbp + 0x78]
mov r9, qword [rsp + 0x68]
mov ecx, dword [rbp - 0x50]
mov eax, ecx
dec ecx
mov dword [rbp - 0x50], ecx
test eax, eax
jg 0x14011ea62
mov rcx, r15
test r9, r9
je 0x14011ea05
mov rax, rbx
sub rax, qword [r11 + 0x38]
sar rax, 1
sub eax, dword [r9 + 4]
mov dword [r9 + 8], eax
cmp dword [rbp - 0x34], 0
jne 0x14011ea10
xor r9d, r9d
jmp 0x14011ea55
test r9, r9
je 0x14011ea2b
lea rax, [r15 - 0x10]
cmp r9, rax
mov eax, 0xff
jne 0x14011ea30
cmp dword [r9 + 0xc], eax
je 0x14011ea4a
jmp 0x14011ea30
mov eax, 0xff
mov r9, r15
mov dword [r15], 0x80060000
lea rcx, [r15 + 0x10]
mov dword [r15 + 8], 0
mov dword [r15 + 0xc], eax
sub rbx, qword [r11 + 0x38]
sar rbx, 1
mov dword [r9 + 4], ebx
mov qword [rsp + 0x68], r9
mov r15, rcx
mov qword [rsp + 0x60], rcx
mov edx, dword [rbp - 0x4c]
test edx, edx
jle 0x14011eb02
cmp esi, 0x28
jne 0x14011eaba
mov rax, r13
sub rax, r12
and rax, 0xfffffffffffffffe
cmp rax, 6
jl 0x14011eaba
movzx eax, word [r12]
cmp ax, 0x3f
je 0x14011ea93
cmp ax, 0x2a
jne 0x14011eaba
cmp ax, 0x2a
jne 0x14011eac8
movzx eax, word [r12 + 2]
mov ecx, 0xff
cmp ax, cx
ja 0x14011eaba
mov r11, qword [rbp + 0x78]
movzx ecx, ax
mov rax, qword [r11 + 0x20]
test byte [rcx + rax], 4
jne 0x14011eb06
sub r12, 2
mov edx, 0x80
jmp 0x1401210a5
movzx ecx, word [r12 + 2]
sub ecx, 0x21
je 0x14011eb02
sub ecx, 0x1b
je 0x14011eaf0
sub ecx, 1
je 0x14011eb02
cmp ecx, 6
jne 0x14011eaba
xor eax, eax
cmp edx, 2
sete al
test eax, eax
je 0x14011eaba
jmp 0x14011eb02
movzx eax, word [r12 + 4]
cmp ax, 0x3d
je 0x14011eb02
cmp ax, 0x21
jne 0x14011eaba
mov r11, qword [rbp + 0x78]
mov eax, dword [rbp - 0x68]
xor ecx, ecx
mov dword [rbp - 0x4c], 0
mov r13d, edx
mov dword [rbp - 0x70], ecx
mov ebx, r14d
mov dword [rbp - 0x68], ecx
mov edx, eax
mov r14d, ecx
test eax, eax
je 0x14011eb66
cmp esi, 0x3f
je 0x14011eb31
cmp esi, 0x2b
jne 0x14011eb66
cmp esi, 0x3f
mov ecx, 0x10000
mov r8d, 0x20000
cmove ecx, r8d
add ecx, eax
mov rax, 0xfffffffffffffffc
cmp edx, 0x803d0000
mov rdx, 0xfffffffffffffff4
cmove rax, rdx
mov dword [rax + r15], ecx
jmp 0x140120e04
lea eax, [rsi - 0x24]
cmp eax, 0x58
ja case.0x14011eb8d.37
lea r8, [0x140000000]
movzx eax, byte [r8 + rax + 0x121104]
mov ecx, dword [r8 + rax*4 + 0x1210d0]
add rcx, r8
jmp rcx
mov rax, qword [r11]
lea r9, [rsp + 0x54]
mov r13, qword [rsp + 0x78]
lea r8, [rsp + 0x70]
mov qword [rsp + 0x38], r11
lea rcx, [rbp + 0x60]
mov dword [rsp + 0x30], r14d
mov rdx, r13
mov eax, dword [rax + 0x40]
mov rsi, r12
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x20], eax
call fcn.1401178b0
mov edx, dword [rsp + 0x54]
mov edi, eax
mov r12, qword [rbp + 0x60]
mov rbx, qword [rbp + 0x78]
test edx, edx
jne 0x14011ebe8
mov edx, dword [rsp + 0x70]
xor r8d, r8d
jmp 0x14011ec52
mov rbx, qword [rbp + 0x78]
test byte [rbp - 0x38], 2
je 0x1401210a5
mov qword [rbp + 0x60], rsi
mov r12, rsi
cmp rsi, r13
jb 0x14011ec05
mov edx, 0x5c
jmp 0x14011ec4c
lea r12, [rsi + 2]
movzx edx, word [rsi]
mov qword [rbp + 0x60], r12
cmp dword [rbp - 0x78], r14d
je 0x14011ec4c
mov eax, edx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x14011ec4c
movzx ecx, word [r12]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
add edx, 0x10000
add r12, 2
mov qword [rbp + 0x60], r12
xor r8d, r8d
mov edi, r8d
test edi, edi
je 0x14011f030
js 0x14011ef9c
lea eax, [rdi - 6]
cmp eax, 0x16
ja case.0x14011ec87.13
lea rdx, [0x140000000]
cdqe
movzx eax, byte [rdx + rax + 0x121178]
mov ecx, dword [rdx + rax*4 + 0x121160]
add rcx, rdx
jmp rcx
mov r8d, dword [rsp + 0x50]
bt r8d, 0x14
jae 0x14011ee1f
mov edx, 0xb7
mov dword [rsp + 0x54], edx
jmp 0x14011ebe8
mov word [rbp - 0x70], r8w
lea rax, [rsp + 0x54]
mov word [rsp + 0x70], r8w
lea r9, [rsp + 0x70]
lea r8, [rbp - 0x70]
mov qword [rsp + 0x28], rbx
lea rdx, [rbp - 0x20]
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0x60]
call fcn.14011d910
test eax, eax
jne 0x14011ee4f
mov r12, qword [rbp + 0x60]
mov edx, dword [rsp + 0x54]
jmp 0x14011ebe8
cmp r12, r13
jae 0x14011ee06
movzx eax, word [r12]
cmp ax, 0x7b
je 0x14011ed10
cmp ax, 0x3c
je 0x14011ed16
cmp ax, 0x27
jne 0x14011ee06
cmp ax, 0x3c
jne 0x14011ed1d
mov ebx, 0x3e
jmp 0x14011ed2e
cmp ax, 0x27
mov ebx, 0x7d
mov eax, 0x27
cmove ebx, eax
cmp edi, 0x1b
jne 0x14011edb0
cmp ebx, 0x7d
je 0x14011edb0
lea rax, [r12 + 2]
mov r9d, 0xffff
mov qword [rsp + 0x60], rax
lea rcx, [rsp + 0x60]
lea rax, [rsp + 0x54]
mov rdx, r13
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x80]
mov qword [rsp + 0x28], rax
mov rax, qword [rbp + 0x78]
mov dword [rsp + 0x20], 0xa1
mov r8d, dword [rax + 0xd4]
call fcn.1401227d0
test eax, eax
je 0x14011eda4
mov rcx, qword [rsp + 0x60]
cmp rcx, r13
jae 0x14011ed94
movzx eax, word [rcx]
cmp eax, ebx
je 0x14011ee92
mov eax, 0x9d
mov edx, eax
mov dword [rsp + 0x54], eax
jmp 0x14011ebe4
mov edx, dword [rsp + 0x54]
test edx, edx
jne 0x14011ebe4
mov rax, qword [rbp + 0x78]
lea rcx, [rbp + 0x60]
mov r8d, dword [rbp - 0x78]
mov r9d, ebx
mov qword [rsp + 0x40], rax
mov rdx, r13
lea rax, [rsp + 0x54]
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x7c]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x20], rax
call fcn.140122540
test eax, eax
jne 0x14011ee9d
mov r12, qword [rbp + 0x60]
mov edx, dword [rsp + 0x54]
jmp 0x14011ebe4
cmp edi, 0x1b
mov edx, 0xa9
mov eax, 0x9d
cmove edx, eax
mov dword [rsp + 0x54], edx
jmp 0x14011ebe8
mov r14d, 1
mov r11, qword [rbp + 0x78]
lea eax, [rdi - 0x7fe80000]
mov r9, qword [rsp + 0x68]
mov r10d, 0xfc00
movzx ecx, word [rbp + 0x68]
mov dword [r15], eax
add r15, 4
mov qword [rsp + 0x60], r15
jmp 0x14011e4e5
cmp dword [rbp - 0x20], r14d
je 0x14011ee60
xor eax, eax
cmp edi, 0xf
sete al
lea edi, [rax + 0xf]
movzx ecx, word [rbp - 0x70]
lea eax, [rdi - 0x7fe80000]
mov r12, qword [rbp + 0x60]
mov r14d, 1
mov r11, qword [rbp + 0x78]
mov dword [r15], eax
movzx eax, word [rsp + 0x70]
shl ecx, 0x10
or ecx, eax
mov dword [r15 + 4], ecx
add r15, 8
jmp 0x14011f04f
mov eax, dword [rbp - 0x80]
mov r12, rcx
jmp 0x140120a85
cmp edi, 0x1c
je 0x14011eeac
mov eax, 0x80210000
cmp ebx, 0x7d
jne 0x14011eeb1
mov eax, 0x80040000
mov dword [r15], eax
mov eax, dword [rbp - 0x7c]
mov r14d, 1
mov rcx, qword [rbp - 0x60]
mov r12, qword [rbp + 0x60]
mov r11, qword [rbp + 0x78]
mov dword [r15 + 4], eax
mov rax, rcx
shr rax, 0x20
mov dword [r15 + 8], eax
mov dword [r15 + 0xc], ecx
add r15, 0x10
jmp 0x14011f04f
mov r14d, 1
mov r11, qword [rbp + 0x78]
lea eax, [rdi - 0x7fe80000]
mov dword [r15], eax
jmp 0x14011f04b
mov r8d, dword [rsp + 0x50]
mov eax, 0x20000
mov r14d, 1
test eax, r8d
je 0x14011ee25
lea eax, [rdi - 7]
test eax, 0xfffffff9
jne 0x14011ef2a
mov eax, 0x80180010
cmp edi, 0xd
jne 0x14011ef2f
mov eax, 0x8018000f
mov r11, qword [rbp + 0x78]
mov r10d, 0xfc00
mov r9, qword [rsp + 0x68]
movzx ecx, word [rbp + 0x68]
mov rsi, qword [rsp + 0x58]
mov dword [r15], eax
add r15, 4
lea eax, [rdi - 6]
mov qword [rsp + 0x60], r15
cmp eax, 5
ja case.default.0x14011ef6b
cdqe
mov ecx, dword [rdx + rax*4 + 0x121190]
add rcx, rdx
jmp rcx
mov dword [r15], 0x3000d
jmp 0x14011ef86
mov dword [r15], 0x60000
jmp 0x14011ef86
mov dword [r15], 0x80000
add r15, 4
mov qword [rsp + 0x60], r15
mov r11, qword [rbp + 0x78]
movzx ecx, word [rbp + 0x68]
jmp case.default.0x14011ef6b
mov r11, qword [rbp + 0x78]
neg edi
mov rcx, r12
mov eax, edi
or eax, 0x80030000
sub rcx, qword [r11 + 0x38]
sar rcx, 1
dec rcx
mov dword [r15], eax
add r15, 4
mov qword [rbp - 0x60], rcx
mov qword [rsp + 0x60], r15
cmp edi, 0xa
jge 0x14011effa
movsxd rax, edi
cmp qword [r11 + rax*8 + 0x58], 0xffffffffffffffff
jne 0x14011f011
mov r9, qword [rsp + 0x68]
mov r14d, 1
mov r8d, dword [rsp + 0x50]
mov r10d, 0xfc00
mov qword [r11 + rax*8 + 0x58], rcx
movzx ecx, word [rbp + 0x68]
jmp 0x14011e4e5
mov rax, rcx
shr rax, 0x20
mov dword [r15], eax
mov dword [r15 + 4], ecx
add r15, 8
mov qword [rsp + 0x60], r15
mov r9, qword [rsp + 0x68]
mov r14d, 1
mov r8d, dword [rsp + 0x50]
mov r10d, 0xfc00
movzx ecx, word [rbp + 0x68]
jmp 0x14011e4e5
mov r11, qword [rbp + 0x78]
mov r14d, 1
mov dword [r15], edx
jmp 0x14011f04b
mov dword [r15], 0x80090000
mov r13, qword [rsp + 0x78]
add r15, 4
mov qword [rsp + 0x60], r15
mov r9, qword [rsp + 0x68]
mov r10d, 0xfc00
mov r8d, dword [rsp + 0x50]
movzx ecx, word [rbp + 0x68]
jmp 0x14011e4e5
mov r13, qword [rsp + 0x78]
mov r10d, 0xfc00
mov r9, qword [rsp + 0x68]
mov r8d, dword [rsp + 0x50]
movzx ecx, word [rbp + 0x68]
mov dword [r15], 0x80160000
add r15, 4
mov qword [rsp + 0x60], r15
jmp 0x14011e4e5
mov dword [r15], 0x80170000
mov r14d, 1
jmp 0x14011f046
mov r13, qword [rsp + 0x78]
mov edx, 0x80340000
jmp 0x14011f11e
mov r13, qword [rsp + 0x78]
mov edx, 0x80370000
jmp 0x14011f11e
mov r13, qword [rsp + 0x78]
mov edx, 0x803a0000
jmp 0x14011f11e
mov r13, qword [rsp + 0x78]
lea rax, [rsp + 0x54]
mov rdx, r13
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x18]
lea r8, [rbp - 0x1c]
lea rcx, [rbp + 0x60]
call fcn.140122910
test eax, eax
jne 0x14011f115
mov edx, dword [rsp + 0x54]
test edx, edx
jne 0x140120f9b
mov r12, qword [rbp + 0x60]
lea r14d, [rax + 1]
mov r11, qword [rbp + 0x78]
mov dword [r15], esi
jmp 0x14011f04b
mov r12, qword [rbp + 0x60]
mov edx, 0x803d0000
mov dword [rbp - 0x68], edx
test ebx, ebx
je 0x140120e44
cmp dword [r15 - 4], 0x802a0000
lea rcx, [r15 - 4]
jne 0x14011f160
mov rbx, qword [rbp - 8]
cmp rcx, rbx
jb 0x14011f14e
mov eax, dword [rcx]
mov dword [rcx + 4], eax
sub rcx, 4
cmp rcx, rbx
jae 0x14011f140
mov dword [rbx], 0x801a0000
mov dword [r15 + 4], 0x80190000
add r15, 8
mov r11, qword [rbp + 0x78]
mov r10d, 0xfc00
mov r9, qword [rsp + 0x68]
mov r8d, dword [rsp + 0x50]
movzx ecx, word [rbp + 0x68]
mov dword [r15], edx
add r15, 4
cmp esi, 0x7b
mov qword [rsp + 0x60], r15
mov rsi, qword [rsp + 0x58]
jne case.default.0x14011ef6b
mov eax, dword [rbp - 0x1c]
mov dword [r15], eax
mov eax, dword [rbp - 0x18]
mov dword [r15 + 4], eax
add r15, 8
mov qword [rsp + 0x60], r15
jmp case.default.0x14011ef6b
mov r13, qword [rsp + 0x78]
mov r10d, 1
mov rdi, r13
mov r14d, r10d
sub rdi, r12
mov rax, rdi
and rax, 0xfffffffffffffffe
cmp rax, 0xc
jl 0x14011f29c
lea r8d, [r10 + 5]
mov rcx, r12
lea rdx, [0x140319508]
call fcn.1401545d0
test eax, eax
je 0x14011f206
mov r8d, 6
lea rdx, [0x140319510]
mov rcx, r12
call fcn.1401545d0
test eax, eax
jne 0x14011f296
mov dword [r15], 0x80180005
add r15, 4
cmp word [r12 + 4], 0x3c
jne 0x14011f223
mov dword [r15], 0x80230000
jmp 0x14011f23f
mov eax, 0x80250000
mov dword [r15], eax
mov rax, qword [rbp + 0x70]
mov dword [rax], r14d
xor eax, eax
mov dword [r15 + 4], eax
add r15, 8
mov dword [r15], eax
mov r8d, dword [rsp + 0x50]
lea rax, [r15 + 4]
mov ecx, 0x20000
test ecx, r8d
jne 0x14011f25a
mov dword [rax], 0x8018000b
jmp 0x14011f26a
mov dword [rax], 0x80180010
add rax, 4
mov dword [rax], 0x80000
mov r11, qword [rbp + 0x78]
lea r15, [rax + 8]
mov r9, qword [rsp + 0x68]
add r12, 0xc
movzx ecx, word [rbp + 0x68]
mov r10d, 0xfc00
mov qword [rsp + 0x60], r15
mov dword [rax + 4], 0x80190000
jmp 0x14011e4e5
mov r10d, 1
cmp r12, r13
jae 0x14011f339
movzx r9d, word [r12]
cmp r9w, 0x3d
ja 0x14011f339
movabs rcx, 0x2400400000000000
bt rcx, r9
jae 0x14011f339
lea rcx, [r12 + 2]
mov rax, r13
sub rax, rcx
and rax, 0xfffffffffffffffe
cmp rax, 4
jl 0x14011f339
nop word [rax + rax]
movzx r8d, word [rcx]
cmp r8w, 0x5c
jne 0x14011f2ff
movzx eax, word [rcx + 2]
sub ax, r8w
cmp ax, r14w
ja 0x14011f2ff
add rcx, 2
jmp 0x14011f325
cmp r8w, 0x5b
jne 0x14011f30d
cmp word [rcx + 2], r9w
je 0x14011f339
cmp r8w, 0x5d
je 0x14011f339
cmp r8w, r9w
jne 0x14011f325
cmp word [rcx + 2], 0x5d
je 0x140120e52
add rcx, 2
mov rax, r13
sub rax, rcx
and rax, 0xfffffffffffffffe
cmp rax, 4
jge 0x14011f2e0
xor edx, edx
mov ebx, edx
cmp r12, r13
jae 0x14011f42c
nop word [rax + rax]
movzx esi, word [r12]
sub rdi, 2
add r12, 2
mov dword [rsp + 0x70], esi
cmp qword [rbp - 0x28], 0
mov qword [rbp + 0x60], r12
je 0x14011f3aa
mov eax, esi
and eax, 0xfc00
cmp eax, 0xd800
jne 0x14011f3aa
movzx ecx, word [r12]
and esi, 0x3ff
mov eax, esi
and ecx, 0x3ff
shl eax, 0xa
add r12, 2
mov esi, ecx
mov qword [rbp + 0x60], r12
or esi, eax
add esi, 0x10000
mov dword [rsp + 0x70], esi
sub rdi, 2
cmp esi, 0x5c
jne 0x14011f3fe
cmp r12, r13
jae 0x14011f3ca
cmp word [r12], 0x45
jne 0x14011f3ca
add r12, 2
mov qword [rbp + 0x60], r12
sub rdi, 2
jmp 0x14011f41e
mov rax, rdi
and rax, 0xfffffffffffffffe
cmp rax, 6
jl 0x14011f455
mov r8d, 3
lea rdx, [0x140319518]
mov rcx, r12
call fcn.1401545d0
test eax, eax
jne 0x14011f455
add r12, 6
mov qword [rbp + 0x60], r12
sub rdi, 6
jmp 0x14011f41e
test dword [rsp + 0x50], 0x1000000
je 0x14011f412
cmp esi, 9
je 0x14011f41e
cmp esi, 0x20
je 0x14011f41e
test ebx, ebx
jne 0x14011f42a
cmp esi, 0x5e
jne 0x14011f42a
mov ebx, r10d
mov r10d, r14d
cmp r12, r13
jb 0x14011f350
xor edx, edx
mov r11, qword [rbp + 0x78]
cmp esi, 0x5d
jne 0x14011f45b
test byte [r11 + 0xcc], r14b
je 0x14011f45b
test ebx, ebx
mov eax, 0x800b0000
mov ecx, 0x800c0000
cmovne eax, ecx
mov dword [r15], eax
jmp 0x14011f04b
mov r11, qword [rbp + 0x78]
xor edx, edx
test ebx, ebx
mov eax, 0x800a0000
mov ebx, dword [rsp + 0x74]
mov ecx, 0x800e0000
cmovne eax, ecx
mov r14d, edx
mov dword [r15], eax
mov r8d, 1
add r15, 4
nop
mov r10d, r8d
test ebx, ebx
je 0x14011f4b4
cmp esi, 0x5c
jne 0x14011f58d
cmp r12, r13
jae 0x14011f58d
cmp word [r12], 0x45
jne 0x14011f58d
mov ebx, edx
mov dword [rsp + 0x74], edx
add r12, 2
jmp 0x14011f682
mov edi, dword [rsp + 0x50]
bt edi, 0x18
jae 0x14011f4d0
cmp esi, 9
je 0x14011f682
cmp esi, 0x20
je 0x14011f682
cmp esi, 0x5b
jne 0x14011f763
mov rax, r13
sub rax, r12
and rax, 0xfffffffffffffffe
cmp rax, 6
jl 0x14011f58d
movzx r8d, word [r12]
cmp r8w, 0x3d
ja 0x14011f587
movzx eax, r8w
movabs rcx, 0x2400400000000000
bt rcx, rax
jae 0x14011f587
lea r9, [r12 + 2]
mov rax, r13
sub rax, r9
mov rbx, r9
and rax, 0xfffffffffffffffe
cmp rax, 4
jl 0x14011f583
nop dword [rax]
movzx edx, word [rbx]
cmp dx, 0x5c
jne 0x14011f54f
movzx eax, word [rbx + 2]
lea rcx, [rbx + 2]
sub ax, dx
cmp ax, 1
ja 0x14011f54f
mov rbx, rcx
jmp 0x14011f56f
cmp dx, 0x5b
jne 0x14011f55c
cmp word [rbx + 2], r8w
je 0x14011f583
cmp dx, 0x5d
je 0x14011f583
cmp dx, r8w
jne 0x14011f56f
cmp word [rbx + 2], 0x5d
je 0x14011f5b4
add rbx, 2
mov rax, r13
sub rax, rbx
and rax, 0xfffffffffffffffe
cmp rax, 4
jge 0x14011f530
mov ebx, dword [rsp + 0x74]
mov r8d, 1
xor r11d, r11d
cmp r14d, 1
jne 0x14011fa39
mov eax, dword [r15 - 8]
cmp eax, esi
jne 0x14011fa0a
sub r15, 4
mov r14d, r11d
xor edx, edx
jmp 0x14011f682
xor eax, eax
mov edi, eax
cmp r14d, 1
je 0x14011fa00
cmp r8w, 0x3a
jne 0x140120e7b
cmp word [r9], 0x5e
mov r12, r9
jne 0x14011f5de
lea edi, [rax + 1]
add r12, 2
mov rdx, rbx
mov rcx, r12
sub rdx, r12
sar rdx, 1
call fcn.140118c40
mov r9d, eax
test eax, eax
js 0x140120e71
lea r12, [rbx + 4]
lea rax, [r13 - 2]
cmp r12, rax
jae 0x14011f61c
cmp word [r12], 0x2d
jne 0x14011f61c
cmp word [r12 + 2], 0x5d
jne 0x14011fa00
xor edx, edx
mov eax, 0x20000
mov r14d, edx
test dword [rsp + 0x50], eax
je 0x14011f74a
lea ecx, [r9 + r9]
movsxd rax, ecx
lea r8, [0x140000000]
mov edx, dword [r8 + rax*4 + 0x10cc610]
lea eax, [rcx + 1]
movsxd rcx, eax
mov r8d, dword [r8 + rcx*4 + 0x10cc610]
test edx, edx
js 0x14011f72e
neg edi
sbb eax, eax
shl edx, 0x10
sub eax, 0x7fe7fff0
or edx, r8d
mov dword [r15], eax
mov dword [r15 + 4], edx
add r15, 8
xor edx, edx
mov ebx, dword [rsp + 0x74]
mov r8d, 1
cmp r12, r13
jae 0x140120eaf
movzx esi, word [r12]
mov r10d, 0xfc00
add r12, 2
mov dword [rsp + 0x70], esi
cmp qword [rbp - 0x28], 0
mov qword [rbp + 0x60], r12
je 0x14011f6e1
mov eax, esi
and eax, r10d
cmp eax, 0xd800
jne 0x14011f6e1
movzx ecx, word [r12]
and esi, 0x3ff
mov eax, esi
and ecx, 0x3ff
shl eax, 0xa
mov esi, ecx
or esi, eax
add esi, 0x10000
add r12, 2
mov dword [rsp + 0x70], esi
mov qword [rbp + 0x60], r12
mov r11, qword [rbp + 0x78]
cmp esi, 0x5d
jne 0x14011f480
test ebx, ebx
jne 0x14011f480
cmp r14d, 1
jne 0x14011f704
mov dword [r15 - 4], 0x2d
mov r11, qword [rbp + 0x78]
mov r14d, r8d
mov r9, qword [rsp + 0x68]
mov r8d, dword [rsp + 0x50]
movzx ecx, word [rbp + 0x68]
mov dword [r15], 0x800d0000
add r15, 4
mov qword [rsp + 0x60], r15
jmp 0x14011e4e5
test r8d, r8d
je 0x14011f748
neg edi
sbb eax, eax
sub eax, 0x7fe7ffed
mov dword [r15], eax
add r15, 4
jmp case.0x14011f86e.3
xor edx, edx
lea eax, [rdi + 0x801c]
shl eax, 0x10
mov dword [r15], eax
mov dword [r15 + 4], r9d
add r15, 8
jmp 0x14011f678
cmp esi, 0x2d
jne 0x14011f792
cmp r14d, 2
jb 0x14011f58d
cmp r14d, 3
mov eax, 0x801e0000
mov ecx, 0x801f0000
mov r14d, r8d
cmove eax, ecx
mov dword [r15], eax
add r15, 4
jmp 0x14011f682
cmp esi, 0x5c
jne 0x14011f58d
mov rax, qword [r11]
lea r9, [rsp + 0x54]
mov qword [rsp + 0x38], r11
lea rcx, [rbp + 0x60]
mov dword [rsp + 0x30], r8d
mov rdx, r13
lea r8, [rsp + 0x70]
mov eax, dword [rax + 0x40]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], edi
call fcn.1401178b0
mov edx, dword [rsp + 0x54]
mov ebx, eax
test edx, edx
je 0x14011f840
test byte [rbp - 0x38], 2
je 0x140120f9b
mov qword [rbp + 0x60], r12
cmp r12, r13
jb 0x14011f7ee
xor r11d, r11d
mov ebx, r11d
jmp 0x14011f850
movzx esi, word [r12]
add r12, 2
cmp qword [rbp - 0x28], 0
mov qword [rbp + 0x60], r12
je 0x14011f838
mov eax, esi
and eax, 0xfc00
cmp eax, 0xd800
jne 0x14011f838
movzx ecx, word [r12]
and esi, 0x3ff
mov eax, esi
and ecx, 0x3ff
shl eax, 0xa
mov esi, ecx
or esi, eax
add esi, 0x10000
add r12, 2
mov qword [rbp + 0x60], r12
xor r11d, r11d
mov ebx, r11d
jmp 0x14011f850
mov r12, qword [rbp + 0x60]
cmp eax, 0x1a
ja case.default.0x14011f86e
mov esi, dword [rsp + 0x70]
xor r11d, r11d
lea r8, [0x140000000]
movsxd rax, ebx
movzx eax, byte [r8 + rax + 0x1211c0]
mov ecx, dword [r8 + rax*4 + 0x1211a8]
add rcx, r8
jmp rcx
mov ebx, dword [rsp + 0x74]
mov r10d, r11d
mov r8d, 1
jmp 0x14011f590
mov ebx, dword [rsp + 0x74]
mov esi, 8
mov r10d, r11d
lea r8d, [rsi - 7]
jmp 0x14011f590
mov r8d, 1
xor edx, edx
mov ebx, r8d
mov dword [rsp + 0x74], ebx
jmp 0x14011f682
lea r8, [0x140000000]
cmp r14d, 1
je 0x14011fa00
xor r11d, r11d
lea edx, [rbx - 6]
mov r14d, r11d
cmp edx, 0xf
ja case.0x14011f8dc.13
movsxd rax, edx
mov ecx, dword [r8 + rax*4 + 0x1211dc]
add rcx, r8
jmp rcx
lea eax, [rbx - 0x7fe80000]
mov dword [r15], eax
add r15, 4
jmp case.default.0x14011f942
mov eax, 0x20000
test eax, edi
jne 0x14011f90b
lea eax, [rbx - 0x7fe80000]
mov dword [r15], eax
add r15, 4
jmp case.default.0x14011f942
lea eax, [rbx - 7]
test eax, 0xfffffff9
jne 0x14011f91f
mov eax, 0x80180010
cmp ebx, 0xd
jne 0x14011f924
mov eax, 0x8018000f
mov dword [r15], eax
add r15, 4
cmp edx, 5
ja case.default.0x14011f942
movsxd rax, edx
mov ecx, dword [r8 + rax*4 + 0x12121c]
add rcx, r8
jmp rcx
mov dword [r15], 0x3000d
add r15, 4
jmp case.default.0x14011f942
mov dword [r15], 0x60000
add r15, 4
jmp case.default.0x14011f942
mov dword [r15], 0x80000
add r15, 4
jmp case.default.0x14011f942
mov rax, qword [rbp + 0x78]
lea r9, [rbp - 0x70]
mov qword [rsp + 0x28], rax
lea r8, [rsp + 0x70]
lea rax, [rsp + 0x54]
mov word [rsp + 0x70], r11w
lea rdx, [rbp - 0x14]
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0x60]
mov word [rbp - 0x70], r11w
call fcn.14011d910
test eax, eax
je 0x140120f08
cmp dword [rbp - 0x14], r14d
je 0x14011f9bb
xor eax, eax
cmp ebx, 0xf
sete al
lea ebx, [rax + 0xf]
movzx ecx, word [rsp + 0x70]
lea eax, [rbx - 0x7fe80000]
mov r12, qword [rbp + 0x60]
mov dword [r15], eax
movzx eax, word [rbp - 0x70]
shl ecx, 0x10
or ecx, eax
mov dword [r15 + 4], ecx
add r15, 8
lea rax, [r13 - 2]
cmp r12, rax
jae case.0x14011f86e.3
cmp word [r12], 0x2d
jne 0x14011fa4b
cmp word [r12 + 2], 0x5d
je case.0x14011f86e.3
mov edx, 0x96
jmp 0x1401210a5
ja 0x140120ea1
test r10d, r10d
jne 0x14011fa28
mov eax, 0x801f0000
cmp dword [r15 - 4], eax
jne 0x14011fa28
mov dword [r15 - 4], 0x801e0000
mov dword [r15], esi
mov r14d, r11d
add r15, 4
xor edx, edx
jmp 0x14011f682
mov dword [r15], esi
lea r14d, [r10 + 2]
add r15, 4
xor edx, edx
jmp 0x14011f682
mov ebx, dword [rsp + 0x74]
mov r8d, 1
xor edx, edx
jmp 0x14011f682
mov rbx, qword [rsp + 0x78]
cmp r12, rbx
jae 0x1401210a0
movzx eax, word [r12]
cmp ax, 0x3f
je 0x14011ff0c
movzx ecx, word [rbp + 0x68]
mov r8d, dword [rsp + 0x50]
cmp ax, 0x2a
je 0x14011fae4
inc cx
mov word [rbp + 0x68], cx
bt r8d, 0xd
jb 0x14011facc
mov eax, dword [r11 + 0xd4]
mov edx, 0xffff
cmp eax, edx
jae 0x140120eb9
inc eax
mov r13, rbx
mov dword [r11 + 0xd4], eax
or eax, 0x80080000
mov dword [r15], eax
add r15, 4
mov qword [rsp + 0x60], r15
jmp 0x14011e4da
mov dword [r15], 0x801a0000
mov r13, rbx
add r15, 4
mov qword [rsp + 0x60], r15
jmp 0x14011e4da
mov r9, qword [rsp + 0x68]
mov rax, rbx
mov rsi, qword [rsp + 0x58]
sub rax, r12
and rax, 0xfffffffffffffffe
mov r10d, 0xfc00
cmp rax, 2
jle 0x14011e4d0
movzx eax, word [r12 + 2]
mov r8d, dword [rsp + 0x50]
movzx ecx, word [rbp + 0x68]
cmp eax, 0x29
je 0x14011e4d0
mov ecx, 0xff
cmp eax, ecx
ja 0x14011fd80
mov ecx, eax
mov rax, qword [r11 + 0x20]
test byte [rcx + rax], 4
je 0x14011fd80
mov r8d, dword [rbp - 0x78]
lea rax, [rsp + 0x54]
mov qword [rsp + 0x40], r11
lea rcx, [rbp + 0x60]
mov qword [rsp + 0x38], rax
lea rsi, [0x1403190e0]
lea rax, [rbp - 0x7c]
xor r9d, r9d
mov qword [rsp + 0x30], rax
mov rdx, rbx
lea rax, [rbp - 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x20], rax
call fcn.140122540
test eax, eax
je 0x140120f08
mov r12, qword [rbp + 0x60]
cmp r12, rbx
jae 0x14011fbed
cmp word [r12], 0x3a
jne 0x14011fbed
mov r14d, dword [rbp - 0x7c]
lea rcx, [0x140000000]
mov r15, qword [rbp - 0x40]
xor eax, eax
mov ebx, eax
mov dword [rbp - 0x80], eax
movsxd rax, ebx
lea rdi, [rax*8 + 0x3191c0]
add rdi, rcx
cmp r14d, dword [rdi]
jne 0x14011fbdc
mov r8, r14
mov rdx, rsi
mov rcx, r15
call fcn.1401545d0
lea rcx, [0x140000000]
test eax, eax
je 0x14011fbf7
mov eax, dword [rdi]
inc ebx
inc eax
mov dword [rbp - 0x80], ebx
add rsi, rax
cmp ebx, 0x11
jl 0x14011fbb0
mov edx, 0xc3
jmp 0x1401210a5
movsxd rax, ebx
mov ecx, dword [rcx + rax*8 + 0x3191c4]
test r13d, r13d
jle 0x14011fc17
lea eax, [rcx + 0x7fdd0000]
cmp eax, 0x30000
ja 0x140120ec3
mov edx, 0x80250000
cmp ecx, edx
ja 0x14011fc6b
je 0x14011fd6b
cmp ecx, 0x80020000
je 0x140120638
cmp ecx, 0x80220000
je 0x14011fc9b
cmp ecx, 0x80230000
je 0x14012066e
cmp ecx, 0x80240000
jne 0x140120eea
mov r15, qword [rsp + 0x60]
mov r11, qword [rbp + 0x78]
add r12, 2
mov dword [r15], 0x80240000
jmp 0x1401206f5
cmp ecx, 0x80260000
je 0x14011fd6b
cmp ecx, 0x80270000
je 0x14011fd52
cmp ecx, 0x80280000
je 0x14011fd6b
cmp ecx, 0x8fff0000
jne 0x140120eea
mov r15, qword [rsp + 0x60]
add r12, 2
movzx edi, word [rbp + 0x68]
mov r10d, 0xfc00
mov r14d, dword [rbp - 0x70]
inc di
mov r13, qword [rsp + 0x78]
mov r11, qword [rbp + 0x78]
mov r9, qword [rsp + 0x68]
mov r8d, dword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
mov dword [r15], 0x80220000
add r15, 4
cmp ecx, 0x8fff0000
mov qword [rsp + 0x60], r15
movzx ecx, di
mov word [rbp + 0x68], di
jne case.default.0x14011ef6b
mov rsi, qword [rbp - 0x58]
mov dword [r15], 0x80020000
add r15, 4
mov qword [rsp + 0x60], r15
test rsi, rsi
jne 0x14011fd13
mov rsi, qword [r11 + 0x28]
mov qword [rbp - 0x58], rsi
jmp 0x14011fd29
add rsi, 0xc
mov qword [rbp - 0x58], rsi
cmp rsi, qword [rbp - 0x10]
jae 0x140120ee0
mov r11, qword [rbp + 0x78]
mov r8d, dword [rsp + 0x50]
mov eax, 4
movzx ecx, word [rbp + 0x68]
mov r14d, dword [rbp - 0x70]
mov word [rsi + 6], ax
mov eax, r8d
and eax, 0x10424e8
mov word [rsi], cx
mov dword [rsi + 8], eax
jmp 0x14011e4e5
mov r15, qword [rsp + 0x60]
add r12, 2
mov r11, qword [rbp + 0x78]
mov dword [r15], 0x80270000
jmp 0x1401206f5
mov r15, qword [rsp + 0x60]
sub r12, 2
mov r11, qword [rbp + 0x78]
mov dword [r15], ecx
jmp 0x1401206c2
mov r8d, dword [rbp - 0x78]
lea rax, [rsp + 0x54]
mov qword [rsp + 0x40], r11
lea rcx, [rbp + 0x60]
mov qword [rsp + 0x38], rax
lea rsi, [0x140319008]
lea rax, [rbp - 0x7c]
xor r9d, r9d
mov qword [rsp + 0x30], rax
mov rdx, rbx
lea rax, [rbp - 0x40]
mov r13, rbx
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x20], rax
call fcn.140122540
test eax, eax
je 0x140120f08
mov r12, qword [rbp + 0x60]
cmp r12, rbx
jae 0x14011fe42
movzx eax, word [r12]
cmp ax, 0x3a
je 0x14011fde9
cmp ax, 0x29
jne 0x14011fe42
mov r14d, dword [rbp - 0x7c]
xor eax, eax
mov r15, qword [rbp - 0x40]
mov ebx, eax
mov dword [rbp - 0x80], eax
nop dword [rax + rax]
movsxd rax, ebx
lea rcx, [rax + rax*2]
lea rax, [0x140000000]
lea rdi, [rax + 0x319040]
cmp r14d, dword [rdi + rcx*4]
lea rdi, [rdi + rcx*4]
jne 0x14011fe31
mov r8, r14
mov rdx, rsi
mov rcx, r15
call fcn.1401545d0
test eax, eax
je 0x14011fe4c
mov eax, dword [rdi]
inc ebx
inc eax
mov dword [rbp - 0x80], ebx
add rsi, rax
cmp ebx, 9
jl 0x14011fe00
mov edx, 0xa0
jmp 0x1401210a5
cmp word [r12], 0x3a
jne 0x14011fe66
lea rax, [r12 + 2]
cmp rax, r13
jae 0x14011fe66
cmp word [rax], 0x29
cmove r12, rax
movsxd rax, ebx
lea r8, [0x140000000]
lea rcx, [rax + rax*2]
mov edx, dword [r8 + rcx*4 + 0x319048]
test edx, edx
jle 0x14011fe8c
cmp word [r12], 0x3a
jne 0x140120ef4
movzx eax, word [r12]
xor ebx, ebx
mov ecx, dword [r8 + rcx*4 + 0x319044]
mov r14d, ebx
mov r15, qword [rsp + 0x60]
cmp ecx, 0x802a0000
mov qword [rbp - 8], r15
sete r14b
add r12, 2
cmp ax, 0x3a
jne 0x14011ff00
test edx, edx
jns 0x14011fecb
mov dword [rbp - 0x30], ecx
mov dword [r15], 0x80290000
jmp 0x14011fee0
cmp ecx, 0x80290000
mov eax, ebx
mov edx, 0x10000
cmovne eax, edx
add eax, ecx
mov dword [r15], eax
mov r11, qword [rbp + 0x78]
add r15, 4
mov qword [rbp], r15
add r15, 4
mov qword [rbp + 8], r12
mov dword [rbp - 0x48], 1
jmp 0x14011f04f
mov r11, qword [rbp + 0x78]
mov dword [r15], ecx
jmp 0x14011f04b
add r12, 2
mov qword [rbp + 0x60], r12
cmp r12, rbx
jae 0x1401210a0
movzx edx, word [r12]
lea eax, [rdx - 0x21]
cmp eax, 0x31
ja case.0x14011ff44.45
cdqe
movzx eax, byte [r8 + rax + 0x121268]
mov ecx, dword [r8 + rax*4 + 0x121234]
add rcx, r8
jmp rcx
add r12, 2
mov r13, rbx
mov qword [rbp + 0x60], r12
cmp r12, rbx
jae 0x1401210a0
movzx eax, word [r12]
cmp ax, 0x3c
jne 0x14011ff70
mov r9d, 0x3e
jmp 0x140120781
cmp ax, 0x3e
je 0x140120033
cmp ax, 0x3d
jne 0x140120efe
mov r8d, dword [rbp - 0x78]
lea rax, [rsp + 0x54]
mov qword [rsp + 0x40], r11
lea rcx, [rbp + 0x60]
mov qword [rsp + 0x38], rax
mov r9d, 0x29
lea rax, [rbp - 0x7c]
mov rdx, rbx
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x20], rax
call fcn.140122540
test eax, eax
je 0x140120f08
mov dword [r15], 0x80040000
jmp 0x14011eeb4
xor eax, eax
add r12, 2
mov dword [rbp - 0x80], eax
mov r13, rbx
cmp r12, rbx
jae 0x14011fff5
cmp word [r12], 0x29
je 0x140120a89
mov edx, 0x9e
jmp 0x1401210a5
mov rax, rbx
mov r13, rbx
sub rax, r12
and rax, 0xfffffffffffffffe
cmp rax, 4
jl 0x140120026
movzx eax, word [r12 + 2]
sub ax, 0x30
cmp ax, 9
jbe 0x140120a15
mov edx, 0x81
jmp 0x1401210a5
mov r13, rbx
mov r8d, dword [rbp - 0x78]
lea rax, [rsp + 0x54]
mov qword [rsp + 0x40], r11
lea rcx, [rbp + 0x60]
mov qword [rsp + 0x38], rax
mov r9d, 0x29
lea rax, [rbp - 0x7c]
mov rdx, r13
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x20], rax
call fcn.140122540
test eax, eax
je 0x140120f08
mov dword [r15], 0x80210000
jmp 0x14011eeb4
add r12, 2
cmp r12, rbx
jae 0x1401210a0
mov r10, qword [rsp + 0x68]
lea ebx, [r13 - 1]
mov dword [rbp - 0x4c], ebx
mov r8d, 0xff
test r10, r10
je 0x1401200c3
test byte [rsp + 0x50], 4
je 0x1401200c3
lea rax, [r15 - 0x10]
cmp r10, rax
jne 0x1401200c3
cmp dword [r15 - 4], r8d
cmove r15, r10
movzx edx, word [r12]
mov r9, r15
mov qword [rsp + 0x68], r15
mov dword [rbp - 0x50], 1
cmp dx, 0x29
je 0x1401201b7
lea eax, [rdx - 0x30]
cmp ax, 9
jbe 0x1401201b7
mov eax, dword [0x1403340a0]
xor ebx, ebx
mov dword [rbp - 0x80], ebx
mov r9, r12
mov ecx, ebx
test eax, eax
je 0x140120128
movzx r8d, dx
lea rdx, [0x140000000]
nop dword [rax]
cmp r8d, eax
je 0x140120132
inc ecx
movsxd rax, ecx
mov dword [rbp - 0x80], ecx
mov eax, dword [rdx + rax*4 + 0x3340a0]
test eax, eax
jne 0x140120110
mov edx, 0xb6
jmp 0x1401210a5
movsxd rax, ecx
mov ecx, dword [rdx + rax*4 + 0x334078]
test ecx, ecx
je 0x140120128
mov r13, qword [rsp + 0x78]
mov dword [r15], 0x80070000
nop dword [rax]
add r12, 2
cmp r12, r13
jae 0x140120f1f
movzx eax, word [r12]
cmp eax, ecx
jne 0x140120150
add r12, 2
cmp r12, r13
jae 0x140120178
movzx eax, word [r12]
cmp eax, ecx
je 0x140120150
mov rax, r12
mov ecx, 0xffffffff
sub rax, r9
sar rax, 1
cmp rax, rcx
ja 0x140120f15
mov dword [r15 + 0xc], eax
sub r9, qword [r11 + 0x38]
sar r9, 1
mov rax, r9
mov qword [rbp - 0x60], r9
shr rax, 0x20
mov dword [r15 + 0x10], eax
add r15, 0x14
mov dword [r15], r9d
mov r9, qword [rsp + 0x68]
jmp 0x1401201ff
mov r13, qword [rsp + 0x78]
xor ebx, ebx
mov dword [r15], 0x80060000
mov ecx, ebx
add r15, 0xc
nop dword [rax + rax]
movzx edx, word [r12]
lea eax, [rdx - 0x30]
cmp ax, 9
ja 0x1401201fc
lea ecx, [rcx + rcx*4]
movzx eax, dx
lea ecx, [rcx - 0x18]
add r12, 2
lea ecx, [rax + rcx*2]
cmp ecx, r8d
jg 0x140120f2c
cmp r12, r13
jb 0x1401201d0
mov dword [r15], ecx
cmp r12, r13
jae 0x140120f36
cmp word [r12], 0x29
jne 0x140120f36
mov r8d, dword [rsp + 0x50]
add r12, 2
movzx ecx, word [rbp + 0x68]
mov rax, r12
sub rax, qword [r11 + 0x38]
mov r10d, 0xfc00
sar rax, 1
add r15, 4
mov dword [r9 + 4], eax
mov qword [rsp + 0x60], r15
mov dword [r9 + 8], ebx
jmp 0x14011e4e5
add r12, 2
mov r13, rbx
mov qword [rbp + 0x60], r12
cmp r12, rbx
jae 0x1401210a0
movzx ecx, word [rbp + 0x68]
movzx eax, word [r12]
inc cx
mov word [rbp + 0x68], cx
cmp ax, 0x3f
je 0x140120618
cmp ax, 0x2a
je 0x140120618
mov r8d, dword [r11 + 0xd4]
lea rax, [rsp + 0x54]
mov qword [rsp + 0x30], rax
lea rcx, [rbp + 0x60]
lea rax, [rbp - 0x80]
mov r9d, 0xffff
mov qword [rsp + 0x28], rax
mov rdx, rbx
mov dword [rsp + 0x20], 0xa1
call fcn.1401227d0
test eax, eax
je 0x1401202fe
mov edx, dword [rbp - 0x80]
mov r12, qword [rbp + 0x60]
test edx, edx
jle 0x140120f40
mov r11, qword [rbp + 0x78]
mov rcx, r12
mov dword [r15], 0x80120000
sub rcx, qword [r11 + 0x38]
sar rcx, 1
sub rcx, 2
mov rax, rcx
mov qword [rbp - 0x60], rcx
shr rax, 0x20
mov dword [r15 + 4], eax
mov dword [r15 + 8], ecx
add r15, 0xc
mov dword [r15], edx
jmp 0x1401205fa
mov edx, dword [rsp + 0x54]
test edx, edx
jne 0x140120f9b
mov rbx, qword [rbp + 0x60]
mov rdi, r13
sub rdi, rbx
sar rdi, 1
cmp rdi, 0xa
jl 0x140120479
lea r8d, [rdx + 7]
mov rcx, rbx
lea rdx, [0x140319520]
call fcn.1401545d0
test eax, eax
jne 0x140120479
cmp word [rbx + 0xe], 0x29
lea r12, [rbx + 0xe]
je 0x140120479
xor ecx, ecx
lea esi, [rax + 1]
cmp word [r12], 0x3e
mov edi, ecx
mov ebx, ecx
jne 0x140120362
mov edi, esi
add r12, 2
cmp word [r12], 0x3d
jne 0x140120f4a
movzx eax, word [r12 + 2]
add r12, 2
sub ax, 0x30
cmp ax, 9
ja 0x140120f4a
mov dword [rsp + 0x54], ecx
mov r10d, ecx
mov r8, r12
mov r11d, ecx
mov edx, ecx
cmp r12, r13
jae 0x1401210a5
nop
movzx r9d, word [r8]
lea eax, [r9 - 0x30]
cmp ax, 9
ja 0x1401203d4
lea ecx, [r10 + r10*4]
movzx eax, r9w
lea r10d, [rcx - 0x18]
add r8, 2
lea r10d, [rax + r10*2]
cmp r10d, 0x3e8
ja 0x14012046b
cmp r8, r13
jb 0x1401203a0
mov r11d, esi
mov r12, r8
test r11d, r11d
je 0x1401210a5
cmp r8, r13
jae 0x140120f4a
cmp word [r8], 0x2e
jne 0x140120450
lea r12, [r8 + 2]
cmp r12, r13
jae 0x140120f4a
movzx ecx, word [r12]
lea eax, [rcx - 0x30]
cmp ax, 9
ja 0x140120f4a
add r12, 2
movzx eax, cx
sub eax, 0x30
movzx ecx, word [r12]
lea ebx, [rax + rax*4]
add ebx, ebx
lea eax, [rcx - 0x30]
cmp ax, 9
ja 0x14012043b
add ebx, 0xffffffd0
movzx eax, cx
add ebx, eax
add r12, 2
cmp r12, r13
jae 0x140120f4a
cmp word [r12], 0x29
jne 0x140120f4a
mov dword [r15], 0x80150000
mov dword [r15 + 4], edi
mov dword [r15 + 8], r10d
add r15, 0xc
mov dword [r15], ebx
jmp 0x1401205f6
mov edx, 0xb3
mov dword [rsp + 0x54], edx
jmp 0x1401203d7
movzx ecx, word [rbx]
xor eax, eax
mov esi, eax
cmp cx, 0x52
jne 0x1401204a6
cmp rdi, 1
jle 0x1401204a6
cmp word [rbx + 2], 0x26
lea rax, [rbx + 2]
jne 0x1401204a6
mov r12d, 1
mov qword [rbp + 0x60], rax
mov esi, r12d
jmp 0x1401204ce
mov r12d, 1
cmp cx, 0x3c
jne 0x1401204b9
lea edi, [r12 + 0x3d]
jmp 0x1401204d3
cmp cx, 0x27
jne 0x1401204c6
mov edi, 0x27
jmp 0x1401204d3
sub rbx, 2
mov qword [rbp + 0x60], rbx
mov edi, 0x29
mov rax, qword [rbp + 0x78]
lea rcx, [rbp + 0x60]
mov r8d, dword [rbp - 0x78]
mov r9d, edi
mov qword [rsp + 0x40], rax
mov rdx, r13
lea rax, [rsp + 0x54]
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x7c]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x20], rax
call fcn.140122540
test eax, eax
je 0x140120f08
mov r14d, dword [rbp - 0x7c]
test esi, esi
je 0x140120538
mov r12, qword [rbp + 0x60]
sub r12, 2
mov dword [r15], 0x80130000
jmp 0x1401205c8
cmp edi, 0x29
jne 0x1401205bd
mov rbx, qword [rbp - 0x40]
cmp r14d, 6
jne 0x140120572
mov r8d, r14d
lea rdx, [0x140319528]
mov rcx, rbx
call fcn.1401545d0
test eax, eax
jne 0x140120572
mov r12, qword [rbp + 0x60]
sub r12, 2
mov dword [r15], 0x80100000
jmp 0x1401205c8
mov edx, r12d
mov dword [rbp - 0x80], edx
cmp r14d, 1
jle 0x14012059b
nop
movsxd rax, edx
movzx ecx, word [rbx + rax*2]
sub cx, 0x30
cmp cx, 9
ja 0x140120598
inc edx
cmp edx, r14d
jl 0x140120580
mov dword [rbp - 0x80], edx
cmp word [rbx], 0x52
jne 0x1401205ab
mov eax, 0x80140000
cmp edx, r14d
jge 0x1401205b0
mov eax, 0x80110000
mov r12, qword [rbp + 0x60]
sub r12, 2
mov dword [r15], eax
jmp 0x1401205c8
mov r12, qword [rbp + 0x60]
mov dword [r15], 0x80110000
mov eax, dword [r15]
add r15, 4
cmp eax, 0x80100000
je 0x1401205dd
mov dword [r15], r14d
add r15, 4
mov rcx, qword [rbp - 0x60]
mov r14d, dword [rbp - 0x70]
mov rax, rcx
shr rax, 0x20
mov dword [r15], eax
add r15, 4
mov dword [r15], ecx
mov r11, qword [rbp + 0x78]
cmp r12, r13
jae 0x140120f54
cmp word [r12], 0x29
jne 0x140120f54
add r12, 2
jmp 0x14011f04b
mov dword [r15], 0x800f0000
add r15, 4
mov qword [rsp + 0x60], r15
sub r12, 2
mov dword [rbp - 0x4c], 2
jmp 0x14011e4d5
mov r14d, dword [rbp - 0x70]
mov r15, qword [rsp + 0x60]
movzx ecx, word [rbp + 0x68]
mov r13, qword [rsp + 0x78]
inc cx
mov r11, qword [rbp + 0x78]
mov dword [r15], 0x80020000
add r15, 4
mov word [rbp + 0x68], cx
add r12, 2
mov qword [rsp + 0x60], r15
jmp 0x14011e4d5
mov r15, qword [rsp + 0x60]
mov r11, qword [rbp + 0x78]
add r12, 2
mov dword [r15], 0x80230000
jmp 0x1401206f5
mov rax, rbx
sub rax, r12
and rax, 0xfffffffffffffffe
cmp rax, 2
jle 0x140120770
movzx ecx, word [r12 + 2]
cmp cx, 0x3d
je 0x1401206ae
cmp cx, 0x21
jne 0x140120770
cmp cx, 0x3d
mov eax, 0x80260000
mov ecx, 0x80250000
cmove eax, ecx
mov dword [r15], eax
mov rax, qword [rbp + 0x70]
mov ecx, 1
mov dword [rax], ecx
mov rcx, r12
sub rcx, qword [r11 + 0x38]
sar rcx, 1
sub rcx, 2
mov rax, rcx
mov qword [rbp - 0x60], rcx
shr rax, 0x20
mov dword [r15 + 4], eax
add r15, 8
add r12, 4
mov dword [r15], ecx
movzx ecx, word [rbp + 0x68]
add r15, 4
inc cx
mov qword [rsp + 0x60], r15
mov word [rbp + 0x68], cx
test r13d, r13d
jle 0x14012075d
mov rsi, qword [rbp - 0x58]
test rsi, rsi
jne 0x140120721
mov rsi, qword [r11 + 0x28]
mov qword [rbp - 0x58], rsi
jmp 0x140120733
add rsi, 0xc
mov qword [rbp - 0x58], rsi
cmp rsi, qword [rbp - 0x10]
jae 0x140120ee0
mov r8d, dword [rsp + 0x50]
mov eax, 2
mov r14d, dword [rbp - 0x70]
mov r13, qword [rsp + 0x78]
mov word [rsi + 6], ax
mov eax, r8d
and eax, 0x10424e8
mov word [rsi], cx
mov dword [rsi + 8], eax
jmp 0x14011e4da
mov r8d, dword [rsp + 0x50]
mov r14d, dword [rbp - 0x70]
mov r13, qword [rsp + 0x78]
jmp 0x14011e4da
mov r9d, 0x3e
jmp 0x14012077e
mov r9d, 0x27
mov r13, rbx
mov r8d, dword [rbp - 0x78]
lea rax, [rsp + 0x54]
mov qword [rsp + 0x40], r11
lea rcx, [rbp + 0x60]
mov qword [rsp + 0x38], rax
mov rdx, r13
lea rax, [rbp - 0x7c]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x20], rax
call fcn.140122540
test eax, eax
je 0x140120f08
mov r11, qword [rbp + 0x78]
mov ecx, 0xffff
mov eax, dword [r11 + 0xd4]
cmp eax, ecx
jae 0x140120f96
inc word [rbp + 0x68]
inc eax
mov dword [r11 + 0xd4], eax
or eax, 0x80080000
mov dword [r15], eax
add r15, 4
movzx edx, word [r11 + 0xb0]
mov eax, 0x2710
mov qword [rsp + 0x60], r15
cmp dx, ax
jae 0x140120f88
mov esi, dword [rbp - 0x7c]
movzx eax, word [r11 + 0xb2]
lea ecx, [rsi + 2]
cmp ecx, eax
jbe 0x14012082c
lea eax, [rsi + 2]
mov word [r11 + 0xb2], ax
mov rbx, qword [r11 + 0xc0]
xor eax, eax
mov r15, qword [rbp - 0x40]
mov edi, eax
mov dword [rbp - 0x80], eax
cmp ax, dx
jae 0x1401208b2
movzx eax, word [rbx + 0xc]
cmp esi, eax
jne 0x14012088d
mov rdx, qword [rbx]
mov r8, rsi
mov rcx, r15
call fcn.140154590
mov r11, qword [rbp + 0x78]
test eax, eax
jne 0x14012088d
mov eax, dword [r11 + 0xd4]
cmp dword [rbx + 8], eax
je 0x1401208b2
test byte [rsp + 0x50], 0x40
je 0x140120f5e
mov eax, 1
mov word [rbx + 0xe], ax
mov r14d, eax
mov dword [r11 + 0x12c], eax
jmp 0x14012089d
mov eax, dword [r11 + 0xd4]
cmp dword [rbx + 8], eax
je 0x140120f6c
movzx eax, word [r11 + 0xb0]
inc edi
add rbx, 0x10
mov dword [rbp - 0x80], edi
cmp edi, eax
jl 0x140120843
movzx eax, word [r11 + 0xb0]
cmp edi, eax
jge 0x1401208d0
mov r12, qword [rbp + 0x60]
mov r14d, dword [rbp - 0x70]
mov r15, qword [rsp + 0x60]
jmp 0x14011f054
mov ecx, dword [r11 + 0xc8]
cmp eax, ecx
jb 0x140120948
mov rax, qword [r11]
lea edi, [rcx + rcx]
mov ecx, edi
shl rcx, 4
mov rdx, qword [rax + 0x10]
call qword [rax]
mov rbx, rax
test rax, rax
je 0x140120f7a
mov rax, qword [rbp + 0x78]
mov rcx, rbx
mov r8d, dword [rax + 0xc8]
mov rdx, qword [rax + 0xc0]
shl r8, 4
call fcn.14017c7d0
mov r11, qword [rbp + 0x78]
cmp dword [r11 + 0xc8], 0x14
jbe 0x14012093a
mov rax, qword [r11]
mov rcx, qword [r11 + 0xc0]
mov rdx, qword [rax + 0x10]
call qword [rax + 8]
mov r11, qword [rbp + 0x78]
mov qword [r11 + 0xc0], rbx
mov dword [r11 + 0xc8], edi
movzx ecx, word [r11 + 0xb0]
mov rax, qword [r11 + 0xc0]
add rcx, rcx
mov r12, qword [rbp + 0x60]
mov qword [rax + rcx*8], r15
movzx ecx, word [r11 + 0xb0]
mov rax, qword [r11 + 0xc0]
add rcx, rcx
mov r15, qword [rsp + 0x60]
mov word [rax + rcx*8 + 0xc], si
movzx edx, word [r11 + 0xb0]
mov rcx, qword [r11 + 0xc0]
add rdx, rdx
mov eax, dword [r11 + 0xd4]
mov dword [rcx + rdx*8 + 8], eax
movzx ecx, word [r11 + 0xb0]
mov rax, qword [r11 + 0xc0]
shl rcx, 4
mov word [rcx + rax + 0xe], r14w
inc word [r11 + 0xb0]
mov r14d, dword [rbp - 0x70]
jmp 0x14011f054
mov r13, rbx
cmp edx, 0x2d
jne 0x1401209ed
mov rax, rbx
sub rax, r12
and rax, 0xfffffffffffffffe
cmp rax, 2
jle 0x1401209ed
movzx eax, word [r12 + 2]
sub ax, 0x30
cmp ax, 9
jbe 0x140120a15
movzx ecx, word [rbp + 0x68]
mov rsi, qword [rbp - 0x58]
inc cx
mov word [rbp + 0x68], cx
test rsi, rsi
jne 0x140120ac1
mov rsi, qword [r11 + 0x28]
mov qword [rbp - 0x58], rsi
jmp 0x140120ad3
mov r13, rbx
sub dx, 0x30
cmp dx, 9
ja 0x140120a25
or r8d, 0xffffffff
jmp 0x140120a2c
mov r8d, dword [r11 + 0xd4]
lea rax, [rsp + 0x54]
mov r9d, 0xffff
mov qword [rsp + 0x30], rax
lea rcx, [rbp + 0x60]
lea rax, [rbp - 0x80]
mov rdx, r13
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0xa1
call fcn.1401227d0
test eax, eax
je 0x140120f08
mov eax, dword [rbp - 0x80]
mov r12, qword [rbp + 0x60]
test eax, eax
js 0x140120fa4
cmp r12, r13
jae 0x1401210a0
cmp word [r12], 0x29
jne 0x1401210a0
mov r11, qword [rbp + 0x78]
or eax, 0x80200000
mov rcx, r12
mov dword [r15], eax
add r12, 2
sub rcx, qword [r11 + 0x38]
mov r14d, 1
sar rcx, 1
mov rax, rcx
mov qword [rbp - 0x60], rcx
shr rax, 0x20
mov dword [r15 + 4], eax
mov dword [r15 + 8], ecx
add r15, 0xc
jmp 0x14011f04f
add rsi, 0xc
mov qword [rbp - 0x58], rsi
cmp rsi, qword [rbp - 0x10]
jae 0x140120ee0
mov r8d, dword [rsp + 0x50]
xor ebx, ebx
mov eax, r8d
mov word [rsi], cx
and eax, 0x10424e8
mov word [rsi + 6], bx
mov dword [rsi + 8], eax
cmp word [r12], 0x7c
jne 0x140120b39
movzx eax, word [r11 + 0xd4]
mov word [rsi + 2], ax
movzx eax, word [r11 + 0xd4]
mov word [rsi + 4], ax
mov eax, 1
mov word [rsi + 6], ax
or dword [r11 + 0xd0], 0x200000
mov dword [r15], 0x801a0000
add r15, 4
mov qword [rsp + 0x60], r15
add r12, 2
jmp 0x14011e4da
mov dword [rsi + 2], ebx
lea rdx, [rsp + 0x70]
cmp word [r12], 0x5e
mov eax, 1
mov r10d, r8d
mov dword [rbp - 0x70], ebx
mov r8d, ebx
mov dword [rsp + 0x70], ebx
mov ecx, ebx
mov r9d, eax
mov ebx, dword [rsp + 0x50]
jne 0x140120b73
xor eax, eax
and ebx, 0xfeffdb57
mov r9d, eax
add r12, 2
cmp r12, r13
jae 0x140120c4a
lea r8, [0x140000000]
nop dword [rax]
nop word [rax + rax]
movzx eax, word [r12]
cmp ax, 0x29
je 0x140120c42
cmp ax, 0x3a
je 0x140120c42
movzx eax, ax
add r12, 2
sub eax, 0x2d
cmp eax, 0x4b
ja case.0x140120bd2.53
cdqe
movzx eax, byte [r8 + rax + 0x1212c0]
mov ecx, dword [r8 + rax*4 + 0x12129c]
add rcx, r8
jmp rcx
test r9d, r9d
je 0x140120fb2
xor eax, eax
lea rdx, [rbp - 0x70]
mov r9d, eax
jmp 0x140120c39
or dword [rdx], 0x40
or dword [r11 + 0xd0], 0x400
jmp 0x140120c39
or dword [rdx], 8
jmp 0x140120c39
or dword [rdx], 0x400
jmp 0x140120c39
or dword [rdx], 0x2000
jmp 0x140120c39
or dword [rdx], 0x20
jmp 0x140120c39
or dword [rdx], 0x40000
jmp 0x140120c39
or dword [rdx], 0x80
mov eax, dword [rdx]
cmp r12, r13
jae 0x140120c42
cmp word [r12], 0x78
jne 0x140120c39
bts eax, 0x18
mov dword [rdx], eax
add r12, 2
cmp r12, r13
jb 0x140120b90
mov r8d, dword [rsp + 0x70]
mov ecx, dword [rbp - 0x70]
mov eax, r8d
and eax, 0x1000080
cmp eax, 0x80
je 0x140120c5d
test cl, cl
jns 0x140120c61
bts ecx, 0x18
or r8d, ebx
not ecx
and r8d, ecx
mov dword [rsp + 0x50], r8d
cmp r12, r13
jae 0x1401210a0
movzx eax, word [r12]
add r12, 2
cmp ax, 0x29
jne 0x140120ca8
movzx ecx, di
mov word [rbp + 0x68], cx
cmp rsi, qword [r11 + 0x28]
jbe 0x140120ca3
cmp word [rsi - 0xc], cx
lea rax, [rsi - 0xc]
jne 0x140120ca3
mov qword [rbp - 0x58], rax
jmp 0x140120cbc
mov word [rsi], cx
jmp 0x140120cbc
movzx ecx, word [rbp + 0x68]
mov dword [r15], 0x801a0000
add r15, 4
mov qword [rsp + 0x60], r15
mov r9, qword [rsp + 0x68]
cmp r8d, r10d
mov rsi, qword [rsp + 0x58]
mov r10d, 0xfc00
je case.default.0x14011ef6b
mov dword [r15], 0x801b0000
mov dword [r15 + 4], r8d
add r15, 8
mov qword [rsp + 0x60], r15
jmp case.default.0x14011ef6b
mov rsi, qword [rbp - 0x58]
movzx ecx, word [rbp + 0x68]
test rsi, rsi
je 0x140120d2a
cmp word [rsi], cx
jne 0x140120d2a
test byte [rsi + 6], 1
je 0x140120d2a
movzx eax, word [rsi + 4]
cmp dword [r11 + 0xd4], eax
jbe 0x140120d1f
movzx eax, word [r11 + 0xd4]
mov word [rsi + 4], ax
movzx eax, word [rsi + 2]
mov dword [r11 + 0xd4], eax
mov r13, qword [rsp + 0x78]
mov dword [r15], 0x80010000
add r15, 4
mov qword [rsp + 0x60], r15
jmp 0x14011e4d5
mov rsi, qword [rbp - 0x58]
mov r14d, 1
movzx ecx, word [rbp + 0x68]
mov r8d, dword [rsp + 0x50]
test rsi, rsi
je 0x140120dc3
cmp word [rsi], cx
jne 0x140120dc3
and r8d, 0xfefbdb17
or r8d, dword [rsi + 8]
mov dword [rsp + 0x50], r8d
test byte [rsi + 6], r14b
je 0x140120d8b
movzx eax, word [rsi + 4]
cmp eax, dword [r11 + 0xd4]
jbe 0x140120d8b
mov dword [r11 + 0xd4], eax
movzx eax, word [rsi + 6]
movzx r14d, ax
not r14w
shr r14d, 1
and r14d, 1
test al, 4
je 0x140120dad
mov dword [r15], 0x80190000
add r15, 4
cmp rsi, qword [r11 + 0x28]
jne 0x140120dbb
xor eax, eax
mov qword [rbp - 0x58], rax
jmp 0x140120dc3
sub rsi, 0xc
mov qword [rbp - 0x58], rsi
test cx, cx
je 0x140120fce
mov r13, qword [rsp + 0x78]
mov eax, 0xffff
add cx, ax
mov dword [r15], 0x80190000
add r15, 4
mov word [rbp + 0x68], cx
mov qword [rsp + 0x60], r15
jmp 0x14011e4da
mov dword [r15], esi
mov r14d, 1
add r15, 4
mov qword [rsp + 0x60], r15
mov r13, qword [rsp + 0x78]
mov r10d, 0xfc00
mov r8d, dword [rsp + 0x50]
mov r9, qword [rsp + 0x68]
movzx ecx, word [rbp + 0x68]
jmp 0x14011e4e5
mov edx, 0x8c
jmp 0x1401210a5
sub r12, 2
mov edx, 0xb0
jmp 0x1401210a5
mov edx, 0x76
jmp 0x1401210a5
mov edx, 0x6d
sub r12, 2
jmp 0x1401210a5
sub r12, 2
cmp r9w, 0x3a
jne 0x140120e67
mov edx, 0x70
jmp 0x1401210a5
mov edx, 0x71
jmp 0x1401210a5
mov edx, 0x82
jmp 0x1401210a5
mov edx, 0x71
sub r12, 2
jmp 0x1401210a5
mov edx, 0x6b
sub r12, 2
jmp 0x1401210a5
mov edx, 0xab
jmp 0x1401210a5
mov edx, 0x6c
sub r12, 2
jmp 0x1401210a5
mov edx, 0x6a
jmp 0x1401210a5
mov edx, 0xc5
jmp 0x1401210a5
lea eax, [rcx + 0x7fd90000]
mov edx, 0xc6
test eax, 0xfffeffff
mov eax, 0x80
cmovne edx, eax
jmp 0x1401210a5
mov edx, 0xb8
jmp 0x1401210a5
mov edx, 0xbd
jmp 0x1401210a5
mov edx, 0xa6
jmp 0x1401210a5
mov edx, 0x8d
jmp 0x1401210a5
mov r12, qword [rbp + 0x60]
mov edx, dword [rsp + 0x54]
jmp 0x1401210a5
mov edx, 0xac
jmp 0x1401210a5
mov edx, 0xb5
mov r12, r9
jmp 0x1401210a5
mov edx, 0x8a
jmp 0x1401210a5
mov edx, 0x8b
jmp 0x1401210a5
mov edx, 0x73
jmp 0x1401210a5
mov edx, 0xb3
jmp 0x1401210a5
mov edx, 0x7c
jmp 0x1401210a5
mov r12, qword [rbp + 0x60]
mov edx, 0x8f
jmp 0x1401210a5
mov r12, qword [rbp + 0x60]
mov edx, 0xa5
jmp 0x1401210a5
mov r12, qword [rbp + 0x60]
mov edx, 0x79
jmp 0x1401210a5
mov r12, qword [rbp + 0x60]
mov edx, 0x95
jmp 0x1401210a5
mov edx, 0xc5
mov r12, qword [rbp + 0x60]
jmp 0x1401210a5
mov edx, 0x73
sub r12, 2
jmp 0x1401210a5
mov edx, 0xc2
sub r12, 2
jmp 0x1401210a5
mov edx, 0x6f
sub r12, 2
jmp 0x1401210a5
mov edx, 0x7a
sub r12, 2
jmp 0x1401210a5
mov edx, 0x77
jmp 0x1401210a5
cmp dword [rbp - 0x48], 0
jne 0x14011fe42
movzx edi, word [rbp + 0x68]
mov r8d, dword [rbp - 0x34]
mov edx, dword [rbp - 0x38]
mov rcx, r15
test r9, r9
je 0x140121015
mov rax, r12
sub rax, qword [r11 + 0x38]
sar rax, 1
sub eax, dword [r9 + 4]
mov dword [r9 + 8], eax
test r8d, r8d
je 0x14012105e
test r9, r9
je 0x140121033
lea rax, [r15 - 0x10]
cmp r9, rax
jne 0x140121033
mov eax, 0xff
cmp dword [r9 + 0xc], eax
je 0x140121050
xor eax, eax
mov dword [r15], 0x80060000
mov dword [r15 + 8], eax
lea rcx, [r15 + 0x10]
mov eax, 0xff
mov r9, r15
mov dword [r15 + 0xc], eax
mov rax, r12
sub rax, qword [r11 + 0x38]
sar rax, 1
mov dword [r9 + 4], eax
test dl, 8
je 0x140121072
mov dword [rcx], 0x80190000
mov dword [rcx + 4], 0x80160000
jmp 0x140121084
test dl, 4
je 0x140121088
mov dword [rcx], 0x80190000
mov dword [rcx + 4], 0x80180005
add rcx, 8
cmp rcx, rsi
jae 0x14011e467
mov dword [rcx], 0x80000000
test di, di
jne 0x1401210a0
xor eax, eax
jmp 0x1401210b9
mov edx, 0x72
mov rax, qword [rbp + 0x78]
sub r12, qword [rax + 0x38]
sar r12, 1
mov qword [rax + 0xa8], r12
mov eax, edx
add rsp, 0x118
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret