Function at 0x140128140
Capabilities:
Encode data using base64
Encrypt data using speck
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
mov rax, qword [r9]
xor edi, edi
mov r12, qword [r9 + 0xe0]
mov r13, r9
mov rbx, qword [r9 + 0xe8]
mov r10d, edx
mov r9d, r10d
mov qword [rbp - 8], rdi
mov edx, dword [rax + 0x40]
mov r15, rcx
mov rsi, qword [r13 + 0x40]
mov eax, r10d
shr eax, 0x13
mov r11d, edi
shr r9d, 2
and eax, 1
and r9d, 1
mov qword [rbp - 0x18], rdi
mov qword [rsp + 0x70], rdi
movzx r14d, di
mov qword [rsp + 0x60], r12
mov qword [rbp + 8], rbx
mov dword [rbp - 0x60], edi
mov dword [rbp - 0x30], edi
mov dword [rbp - 0x3c], edx
mov word [rbp + 0x68], di
mov dword [rbp - 0x44], edi
mov dword [rbp - 0x40], edi
mov dword [rsp + 0x68], edi
mov dword [rbp - 0x78], edi
mov dword [rsp + 0x54], edi
mov dword [rbp - 0x74], eax
mov dword [rbp - 0x2c], r9d
mov dword [rsp + 0x78], edi
mov qword [rsp + 0x58], rsi
mov qword [rbp], rdi
test dl, 8
je 0x1401281f7
mov dword [r12], 0x80090000
jmp 0x140128204
test dl, 4
je 0x140128216
mov dword [r12], 0x80180005
mov dword [r12 + 4], 0x801a0000
add r12, 8
mov qword [rsp + 0x60], r12
mov r8d, 0xff
bt r10d, 0x19
jae 0x140128300
cmp r15, rsi
jae 0x14012b31e
mov ecx, 0xfc00
mov r10d, 0x10000
nop dword [rax + rax]
cmp r12, rbx
jae 0x14012b3a9
movzx edx, word [r15]
mov r8, r15
add r15, 2
test eax, eax
je 0x140128283
mov eax, edx
and eax, ecx
cmp eax, 0xd800
jne 0x140128283
movzx ecx, word [r15]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
add edx, r10d
add r15, 2
test r9d, r9d
je 0x1401282e2
mov rcx, r12
test r11, r11
je 0x1401282b6
mov rax, r8
sub rax, qword [r13 + 0x38]
sar rax, 1
sub eax, dword [r11 + 4]
mov dword [r11 + 8], eax
lea rax, [r12 - 0x10]
cmp r11, rax
jne 0x1401282b6
cmp dword [r11 + 0xc], 0xff
je 0x1401282d4
mov r11, r12
mov dword [r12], 0x80060000
lea rcx, [r12 + 0x10]
mov dword [r12 + 8], edi
mov dword [r12 + 0xc], 0xff
sub r8, qword [r13 + 0x38]
mov r12, rcx
sar r8, 1
mov dword [r11 + 4], r8d
mov eax, dword [rbp - 0x74]
mov ecx, 0xfc00
mov dword [r12], edx
add r12, 4
cmp r15, rsi
jb 0x140128240
jmp 0x14012b315
mov r8, qword [r13 + 0x50]
movabs rax, 0xaaaaaaaaaaaaaaab
add r8, r8
mov qword [rbp - 0x50], rdi
mul r8
mov rcx, r8
mov edi, r10d
shr rdx, 3
bts edi, 7
lea rax, [rdx + rdx*2]
shl rax, 2
sub rcx, rax
sub r8, rcx
add r8, qword [r13 + 0x28]
bt r10d, 0x18
mov qword [rbp - 0x10], r8
cmovae edi, r10d
mov dword [rsp + 0x50], edi
cmp r15, rsi
jae 0x14012b313
mov r9, rsi
xor esi, esi
nop word [rax + rax]
xor r14d, r14d
cmp r12, rbx
jae 0x14012b3a9
mov r8, qword [r13]
movzx eax, word [rbp + 0x68]
cmp eax, dword [r8 + 0x3c]
ja 0x14012b301
movzx r13d, word [r15]
mov rbx, r15
mov r10d, dword [rbp - 0x74]
add r15, 2
mov dword [rbp - 0x80], r13d
mov edx, r13d
mov qword [rbp + 0x60], r15
mov rcx, r15
test r10d, r10d
je 0x1401283df
mov eax, r13d
and eax, 0xfc00
cmp eax, 0xd800
jne 0x1401283df
movzx eax, word [r15]
and r13d, 0x3ff
shl r13d, 0xa
and eax, 0x3ff
or r13d, eax
add r13d, 0x10000
add r15, 2
mov dword [rbp - 0x80], r13d
mov qword [rbp + 0x60], r15
mov rcx, r15
mov edx, r13d
cmp dword [rbp - 0x78], r14d
je 0x1401284c2
cmp edx, 0x5c
jne 0x140128408
cmp rcx, r9
jae 0x140128408
cmp word [r15], 0x45
jne 0x140128408
xor esi, esi
mov dword [rbp - 0x78], esi
add r15, 2
jmp 0x14012882c
cmp dword [rbp - 0x40], r14d
jg 0x140128953
cmp dword [rsp + 0x54], r14d
jne 0x1401284ab
mov ecx, dword [rbp - 0x44]
mov eax, ecx
dec ecx
mov dword [rbp - 0x44], ecx
test eax, eax
jg 0x1401284a2
mov r8, qword [rbp + 0x78]
mov rcx, r12
test r11, r11
je 0x140128449
mov rax, rbx
sub rax, qword [r8 + 0x38]
sar rax, 1
sub eax, dword [r11 + 4]
mov dword [r11 + 8], eax
cmp dword [rbp - 0x2c], r14d
jne 0x140128454
xor r11d, r11d
jmp 0x14012849a
test r11, r11
je 0x140128470
lea rax, [r12 - 0x10]
cmp r11, rax
mov eax, 0xff
jne 0x140128475
cmp dword [r11 + 0xc], eax
je 0x14012848f
jmp 0x140128475
mov eax, 0xff
mov r11, r12
mov dword [r12], 0x80060000
lea rcx, [r12 + 0x10]
mov dword [r12 + 8], r14d
mov dword [r12 + 0xc], eax
sub rbx, qword [r8 + 0x38]
sar rbx, 1
mov dword [r11 + 4], ebx
mov qword [rsp + 0x70], r11
mov r12, rcx
mov eax, 1
mov dword [rsp + 0x78], eax
xor esi, esi
mov dword [r12], r13d
add r12, 4
mov dword [rbp - 0x60], esi
mov qword [rsp + 0x60], r12
jmp 0x14012882c
cmp dword [rsp + 0x54], r14d
je 0x140128643
mov eax, edi
and eax, 0x400080
cmp eax, 0x400080
jne 0x140128534
mov eax, 0xff
cmp edx, eax
jbe 0x1401284f8
mov eax, r13d
or eax, 1
cmp eax, 0x200f
je 0x1401284f8
cmp eax, 0x2029
jne 0x140128534
mov rdi, qword [rbp + 0x78]
test r13d, 0xffffff00
jne 0x140128647
cmp r13d, 0x23
je 0x140128647
mov rax, qword [rdi + 0x20]
test byte [r13 + rax], 1
jne 0x140128647
cmp r13d, 0x85
je 0x140128647
mov edi, dword [rsp + 0x50]
cmp r13d, 0x29
je 0x1401285ee
cmp r13d, 0x5c
je 0x140128556
mov dword [r12], r13d
add r12, 4
mov qword [rsp + 0x60], r12
jmp 0x14012882a
xor esi, esi
bt edi, 0x16
jae 0x1401285dc
mov eax, dword [r8 + 0x40]
lea r9, [rsp + 0x68]
mov r13, qword [rbp + 0x78]
lea r8, [rbp - 0x80]
mov rdx, qword [rsp + 0x58]
lea rcx, [rbp + 0x60]
mov qword [rsp + 0x38], r13
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], edi
call fcn.1401216f0
mov edx, dword [rsp + 0x68]
test edx, edx
jne 0x14012b176
test eax, eax
je 0x1401285ca
sub eax, 0x19
je 0x14012ac7e
mov r15, qword [rbp + 0x60]
cmp eax, 1
jne 0x14012b108
mov r9, qword [rsp + 0x58]
mov r11, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x54]
mov dword [rbp - 0x78], eax
jmp 0x140128834
mov r15, qword [rbp + 0x60]
mov r13d, dword [rbp - 0x80]
mov r9, qword [rsp + 0x58]
mov r11, qword [rsp + 0x70]
mov dword [r12], r13d
add r12, 4
mov qword [rsp + 0x60], r12
jmp 0x14012882c
xor esi, esi
mov rax, r15
sub rax, qword [rbp]
mov edx, 0xffff
sar rax, 1
mov ecx, esi
dec rax
mov dword [rsp + 0x54], ecx
cmp rax, rdx
jg 0x14012b112
mov rdx, qword [rbp - 8]
mov rax, r12
sub rax, rdx
sar rax, 2
dec eax
mov dword [rdx], eax
mov edx, dword [rbp - 0x30]
test edx, edx
je 0x140128830
mov dword [r12], edx
add r12, 4
mov qword [rsp + 0x60], r12
mov dword [rbp - 0x30], esi
jmp 0x140128830
mov rdi, qword [rbp + 0x78]
mov r8, qword [rsp + 0x58]
cmp r13d, 0x5c
jne 0x14012868a
cmp r15, r8
jae 0x14012868a
movzx eax, word [r15]
cmp ax, 0x51
je 0x140128667
cmp ax, 0x45
jne 0x14012868a
mov r9, qword [rsp + 0x58]
xor esi, esi
mov edi, dword [rsp + 0x50]
cmp ax, 0x51
mov r8d, esi
sete r8b
add r15, 2
mov dword [rbp - 0x78], r8d
jmp 0x14012882c
test byte [rsp + 0x50], 0x80
je 0x1401287ca
cmp r13d, 0x100
jae 0x1401286ae
mov rax, qword [rdi + 0x20]
test byte [r13 + rax], 1
jne 0x140128821
cmp r13d, 0x85
je 0x140128821
mov eax, r13d
or eax, 1
cmp eax, 0x200f
je 0x140128821
cmp eax, 0x2029
je 0x140128821
cmp r13d, 0x23
jne 0x1401287ca
mov r13, qword [rbp + 0x78]
cmp r15, r8
jae 0x1401287b9
nop
mov edx, dword [r13 + 0x100]
lea rbx, [r13 + 0x104]
mov rcx, qword [r13 + 0x40]
test edx, edx
je 0x14012873a
cmp r15, rcx
jae 0x140128729
mov r8, rcx
mov dword [rsp + 0x20], r10d
mov rcx, r15
mov r9, rbx
call fcn.140165a00
test eax, eax
je 0x140128729
mov eax, 1
jmp 0x14012872b
xor eax, eax
test eax, eax
jne 0x1401287ae
mov r8, qword [rsp + 0x58]
mov r10d, dword [rbp - 0x74]
jmp 0x14012876a
mov edx, dword [rbx]
imul rax, rdx, 0xfffffffffffffffe
add rax, rcx
cmp r15, rax
ja 0x14012876a
movzx eax, word [r13 + 0x110]
cmp word [r15], ax
jne 0x14012876a
cmp edx, 1
je 0x1401287ae
movzx eax, word [r13 + 0x112]
cmp word [r15 + 2], ax
je 0x1401287a7
add r15, 2
mov rax, r15
test r10d, r10d
je 0x14012879c
cmp r15, r8
jae 0x14012879c
movzx eax, word [r15]
mov ecx, 0xfc00
and ax, cx
mov ecx, 0xdc00
cmp ax, cx
jne 0x1401286f0
add r15, 2
mov rax, r15
cmp rax, r8
jb 0x1401286f0
jmp 0x1401287b4
lea rbx, [r13 + 0x104]
mov eax, dword [rbx]
lea r15, [r15 + rax*2]
mov r11, qword [rsp + 0x70]
mov r9, qword [rsp + 0x58]
mov edi, dword [rsp + 0x50]
mov ecx, dword [rsp + 0x54]
xor esi, esi
jmp 0x140128834
cmp r13d, 0x28
jne 0x14012884b
mov rax, r8
sub rax, r15
and rax, 0xfffffffffffffffe
cmp rax, 4
jl 0x140128897
cmp word [r15], 0x3f
jne 0x140128897
cmp word [r15 + 2], 0x23
jne 0x140128897
nop dword [rax + rax]
add r15, 2
cmp r15, r8
jae 0x14012b120
cmp word [r15], 0x29
jne 0x140128800
cmp r15, r8
jae 0x14012b120
add r15, 2
mov r9, qword [rsp + 0x58]
mov edi, dword [rsp + 0x50]
xor esi, esi
mov ecx, dword [rsp + 0x54]
mov r13, qword [rbp + 0x78]
movzx r14d, word [rbp + 0x68]
cmp r15, r9
jae 0x14012b2f3
mov rbx, qword [rbp + 8]
jmp 0x140128360
lea eax, [r13 - 0x2a]
cmp eax, 1
jbe 0x14012891d
cmp r13d, 0x3f
je 0x14012891d
cmp r13d, 0x7b
jne 0x140128897
mov rdx, qword [rsp + 0x58]
lea rax, [rsp + 0x68]
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov qword [rbp - 0x68], r15
lea rcx, [rbp - 0x68]
call fcn.14012d2c0
test eax, eax
jne 0x14012891d
mov r11, qword [rsp + 0x70]
mov ecx, dword [rbp - 0x44]
mov eax, ecx
dec ecx
mov dword [rbp - 0x44], ecx
test eax, eax
jg 0x14012891d
mov rcx, r12
test r11, r11
je 0x1401288bf
mov rax, rbx
sub rax, qword [rdi + 0x38]
sar rax, 1
sub eax, dword [r11 + 4]
mov dword [r11 + 8], eax
cmp dword [rbp - 0x2c], r14d
jne 0x1401288ca
xor r11d, r11d
jmp 0x140128910
test r11, r11
je 0x1401288e6
lea rax, [r12 - 0x10]
cmp r11, rax
mov eax, 0xff
jne 0x1401288eb
cmp dword [r11 + 0xc], eax
je 0x140128905
jmp 0x1401288eb
mov eax, 0xff
mov r11, r12
mov dword [r12], 0x80060000
lea rcx, [r12 + 0x10]
mov dword [r12 + 8], r14d
mov dword [r12 + 0xc], eax
sub rbx, qword [rdi + 0x38]
sar rbx, 1
mov dword [r11 + 4], ebx
mov qword [rsp + 0x70], r11
mov r12, rcx
mov qword [rsp + 0x60], rcx
mov edx, dword [rbp - 0x40]
test edx, edx
jle 0x1401289c1
cmp r13d, 0x28
jne 0x140128953
mov r11, qword [rsp + 0x58]
mov rax, r11
sub rax, r15
and rax, 0xfffffffffffffffe
cmp rax, 6
jl 0x140128953
movzx eax, word [r15]
cmp ax, 0x3f
je 0x140128961
cmp ax, 0x2a
je 0x140128968
sub r15, 2
mov edx, 0x80
jmp 0x1401296bc
cmp word [r15], 0x2a
jne 0x140128987
movzx eax, word [r15 + 2]
mov ecx, 0xff
cmp ax, cx
ja 0x140128983
mov ecx, eax
mov rax, qword [rdi + 0x20]
test byte [rcx + rax], 4
jne 0x1401289c6
xor eax, eax
jmp 0x1401289a8
movzx ecx, word [r15 + 2]
sub ecx, 0x21
je 0x1401289c6
sub ecx, 0x1b
je 0x1401289ae
sub ecx, 1
je 0x1401289c6
cmp ecx, 6
jne 0x140128953
xor eax, eax
cmp edx, 2
sete al
test eax, eax
je 0x140128953
jmp 0x1401289c6
movzx eax, word [r15 + 4]
cmp ax, 0x3d
je 0x1401289c6
cmp ax, 0x21
jne 0x140128953
jmp 0x1401289c6
mov r11, qword [rsp + 0x58]
mov ecx, dword [rbp - 0x60]
xor ebx, ebx
mov edi, dword [rsp + 0x78]
mov r9d, edx
mov dword [rbp - 0x68], edx
mov eax, ecx
mov dword [rbp - 0x40], ebx
mov edx, ecx
mov dword [rsp + 0x78], ebx
mov dword [rbp - 0x60], ebx
test ecx, ecx
je 0x140128a2e
cmp r13d, 0x3f
je 0x1401289f3
cmp r13d, 0x2b
jne 0x140128a2e
cmp r13d, 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 + r12], ecx
mov r11, qword [rsp + 0x70]
jmp 0x140128821
lea eax, [r13 - 0x24]
cmp eax, 0x58
ja case.0x140128a54.37
lea rdx, [0x140000000]
movzx eax, byte [rdx + rax + 0x12b404]
mov ecx, dword [rdx + rax*4 + 0x12b3d0]
add rcx, rdx
jmp rcx
mov r13, qword [rbp + 0x78]
lea r9, [rsp + 0x68]
mov edi, dword [rsp + 0x50]
lea r8, [rbp - 0x80]
mov qword [rsp + 0x38], r13
lea rcx, [rbp + 0x60]
mov dword [rsp + 0x30], ebx
mov rdx, r11
mov rax, qword [r13]
mov eax, dword [rax + 0x40]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], edi
call fcn.1401216f0
mov edx, dword [rsp + 0x68]
mov esi, eax
test edx, edx
jne 0x140128ad8
test eax, eax
je 0x140128f19
js 0x140128e84
lea ecx, [rax - 6]
cmp ecx, 0x16
ja case.0x140128ac7.13
movsxd rax, ecx
lea rdx, [0x140000000]
movzx eax, byte [rdx + rax + 0x12b478]
mov ecx, dword [rdx + rax*4 + 0x12b460]
add rcx, rdx
jmp rcx
bt edi, 0x14
jae case.0x140128ac7.12
mov edx, 0xb7
mov dword [rsp + 0x68], edx
mov rcx, qword [rbp + 0x60]
mov qword [rbp - 0x80], rcx
mov r11, qword [rsp + 0x58]
mov ebx, dword [rbp - 0x74]
test byte [rbp - 0x3c], 2
je 0x1401296b8
cmp r15, r11
jb 0x140128f25
mov ecx, 0x5c
mov edi, dword [rsp + 0x50]
mov eax, 1
mov dword [r12], ecx
mov dword [rsp + 0x78], eax
add r12, 4
jmp 0x140128b32
mov eax, 1
mov dword [rsp + 0x78], eax
lea eax, [rsi - 0x7fe80000]
mov dword [r12], eax
add r12, 4
mov r15, qword [rbp + 0x60]
mov r9, qword [rsp + 0x58]
xor esi, esi
mov r11, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x54]
mov qword [rsp + 0x60], r12
jmp 0x140128834
lea rax, [rsp + 0x68]
mov qword [rsp + 0x28], r13
lea r9, [rbp - 0x80]
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x48]
mov word [rbp - 0x48], bx
lea rdx, [rbp - 0x20]
mov word [rbp - 0x80], bx
lea rcx, [rbp + 0x60]
call fcn.140127570
test eax, eax
je 0x140128dd8
cmp dword [rbp - 0x20], ebx
je 0x140128b90
cmp esi, 0xf
mov eax, ebx
sete al
lea esi, [rax + 0xf]
movzx ecx, word [rbp - 0x48]
lea eax, [rsi - 0x7fe80000]
mov dword [r12], eax
movzx eax, word [rbp - 0x80]
shl ecx, 0x10
or ecx, eax
mov eax, 1
mov dword [r12 + 4], ecx
add r12, 8
mov dword [rsp + 0x78], eax
jmp 0x140128b2e
mov rcx, qword [rbp + 0x60]
mov r11, qword [rsp + 0x58]
mov qword [rbp - 0x80], rcx
cmp rcx, r11
jae 0x140128df1
movzx eax, word [rcx]
cmp ax, 0x7b
je 0x140128bed
cmp ax, 0x3c
je 0x140128c5a
cmp ax, 0x27
jne 0x140128df1
cmp ax, 0x27
mov r14d, 0x7d
mov eax, 0x27
cmove r14d, eax
cmp esi, 0x1b
jne 0x140128d4d
cmp r14d, 0x7d
je 0x140128d4d
mov r11d, dword [r13 + 0xd4]
lea r8, [rcx + 2]
mov r13, qword [rsp + 0x58]
xor eax, eax
mov dword [rsp + 0x68], eax
mov r9d, 0xffff
mov r10d, r9d
mov ecx, eax
mov edi, eax
mov edx, eax
test r11d, r11d
js 0x140128c71
cmp r8, r13
jae 0x140128d38
movzx eax, word [r8]
cmp ax, 0x2b
jne 0x140128c62
mov ebx, 1
sub r10d, r11d
jmp 0x140128c6d
mov r14d, 0x3e
jmp 0x140128c00
cmp ax, 0x2d
jne 0x140128c7a
mov ebx, 0xffffffff
add r8, 2
cmp r8, r13
jae 0x140128d38
movzx eax, word [r8]
sub ax, 0x30
cmp ax, 9
ja 0x140128d38
nop dword [rax]
movzx r9d, word [r8]
lea eax, [r9 - 0x30]
cmp ax, 9
ja 0x140128cb6
lea ecx, [rcx + rcx*4]
add r8, 2
lea ecx, [rcx - 0x18]
lea ecx, [r9 + rcx*2]
cmp ecx, r10d
ja 0x140128cce
cmp r8, r13
jb 0x140128c90
test r11d, r11d
js 0x140128cf9
test ebx, ebx
je 0x140128cf9
test ecx, ecx
jne 0x140128cd9
mov edx, 0x7e
mov dword [rsp + 0x68], edx
jmp 0x140128cfe
mov edx, 0xa1
mov dword [rsp + 0x68], edx
jmp 0x140128cfe
test ebx, ebx
jle 0x140128ce2
add ecx, r11d
jmp 0x140128cf9
cmp ecx, r11d
jle 0x140128cf2
mov edx, 0x73
mov dword [rsp + 0x68], edx
jmp 0x140128cfe
sub r11d, ecx
lea ecx, [r11 + 1]
mov edi, 1
mov dword [rbp - 0x70], ecx
test edi, edi
je 0x140128d38
mov r11, qword [rsp + 0x58]
cmp r8, r11
jae 0x140128d24
movzx eax, word [r8]
cmp eax, r14d
jne 0x140128d24
mov r13, qword [rbp + 0x78]
mov r15, r8
jmp 0x14012ad2a
mov r13, qword [rbp + 0x78]
mov eax, 0x9d
mov edx, eax
mov dword [rsp + 0x68], eax
jmp 0x140128ae5
mov r13, qword [rbp + 0x78]
test edx, edx
jne 0x140128ae0
mov r11, qword [rsp + 0x58]
mov edi, dword [rsp + 0x50]
mov ebx, dword [rbp - 0x74]
lea rax, [rsp + 0x68]
mov qword [rsp + 0x40], r13
lea rcx, [rbp + 0x60]
mov qword [rsp + 0x38], rax
mov r9d, r14d
lea rax, [rbp - 0x6c]
mov r8d, ebx
mov qword [rsp + 0x30], rax
mov rdx, r11
lea rax, [rbp - 0x38]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
call fcn.14012ced0
test eax, eax
je 0x140128ddb
cmp esi, 0x1c
je 0x140128da0
mov eax, 0x80210000
cmp r14d, 0x7d
jne 0x140128da5
mov eax, 0x80040000
mov rcx, qword [rbp - 0x58]
mov dword [r12], eax
mov eax, dword [rbp - 0x6c]
mov dword [r12 + 4], eax
mov rax, rcx
shr rax, 0x20
mov dword [r12 + 8], eax
mov eax, 1
mov dword [r12 + 0xc], ecx
add r12, 0x10
mov dword [rsp + 0x78], eax
jmp 0x140128b2e
mov ebx, dword [rbp - 0x74]
mov rcx, qword [rbp + 0x60]
mov edx, dword [rsp + 0x68]
mov r11, qword [rsp + 0x58]
mov qword [rbp - 0x80], rcx
jmp 0x140128ae8
cmp esi, 0x1b
mov edx, 0xa9
mov eax, 0x9d
cmove edx, eax
mov dword [rsp + 0x68], edx
jmp 0x140128ae5
bt edi, 0x11
mov eax, 1
mov dword [rsp + 0x78], eax
jae case.0x140128ac7.13
lea eax, [rsi - 7]
test eax, 0xfffffff9
jne 0x140128e31
mov eax, 0x80180010
cmp esi, 0xd
jne 0x140128e36
mov eax, 0x8018000f
mov dword [r12], eax
add r12, 4
lea eax, [rsi - 6]
mov qword [rsp + 0x60], r12
cmp eax, 5
ja case.default.0x140128e5b
cdqe
mov ecx, dword [rdx + rax*4 + 0x12b490]
add rcx, rdx
jmp rcx
mov dword [r12], 0x3000d
jmp 0x140128b2a
mov dword [r12], 0x70000
jmp 0x140128b2a
mov dword [r12], 0x90000
jmp 0x140128b2a
mov r15, qword [rbp + 0x60]
neg esi
mov rcx, r15
mov eax, esi
sub rcx, qword [r13 + 0x38]
or eax, 0x80030000
sar rcx, 1
dec rcx
mov dword [r12], eax
add r12, 4
mov qword [rbp - 0x58], rcx
mov qword [rsp + 0x60], r12
cmp esi, 0xa
jge 0x140128ee2
movsxd rax, esi
cmp qword [r13 + rax*8 + 0x58], 0xffffffffffffffff
jne 0x140128efb
mov r9, qword [rsp + 0x58]
xor esi, esi
mov r11, qword [rsp + 0x70]
mov qword [r13 + rax*8 + 0x58], rcx
mov eax, 1
mov ecx, dword [rsp + 0x54]
mov dword [rsp + 0x78], eax
jmp 0x140128834
mov rax, rcx
shr rax, 0x20
mov dword [r12], eax
mov dword [r12 + 4], ecx
add r12, 8
mov qword [rsp + 0x60], r12
mov r9, qword [rsp + 0x58]
mov eax, 1
mov r11, qword [rsp + 0x70]
xor esi, esi
mov ecx, dword [rsp + 0x54]
mov dword [rsp + 0x78], eax
jmp 0x140128834
mov r15, qword [rbp + 0x60]
mov ecx, dword [rbp - 0x80]
jmp 0x140128b04
movzx ecx, word [r15]
add r15, 2
test ebx, ebx
je 0x140128b00
mov edi, dword [rsp + 0x50]
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x140128b04
movzx eax, word [r15]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add r15, 2
jmp 0x140128b04
mov r11, qword [rsp + 0x70]
mov dword [r12], 0x80090000
add r12, 4
mov qword [rsp + 0x60], r12
jmp 0x140128821
mov r11, qword [rsp + 0x70]
mov dword [r12], 0x80160000
add r12, 4
mov qword [rsp + 0x60], r12
jmp 0x140128821
mov dword [r12], 0x80170000
mov r11, qword [rsp + 0x70]
add r12, 4
mov eax, 1
mov qword [rsp + 0x60], r12
mov dword [rsp + 0x78], eax
jmp 0x140128821
mov r8d, 0x80340000
jmp 0x140129172
mov r8d, 0x80370000
jmp 0x140129172
mov r8d, 0x803a0000
jmp 0x140129172
mov r10, qword [rsp + 0x58]
xor eax, eax
mov dword [rsp + 0x68], eax
mov r9d, eax
mov r11d, 0x10000
mov edx, eax
mov r8, r15
cmp r15, r10
jae 0x14012903d
nop word [rax + rax]
movzx ecx, word [r8]
lea eax, [rcx - 0x30]
cmp ax, 9
jbe 0x140129034
cmp cx, 0x7d
je 0x14012904e
cmp cx, 0x2c
jne 0x14012903d
test r9d, r9d
jne 0x14012903d
mov r9d, 1
add r8, 2
cmp r8, r10
jb 0x140129010
test edx, edx
jne 0x1401296bc
mov dword [r12], r13d
jmp 0x140128fac
xor eax, eax
mov r10d, eax
mov r9d, eax
movzx eax, word [r15]
sub ax, 0x30
cmp ax, 9
ja 0x140129164
nop dword [rax + rax]
movzx r8d, word [r15]
lea eax, [r8 - 0x30]
cmp ax, 9
ja 0x14012909f
lea r10d, [r10 + r10*4]
add r15, 2
lea r10d, [r10 - 0x18]
mov eax, 0xffff
lea r10d, [r8 + r10*2]
cmp r10d, eax
ja 0x1401290c4
cmp r15, qword [rsp + 0x58]
jb 0x140129070
mov r9d, 1
test r9d, r9d
je 0x140129164
cmp word [r15], 0x7d
lea rax, [r15 + 2]
mov r15, rax
jne 0x1401290cf
mov r11d, r10d
jmp 0x140129159
mov edx, 0x69
mov dword [rsp + 0x68], edx
jmp 0x1401290a5
movzx eax, word [rax]
cmp ax, 0x7d
je 0x140129155
xor ecx, ecx
mov r11d, ecx
mov r9d, ecx
mov edx, ecx
mov dword [rsp + 0x68], ecx
cmp r15, qword [rsp + 0x58]
jae 0x140129164
sub ax, 0x30
cmp ax, 9
ja 0x140129164
nop word [rax + rax]
movzx r8d, word [r15]
lea eax, [r8 - 0x30]
cmp ax, 9
ja 0x14012912f
lea r11d, [r11 + r11*4]
add r15, 2
lea r11d, [r11 - 0x18]
mov eax, 0xffff
lea r11d, [r8 + r11*2]
cmp r11d, eax
ja 0x14012914a
cmp r15, qword [rsp + 0x58]
jb 0x140129100
mov r9d, 1
test r9d, r9d
je 0x140129164
cmp r11d, r10d
jge 0x140129155
mov edx, 0x68
mov dword [rsp + 0x68], edx
jmp 0x140129164
mov edx, 0x69
mov dword [rsp + 0x68], edx
jmp 0x140129135
add r15, 2
mov ebx, 1
mov esi, r10d
mov r14d, r11d
test ebx, ebx
je 0x14012903d
mov r8d, 0x803d0000
mov dword [rbp - 0x60], r8d
test edi, edi
je 0x14012b12a
cmp dword [r12 - 4], 0x802a0000
lea rcx, [r12 - 4]
jne 0x1401291c1
mov rdx, qword [rbp - 0x18]
cmp rcx, rdx
jb 0x1401291ae
nop word [rax + rax]
mov eax, dword [rcx]
mov dword [rcx + 4], eax
sub rcx, 4
cmp rcx, rdx
jae 0x1401291a0
mov dword [rdx], 0x801a0000
mov dword [r12 + 4], 0x80190000
add r12, 8
mov r9, qword [rsp + 0x58]
mov r11, qword [rsp + 0x70]
mov edi, dword [rsp + 0x50]
mov ecx, dword [rsp + 0x54]
mov dword [r12], r8d
add r12, 4
cmp r13d, 0x7b
mov qword [rsp + 0x60], r12
mov r13, qword [rbp + 0x78]
jne 0x1401287c6
mov dword [r12], esi
mov dword [r12 + 4], r14d
add r12, 8
mov qword [rsp + 0x60], r12
xor esi, esi
jmp 0x140128834
mov rax, r11
mov edi, 1
sub rax, r15
mov dword [rsp + 0x78], edi
and rax, 0xfffffffffffffffe
cmp rax, 0xc
jl 0x1401292e3
mov r8d, 6
lea rdx, [0x140259890]
mov rcx, r15
call fcn.140163d50
test eax, eax
je 0x14012925a
mov r8d, 6
lea rdx, [0x140259898]
mov rcx, r15
call fcn.140163d50
test eax, eax
jne 0x1401292de
xor esi, esi
mov dword [r12], 0x80180005
cmp word [r15 + 4], 0x3c
lea rax, [r12 + 8]
jne 0x14012927c
mov dword [r12 + 4], 0x80230000
jmp 0x140129292
mov rcx, qword [rbp + 0x70]
mov dword [r12 + 4], 0x80250000
mov dword [rcx], edi
mov qword [rax], rsi
add rax, 8
mov edi, dword [rsp + 0x50]
lea r12, [rax + 4]
bt edi, 0x11
jb 0x1401292a8
mov dword [rax], 0x8018000b
jmp 0x1401292ba
mov dword [rax], 0x80180010
mov dword [r12], 0x90000
add r12, 4
mov r9, qword [rsp + 0x58]
mov r11, qword [rsp + 0x70]
mov dword [r12], 0x80190000
add r12, 4
mov qword [rsp + 0x60], r12
add r15, 0xc
jmp 0x14012882c
mov r11, qword [rsp + 0x58]
movabs r14, 0x2400400000000000
cmp r15, r11
jae 0x14012937b
movzx r10d, word [r15]
cmp r10d, 0x3d
ja 0x14012937b
bt r14, r10
jae 0x14012937b
lea r8, [r15 + 2]
mov r9, r11
sub r9, r8
mov rax, r9
and rax, 0xfffffffffffffffe
cmp rax, 4
jl 0x14012937b
nop dword [rax]
movzx edx, word [r8]
cmp dx, 0x5c
jne 0x140129341
movzx eax, word [r8 + 2]
sub ax, dx
cmp ax, di
ja 0x14012934e
add r8, 2
sub r9, 2
jmp 0x140129366
cmp dx, 0x5b
jne 0x14012934e
cmp word [r8 + 2], r10w
jmp 0x140129352
cmp dx, 0x5d
je 0x14012937b
cmp dx, r10w
jne 0x140129366
cmp word [r8 + 2], 0x5d
je 0x14012b138
sub r9, 2
add r8, 2
mov rax, r9
and rax, 0xfffffffffffffffe
cmp rax, 4
jge 0x140129320
xor esi, esi
cmp r15, r11
jae 0x14012946b
mov r12d, dword [rsp + 0x50]
nop dword [rax + rax]
movzx r13d, word [r15]
add r15, 2
mov edx, r13d
mov dword [rbp - 0x80], r13d
mov rcx, r15
mov qword [rbp + 0x60], r15
cmp dword [rbp - 0x74], esi
je 0x1401293ea
mov eax, r13d
and eax, 0xfc00
cmp eax, 0xd800
jne 0x1401293ea
movzx eax, word [r15]
and r13d, 0x3ff
shl r13d, 0xa
and eax, 0x3ff
or r13d, eax
add r13d, 0x10000
add r15, 2
mov dword [rbp - 0x80], r13d
mov qword [rbp + 0x60], r15
mov rcx, r15
mov edx, r13d
cmp edx, 0x5c
jne 0x140129440
mov rdx, rcx
cmp rcx, r11
jae 0x140129408
cmp word [r15], 0x45
jne 0x140129408
lea r15, [rcx + 2]
mov qword [rbp + 0x60], r15
jmp 0x14012945d
mov rax, r11
sub rax, rdx
and rax, 0xfffffffffffffffe
cmp rax, 6
jl 0x140129466
mov r8d, 3
lea rdx, [0x1402598a0]
mov rcx, r15
call fcn.140163d50
test eax, eax
jne 0x140129466
mov r11, qword [rsp + 0x58]
add r15, 6
mov qword [rbp + 0x60], r15
jmp 0x14012945d
bt r12d, 0x18
jae 0x140129451
cmp edx, 0x20
je 0x14012945d
cmp edx, 9
je 0x14012945d
test ebx, ebx
jne 0x140129466
cmp r13d, 0x5e
jne 0x140129466
mov ebx, edi
cmp r15, r11
jb 0x140129390
mov r12, qword [rsp + 0x60]
cmp r13d, 0x5d
jne 0x1401294ad
mov r8, qword [rbp + 0x78]
test byte [r8 + 0xcc], dil
je 0x1401294ad
mov r9, qword [rsp + 0x58]
test ebx, ebx
mov r11, qword [rsp + 0x70]
mov eax, 0x800b0000
mov edi, dword [rsp + 0x50]
mov ecx, 0x800c0000
cmovne eax, ecx
mov dword [r12], eax
add r12, 4
mov qword [rsp + 0x60], r12
jmp 0x14012882c
mov r8d, dword [rbp - 0x78]
test ebx, ebx
mov eax, 0x800a0000
mov dword [rbp - 0x68], esi
mov ecx, 0x800e0000
mov ebx, edi
cmovne eax, ecx
mov dword [rsp + 0x78], ebx
mov dword [r12], eax
mov r11d, esi
add r12, 4
mov qword [rsp + 0x60], r12
nop dword [rax]
mov r10d, ebx
test r8d, r8d
je 0x14012951b
cmp r13d, 0x5c
jne 0x1401295e8
cmp r15, qword [rsp + 0x58]
jae 0x1401295e8
cmp word [r15], 0x45
jne 0x1401295e8
mov r8d, esi
mov dword [rbp - 0x78], esi
add r15, 2
mov edi, dword [rsp + 0x50]
jmp 0x14012977a
mov ecx, dword [rsp + 0x50]
bt ecx, 0x18
jae 0x140129531
cmp r13d, 0x20
je 0x140129512
cmp r13d, 9
je 0x140129512
cmp r13d, 0x5b
jne 0x140129863
mov rcx, qword [rsp + 0x58]
mov rax, rcx
sub rax, r15
and rax, 0xfffffffffffffffe
cmp rax, 6
jl 0x1401295e8
movzx r9d, word [r15]
cmp r9d, 0x3d
ja 0x1401295e8
bt r14, r9
jae 0x1401295e8
lea r12, [r15 + 2]
mov r8, rcx
sub r8, r12
mov rax, r8
and rax, 0xfffffffffffffffe
cmp rax, 4
jl 0x1401295df
movzx edx, word [r12]
cmp dx, 0x5c
jne 0x1401295a7
movzx eax, word [r12 + 2]
sub ax, dx
cmp ax, 1
ja 0x1401295b5
add r12, 2
sub r8, 2
jmp 0x1401295ca
cmp dx, 0x5b
jne 0x1401295b5
cmp word [r12 + 2], r9w
jmp 0x1401295b9
cmp dx, 0x5d
je 0x1401295df
cmp dx, r9w
jne 0x1401295ca
cmp word [r12 + 2], 0x5d
je 0x140129615
sub r8, 2
add r12, 2
mov rax, r8
and rax, 0xfffffffffffffffe
cmp rax, 4
jge 0x140129583
mov r12, qword [rsp + 0x60]
mov r8d, dword [rbp - 0x78]
cmp r11d, 1
jne 0x140129b9d
cmp r13d, dword [r12 - 8]
jne 0x140129b61
mov edi, dword [rsp + 0x50]
sub r12, 4
mov qword [rsp + 0x60], r12
mov r11d, esi
mov dword [rbp - 0x68], esi
jmp 0x14012977a
mov r13d, esi
cmp r11d, 1
je 0x14012b190
cmp word [r15], 0x3a
jne 0x14012b151
add r15, 2
mov qword [rbp - 0x80], r15
mov r14, r15
cmp word [r15], 0x5e
jne 0x14012964d
add r15, 2
mov r13d, ebx
mov qword [rbp - 0x80], r15
mov r14, r15
mov rbx, r12
lea rdi, [0x1402593d0]
sub rbx, r14
lea rcx, [0x140000000]
sar rbx, 1
mov r15d, esi
nop word [rax + rax]
movzx eax, byte [rsi + rcx + 0x259718]
cmp ebx, eax
jne 0x140129695
mov r8d, ebx
mov rdx, rdi
mov rcx, r14
call fcn.140163d50
test eax, eax
je 0x1401296e4
lea rcx, [0x140000000]
movzx eax, byte [rsi + rcx + 0x259718]
inc rdi
inc rsi
add rdi, rax
inc r15d
cmp byte [rsi + rcx + 0x259718], 0
jne 0x140129670
mov edx, 0x82
mov r15, qword [rbp - 0x80]
mov r8, qword [rbp + 0x78]
mov eax, edx
sub r15, qword [r8 + 0x38]
sar r15, 1
mov qword [r8 + 0xa8], r15
add rsp, 0x118
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
test r15d, r15d
js 0x1401296b3
mov rax, qword [rsp + 0x58]
lea rcx, [r12 + 4]
add rax, 0xfffffffffffffffe
mov qword [rbp - 0x80], rcx
cmp rcx, rax
jae 0x140129711
cmp word [rcx], 0x2d
jne 0x140129711
cmp word [rcx + 2], 0x5d
jne 0x14012b18d
mov edi, dword [rsp + 0x50]
xor eax, eax
bt edi, 0x11
mov dword [rbp - 0x68], eax
mov r11d, eax
jae 0x140129846
lea rcx, [0x140000000]
mov eax, dword [rcx + rsi*8 + 0x19a1a50]
mov ecx, dword [rcx + rsi*8 + 0x19a1a54]
test eax, eax
js 0x140129825
mov r12, qword [rsp + 0x60]
xor r13d, 1
sub r13d, 0x7fe7fff1
shl eax, 0x10
or eax, ecx
mov dword [r12], r13d
mov dword [r12 + 4], eax
add r12, 8
mov r15, qword [rbp - 0x80]
mov qword [rsp + 0x60], r12
xor esi, esi
mov r8d, dword [rbp - 0x78]
mov ebx, 1
cmp r15, qword [rsp + 0x58]
jae 0x14012b1a8
movzx r13d, word [r15]
add r15, 2
cmp dword [rbp - 0x74], 0
mov ecx, r13d
mov dword [rbp - 0x80], r13d
mov qword [rbp + 0x60], r15
je 0x1401297da
mov eax, r13d
and eax, 0xfc00
cmp eax, 0xd800
jne 0x1401297da
movzx eax, word [r15]
and r13d, 0x3ff
shl r13d, 0xa
and eax, 0x3ff
or r13d, eax
add r13d, 0x10000
add r15, 2
mov dword [rbp - 0x80], r13d
mov qword [rbp + 0x60], r15
mov ecx, r13d
movabs r14, 0x2400400000000000
cmp ecx, 0x5d
jne 0x1401294e0
test r8d, r8d
jne 0x1401294e0
cmp r11d, 1
jne 0x140129805
mov dword [r12 - 4], 0x2d
mov r9, qword [rsp + 0x58]
mov r11, qword [rsp + 0x70]
mov dword [r12], 0x800d0000
add r12, 4
mov qword [rsp + 0x60], r12
jmp 0x14012882c
test ecx, ecx
je 0x140129846
mov r12, qword [rsp + 0x60]
xor r13d, 1
sub r13d, 0x7fe7ffee
mov dword [r12], r13d
add r12, 4
jmp 0x140129766
mov r12, qword [rsp + 0x60]
lea eax, [r13 + 0x801c]
shl eax, 0x10
mov dword [r12], eax
mov dword [r12 + 4], r15d
jmp 0x140129762
cmp r13d, 0x2d
jne 0x1401298a0
cmp r11d, 2
jb 0x1401295e8
mov edi, dword [rsp + 0x50]
cmp r11d, 3
mov eax, 0x801e0000
mov dword [rbp - 0x68], ebx
mov ecx, 0x801f0000
mov r11d, ebx
cmove eax, ecx
mov dword [r12], eax
add r12, 4
mov qword [rsp + 0x60], r12
jmp 0x14012977a
cmp r13d, 0x5c
jne 0x1401295e8
mov r13, qword [rbp + 0x78]
lea r9, [rsp + 0x68]
mov qword [rsp + 0x38], r13
lea r8, [rbp - 0x80]
mov dword [rsp + 0x30], ebx
mov rdi, r15
mov r14, r15
mov rsi, r15
mov rax, qword [r13]
mov r15, qword [rsp + 0x58]
mov rdx, r15
mov eax, dword [rax + 0x40]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ecx
lea rcx, [rbp + 0x60]
call fcn.1401216f0
mov edx, dword [rsp + 0x68]
movsxd rbx, eax
test edx, edx
je 0x140129973
test byte [rbp - 0x3c], 2
je 0x14012b176
mov r15, rsi
cmp rsi, qword [rsp + 0x58]
jb 0x140129921
mov r11d, dword [rbp - 0x68]
xor esi, esi
mov r10d, esi
mov r13d, 0x5c
mov ebx, 1
jmp 0x1401295e4
cmp dword [rbp - 0x74], 0
lea r15, [r14 + 2]
movzx r13d, word [rdi]
je 0x14012999b
mov eax, r13d
and eax, 0xfc00
cmp eax, 0xd800
jne 0x14012999b
movzx eax, word [r15]
and r13d, 0x3ff
mov r11d, dword [rbp - 0x68]
and eax, 0x3ff
shl r13d, 0xa
add r15, 2
or r13d, eax
mov ebx, 1
add r13d, 0x10000
xor esi, esi
mov r10d, esi
jmp 0x1401295e4
lea rdx, [0x140000000]
cmp ebx, 0x1a
ja case.0x140129991.5
movzx eax, byte [rdx + rbx + 0x12b4c0]
mov ecx, dword [rdx + rax*4 + 0x12b4a8]
add rcx, rdx
jmp rcx
mov r15, qword [rbp + 0x60]
mov r13d, dword [rbp - 0x80]
mov r11d, dword [rbp - 0x68]
xor esi, esi
mov r10d, esi
mov ebx, 1
jmp 0x1401295e4
mov r15, qword [rbp + 0x60]
xor esi, esi
mov r11d, dword [rbp - 0x68]
mov r10d, esi
mov r13d, 8
mov ebx, 1
jmp 0x1401295e4
mov r15, qword [rbp + 0x60]
mov ebx, 1
mov r11d, dword [rbp - 0x68]
mov r8d, ebx
mov edi, dword [rsp + 0x50]
xor esi, esi
mov dword [rbp - 0x78], ebx
jmp 0x14012977a
mov r15, qword [rbp + 0x60]
mov r11d, dword [rbp - 0x68]
mov edi, dword [rsp + 0x50]
jmp 0x14012976f
cmp dword [rbp - 0x68], 1
je 0x14012b17f
xor esi, esi
lea eax, [rbx - 6]
mov dword [rbp - 0x68], esi
mov r11d, esi
cmp eax, 0xf
ja case.0x140129a24.13
cdqe
mov ecx, dword [rdx + rax*4 + 0x12b4dc]
add rcx, rdx
jmp rcx
lea eax, [rbx - 0x7fe80000]
mov dword [r12], eax
add r12, 4
jmp 0x140129b2b
mov edi, dword [rsp + 0x50]
bt edi, 0x11
jb 0x140129a56
lea eax, [rbx - 0x7fe80000]
mov dword [r12], eax
add r12, 4
jmp 0x140129b2f
lea eax, [rbx - 7]
test eax, 0xfffffff9
jne 0x140129a6a
mov eax, 0x80180010
cmp ebx, 0xd
jne 0x140129a6f
mov eax, 0x8018000f
mov dword [r12], eax
add ebx, 0xfffffffa
add r12, 4
mov qword [rsp + 0x60], r12
cmp ebx, 5
ja case.default.0x140129a95
movsxd rax, ebx
mov ecx, dword [rdx + rax*4 + 0x12b51c]
add rcx, rdx
jmp rcx
mov dword [r12], 0x3000d
add r12, 4
jmp 0x140129b2f
mov dword [r12], 0x70000
add r12, 4
jmp 0x140129b2f
mov dword [r12], 0x90000
add r12, 4
jmp 0x140129b2f
lea rax, [rsp + 0x68]
mov qword [rsp + 0x28], r13
lea r9, [rbp - 0x48]
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x80]
mov word [rbp - 0x80], si
lea rdx, [rbp - 0x1c]
mov word [rbp - 0x48], si
lea rcx, [rbp + 0x60]
call fcn.140127570
test eax, eax
je 0x14012b25e
cmp dword [rbp - 0x1c], esi
je 0x140129b08
cmp ebx, 0xf
mov eax, esi
sete al
lea ebx, [rax + 0xf]
movzx ecx, word [rbp - 0x80]
lea eax, [rbx - 0x7fe80000]
mov dword [r12], eax
mov r11d, esi
movzx eax, word [rbp - 0x48]
shl ecx, 0x10
or ecx, eax
mov dword [r12 + 4], ecx
add r12, 8
mov edi, dword [rsp + 0x50]
mov qword [rsp + 0x60], r12
lea rax, [r15 - 2]
mov r15, qword [rbp + 0x60]
cmp r15, rax
jae 0x140129771
cmp word [r15], 0x2d
jne 0x140129771
cmp word [r15 + 2], 0x5d
jne 0x14012b190
jmp 0x140129771
jb 0x14012b19a
test r10d, r10d
jne 0x140129b81
mov eax, 0x801f0000
cmp dword [r12 - 4], eax
jne 0x140129b81
mov dword [r12 - 4], 0x801e0000
mov edi, dword [rsp + 0x50]
mov r11d, esi
mov dword [r12], r13d
add r12, 4
mov qword [rsp + 0x60], r12
mov dword [rbp - 0x68], esi
jmp 0x14012977a
mov edi, dword [rsp + 0x50]
lea r11d, [r10 + 2]
mov dword [r12], r13d
add r12, 4
mov qword [rsp + 0x60], r12
mov dword [rbp - 0x68], r11d
jmp 0x14012977a
cmp r15, r11
jae 0x14012b3c6
movzx eax, word [r15]
cmp ax, 0x3f
je 0x14012a0d7
cmp ax, 0x2a
je 0x140129c3f
movzx r14d, word [rbp + 0x68]
mov edi, dword [rsp + 0x50]
inc r14w
mov r13, qword [rbp + 0x78]
mov word [rbp + 0x68], r14w
bt edi, 0xd
jb 0x140129c18
mov eax, dword [r13 + 0xd4]
mov ecx, 0xffff
cmp eax, ecx
jae 0x14012b2a7
inc eax
mov dword [r13 + 0xd4], eax
or eax, 0x80080000
jmp 0x140129c1d
mov eax, 0x801a0000
mov r9, qword [rsp + 0x58]
mov r11, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x54]
mov dword [r12], eax
add r12, 4
mov qword [rsp + 0x60], r12
xor esi, esi
jmp 0x140128839
mov rax, r11
sub rax, r15
and rax, 0xfffffffffffffffe
cmp rax, 2
jle 0x140128a24
movzx eax, word [r15 + 2]
cmp eax, 0x29
je 0x140128a24
mov r13, qword [rbp + 0x78]
mov ecx, 0xff
cmp ax, cx
ja 0x140129ecd
mov ecx, eax
mov rax, qword [r13 + 0x20]
test byte [rcx + rax], 4
je 0x140129ecd
mov r8d, dword [rbp - 0x74]
lea rax, [rsp + 0x68]
mov qword [rsp + 0x40], r13
lea rcx, [rbp + 0x60]
mov qword [rsp + 0x38], rax
lea r12, [0x140259260]
lea rax, [rbp - 0x6c]
xor r9d, r9d
mov qword [rsp + 0x30], rax
mov rdx, r11
lea rax, [rbp - 0x38]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
call fcn.14012ced0
test eax, eax
je 0x14012b25e
mov rcx, qword [rbp + 0x60]
mov qword [rbp - 0x80], rcx
cmp rcx, qword [rsp + 0x58]
jae 0x14012b1d9
cmp word [rcx], 0x3a
jne 0x14012b1d9
mov r14d, dword [rbp - 0x6c]
lea r9, [0x140000000]
mov r13, qword [rbp - 0x38]
xor eax, eax
mov esi, eax
mov dword [rbp - 0x70], ebx
mov r8d, eax
mov ecx, eax
mov edx, eax
nop dword [rax]
movsxd r15, eax
movsxd rax, ebx
cmp r14d, dword [r9 + rax*8 + 0x259340]
jne 0x140129d40
mov ebx, ecx
mov edi, edx
mov rdx, r12
mov rcx, r13
mov r8, r14
call fcn.140163d50
lea r9, [0x140000000]
test eax, eax
je 0x140129d66
mov r8d, esi
mov eax, dword [r9 + r15*8 + 0x259340]
lea ebx, [r8 + 1]
inc eax
mov dword [rbp - 0x70], ebx
add r12, rax
mov esi, ebx
mov eax, ebx
mov r8d, ebx
mov ecx, ebx
mov edx, ebx
mov edi, ebx
cmp ebx, 0x11
jl 0x140129d10
cmp ebx, 0x11
jge 0x14012b1d9
movsxd rax, edi
mov ecx, dword [r9 + rax*8 + 0x259344]
mov r9d, dword [rbp - 0x68]
test r9d, r9d
jle 0x140129d94
lea eax, [rcx + 0x7fdd0000]
cmp eax, 0x30000
ja 0x14012b1b2
cmp ecx, 0x80250000
ja 0x140129dec
je 0x140129ec0
cmp ecx, 0x80020000
je 0x14012a8c3
cmp ecx, 0x80220000
je 0x140129e1d
cmp ecx, 0x80230000
je 0x14012a8f3
cmp ecx, 0x80240000
jne 0x14012b1cf
mov r15, qword [rbp - 0x80]
mov r12, qword [rsp + 0x60]
mov r13, qword [rbp + 0x78]
add r15, 2
mov dword [r12], 0x80240000
jmp 0x14012a9b5
mov eax, 0x80260000
cmp ecx, eax
je 0x140129ec0
cmp ecx, 0x80270000
je 0x14012a911
cmp ecx, 0x80280000
je 0x140129ec0
cmp ecx, 0x8fff0000
jne 0x14012b1cf
mov r12, qword [rsp + 0x60]
movzx r14d, word [rbp + 0x68]
mov r15, qword [rbp - 0x80]
inc r14w
add r15, 2
mov word [rbp + 0x68], r14w
mov dword [r12], 0x80220000
add r12, 4
mov qword [rsp + 0x60], r12
cmp ecx, 0x8fff0000
jne 0x14012b0ff
mov rsi, qword [rbp - 0x50]
mov dword [r12], 0x80020000
add r12, 4
mov qword [rsp + 0x60], r12
test rsi, rsi
jne 0x140129e7d
mov r13, qword [rbp + 0x78]
mov rsi, qword [r13 + 0x28]
mov qword [rbp - 0x50], rsi
jmp 0x140129e93
add rsi, 0xc
mov qword [rbp - 0x50], rsi
cmp rsi, qword [rbp - 0x10]
jae 0x14012b2db
mov r13, qword [rbp + 0x78]
mov edi, dword [rsp + 0x50]
mov eax, edi
mov r9, qword [rsp + 0x58]
and eax, 0x10424e8
mov r11, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x54]
mov dword [rsi + 8], eax
mov word [rsi], r14w
mov word [rsi + 6], 4
xor esi, esi
jmp 0x140128839
mov r15, qword [rbp - 0x80]
sub r15, 2
jmp 0x14012a976
mov r8d, dword [rbp - 0x74]
lea rax, [rsp + 0x68]
mov qword [rsp + 0x40], r13
lea rcx, [rbp + 0x60]
mov qword [rsp + 0x38], rax
lea r12, [0x1402591c0]
lea rax, [rbp - 0x6c]
xor r9d, r9d
mov qword [rsp + 0x30], rax
mov rdx, r11
lea rax, [rbp - 0x38]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
call fcn.14012ced0
test eax, eax
je 0x14012b25e
mov r15, qword [rbp + 0x60]
mov qword [rbp - 0x80], r15
cmp r15, qword [rsp + 0x58]
jae 0x14012b2f7
movzx eax, word [r15]
cmp ax, 0x3a
je 0x140129f40
cmp ax, 0x29
jne 0x14012b2f7
mov r15d, dword [rbp - 0x6c]
lea r9, [0x140000000]
mov r13, qword [rbp - 0x38]
mov edi, ebx
mov dword [rbp - 0x70], ebx
mov ecx, ebx
mov esi, ebx
mov r8d, ebx
mov edx, ebx
mov eax, ebx
nop
movsxd r14, eax
movsxd rax, ecx
lea rcx, [rax + rax*2]
cmp r15d, dword [r9 + rcx*4 + 0x2591f0]
jne 0x140129f92
mov ebx, edx
mov r8, r15
mov rdx, r12
mov rcx, r13
call fcn.140163d50
lea r9, [0x140000000]
test eax, eax
je 0x140129fbc
mov r8d, esi
lea edi, [r8 + 1]
lea rax, [r14 + r14*2]
mov dword [rbp - 0x70], edi
mov eax, dword [r9 + rax*4 + 0x2591f0]
mov ecx, edi
inc eax
mov esi, edi
add r12, rax
mov r8d, edi
mov eax, edi
mov edx, edi
mov ebx, edi
cmp edi, 9
jl 0x140129f60
mov r15, qword [rbp - 0x80]
cmp ebx, 9
jge 0x14012b2f7
cmp word [r15], 0x3a
jne 0x140129fe3
lea rax, [r15 + 2]
cmp rax, qword [rsp + 0x58]
jae 0x140129fe3
cmp word [rax], 0x29
cmove r15, rax
movsxd rax, edi
lea rcx, [rax + rax*2]
lea rcx, [rcx*4]
mov edx, dword [rcx + r9 + 0x2591f8]
test edx, edx
jle 0x14012a077
cmp word [r15], 0x3a
jne 0x14012b1e3
mov r10, qword [rsp + 0x60]
xor esi, esi
mov ecx, dword [rcx + r9 + 0x2591f4]
mov ebx, esi
add r15, 2
mov qword [rbp - 0x18], r10
cmp ecx, 0x802a0000
lea r8, [r10 + 4]
sete bl
mov dword [rsp + 0x78], ebx
cmp ecx, 0x80290000
mov eax, esi
mov edx, 0x10000
cmovne eax, edx
add eax, ecx
mov r9, qword [rsp + 0x58]
lea r12, [r8 + 4]
mov r11, qword [rsp + 0x70]
mov edi, dword [rsp + 0x50]
mov dword [r10], eax
mov eax, 1
mov ecx, eax
mov dword [rsp + 0x54], eax
mov qword [rbp - 8], r8
mov qword [rsp + 0x60], r12
mov qword [rbp], r15
jmp 0x140128830
mov r10, qword [rsp + 0x60]
xor esi, esi
movzx eax, word [r15]
mov ebx, esi
mov ecx, dword [rcx + r9 + 0x2591f4]
cmp ecx, 0x802a0000
mov qword [rbp - 0x18], r10
sete bl
lea r8, [r10 + 4]
add r15, 2
mov dword [rsp + 0x78], ebx
cmp ax, 0x3a
jne 0x14012a0b9
test edx, edx
jns 0x14012a033
mov dword [rbp - 0x30], ecx
mov eax, 0x80290000
jmp 0x14012a045
mov r9, qword [rsp + 0x58]
mov r12, r8
mov r11, qword [rsp + 0x70]
mov edi, dword [rsp + 0x50]
mov dword [r10], ecx
mov qword [rsp + 0x60], r8
jmp 0x14012882c
add r15, 2
mov qword [rbp + 0x60], r15
mov r8, r15
cmp r15, r11
jae 0x14012b3c6
movzx edx, word [r15]
lea eax, [rdx - 0x21]
cmp eax, 0x31
ja case.0x14012a118.46
lea r14, [0x140000000]
cdqe
movzx eax, byte [r14 + rax + 0x12b56c]
mov ecx, dword [r14 + rax*4 + 0x12b534]
add rcx, r14
jmp rcx
add r15, 2
mov qword [rbp + 0x60], r15
cmp r15, r11
jae 0x14012b3c6
movzx eax, word [r15]
cmp ax, 0x3c
jne 0x14012a140
mov r9d, 0x3e
jmp 0x14012aa2d
cmp ax, 0x3e
je case.0x14012a118.34
cmp ax, 0x3d
jne 0x14012b1ed
mov r13, qword [rbp + 0x78]
lea rax, [rsp + 0x68]
mov r8d, dword [rbp - 0x74]
lea rcx, [rbp + 0x60]
mov qword [rsp + 0x40], r13
mov r9d, 0x29
mov qword [rsp + 0x38], rax
mov rdx, r11
lea rax, [rbp - 0x6c]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x38]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
call fcn.14012ced0
test eax, eax
je 0x14012b25e
mov dword [r12], 0x80040000
mov eax, dword [rbp - 0x6c]
mov rcx, qword [rbp - 0x58]
mov r15, qword [rbp + 0x60]
mov dword [r12 + 4], eax
mov rax, rcx
shr rax, 0x20
mov dword [r12 + 8], eax
mov eax, 1
mov dword [r12 + 0xc], ecx
add r12, 0x10
mov qword [rsp + 0x60], r12
mov dword [rsp + 0x78], eax
jmp 0x1401287b4
xor esi, esi
add r15, 2
mov ecx, esi
mov dword [rbp - 0x70], ecx
cmp r15, r11
jae 0x14012b1f7
cmp word [r15], 0x29
jne 0x14012b1f7
mov r13, qword [rbp + 0x78]
jmp 0x14012ad2c
mov rax, r11
sub rax, r15
and rax, 0xfffffffffffffffe
cmp rax, 4
jl 0x14012b201
movzx eax, word [r15 + 2]
sub ax, 0x30
cmp ax, 9
ja 0x14012b201
sub dx, 0x30
cmp dx, 9
ja 0x14012acc5
mov r13, qword [rbp + 0x78]
mov r8d, 0xffffffff
jmp 0x14012acd0
mov r13, qword [rbp + 0x78]
lea rax, [rsp + 0x68]
mov r8d, dword [rbp - 0x74]
lea rcx, [rbp + 0x60]
mov qword [rsp + 0x40], r13
mov r9d, 0x29
mov qword [rsp + 0x38], rax
mov rdx, r11
lea rax, [rbp - 0x6c]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x38]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
call fcn.14012ced0
test eax, eax
je 0x14012b25e
mov dword [r12], 0x80210000
jmp 0x14012a1a8
add r15, 2
cmp r15, r11
jae 0x14012b3c6
mov rcx, qword [rsp + 0x70]
dec r9d
mov edi, dword [rsp + 0x50]
mov r8d, 0xff
mov dword [rbp - 0x40], r9d
test rcx, rcx
je 0x14012a2e6
test dil, 4
je 0x14012a2e6
lea rax, [r12 - 0x10]
cmp rcx, rax
jne 0x14012a2e6
cmp dword [r12 - 4], r8d
cmove r12, rcx
movzx ecx, word [r15]
mov qword [rsp + 0x70], r12
mov dword [rbp - 0x44], 1
cmp ecx, 0x29
je 0x14012a3db
lea eax, [rcx - 0x30]
cmp ax, 9
jbe 0x14012a3db
mov eax, dword [0x140275f80]
xor esi, esi
mov dword [rbp - 0x70], esi
mov r10, r15
test eax, eax
je 0x14012b222
mov r9d, esi
mov r8d, ecx
mov edx, esi
cmp ecx, eax
je 0x14012a35b
nop
movsxd rax, r9d
lea ecx, [r9 + 1]
mov dword [rbp - 0x70], ecx
mov r9d, ecx
cmp dword [r14 + rax*4 + 0x275f84], ebx
je 0x14012b222
movsxd rax, ecx
movsxd rdx, ecx
cmp r8d, dword [r14 + rax*4 + 0x275f80]
jne 0x14012a330
mov ecx, dword [r14 + rdx*4 + 0x275f58]
test ecx, ecx
je 0x14012b222
mov dword [r12], 0x80070000
add r15, 2
cmp r15, r11
jae 0x14012b215
movzx eax, word [r15]
cmp eax, ecx
jne 0x14012a373
add r15, 2
cmp r15, r11
jae 0x14012a399
movzx eax, word [r15]
cmp eax, ecx
je 0x14012a373
mov rax, r15
mov ecx, 0xffffffff
sub rax, r10
sar rax, 1
cmp rax, rcx
ja 0x14012b20b
mov r13, qword [rbp + 0x78]
mov dword [r12 + 0xc], eax
sub r10, qword [r13 + 0x38]
sar r10, 1
mov rax, r10
mov dword [r12 + 0x14], r10d
shr rax, 0x20
mov dword [r12 + 0x10], eax
add r12, 0x14
mov qword [rbp - 0x58], r10
jmp 0x14012a420
xor esi, esi
mov dword [r12], 0x80060000
add r12, 0xc
mov ecx, esi
cmp r15, r11
jae 0x14012a418
movzx edx, word [r15]
lea eax, [rdx - 0x30]
cmp ax, 9
ja 0x14012a418
lea ecx, [rcx + rcx*4]
add r15, 2
lea ecx, [rcx - 0x18]
lea ecx, [rdx + rcx*2]
cmp ecx, r8d
jg 0x14012b22c
cmp r15, r11
jb 0x14012a3f0
mov r13, qword [rbp + 0x78]
mov dword [r12], ecx
cmp r15, r11
jae 0x14012b236
cmp word [r15], 0x29
jne 0x14012b236
mov r11, qword [rsp + 0x70]
add r15, 2
mov r9, qword [rsp + 0x58]
mov rax, r15
sub rax, qword [r13 + 0x38]
mov ecx, dword [rsp + 0x54]
sar rax, 1
add r12, 4
mov dword [r11 + 4], eax
mov qword [rsp + 0x60], r12
mov dword [r11 + 8], esi
jmp 0x140128834
add r15, 2
mov qword [rbp + 0x60], r15
cmp r15, r11
jae 0x14012b3c6
movzx r14d, word [rbp + 0x68]
movzx eax, word [r15]
inc r14w
mov word [rbp + 0x68], r14w
cmp ax, 0x3f
je 0x14012a8a8
cmp ax, 0x2a
je 0x14012a8a8
mov r13, qword [rbp + 0x78]
lea rax, [rsp + 0x68]
mov qword [rsp + 0x30], rax
lea rcx, [rbp + 0x60]
lea rax, [rbp - 0x70]
mov r9d, 0xffff
mov qword [rsp + 0x28], rax
mov rdx, r11
mov r8d, dword [r13 + 0xd4]
mov dword [rsp + 0x20], 0xa1
call fcn.14012d180
test eax, eax
je 0x14012a521
mov edx, dword [rbp - 0x70]
mov r15, qword [rbp + 0x60]
test edx, edx
jle 0x14012b240
mov dword [r12], 0x80120000
mov rcx, r15
sub rcx, qword [r13 + 0x38]
sar rcx, 1
sub rcx, 2
mov dword [r12 + 0xc], edx
mov rax, rcx
mov dword [r12 + 8], ecx
shr rax, 0x20
mov dword [r12 + 4], eax
add r12, 0xc
mov qword [rbp - 0x58], rcx
jmp 0x14012a86e
mov edx, dword [rsp + 0x68]
test edx, edx
jne 0x14012b176
mov r14, qword [rsp + 0x58]
mov rbx, qword [rbp + 0x60]
mov rdi, r14
sub rdi, rbx
sar rdi, 1
cmp rdi, 0xa
jl 0x14012a6c4
mov r8d, 7
lea rdx, [0x1402598a8]
mov rcx, rbx
call fcn.140163d50
test eax, eax
jne 0x14012a6c4
cmp word [rbx + 0xe], 0x29
lea r15, [rbx + 0xe]
je 0x14012a6c4
xor esi, esi
mov rax, r15
cmp word [r15], 0x3e
mov r11d, esi
mov r10d, esi
mov ebx, 1
jne 0x14012a596
add r15, 2
mov r11d, ebx
mov rax, r15
cmp word [r15], 0x3d
jne 0x14012b24a
lea r15, [rax + 2]
movzx eax, word [rax + 2]
sub ax, 0x30
cmp ax, 9
ja 0x14012b24a
mov edx, esi
mov ecx, esi
mov dword [rsp + 0x68], edx
mov r9d, esi
cmp r15, r14
jae 0x1401296bc
movzx eax, word [r15]
sub ax, 0x30
cmp ax, 9
ja 0x1401296bc
nop dword [rax]
movzx r8d, word [r15]
lea eax, [r8 - 0x30]
cmp ax, 9
ja 0x14012a60d
lea ecx, [rcx + rcx*4]
add r15, 2
lea ecx, [rcx - 0x18]
lea ecx, [r8 + rcx*2]
cmp ecx, 0x3e8
ja 0x14012a6b6
cmp r15, r14
jb 0x14012a5e0
mov r9d, ebx
test r9d, r9d
je 0x1401296bc
cmp r15, r14
jae 0x14012b24a
cmp word [r15], 0x2e
jne 0x14012a692
add r15, 2
cmp r15, r14
jae 0x14012b24a
movzx eax, word [r15]
cmp eax, 0x30
jb 0x14012b24a
cmp eax, 0x39
ja 0x14012b24a
sub eax, 0x30
add r15, 2
lea r10d, [rax + rax*4]
add r10d, r10d
cmp r15, r14
jae 0x14012b24a
movzx eax, word [r15]
cmp eax, 0x30
jb 0x14012a687
cmp eax, 0x39
ja 0x14012a687
add eax, 0xffffffd0
add r10d, eax
lea rax, [r15 + 2]
mov r15, rax
cmp rax, r14
jae 0x14012b24a
cmp word [r15], 0x29
jne 0x14012b24a
movzx r14d, word [rbp + 0x68]
mov dword [r12], 0x80150000
mov dword [r12 + 4], r11d
mov dword [r12 + 8], ecx
add r12, 0xc
mov dword [r12], r10d
jmp 0x14012a870
mov edx, 0xb3
mov dword [rsp + 0x68], edx
jmp 0x14012a610
xor eax, eax
mov esi, eax
movzx eax, word [rbx]
cmp ax, 0x52
jne 0x14012a6f1
cmp rdi, 1
jle 0x14012a717
cmp word [rbx + 2], 0x26
lea rax, [rbx + 2]
jne 0x14012a717
mov r15d, 1
mov qword [rbp + 0x60], rax
mov esi, r15d
jmp 0x14012a725
cmp ax, 0x3c
jne 0x14012a704
mov edi, 0x3e
mov r15d, 1
jmp 0x14012a72a
cmp ax, 0x27
jne 0x14012a717
mov edi, 0x27
mov r15d, 1
jmp 0x14012a72a
sub rbx, 2
mov r15d, 1
mov qword [rbp + 0x60], rbx
mov edi, 0x29
mov r8d, dword [rbp - 0x74]
lea rax, [rsp + 0x68]
mov qword [rsp + 0x40], r13
lea rcx, [rbp + 0x60]
mov qword [rsp + 0x38], rax
mov r9d, edi
lea rax, [rbp - 0x6c]
mov rdx, r14
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x38]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
call fcn.14012ced0
test eax, eax
je 0x14012b25e
mov r14d, dword [rbp - 0x6c]
test esi, esi
je 0x14012a78c
mov r15, qword [rbp + 0x60]
sub r15, 2
mov dword [r12], 0x80130000
jmp 0x14012a83b
cmp edi, 0x29
jne 0x14012a82f
mov rbx, qword [rbp - 0x38]
cmp r14d, 6
jne 0x14012a7cb
mov r8d, 6
lea rdx, [0x1402598b0]
mov rcx, rbx
call fcn.140163d50
test eax, eax
jne 0x14012a7cb
mov eax, 0x80100000
mov dword [r12], eax
mov r15, qword [rbp + 0x60]
sub r15, 2
jmp 0x14012a83b
mov dword [rbp - 0x70], r15d
mov eax, r15d
cmp r14d, 1
jle 0x14012a80c
mov r9d, r15d
mov r8d, r15d
mov edx, r15d
cdqe
movzx ecx, word [rbx + rax*2]
mov eax, edx
cmp cx, 0x30
jb 0x14012a80c
mov eax, r8d
cmp cx, 0x39
ja 0x14012a80c
lea eax, [r9 + 1]
mov dword [rbp - 0x70], eax
mov r9d, eax
mov r8d, eax
mov edx, eax
cmp eax, r14d
jl 0x14012a7e1
cmp word [rbx], 0x52
jne 0x14012a81c
cmp eax, r14d
mov eax, 0x80140000
jge 0x14012a821
mov eax, 0x80110000
mov dword [r12], eax
mov r15, qword [rbp + 0x60]
sub r15, 2
jmp 0x14012a83b
mov r15, qword [rbp + 0x60]
mov dword [r12], 0x80110000
mov eax, dword [r12]
add r12, 4
cmp eax, 0x80100000
je 0x14012a852
mov dword [r12], r14d
add r12, 4
mov rcx, qword [rbp - 0x58]
movzx r14d, word [rbp + 0x68]
mov rax, rcx
shr rax, 0x20
mov dword [r12], eax
add r12, 4
mov dword [r12], ecx
xor esi, esi
mov r9, qword [rsp + 0x58]
cmp r15, r9
jae 0x14012b254
cmp word [r15], 0x29
jne 0x14012b254
mov r11, qword [rsp + 0x70]
add r15, 2
mov edi, dword [rsp + 0x50]
add r12, 4
mov ecx, dword [rsp + 0x54]
mov qword [rsp + 0x60], r12
jmp 0x140128839
mov r13, qword [rbp + 0x78]
mov r15, r8
mov dword [r12], 0x800f0000
mov dword [rbp - 0x40], 2
jmp 0x14012b00d
mov r15, qword [rbp - 0x80]
mov r12, qword [rsp + 0x60]
movzx r14d, word [rbp + 0x68]
mov r13, qword [rbp + 0x78]
inc r14w
mov dword [r12], 0x80020000
add r12, 4
mov word [rbp + 0x68], r14w
add r15, 2
jmp 0x14012b011
mov r15, qword [rbp - 0x80]
mov r12, qword [rsp + 0x60]
mov r13, qword [rbp + 0x78]
add r15, 2
mov dword [r12], 0x80230000
jmp 0x14012a9b5
mov r15, qword [rbp - 0x80]
mov r12, qword [rsp + 0x60]
mov r13, qword [rbp + 0x78]
add r15, 2
mov dword [r12], 0x80270000
jmp 0x14012a9b5
mov rax, r11
sub rax, r15
and rax, 0xfffffffffffffffe
cmp rax, 2
jle 0x14012a135
movzx eax, word [r15 + 2]
cmp ax, 0x3d
je 0x14012a971
cmp ax, 0x21
je 0x14012a95e
cmp ax, 0x2a
jne 0x14012a135
cmp ax, 0x21
mov ecx, 0x80280000
mov eax, 0x80260000
cmove ecx, eax
jmp 0x14012a976
mov ecx, 0x80250000
mov r10, qword [rsp + 0x60]
lea r12, [r10 + 8]
mov dword [r10], ecx
mov rcx, r15
mov rax, qword [rbp + 0x70]
mov r13, qword [rbp + 0x78]
mov dword [rax], 1
sub rcx, qword [r13 + 0x38]
sar rcx, 1
sub rcx, 2
mov rax, rcx
mov qword [rbp - 0x58], rcx
shr rax, 0x20
mov dword [r10 + 4], eax
add r15, 4
mov dword [r12], ecx
movzx r14d, word [rbp + 0x68]
add r12, 4
inc r14w
mov qword [rsp + 0x60], r12
mov word [rbp + 0x68], r14w
test r9d, r9d
jle 0x14012b016
mov rsi, qword [rbp - 0x50]
test rsi, rsi
jne 0x14012a9e8
mov rsi, qword [r13 + 0x28]
mov qword [rbp - 0x50], rsi
jmp 0x14012a9fa
add rsi, 0xc
mov qword [rbp - 0x50], rsi
cmp rsi, qword [rbp - 0x10]
jae 0x14012b2db
mov edi, dword [rsp + 0x50]
mov eax, edi
mov r9, qword [rsp + 0x58]
and eax, 0x10424e8
mov r11, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x54]
mov dword [rsi + 8], eax
mov word [rsi], r14w
mov word [rsi + 6], 2
xor esi, esi
jmp 0x140128839
mov r9d, 0x27
mov r13, qword [rbp + 0x78]
lea rax, [rsp + 0x68]
mov r8d, dword [rbp - 0x74]
lea rcx, [rbp + 0x60]
mov qword [rsp + 0x40], r13
mov rdx, r11
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x6c]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x38]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
call fcn.14012ced0
test eax, eax
je 0x14012b25e
mov eax, dword [r13 + 0xd4]
mov ecx, 0xffff
cmp eax, ecx
jae 0x14012b2a3
inc word [rbp + 0x68]
inc eax
mov dword [r13 + 0xd4], eax
or eax, 0x80080000
mov dword [r12], eax
add r12, 4
movzx edx, word [r13 + 0xb0]
mov eax, 0x2710
mov qword [rsp + 0x60], r12
cmp dx, ax
jae 0x14012b295
mov r14d, dword [rbp - 0x6c]
movzx eax, word [r13 + 0xb2]
lea ecx, [r14 + 2]
cmp ecx, eax
jbe 0x14012aadc
lea eax, [r14 + 2]
mov word [r13 + 0xb2], ax
mov r12, qword [rbp - 0x38]
xor eax, eax
mov dword [rbp - 0x70], eax
mov r15d, ebx
mov rbx, qword [r13 + 0xc0]
mov esi, eax
mov edi, eax
cmp ax, dx
jae 0x14012ab6e
nop dword [rax + rax]
movzx eax, word [rbx + 0xc]
cmp r14d, eax
jne 0x14012ab47
mov rdx, qword [rbx]
mov r8, r14
mov rcx, r12
call fcn.140163d10
test eax, eax
jne 0x14012ab47
mov eax, dword [r13 + 0xd4]
cmp dword [rbx + 8], eax
je 0x14012ab6e
test byte [rsp + 0x50], 0x40
je 0x14012b26b
mov eax, 1
mov word [rbx + 0xe], ax
mov r15d, eax
mov dword [r13 + 0x12c], eax
jmp 0x14012ab57
mov eax, dword [r13 + 0xd4]
cmp dword [rbx + 8], eax
je 0x14012b279
movzx eax, word [r13 + 0xb0]
inc esi
add rbx, 0x10
mov dword [rbp - 0x70], esi
mov edi, esi
cmp esi, eax
jl 0x14012ab00
movzx eax, word [r13 + 0xb0]
cmp edi, eax
jl 0x14012ac73
mov ecx, dword [r13 + 0xc8]
cmp eax, ecx
jb 0x14012abfa
mov rax, qword [r13]
lea edi, [rcx + rcx]
mov ecx, edi
shl rcx, 4
mov rdx, qword [rax + 0x10]
mov rax, qword [rax]
call qword [case.0x1400a0d2d.0]
mov rbx, rax
test rax, rax
je 0x14012b287
mov r8d, dword [r13 + 0xc8]
mov rcx, rax
mov rdx, qword [r13 + 0xc0]
shl r8, 4
call fcn.140191f10
cmp dword [r13 + 0xc8], 0x14
jbe 0x14012abec
mov rdx, qword [r13]
mov rcx, qword [r13 + 0xc0]
mov rax, qword [rdx + 8]
mov rdx, qword [rdx + 0x10]
call qword [case.0x1400a0d2d.0]
mov qword [r13 + 0xc0], rbx
mov dword [r13 + 0xc8], edi
movzx ecx, word [r13 + 0xb0]
mov rax, qword [r13 + 0xc0]
add rcx, rcx
mov qword [rax + rcx*8], r12
movzx ecx, word [r13 + 0xb0]
mov rax, qword [r13 + 0xc0]
add rcx, rcx
mov r12, qword [rsp + 0x60]
mov word [rax + rcx*8 + 0xc], r14w
movzx edx, word [r13 + 0xb0]
mov rcx, qword [r13 + 0xc0]
add rdx, rdx
mov eax, dword [r13 + 0xd4]
mov dword [rcx + rdx*8 + 8], eax
movzx ecx, word [r13 + 0xb0]
mov rax, qword [r13 + 0xc0]
add rcx, rcx
mov word [rax + rcx*8 + 0xe], r15w
inc word [r13 + 0xb0]
mov r15, qword [rbp + 0x60]
jmp 0x1401287b4
mov r12, qword [rsp + 0x60]
mov edi, dword [rsp + 0x50]
xor esi, esi
mov r15, qword [rbp + 0x60]
mov r9, qword [rsp + 0x58]
mov r11, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x54]
jmp 0x140128834
cmp edx, 0x2d
jne 0x14012ad82
mov rax, r11
sub rax, r15
and rax, 0xfffffffffffffffe
cmp rax, 2
jle 0x14012ad82
movzx eax, word [r15 + 2]
sub ax, 0x30
cmp ax, 9
ja 0x14012ad82
mov r13, qword [rbp + 0x78]
mov r8d, dword [r13 + 0xd4]
lea rax, [rsp + 0x68]
mov r9d, 0xffff
mov qword [rsp + 0x30], rax
lea rcx, [rbp + 0x60]
lea rax, [rbp - 0x70]
mov rdx, r11
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0xa1
call fcn.14012d180
test eax, eax
je 0x14012b25e
mov ecx, dword [rbp - 0x70]
mov r15, qword [rbp + 0x60]
test ecx, ecx
js 0x14012b2b1
cmp r15, qword [rsp + 0x58]
jae 0x14012b3c6
cmp word [r15], 0x29
jne 0x14012b3c6
xor esi, esi
mov r9, qword [rsp + 0x58]
or ecx, 0x80200000
mov r11, qword [rsp + 0x70]
mov edi, dword [rsp + 0x50]
mov dword [r12], ecx
mov rcx, r15
sub rcx, qword [r13 + 0x38]
add r15, 2
sar rcx, 1
mov rax, rcx
mov dword [r12 + 8], ecx
shr rax, 0x20
mov dword [r12 + 4], eax
add r12, 0xc
mov eax, 1
mov qword [rbp - 0x58], rcx
mov ecx, dword [rsp + 0x54]
mov qword [rsp + 0x60], r12
mov dword [rsp + 0x78], eax
jmp 0x140128834
movzx r14d, word [rbp + 0x68]
mov rsi, qword [rbp - 0x50]
inc r14w
mov word [rbp + 0x68], r14w
test rsi, rsi
jne 0x14012ada7
mov r13, qword [rbp + 0x78]
mov rsi, qword [r13 + 0x28]
mov qword [rbp - 0x50], rsi
jmp 0x14012adbd
add rsi, 0xc
mov qword [rbp - 0x50], rsi
cmp rsi, qword [rbp - 0x10]
jae 0x14012b2db
mov r13, qword [rbp + 0x78]
mov word [rsi + 6], bx
mov ebx, dword [rsp + 0x50]
mov eax, ebx
and eax, 0x10424e8
mov word [rsi], r14w
mov dword [rsi + 8], eax
cmp word [r15], 0x7c
jne 0x14012ae18
movzx eax, word [r13 + 0xd4]
mov word [rsi + 2], ax
movzx eax, word [r13 + 0xd4]
mov word [rsi + 4], ax
mov word [rsi + 6], 1
or dword [r13 + 0xd0], 0x200000
mov dword [r12], 0x801a0000
add r12, 4
add r15, 2
jmp 0x14012b011
xor edi, edi
lea r8, [rbp - 0x28]
mov dword [rsi + 2], edi
mov ecx, edi
mov dword [rbp - 0x24], ecx
mov edx, edi
mov dword [rbp - 0x28], edx
mov r9d, 1
mov r10d, ebx
cmp r15, r11
jae 0x14012af22
cmp word [r15], 0x5e
jne 0x14012ae51
and ebx, 0xfeffdb57
mov r9d, edi
add r15, 2
cmp r15, r11
jae 0x14012af22
lea rdx, [0x140000000]
movzx eax, word [r15]
cmp eax, 0x29
je 0x14012af1c
cmp eax, 0x3a
je 0x14012af1c
add r15, 2
lea ecx, [rax - 0x2d]
cmp ecx, 0x4b
ja case.0x14012ae9c.53
movsxd rax, ecx
movzx eax, byte [rdx + rax + 0x12b5c4]
mov ecx, dword [rdx + rax*4 + 0x12b5a0]
add rcx, rdx
jmp rcx
test r9d, r9d
je 0x14012b2bf
lea r8, [rbp - 0x24]
mov r9d, edi
jmp 0x14012af10
or dword [r8], 0x40
or dword [r13 + 0xd0], 0x400
jmp 0x14012af10
or dword [r8], 8
jmp 0x14012af10
or dword [r8], 0x400
jmp 0x14012af10
or dword [r8], 0x2000
jmp 0x14012af10
or dword [r8], 0x20
jmp 0x14012af10
or dword [r8], 0x40000
jmp 0x14012af10
mov ecx, dword [r8]
mov rax, r15
bts ecx, 7
mov dword [r8], ecx
cmp r15, r11
jae 0x14012af13
cmp word [r15], 0x78
jne 0x14012ae61
bts ecx, 0x18
mov dword [r8], ecx
add r15, 2
mov rax, r15
cmp rax, r11
jb 0x14012ae61
mov edx, dword [rbp - 0x28]
mov ecx, dword [rbp - 0x24]
mov eax, edx
and eax, 0x1000080
cmp eax, 0x80
je 0x14012af34
test cl, cl
jns 0x14012af38
bts ecx, 0x18
or ebx, edx
not ecx
and ebx, ecx
mov dword [rsp + 0x50], ebx
cmp r15, r11
jae 0x14012b3c6
movzx eax, word [r15]
add r15, 2
cmp ax, 0x29
jne 0x14012af84
mov eax, 0xffff
add r14w, ax
mov word [rbp + 0x68], r14w
cmp rsi, qword [r13 + 0x28]
jbe 0x14012af7e
cmp word [rsi - 0xc], r14w
lea rax, [rsi - 0xc]
jne 0x14012af7e
mov qword [rbp - 0x50], rax
jmp 0x14012af95
mov word [rsi], r14w
jmp 0x14012af95
mov dword [r12], 0x801a0000
add r12, 4
mov qword [rsp + 0x60], r12
mov r9, qword [rsp + 0x58]
mov r11, qword [rsp + 0x70]
mov edi, dword [rsp + 0x50]
mov ecx, dword [rsp + 0x54]
cmp ebx, r10d
je 0x14012afc2
mov dword [r12], 0x801b0000
mov dword [r12 + 4], ebx
add r12, 8
mov qword [rsp + 0x60], r12
xor esi, esi
jmp 0x140128839
mov rsi, qword [rbp - 0x50]
movzx r14d, word [rbp + 0x68]
mov r13, qword [rbp + 0x78]
test rsi, rsi
je 0x14012b005
cmp word [rsi], r14w
jne 0x14012b005
test byte [rsi + 6], 1
je 0x14012b005
movzx eax, word [rsi + 4]
mov ecx, dword [r13 + 0xd4]
cmp ecx, eax
jbe 0x14012affa
mov word [rsi + 4], cx
movzx eax, word [rsi + 2]
mov dword [r13 + 0xd4], eax
mov dword [r12], 0x80010000
add r12, 4
mov qword [rsp + 0x60], r12
mov edi, dword [rsp + 0x50]
xor esi, esi
mov r9, qword [rsp + 0x58]
mov r11, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x54]
jmp 0x140128839
mov rsi, qword [rbp - 0x50]
mov eax, 1
movzx r14d, word [rbp + 0x68]
mov dword [rsp + 0x78], eax
test rsi, rsi
je 0x14012b0b9
cmp word [rsi], r14w
jne 0x14012b0b9
mov ebx, dword [rsp + 0x50]
mov r13, qword [rbp + 0x78]
and ebx, 0xfefbdb17
or ebx, dword [rsi + 8]
mov dword [rsp + 0x50], ebx
test byte [rsi + 6], al
je 0x14012b07a
movzx eax, word [rsi + 4]
cmp eax, dword [r13 + 0xd4]
jbe 0x14012b07a
mov dword [r13 + 0xd4], eax
movzx eax, word [rsi + 6]
movzx edi, ax
not di
shr edi, 1
and edi, 1
mov dword [rsp + 0x78], edi
test al, 4
je 0x14012b09d
mov dword [r12], 0x80190000
add r12, 4
cmp rsi, qword [r13 + 0x28]
jne 0x14012b0ab
xor esi, esi
mov qword [rbp - 0x50], rsi
jmp 0x14012b0bf
sub rsi, 0xc
mov dword [rsp + 0x78], edi
mov qword [rbp - 0x50], rsi
jmp 0x14012b0bd
mov r13, qword [rbp + 0x78]
xor esi, esi
test r14w, r14w
je 0x14012b2e5
mov r9, qword [rsp + 0x58]
mov eax, 0xffff
mov r11, qword [rsp + 0x70]
add r14w, ax
mov edi, dword [rsp + 0x50]
mov ecx, dword [rsp + 0x54]
mov dword [r12], 0x80190000
add r12, 4
mov qword [rsp + 0x60], r12
mov word [rbp + 0x68], r14w
jmp 0x140128839
mov r13, qword [rbp + 0x78]
jmp 0x14012b016
mov edx, 0x8c
jmp 0x1401296bc
sub r15, 2
mov edx, 0xb0
jmp 0x1401296bc
mov edx, 0x76
jmp 0x1401296bc
mov edx, 0x6d
sub r15, 2
jmp 0x1401296bc
movzx eax, word [r15]
mov edx, ebx
sub r15, 2
cmp ax, 0x3a
setne dl
add edx, 0x70
jmp 0x1401296bc
mov edx, 0x71
sub r15, 2
jmp 0x1401296bc
mov r15, qword [rbp + 0x60]
mov edx, 0x6b
sub r15, 2
jmp 0x1401296bc
mov edx, 0xab
mov r15, qword [rbp + 0x60]
jmp 0x1401296bc
mov r15, qword [rbp + 0x60]
mov edx, 0x96
jmp 0x1401296bc
mov r15, rcx
mov edx, 0x96
jmp 0x1401296bc
mov edx, 0x6c
sub r15, 2
jmp 0x1401296bc
mov edx, 0x6a
jmp 0x1401296bc
lea eax, [rcx + 0x7fd90000]
mov edx, CreateErrorInfo
test eax, 0xfffeffff
mov eax, 0x80
cmovne edx, eax
jmp 0x1401296b8
mov edx, 0xbd
jmp 0x1401296b8
mov edx, 0xc3
jmp 0x1401296b8
mov edx, 0xa6
jmp 0x1401296bc
mov edx, 0x8d
jmp 0x1401296bc
mov edx, 0x9e
jmp 0x1401296bc
mov edx, 0x81
jmp 0x1401296bc
mov edx, 0xac
jmp 0x1401296bc
mov edx, 0xb5
mov r15, r10
jmp 0x1401296bc
mov edx, 0xb6
jmp 0x1401296bc
mov edx, 0x8a
jmp 0x1401296bc
mov edx, 0x8b
jmp 0x1401296bc
mov edx, 0x73
jmp 0x1401296bc
mov edx, 0xb3
jmp 0x1401296bc
mov edx, 0x7c
jmp 0x1401296bc
mov r15, qword [rbp + 0x60]
mov edx, dword [rsp + 0x68]
jmp 0x1401296bc
mov r15, qword [rbp + 0x60]
mov edx, 0x8f
jmp 0x1401296bc
mov r15, qword [rbp + 0x60]
mov edx, 0xa5
jmp 0x1401296bc
mov r15, qword [rbp + 0x60]
mov edx, 0x79
jmp 0x1401296bc
mov r15, qword [rbp + 0x60]
mov edx, 0x95
jmp 0x1401296bc
mov r15, qword [rbp + 0x60]
mov edx, CreateErrorInfo
jmp 0x1401296bc
mov edx, 0x73
sub r15, 2
jmp 0x1401296bc
mov edx, 0xc2
add r15, 0xfffffffffffffffe
jmp 0x1401296bc
mov edx, 0x6f
add r15, 0xfffffffffffffffe
jmp 0x1401296bc
mov edx, 0xb8
jmp 0x1401296bc
mov edx, 0x7a
sub r15, 2
jmp 0x1401296bc
test ecx, ecx
je 0x14012b30b
mov edx, 0xa0
jmp 0x1401296bc
mov edx, 0x77
jmp 0x1401296bc
mov r9d, dword [rbp - 0x2c]
mov rbx, qword [rbp + 8]
xor edi, edi
mov edx, dword [rbp - 0x3c]
mov r8d, 0xff
mov rcx, r12
test r11, r11
je 0x14012b338
mov rax, r15
sub rax, qword [r13 + 0x38]
sar rax, 1
sub eax, dword [r11 + 4]
mov dword [r11 + 8], eax
test r9d, r9d
je 0x14012b37a
test r11, r11
je 0x14012b352
lea rax, [r12 - 0x10]
cmp r11, rax
jne 0x14012b352
cmp dword [r11 + 0xc], r8d
je 0x14012b36c
mov r11, r12
mov dword [r12], 0x80060000
lea rcx, [r12 + 0x10]
mov dword [r12 + 8], edi
mov dword [r12 + 0xc], r8d
mov rax, r15
sub rax, qword [r13 + 0x38]
sar rax, 1
mov dword [r11 + 4], eax
test dl, 8
je 0x14012b38e
mov dword [rcx], 0x80190000
mov dword [rcx + 4], 0x80160000
jmp 0x14012b3a0
test dl, 4
je 0x14012b3a4
mov dword [rcx], 0x80190000
mov dword [rcx + 4], 0x80180005
add rcx, 8
cmp rcx, rbx
jb 0x14012b3b3
mov edx, 0xa3
jmp 0x1401296bc
mov dword [rcx], 0x80000000
test r14w, r14w
jne 0x14012b3c6
xor eax, eax
jmp 0x1401296d0
mov edx, 0x72
jmp 0x1401296bc