Function at 0x140037200
Capabilities:
Encode data using base64
Encrypt data using speck

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x628
movdqa xmmword [rsp + 0x610], xmm6
mov qword [rsp + 0x1c8], r8
mov qword [rsp + 0xc0], rcx
movzx eax, byte [rdx + 0xa0]
mov qword [rsp + 0xa8], rdx
mov r10, qword [rdx + 0x98]
test r10, r10
setne cl
or cl, al
mov byte [rsp + 0x56], cl
cmp cl, 1
jne 0x140037473
mov qword [rsp + 0x1d0], 0
mov qword [rsp + 0x1e0], 0
test al, al
jne 0x140037488
mov qword [rsp + 0x78], r10
call fcn.14004e970
test rax, rax
je 0x14003af04
mov rsi, rax
cmp word [rax], 0
je 0x14003747b
lea rdi, [rsp + 0x230]
lea r14, [rsp + 0x120]
lea r13, [rsp + 0x1a0]
mov rbp, rsi
jmp 0x1400372cf
cmp word [r12], 0
mov rbp, r12
je 0x14003747b
mov rcx, 0xfffffffffffffffe
xor edx, edx
nop dword [rax + rax]
mov rbx, rdx
mov rax, rcx
inc rdx
add rcx, 2
cmp word [rbp + rbx*2], 0
jne 0x1400372e0
lea rcx, [rbx + rbx]
lea r12, [rcx + rbp]
add r12, 2
cmp rbx, 1
je 0x1400372c0
test rbx, rbx
je 0x14003adc7
xor r15d, r15d
nop word cs:[rax + rax]
cmp word [rbp + r15*2 + 2], 0x3d
je 0x140037340
inc r15
add rax, 0xfffffffffffffffe
jne 0x140037320
jmp 0x1400372c0
cmp r15, rbx
jae 0x14003adc7
lea r8, [r15 + 1]
mov rcx, r14
mov rdx, rbp
call fcn.140032090
add r15, 2
sub rbx, r15
jb 0x14003adc7
lea rdx, [r15*2]
add rdx, rbp
mov rcx, rdi
mov r8, rbx
call fcn.140032090
movups xmm0, xmmword [rsp + 0x120]
movups xmm1, xmmword [rsp + 0x130]
movaps xmmword [rsp + 0x220], xmm1
movaps xmmword [rsp + 0x210], xmm0
mov rbx, qword [rsp + 0x210]
mov r15, qword [rsp + 0x218]
movdqa xmm6, xmmword [rsp + 0x220]
movups xmm0, xmmword [rdi]
movups xmm1, xmmword [rdi + 0x10]
movaps xmmword [rsp + 0x1a0], xmm0
movaps xmmword [rsp + 0x1b0], xmm1
movabs rax, 0x8000000000000000
cmp rbx, rax
je 0x14003747b
movq rax, xmm6
add rax, r15
mov qword [rsp + 0x120], r15
mov qword [rsp + 0x128], rax
mov word [rsp + 0x130], 0
lea rcx, [rsp + 0x230]
mov rdx, r14
call fcn.14003af10
mov qword [rsp + 0x210], rbx
mov qword [rsp + 0x218], r15
movdqu xmmword [rsp + 0x220], xmm6
mov rcx, r14
lea rdx, [rsp + 0x1d0]
lea r8, [rsp + 0x210]
mov r9, r13
call fcn.14003b0d0
mov rax, qword [rsp + 0x120]
shl rax, 1
test rax, rax
je 0x1400372c0
mov r8, qword [rsp + 0x128]
mov rcx, qword [0x141dd70f0]
xor edx, edx
call fcn.14004e8b0
jmp 0x1400372c0
xor r14d, r14d
jmp 0x140037f24
mov rcx, rsi
call fcn.14004e9a0
mov r10, qword [rsp + 0x78]
test r10, r10
setne cl
mov rax, qword [rsp + 0xa8]
mov rax, qword [rax + 0x88]
test rax, rax
setne dl
test dl, cl
je 0x140037d93
mov rcx, qword [rsp + 0xa8]
mov rdx, qword [rcx + 0x90]
xor esi, esi
jmp 0x1400374e7
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, rbx
call fcn.14004e8b0
mov eax, 0
mov r10, qword [rsp + 0x78]
dec r10
mov rdx, qword [rsp + 0x68]
je 0x140037d93
test rsi, rsi
je 0x140037510
movzx ecx, word [rsi + 0x3d2]
cmp rdx, rcx
jae 0x1400375c0
mov rcx, rdx
mov r14, rsi
jmp 0x1400375e7
test rdx, rdx
je 0x14003754d
mov rcx, rdx
and rcx, 7
je 0x140037552
mov rsi, rax
xor eax, eax
nop word cs:[rax + rax]
mov rsi, qword [rsi + 0x3d8]
inc rax
cmp rcx, rax
jne 0x140037530
mov rcx, rdx
sub rcx, rax
cmp rdx, 8
jae 0x140037560
jmp 0x14003759e
mov rsi, rax
jmp 0x14003759e
mov rcx, rdx
mov rsi, rax
cmp rdx, 8
jb 0x14003759e
nop
mov rax, qword [rsi + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rsi, qword [rax + 0x3d8]
add rcx, 0xfffffffffffffff8
jne 0x140037560
xor eax, eax
xor edx, edx
movzx ecx, word [rsi + 0x3d2]
cmp rdx, rcx
jb 0x1400374fc
nop word cs:[rax + rax]
mov r14, qword [rsi + 0x160]
test r14, r14
je 0x14003adc7
inc rax
movzx ecx, word [rsi + 0x3d0]
mov rsi, r14
cmp cx, word [r14 + 0x3d2]
jae 0x1400375c0
test rax, rax
mov qword [rsp + 0x78], r10
je 0x140037690
mov rsi, qword [r14 + rcx*8 + 0x3e0]
mov rdx, rax
dec rdx
je 0x14003767e
mov r8, rdx
and r8, 7
je 0x140037632
xor r9d, r9d
nop word cs:[rax + rax]
mov rsi, qword [rsi + 0x3d8]
inc r9
cmp r8, r9
jne 0x140037620
sub rdx, r9
add rax, 0xfffffffffffffffe
cmp rax, 7
jb 0x14003767e
nop dword [rax]
mov rax, qword [rsi + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rsi, qword [rax + 0x3d8]
add rdx, 0xfffffffffffffff8
jne 0x140037640
xor ebp, ebp
jmp 0x140037697
lea rbp, [rcx + 1]
mov rsi, r14
imul rax, rcx, 0x38
lea r15, [r14 + rax]
add r15, 0x168
shl rcx, 5
movabs rax, 0x8000000000000000
cmp qword [r14 + rcx], rax
mov qword [rsp + 0x68], rbp
jne 0x1400377c0
mov rax, qword [rsp + 0x1d0]
mov qword [rsp + 0x58], rax
test rax, rax
je 0x1400374cf
mov rbx, qword [r15 + 0x28]
mov r13, qword [r15 + 0x30]
mov rax, qword [rsp + 0x1d8]
lea ecx, [rax + 7]
mov dword [rsp + 0xc8], ecx
mov qword [rsp + 0xb8], 0
mov qword [rsp + 0x190], rax
mov qword [rsp + 0x70], rax
mov rbp, qword [rsp + 0x58]
lea rcx, [rbp + 0x168]
movzx r14d, word [rbp + 0x3d2]
imul rdi, r14, 0x38
mov r15, 0xffffffffffffffff
nop dword [rax + rax]
test rdi, rdi
je 0x140037780
lea r12, [rcx + 0x38]
mov r8, qword [rcx + 0x28]
mov r9d, dword [rcx + 0x30]
mov dword [rsp + 0x20], 1
mov rcx, rbx
mov edx, r13d
call fcn.14004ea00
inc r15
add rdi, 0xffffffffffffffc8
mov rcx, r12
cmp eax, 3
je 0x140037730
cmp eax, 1
jne 0x140037800
mov rax, qword [rsp + 0x70]
test rax, rax
jne 0x140037791
jmp 0x1400374cf
mov r15, r14
mov rax, qword [rsp + 0x70]
test rax, rax
je 0x1400374cf
mov rbp, qword [rbp + r15*8 + 0x3d8]
dec rax
mov qword [rsp + 0x70], rax
inc qword [rsp + 0xb8]
mov eax, dword [rsp + 0xc8]
add al, 7
mov dword [rsp + 0xc8], eax
jmp 0x140037711
add r14, rcx
mov rdi, qword [r15 + 0x10]
test rdi, rdi
js 0x14003adc7
mov r12, qword [r15 + 8]
je 0x140037913
movzx eax, byte [0x141dd7110]
xor ecx, ecx
mov rdx, rdi
call fcn.140040e10
mov rbx, rax
test rax, rax
jne 0x140037918
jmp 0x14003adc7
cmp eax, 2
mov r9, qword [rsp + 0x70]
jne 0x14003af04
mov byte [rsp + 0x57], 0
test r9, r9
je 0x140037a92
mov rax, qword [rbp + r15*8 + 0x3d8]
mov rcx, r9
dec rcx
je 0x140037ad5
test cl, 7
mov rbp, qword [rsp + 0x190]
je 0x140037876
movzx ecx, byte [rsp + 0xc8]
and ecx, 7
neg rcx
mov edx, 1
movzx r8d, word [rax + 0x3d2]
mov rax, qword [rax + r8*8 + 0x3d8]
lea r8, [rcx + rdx]
inc r8
inc rdx
cmp r8, 1
jne 0x140037850
sub r9, rdx
mov rcx, r9
mov rdx, rbp
sub rdx, qword [rsp + 0xb8]
add rdx, 0xfffffffffffffffe
cmp rdx, 7
jb 0x140037add
nop
movzx edx, word [rax + 0x3d2]
mov rax, qword [rax + rdx*8 + 0x3d8]
movzx edx, word [rax + 0x3d2]
mov rax, qword [rax + rdx*8 + 0x3d8]
movzx edx, word [rax + 0x3d2]
mov rax, qword [rax + rdx*8 + 0x3d8]
movzx edx, word [rax + 0x3d2]
mov rax, qword [rax + rdx*8 + 0x3d8]
movzx edx, word [rax + 0x3d2]
mov rax, qword [rax + rdx*8 + 0x3d8]
movzx edx, word [rax + 0x3d2]
mov rax, qword [rax + rdx*8 + 0x3d8]
movzx edx, word [rax + 0x3d2]
mov rax, qword [rax + rdx*8 + 0x3d8]
movzx edx, word [rax + 0x3d2]
mov rax, qword [rax + rdx*8 + 0x3d8]
add rcx, 0xfffffffffffffff8
jne 0x140037890
jmp 0x140037add
mov ebx, 1
mov rcx, rbx
mov rdx, r12
mov r8, rdi
call fcn.14005c778
mov r13, qword [r15 + 0x30]
test r13, r13
js 0x14003adc7
lea r12, [r13*2]
movabs rax, 0x8000000000000000
add rax, 0xfffffffffffffffe
cmp r12, rax
ja 0x14003adc7
movzx eax, byte [r15 + 0x18]
mov byte [rsp + 0x70], al
mov rdx, qword [r15 + 0x28]
test r12, r12
je 0x14003798b
movzx eax, byte [0x141dd7110]
xor ecx, ecx
mov r15, rdx
mov rdx, r12
call fcn.140040e10
mov rdx, r15
mov rbp, rax
mov r15, r13
test rax, rax
jne 0x140037993
jmp 0x14003adc7
mov ebp, 2
xor r15d, r15d
mov rcx, rbp
mov r8, r12
call fcn.14005c778
mov qword [rsp + 0x210], rdi
mov qword [rsp + 0x218], rbx
mov qword [rsp + 0x220], rdi
movzx eax, byte [rsp + 0x70]
mov byte [rsp + 0x228], al
mov qword [rsp + 0x230], r15
mov qword [rsp + 0x238], rbp
mov qword [rsp + 0x240], r13
mov rdi, qword [r14 + 0x10]
test rdi, rdi
js 0x14003adc7
mov rbx, qword [r14 + 8]
je 0x140037a0b
movzx eax, byte [0x141dd7110]
xor ecx, ecx
mov rdx, rdi
call fcn.140040e10
mov r12, rax
test rax, rax
jne 0x140037a11
jmp 0x14003adc7
mov r12d, 1
mov rcx, r12
mov rdx, rbx
mov r8, rdi
call fcn.14005c778
movzx eax, byte [r14 + 0x18]
mov qword [rsp + 0x120], rdi
mov qword [rsp + 0x128], r12
mov qword [rsp + 0x130], rdi
mov byte [rsp + 0x138], al
lea rcx, [rsp + 0xe0]
lea rdx, [rsp + 0x1d0]
lea r8, [rsp + 0x210]
lea r9, [rsp + 0x120]
call fcn.14003b0d0
mov rax, qword [rsp + 0xe0]
shl rax, 1
test rax, rax
je 0x1400374cf
mov r8, qword [rsp + 0xe8]
mov rcx, qword [0x141dd70f0]
xor edx, edx
jmp 0x1400374ca
mov qword [rsp + 0x120], rbp
mov qword [rsp + 0x128], 0
mov qword [rsp + 0x130], r15
lea rcx, [rsp + 0x210]
lea rdx, [rsp + 0x120]
lea r8, [rsp + 0x57]
call fcn.14003c4c0
mov rbp, qword [rsp + 0x190]
jmp 0x140037cd0
mov rbp, qword [rsp + 0x190]
movzx ecx, word [rax + 0x3d2]
dec rcx
mov qword [rsp + 0x1f8], rax
mov qword [rsp + 0x200], 0
mov qword [rsp + 0x208], rcx
lea rcx, [rsp + 0x210]
lea rdx, [rsp + 0x1f8]
lea r8, [rsp + 0x57]
call fcn.14003c4c0
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0x110], rax
movups xmm0, xmmword [rsp + 0x210]
movups xmm1, xmmword [rsp + 0x220]
movups xmm2, xmmword [rsp + 0x230]
movaps xmmword [rsp + 0x100], xmm2
movaps xmmword [rsp + 0xf0], xmm1
movaps xmmword [rsp + 0xe0], xmm0
lea rax, [rsp + 0x248]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x80], xmm0
movaps xmmword [rsp + 0x90], xmm1
mov rax, qword [rsp + 0x268]
mov rcx, qword [rsp + 0x278]
movzx edx, word [rax + 0x3d2]
cmp rcx, rdx
jb 0x140037bb7
nop dword [rax + rax]
movzx ecx, word [rax + 0x3d0]
mov rax, qword [rax + 0x160]
cmp cx, word [rax + 0x3d2]
jae 0x140037ba0
imul rdx, rcx, 0x38
shl rcx, 5
mov r8, qword [rax + rdx + 0x198]
mov qword [rsp + 0x150], r8
movups xmm0, xmmword [rax + rdx + 0x168]
movups xmm1, xmmword [rax + rdx + 0x178]
movups xmm2, xmmword [rax + rdx + 0x188]
movaps xmmword [rsp + 0x140], xmm2
movaps xmmword [rsp + 0x130], xmm1
movaps xmmword [rsp + 0x120], xmm0
mov r8, qword [rsp + 0x110]
mov qword [rax + rdx + 0x198], r8
movaps xmm0, xmmword [rsp + 0xe0]
movaps xmm1, xmmword [rsp + 0xf0]
movaps xmm2, xmmword [rsp + 0x100]
movups xmmword [rax + rdx + 0x188], xmm2
movups xmmword [rax + rdx + 0x178], xmm1
movups xmmword [rax + rdx + 0x168], xmm0
movups xmm0, xmmword [rax + rcx]
movups xmm1, xmmword [rax + rcx + 0x10]
lea rdx, [rsp + 0x158]
movups xmmword [rdx + 0x10], xmm1
movups xmmword [rdx], xmm0
movaps xmm0, xmmword [rsp + 0x80]
movaps xmm1, xmmword [rsp + 0x90]
movups xmmword [rax + rcx + 0x10], xmm1
movups xmmword [rax + rcx], xmm0
movaps xmm0, xmmword [rsp + 0x120]
movaps xmm1, xmmword [rsp + 0x130]
movaps xmm2, xmmword [rsp + 0x140]
movaps xmm3, xmmword [rsp + 0x150]
movaps xmmword [rsp + 0x210], xmm0
movaps xmmword [rsp + 0x220], xmm1
movaps xmmword [rsp + 0x230], xmm2
movaps xmmword [rsp + 0x240], xmm3
movaps xmm0, xmmword [rsp + 0x160]
movaps xmmword [rsp + 0x250], xmm0
mov rax, qword [rsp + 0x170]
mov qword [rsp + 0x260], rax
mov r15, qword [rsp + 0x210]
mov r12, qword [rsp + 0x218]
mov r14, qword [rsp + 0x230]
mov r13, qword [rsp + 0x238]
dec qword [rsp + 0x1e0]
mov rdi, qword [rsp + 0x248]
mov rbx, qword [rsp + 0x250]
cmp byte [rsp + 0x57], 0
je 0x140037d50
test rbp, rbp
je 0x14003adc7
mov r8, qword [rsp + 0x58]
mov rax, qword [r8 + 0x3d8]
mov qword [rsp + 0x1d0], rax
dec rbp
mov qword [rsp + 0x1d8], rbp
mov qword [rax + 0x160], 0
mov rcx, qword [0x141dd70f0]
xor edx, edx
call fcn.14004e8b0
neg r15
jo 0x1400374cf
jae 0x140037d6c
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, r12
call fcn.14004e8b0
test r14, r14
je 0x140037d82
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, r13
call fcn.14004e8b0
shl rdi, 1
test rdi, rdi
je 0x1400374cf
jmp 0x1400374be
mov rsi, qword [rsp + 0x1d0]
mov rax, qword [rsp + 0x1d8]
mov qword [rsp + 0x190], rax
mov rax, qword [rsp + 0x1e0]
mov qword [rsp + 0x58], rax
movzx eax, byte [0x141dd7110]
mov edx, 4
xor ecx, ecx
call fcn.140040e10
test rax, rax
je 0x14003adc7
mov rbx, rax
mov dword [rax], 0x48544150
add rax, 4
mov qword [rsp + 0x120], rbx
mov qword [rsp + 0x128], rax
mov word [rsp + 0x130], 0
lea rcx, [rsp + 0x230]
lea rdx, [rsp + 0x120]
call fcn.14003af10
mov rdi, qword [rsp + 0x238]
test rsi, rsi
mov qword [rsp + 0x1f0], rsi
je 0x140037eef
mov qword [rsp + 0x68], rbx
mov ebx, dword [rsp + 0x240]
xor r14d, r14d
mov r12, qword [rsp + 0x190]
mov r15, rsi
lea rcx, [r15 + 0x168]
movzx eax, word [r15 + 0x3d2]
mov qword [rsp + 0x78], rax
imul rsi, rax, 0x38
mov r13, 0xffffffffffffffff
nop word cs:[rax + rax]
test rsi, rsi
je 0x140037eb0
lea rbp, [rcx + 0x38]
mov r8, qword [rcx + 0x28]
mov r9d, dword [rcx + 0x30]
mov dword [rsp + 0x20], 1
mov rcx, rdi
mov edx, ebx
call fcn.14004ea00
inc r13
add rsi, 0xffffffffffffffc8
mov rcx, rbp
cmp eax, 3
je 0x140037e70
cmp eax, 1
jne 0x140037ecc
jmp 0x140037eb5
mov r13, qword [rsp + 0x78]
sub r12, 1
jb 0x14003882b
mov r15, qword [r15 + r13*8 + 0x3d8]
jmp 0x140037e43
cmp eax, 2
jne 0x14003af04
shl r13, 5
mov r14, qword [r15 + r13 + 8]
mov rax, qword [r15 + r13 + 0x10]
mov qword [rsp + 0x70], rax
mov rbx, qword [rsp + 0x68]
jmp 0x140037ef2
xor r14d, r14d
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, rbx
call fcn.14004e8b0
cmp qword [rsp + 0x230], 0
je 0x140037f1f
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, rdi
call fcn.14004e8b0
mov rdi, qword [rsp + 0x58]
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rax + 0x10]
lea rbp, [0x141dd1200]
test rdx, rdx
je 0x140037f8a
mov r12, qword [rax + 8]
cmp rdx, 4
jae 0x140037f4f
lea rax, [0x14003cd50]
jmp 0x140037f79
mov eax, dword [r12]
bswap eax
xor ecx, ecx
cmp eax, 0x5c5c3f5c
setb cl
cmp eax, 0x5c5c3f5d
adc ecx, 0xffffffff
lea rcx, [0x14003cd40]
lea rax, [0x14003cd50]
cmove rax, rcx
movzx esi, byte [rdx + r12 - 1]
mov ecx, esi
mov rbx, rdx
call rax
test al, al
je 0x140038003
mov rax, qword [rsp + 0xc0]
mov qword [rax], rbp
mov qword [rax + 0x10], 2
cmp byte [rsp + 0x56], 0
je 0x140038649
mov rax, qword [rsp + 0x1f0]
test rax, rax
je 0x140038085
mov qword [rsp + 0x218], 0
mov qword [rsp + 0x220], rax
mov rcx, qword [rsp + 0x190]
mov qword [rsp + 0x228], rcx
mov qword [rsp + 0x238], 0
mov qword [rsp + 0x240], rax
mov qword [rsp + 0x248], rcx
mov eax, 1
jmp 0x140038089
lea r11, [r12 + rbx]
cmp rbx, 3
mov qword [rsp + 0x58], rdi
mov r9, rbx
jbe 0x14003814e
movzx eax, byte [r11 - 4]
lea ecx, [rax - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
or cl, al
cmp cl, 0x2e
jne 0x140038184
movzx eax, byte [r11 - 3]
lea ecx, [rax - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
or cl, al
cmp cl, 0x65
jne 0x140038184
movzx eax, byte [r11 - 2]
lea ecx, [rax - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
or cl, al
cmp cl, 0x78
jne 0x140038184
lea eax, [rsi - 0x41]
cmp al, 0x1a
setb al
shl al, 5
or al, sil
cmp al, 0x65
sete al
jmp 0x140038186
xor eax, eax
xor edi, edi
mov qword [rsp + 0x210], rax
mov qword [rsp + 0x230], rax
mov qword [rsp + 0x250], rdi
lea rsi, [rsp + 0x120]
lea rdi, [rsp + 0x210]
nop word cs:[rax + rax]
mov rcx, rsi
mov rdx, rdi
call fcn.14003de40
mov rbx, qword [rsp + 0x120]
test rbx, rbx
je 0x140038649
mov r14, qword [rsp + 0x130]
imul rax, r14, 0x38
lea r15, [rbx + rax]
add r15, 0x168
cmp qword [rbx + rax + 0x168], 0
je 0x140038110
mov r8, qword [r15 + 8]
mov rcx, qword [0x141dd70f0]
xor edx, edx
call fcn.14004e8b0
cmp qword [r15 + 0x20], 0
je 0x140038129
mov r8, qword [r15 + 0x28]
mov rcx, qword [0x141dd70f0]
xor edx, edx
call fcn.14004e8b0
shl r14, 5
cmp qword [rbx + r14], 0
je 0x1400380c0
add rbx, r14
mov r8, qword [rbx + 8]
mov rcx, qword [0x141dd70f0]
xor edx, edx
call fcn.14004e8b0
jmp 0x1400380c0
xor eax, eax
movabs rsi, 0x8000000000000000
nop word [rax + rax]
cmp r9, rax
je 0x140038317
movzx ecx, byte [r12 + rax]
cmp ecx, 0x2f
je 0x140038221
inc rax
cmp ecx, 0x5c
jne 0x140038160
jmp 0x140038221
xor eax, eax
xor ecx, ecx
movabs rsi, 0x8000000000000000
nop word cs:[rax + rax]
cmp r9, rcx
je 0x140038317
movzx edx, byte [r12 + rcx]
cmp edx, 0x5c
je 0x1400381bb
inc rcx
cmp edx, 0x2f
jne 0x1400381a0
test al, al
je 0x140038221
mov qword [rsp + 0x198], r11
lea rcx, [rsp + 0x120]
mov rdx, r12
mov r8, r9
call fcn.1400331d0
mov rcx, qword [rsp + 0x120]
mov rax, qword [rsp + 0x128]
cmp rcx, rsi
jne 0x1400387d8
mov qword [rsp + 0x1a8], rax
mov qword [rsp + 0x1a0], rsi
mov r15, qword [rsp + 0x1a0]
mov rbp, qword [rsp + 0x1a8]
cmp r15, rsi
je 0x140037f8a
jmp 0x140038456
mov qword [rsp + 0x198], r11
test r9, r9
js 0x14003adc7
movzx eax, byte [0x141dd7110]
xor ecx, ecx
mov rdx, r9
mov rdi, r9
call fcn.140040e10
test rax, rax
je 0x14003adc7
mov rsi, rax
mov rcx, rax
mov rdx, r12
mov r8, rdi
call fcn.14005c778
mov qword [rsp + 0x210], rdi
mov qword [rsp + 0x218], rsi
mov qword [rsp + 0x220], rdi
mov qword [rsp + 0x228], 0
lea rdx, [0x141dd1218]
lea rcx, [rsp + 0x210]
mov r8d, 4
call fcn.140033710
mov rbx, qword [rsp + 0x210]
mov rsi, qword [rsp + 0x218]
mov rdi, qword [rsp + 0x220]
lea rcx, [rsp + 0x120]
mov rdx, rsi
mov r8, rdi
call fcn.14003cd60
movabs rax, 0x8000000000000000
cmp qword [rsp + 0x120], rax
jne 0x1400383f8
mov rcx, rsi
mov rdx, rdi
call fcn.140036f30
test rax, rax
je 0x1400392b8
cmp rdx, 2
jne 0x14003867b
cmp word [rax], 0x2e2e
jne 0x14003867b
mov r8d, 2
xor ecx, ecx
jmp 0x14003927f
xor r8d, r8d
lea rbp, [0x141dd11c8]
mov rax, r12
mov qword [rsp + 0x60], r9
jmp 0x14003833c
xor r8d, r8d
test cx, cx
je 0x140037f8a
mov cx, 1
test r8w, r8w
jne 0x140038330
cmp rax, r11
je 0x14003878a
movzx edx, byte [rax]
test dl, dl
js 0x14003835b
inc rax
jmp 0x1400383bf
mov r8d, edx
and r8d, 0x1f
movzx r10d, byte [rax + 1]
and r10d, 0x3f
cmp dl, 0xdf
jbe 0x1400383b1
movzx r9d, byte [rax + 2]
shl r10d, 6
and r9d, 0x3f
or r9d, r10d
cmp dl, 0xf0
jb 0x1400383c9
movzx edx, byte [rax + 3]
add rax, 4
and r8d, 7
shl r8d, 0x12
shl r9d, 6
and edx, 0x3f
or edx, r9d
or edx, r8d
cmp edx, 0xffff
mov r9, qword [rsp + 0x60]
jbe 0x1400383bf
jmp 0x1400383e4
add rax, 2
shl r8d, 6
or r8d, r10d
mov edx, r8d
xor r8d, r8d
mov ecx, edx
jmp 0x140038333
add rax, 3
shl r8d, 0xc
or r9d, r8d
mov edx, r9d
cmp edx, 0xffff
mov r9, qword [rsp + 0x60]
jbe 0x1400383bf
and edx, 0x3ff
or edx, 0xdc00
mov r8d, edx
jmp 0x140038333
mov rax, qword [rsp + 0x130]
mov qword [rsp + 0x1b0], rax
movups xmm0, xmmword [rsp + 0x120]
movaps xmmword [rsp + 0x1a0], xmm0
test rbx, rbx
mov rdi, qword [rsp + 0x58]
je 0x140038433
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, rsi
call fcn.14004e8b0
movabs rsi, 0x8000000000000000
mov r15, qword [rsp + 0x1a0]
mov rbp, qword [rsp + 0x1a8]
cmp r15, rsi
je 0x140037f8a
mov rbx, qword [rsp + 0x1b0]
cmp rbx, 5
jb 0x140038478
cmp word [rbp + rbx*2 - 0xa], 0x2e
jne 0x140038478
cmp word [rbp + rbx*2 - 2], 0
je 0x14003897d
mov r13, r15
mov rax, qword [rsp + 0xa8]
mov rsi, qword [rax + 0x28]
mov r14, qword [rax + 0x30]
movzx ebx, byte [rax + 0xc9]
mov qword [rsp + 0x120], 0
mov qword [rsp + 0x128], 2
mov qword [rsp + 0x130], 0
lea rdi, [rsp + 0x120]
mov rcx, rdi
call fcn.140049680
mov rax, qword [rsp + 0x128]
mov word [rax], 0x22
mov qword [rsp + 0x130], 1
mov qword [rsp + 0x210], r12
mov rax, qword [rsp + 0x198]
mov qword [rsp + 0x218], rax
mov word [rsp + 0x220], 0
lea rdx, [rsp + 0x210]
mov rcx, rdi
call fcn.140033350
mov rdi, qword [rsp + 0x130]
cmp rdi, qword [rsp + 0x120]
jne 0x140038530
lea rcx, [rsp + 0x120]
call fcn.140049680
mov rax, qword [rsp + 0x128]
mov word [rax + rdi*2], 0x22
inc rdi
mov qword [rsp + 0x130], rdi
shl r14, 3
lea r14, [r14 + r14*4]
lea rdi, [rsp + 0x120]
jmp 0x140038598
lea r12, [rsi + 0x28]
mov rax, qword [rsp + 0x128]
mov word [rax + r15*2], 0x20
inc r15
mov qword [rsp + 0x130], r15
mov rcx, rdi
mov rdx, rsi
mov r8d, ebx
call fcn.14003cf30
add r14, 0xffffffffffffffd8
mov rsi, r12
test rax, rax
jne 0x1400385e3
test r14, r14
je 0x1400385b9
mov r15, qword [rsp + 0x130]
cmp r15, qword [rsp + 0x120]
jne 0x140038560
mov rcx, rdi
call fcn.140049680
jmp 0x140038560
mov rcx, qword [rsp + 0x120]
mov rax, qword [rsp + 0x128]
movabs rdx, 0x8000000000000000
cmp rcx, rdx
jne 0x1400386ae
mov rdi, qword [rsp + 0x58]
jmp 0x14003860f
cmp qword [rsp + 0x120], 0
mov rdi, qword [rsp + 0x58]
je 0x14003860f
mov r8, qword [rsp + 0x128]
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov rsi, rax
call fcn.14004e8b0
mov rax, rsi
mov rbx, r13
mov rcx, qword [rsp + 0xc0]
mov qword [rcx], rax
mov qword [rcx + 0x10], 2
mov sil, 1
test rbx, rbx
je 0x14003863e
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, rbp
call fcn.14004e8b0
test byte [rsp + 0x56], sil
jne 0x140037fa8
mov rsi, qword [rsp + 0x1c8]
cmp dword [rsi], 4
jb 0x14003865f
mov rcx, qword [rsi + 8]
call fcn.14004ea08
movaps xmm6, xmmword [rsp + 0x610]
add rsp, 0x628
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov r8, rdx
nop
test r8, r8
je 0x140038830
mov r9, r8
dec r8
cmp byte [rax + r9 - 1], 0x2e
jne 0x140038680
test r8, r8
je 0x14003927a
sub rdx, r9
mov rcx, rax
add rcx, r9
jmp 0x14003927f
mov rsi, qword [rsp + 0x130]
xor r12d, r12d
mov rbx, r13
mov qword [rsp + 0x78], r13
mov r13, rbp
mov rdi, qword [rsp + 0x58]
mov qword [rsp + 0x1a0], rcx
mov qword [rsp + 0x1a8], rax
mov qword [rsp + 0x1b0], rsi
cmp rsi, rcx
jne 0x1400386fb
lea rcx, [rsp + 0x1a0]
call fcn.140049680
mov rax, qword [rsp + 0x1a8]
mov word [rax + rsi*2], 0
inc rsi
mov rcx, qword [rsp + 0xa8]
cmp byte [rcx + 0xc8], 0
mov eax, 0x608
mov r14d, 0x400
cmovne r14d, eax
mov qword [rsp + 0x1b0], rsi
or r14d, dword [rcx + 0xc4]
cmp byte [rsp + 0x56], 0
je 0x14003883d
mov qword [rsp + 0x68], rbp
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x88], 2
mov qword [rsp + 0x90], 0
test rdi, rdi
mov rsi, qword [rsp + 0x190]
je 0x140039355
mov eax, 2
mov qword [rsp + 0xb8], rax
xor ebp, ebp
jmp 0x140039388
cmp r9, 0xf
mov qword [rsp + 0xb0], r12
mov qword [rsp + 0x198], r11
ja 0x14003896b
mov qword [rsp + 0xd0], 0
xor eax, eax
nop word cs:[rax + rax]
cmp byte [r12 + rax], 0x2e
je 0x140038b38
inc rax
cmp r9, rax
jne 0x1400387c0
jmp 0x140038b45
mov rdx, qword [rsp + 0x130]
mov qword [rsp + 0x210], rcx
mov qword [rsp + 0x218], rax
mov qword [rsp + 0x220], rdx
lea rcx, [rsp + 0x1a0]
lea rdx, [rsp + 0x210]
call fcn.14003ce70
mov r15, qword [rsp + 0x1a0]
mov rbp, qword [rsp + 0x1a8]
cmp r15, rsi
je 0x140037f8a
jmp 0x140038456
jmp 0x140037ee8
mov rcx, rax
mov r8, rdx
xor eax, eax
jmp 0x14003927f
mov rax, rcx
mov ecx, 2
mov qword [rsp + 0xd8], rcx
mov qword [rsp + 0xb8], 0
xor r15d, r15d
movabs rcx, 0x8000000000000000
cmp qword [rax + 0x38], rcx
mov qword [rsp + 0x60], r15
jne 0x14003a949
mov dword [rsp + 0xb0], r14d
mov rsi, rbx
mov ecx, 2
xor r15d, r15d
xor edx, edx
mov qword [rsp + 0x198], rdx
mov qword [rsp + 0xd0], rcx
mov r14d, r12d
mov qword [rsp + 0x70], r13
mov qword [rsp + 0x68], rbp
xorps xmm0, xmm0
movaps xmmword [rsp + 0x80], xmm0
mov qword [rsp + 0x90], 0
mov cl, 1
xor eax, eax
lock cmpxchg byte [0x141dd70e0], cl
jne 0x14003a904
mov qword [rsp + 0xe0], 0
mov qword [rsp + 0xf0], 0
mov qword [rsp + 0x100], 0
mov rdi, qword [rsp + 0xa8]
lea rcx, [rdi + 0x58]
cmp dword [rdi + 0x58], 6
mov ebx, dword [rdi + 0x68]
mov r12, qword [rsp + 0x1c8]
cmove rcx, r12
lea r13, [rdi + 0x78]
cmp dword [rdi + 0x78], 6
cmove r13, r12
lea r8, [rsp + 0xe0]
mov edx, 0xfffffff6
call fcn.14003e1a0
mov rbp, rdx
cmp rax, 1
jne 0x140039915
mov rax, qword [rsp + 0xc0]
mov qword [rax], rbp
mov qword [rax + 0x10], 2
mov rdi, qword [rsp + 0x58]
mov rbx, rsi
mov r13, qword [rsp + 0x70]
mov r12d, r14d
mov rsi, qword [rsp + 0x60]
jmp 0x14003ae09
mov cl, 0x2e
mov rdx, r12
mov r8, r9
call fcn.14001fd30
jmp 0x140038b3d
movzx eax, word [rbp + rbx*2 - 8]
lea ecx, [rax - 0x42]
cmp ecx, 0x21
ja 0x140038478
lea rdx, [0x140060650]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
jmp rcx
mov eax, 1
mov qword [rsp + 0xd0], rax
test r14, r14
je 0x14003918f
add qword [rsp + 0x70], r14
mov bl, 1
mov qword [rsp + 0x78], 0
nop
mov qword [rsp + 0xe0], 0
mov qword [rsp + 0xe8], 2
mov qword [rsp + 0xf0], 0
mov eax, 2
xor r12d, r12d
mov rcx, qword [rsp + 0x78]
mov ebp, ecx
xor esi, esi
mov r15d, ebp
test bp, bp
jne 0x140038bc0
jmp 0x140038be0
mov word [rax + r12*2], r15w
inc r12
mov qword [rsp + 0xf0], r12
mov r15d, ebp
test bp, bp
je 0x140038be0
nop word [rax + rax]
mov qword [rsp + 0x78], 0
xor ebp, ebp
cmp r15w, 0x22
je 0x140038c79
jmp 0x140038cd6
cmp r14, qword [rsp + 0x70]
je 0x140038d20
movzx r15d, byte [r14]
test r15b, r15b
js 0x140038c10
inc r14
xor ebp, ebp
cmp r15w, 0x22
je 0x140038c79
jmp 0x140038cd6
mov ecx, r15d
and ecx, 0x1f
movzx r8d, byte [r14 + 1]
and r8d, 0x3f
cmp r15b, 0xdf
jbe 0x140038c61
movzx edx, byte [r14 + 2]
shl r8d, 6
and edx, 0x3f
or edx, r8d
cmp r15b, 0xf0
jb 0x140038c8e
movzx r15d, byte [r14 + 3]
add r14, 4
and ecx, 7
shl ecx, 0x12
shl edx, 6
and r15d, 0x3f
or r15d, edx
or r15d, ecx
cmp r15d, 0xffff
jbe 0x140038c70
jmp 0x140038ca3
add r14, 2
shl ecx, 6
or ecx, r8d
mov r15d, ecx
nop
xor ebp, ebp
cmp r15w, 0x22
jne 0x140038cd6
xor sil, 1
mov r15d, ebp
test bp, bp
jne 0x140038bc0
jmp 0x140038be0
add r14, 3
shl ecx, 0xc
or edx, ecx
mov r15d, edx
cmp r15d, 0xffff
jbe 0x140038c70
lea ecx, [r15 + 0xff0000]
shr ecx, 0xa
or ecx, 0xd800
and r15d, 0x3ff
or r15d, 0xdc00
mov edx, r15d
mov qword [rsp + 0x78], rdx
mov ebp, r15d
mov r15d, ecx
cmp r15w, 0x22
je 0x140038c79
movzx ecx, r15w
cmp ecx, 0x3b
jne 0x140038ce9
test sil, 1
je 0x140039181
cmp r12, qword [rsp + 0xe0]
jne 0x140038b9f
lea rcx, [rsp + 0xe0]
call fcn.140049680
mov rax, qword [rsp + 0xe8]
jmp 0x140038b9f
mov dword [rsp + 0xd8], 0
test r12, r12
setne al
or bl, al
test bl, 1
movabs rsi, 0x8000000000000000
je 0x140038d7b
test r12, r12
js 0x14003adc7
mov rsi, qword [rsp + 0xe8]
je 0x140038ea3
movzx eax, byte [0x141dd7110]
xor ecx, ecx
mov rdx, r12
call fcn.140040e10
mov rbx, rax
test rax, rax
jne 0x140038ea8
jmp 0x14003adc7
mov r12, rsi
mov rbx, r13
cmp qword [rsp + 0xe0], 0
je 0x140038da2
mov r8, qword [rsp + 0xe8]
mov rcx, qword [0x141dd70f0]
xor edx, edx
call fcn.14004e8b0
cmp r12, rsi
mov r8, qword [rsp + 0x60]
je 0x14003918f
test rdi, rdi
je 0x140038e6f
mov qword [rsp + 0x210], r12
mov r13, rbx
mov qword [rsp + 0x218], rbx
mov qword [rsp + 0x220], rdi
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x228], rax
lea rcx, [rsp + 0x210]
mov r12, qword [rsp + 0xb0]
mov rdx, r12
call fcn.140034480
cmp qword [rsp + 0xd0], 1
je 0x140038e14
lea rcx, [rsp + 0x210]
call fcn.140037050
mov rbx, qword [rsp + 0x218]
mov r8, qword [rsp + 0x220]
lea rcx, [rsp + 0x120]
mov rdx, rbx
call fcn.14003cd60
cmp qword [rsp + 0x210], 0
je 0x140038e50
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, rbx
call fcn.14004e8b0
mov r15, qword [rsp + 0x120]
cmp r15, rsi
jne 0x140039265
mov eax, dword [rsp + 0xd8]
mov ebx, eax
jmp 0x140038b60
mov r13, rbx
mov esi, dword [rsp + 0xd8]
mov ebx, esi
mov edi, 0
test r12, r12
je 0x140038b60
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, r13
call fcn.14004e8b0
mov ebx, esi
xor edi, edi
jmp 0x140038b60
mov ebx, 1
mov rax, qword [rsp + 0xb8]
and rax, 0xffffffffffffff00
inc rax
mov qword [rsp + 0xb8], rax
lea r8, [rsi + r12*2]
xor edi, edi
xor ebp, ebp
mov qword [rsp + 0x68], r8
jmp 0x140038ef2
lea r13, [r15 + rdi]
add rdi, rbx
mov rcx, rdi
lea rdx, [rsp + 0x80]
mov r8, r15
call fcn.14005c778
mov rdi, r13
mov r8, qword [rsp + 0x68]
test bpl, 1
je 0x140038f10
movzx eax, word [rsp + 0xc8]
jmp 0x140038f20
cmp rsi, r8
je 0x140039163
movzx eax, word [rsi]
add rsi, 2
mov edx, eax
and edx, 0xf800
movzx ecx, ax
cmp edx, 0xd800
jne 0x140038f50
cmp ecx, 0xdbff
jbe 0x140038f80
xor ebp, ebp
jmp 0x140038ff6
mov dword [rsp + 0x80], 0
cmp ecx, 0x80
jae 0x140038fc0
mov byte [rsp + 0x80], al
mov r15d, 1
jmp 0x1400390c0
cmp rsi, r8
je 0x140038ff1
movzx edx, word [rsi]
add rsi, 2
mov r8d, edx
add r8d, 0x2000
movzx r8d, r8w
mov bpl, 1
cmp r8d, 0xfbff
ja 0x140039051
mov word [rsp + 0xc8], dx
jmp 0x140038ff6
cmp ecx, 0x800
jae 0x140038fed
mov ecx, eax
shr ecx, 6
or cl, 0xc0
mov byte [rsp + 0x80], cl
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x81], al
mov r15d, 2
jmp 0x1400390c0
xor ebp, ebp
jmp 0x14003900d
xor ebp, ebp
mov rsi, r8
and qword [rsp + 0xb8], 0xffffffffffffff00
mov dword [rsp + 0x80], 0
mov edx, ecx
shr edx, 0xc
or dl, 0xe0
mov byte [rsp + 0x80], dl
shr ecx, 6
and cl, 0x3f
or cl, 0x80
mov byte [rsp + 0x81], cl
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x82], al
mov r15d, 3
mov rax, r12
sub rax, rdi
cmp rax, r15
jae 0x140038ed0
jmp 0x1400390d1
movzx ecx, dx
and eax, 0x3ff
mov edx, ecx
and edx, 0x3c0
shl rax, 0x1a
shl edx, 0x10
mov r8d, 0xffffffff
add r8, rax
inc r8
or eax, edx
mov rdx, r8
shr rdx, 0x22
or dl, 0xf0
mov byte [rsp + 0x80], dl
shr r8, 0x1c
and r8b, 0x3f
or r8b, 0x80
mov byte [rsp + 0x81], r8b
shr eax, 0x16
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x82], al
and cl, 0x3f
or cl, 0x80
mov byte [rsp + 0x83], cl
mov r15d, 4
nop dword [rax]
xor ebp, ebp
mov rax, r12
sub rax, rdi
cmp rax, r15
jae 0x140038ed0
mov r13, rdi
add r13, r15
jb 0x14003adc7
mov rax, rbx
lea rbx, [r12 + r12]
cmp rbx, r13
cmovbe rbx, r13
cmp rbx, 9
jae 0x1400390f6
mov ebx, 8
test rbx, rbx
js 0x14003adc7
test r12, r12
je 0x14003911b
mov qword [rsp + 0x210], rax
mov qword [rsp + 0x220], r12
mov eax, 1
jmp 0x14003911d
xor eax, eax
mov qword [rsp + 0x218], rax
mov edx, 1
lea rcx, [rsp + 0x120]
mov r8, rbx
lea r9, [rsp + 0x210]
call fcn.140030530
cmp dword [rsp + 0x120], 1
je 0x14003adc7
mov rax, qword [rsp + 0x128]
mov r12, rbx
mov rbx, rax
jmp 0x140038ed4
movabs rsi, 0x8000000000000000
cmp qword [rsp + 0xe0], 0
jne 0x140038d8c
jmp 0x140038da2
mov al, 1
mov dword [rsp + 0xd8], eax
jmp 0x140038d2b
lea rcx, [rsp + 0x120]
call fcn.140033570
mov rbx, qword [rsp + 0x120]
mov rax, rsi
mov rsi, qword [rsp + 0x128]
cmp rbx, rax
jne 0x140039213
mov eax, esi
and eax, 3
cmp eax, 1
jne 0x140039a6c
mov rdi, qword [rsi - 1]
mov rbx, qword [rsi + 7]
mov rax, qword [rbx]
test rax, rax
je 0x1400391d7
mov rcx, rdi
call rax
dec rsi
cmp qword [rbx + 8], 0
je 0x1400391fd
cmp qword [rbx + 0x10], 0x11
jb 0x1400391ec
mov rdi, qword [rdi - 8]
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, rdi
call fcn.14004e8b0
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, rsi
call fcn.14004e8b0
jmp 0x140039a6c
mov rdi, qword [rsp + 0x130]
mov r14, qword [rsp + 0x138]
mov rcx, rsi
mov rdx, rdi
call fcn.140035c20
test rax, rax
je 0x140039968
test rdx, rdx
mov r12, qword [rsp + 0xb0]
mov r8, qword [rsp + 0x60]
je 0x1400399ca
cmp rdi, rdx
jbe 0x1400399bf
cmp byte [rsi + rdx], 0xbf
jg 0x1400399c5
jmp 0x14003adc7
mov rbp, qword [rsp + 0x128]
mov rbx, qword [rsp + 0x130]
jmp 0x14003845e
xor ecx, ecx
mov r8, rdx
test rax, rax
cmovne rcx, rax
test rcx, rcx
je 0x1400392b8
test rax, rax
cmove r8, rdx
add rcx, r8
sub rcx, rsi
je 0x1400392b5
cmp rdi, rcx
jbe 0x1400392aa
cmp byte [rsi + rcx], 0xbf
jg 0x1400392b0
jmp 0x14003adc7
jne 0x14003adc7
cmp rdi, rcx
jb 0x1400392b8
mov rdi, rcx
lea rcx, [rsp + 0x210]
mov rdx, rsi
mov r8, rdi
call fcn.1400331d0
mov rcx, qword [rsp + 0x210]
mov rax, qword [rsp + 0x218]
movabs rdx, 0x8000000000000000
cmp rcx, rdx
jne 0x14003930d
mov qword [rsp + 0x1a8], rax
mov qword [rsp + 0x1a0], rdx
mov rdi, qword [rsp + 0x58]
test rbx, rbx
jne 0x140038422
jmp 0x140038433
mov rdx, qword [rsp + 0x220]
mov qword [rsp + 0x210], rcx
mov qword [rsp + 0x218], rax
mov qword [rsp + 0x220], rdx
lea rcx, [rsp + 0x1a0]
lea rdx, [rsp + 0x210]
call fcn.14003ce70
mov rdi, qword [rsp + 0x58]
test rbx, rbx
jne 0x140038422
jmp 0x140038433
lea rcx, [rsp + 0x80]
call fcn.140049680
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0xb8], rax
mov word [rax], 0
mov qword [rsp + 0x90], 1
mov ebp, 1
xor eax, eax
mov rdx, qword [rsp + 0x1f0]
test rdx, rdx
setne al
mov rcx, rdi
cmove rcx, rdx
mov qword [rsp + 0x210], rax
mov qword [rsp + 0x218], 0
mov qword [rsp + 0x220], rdx
mov qword [rsp + 0x228], rsi
mov qword [rsp + 0x230], rax
mov qword [rsp + 0x238], 0
mov qword [rsp + 0x240], rdx
mov qword [rsp + 0x248], rsi
mov qword [rsp + 0x250], rcx
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0x210]
movabs rsi, 0x8000000000000000
mov qword [rsp + 0xc8], rbx
mov qword [rsp + 0x70], r13
mov dword [rsp + 0xb0], r14d
call fcn.14003de40
mov rcx, qword [rsp + 0x120]
mov r14d, r12d
test rcx, rcx
je 0x14003a455
mov r9, qword [rsp + 0x130]
imul rdx, r9, 0x38
mov rax, qword [rcx + rdx + 0x168]
cmp rax, rsi
je 0x14003a455
mov r8, qword [rcx + rdx + 0x170]
mov r10, qword [rcx + rdx + 0x188]
mov qword [rsp + 0x60], r10
mov rsi, qword [rcx + rdx + 0x190]
mov r12, qword [rcx + rdx + 0x198]
shl r9, 5
mov r10, qword [rcx + r9]
mov qword [rsp + 0xd8], r10
mov r13, qword [rcx + r9 + 8]
mov r15, qword [rcx + r9 + 0x10]
mov rcx, qword [rcx + rdx + 0x178]
add rcx, r8
xor r11d, r11d
mov rdx, r8
jmp 0x1400394bd
xor r11d, r11d
test r9w, r9w
je 0x1400397d1
mov r9w, 1
test r11w, r11w
jne 0x1400394b0
cmp rdx, rcx
je 0x140039570
movzx r10d, byte [rdx]
test r10b, r10b
js 0x1400394e2
inc rdx
jmp 0x140039565
mov r11d, r10d
and r11d, 0x1f
movzx edi, byte [rdx + 1]
and edi, 0x3f
cmp r10b, 0xdf
jbe 0x140039528
movzx ebx, byte [rdx + 2]
shl edi, 6
and ebx, 0x3f
or ebx, edi
cmp r10b, 0xf0
jb 0x140039538
movzx r10d, byte [rdx + 3]
add rdx, 4
and r11d, 7
shl r11d, 0x12
shl ebx, 6
and r10d, 0x3f
or r10d, ebx
or r10d, r11d
jmp 0x140039546
add rdx, 2
shl r11d, 6
or r11d, edi
mov r10d, r11d
jmp 0x140039565
add rdx, 3
shl r11d, 0xc
or ebx, r11d
mov r10d, ebx
cmp r10d, 0xffff
jbe 0x140039565
and r10d, 0x3ff
or r10d, 0xdc00
mov r11d, r10d
jmp 0x1400394b3
xor r11d, r11d
mov r9d, r10d
jmp 0x1400394b3
test rax, rax
je 0x140039583
mov rcx, qword [0x141dd70f0]
xor edx, edx
call fcn.14004e8b0
mov rax, qword [rsp + 0x80]
sub rax, rbp
cmp rax, r12
jb 0x14003979a
mov rax, qword [rsp + 0xb8]
lea r8, [r12 + r12]
mov rdi, rax
lea rcx, [rax + rbp*2]
mov rdx, rsi
call fcn.14005c778
add rbp, r12
mov qword [rsp + 0x90], rbp
cmp qword [rsp + 0x60], 0
je 0x1400395d6
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, rsi
call fcn.14004e8b0
cmp rbp, qword [rsp + 0x80]
mov r12d, r14d
jne 0x1400395f8
lea rcx, [rsp + 0x80]
call fcn.140049680
mov rdi, qword [rsp + 0x88]
mov word [rdi + rbp*2], 0x3d
inc rbp
mov qword [rsp + 0x90], rbp
add r15, r13
xor r8d, r8d
mov rax, r13
movabs rsi, 0x8000000000000000
mov rbp, qword [rsp + 0x68]
mov rdi, qword [rsp + 0xd8]
jmp 0x140039637
xor r8d, r8d
test cx, cx
je 0x140039977
mov cx, 1
test r8w, r8w
jne 0x14003962b
cmp rax, r15
je 0x1400396e6
movzx edx, byte [rax]
test dl, dl
js 0x140039659
inc rax
jmp 0x1400396dc
mov r8d, edx
and r8d, 0x1f
movzx r10d, byte [rax + 1]
and r10d, 0x3f
cmp dl, 0xdf
jbe 0x1400396a2
movzx r9d, byte [rax + 2]
shl r10d, 6
and r9d, 0x3f
or r9d, r10d
cmp dl, 0xf0
jb 0x1400396b2
movzx edx, byte [rax + 3]
add rax, 4
and r8d, 7
shl r8d, 0x12
shl r9d, 6
and edx, 0x3f
or edx, r9d
or edx, r8d
jmp 0x1400396c0
add rax, 2
shl r8d, 6
or r8d, r10d
mov edx, r8d
jmp 0x1400396dc
add rax, 3
shl r8d, 0xc
or r9d, r8d
mov edx, r9d
cmp edx, 0xffff
jbe 0x1400396dc
and edx, 0x3ff
or edx, 0xdc00
mov r8d, edx
jmp 0x14003962e
xor r8d, r8d
mov ecx, edx
jmp 0x14003962e
cmp rdi, rsi
je 0x140039828
mov qword [rsp + 0xe0], r13
mov qword [rsp + 0xe8], r15
mov word [rsp + 0xf0], 0
lea rcx, [rsp + 0x80]
lea rdx, [rsp + 0xe0]
call fcn.140033350
test rdi, rdi
je 0x140039734
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, r13
call fcn.14004e8b0
mov rbp, qword [rsp + 0x90]
cmp rbp, qword [rsp + 0x80]
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0x210]
jne 0x14003976f
mov rdi, rcx
lea rcx, [rsp + 0x80]
mov r15, rdx
call fcn.140049680
mov rdx, r15
mov rcx, rdi
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0xb8], rax
mov word [rax + rbp*2], 0
inc rbp
mov qword [rsp + 0x90], rbp
mov r13, qword [rsp + 0x70]
jmp 0x14003941e
mov qword [rsp + 0x20], 2
mov r9d, 2
lea rcx, [rsp + 0x80]
mov rdx, rbp
mov r8, r12
call fcn.140042210
mov rax, qword [rsp + 0x88]
mov rbp, qword [rsp + 0x90]
jmp 0x14003959f
test rax, rax
je 0x1400397e4
mov rcx, qword [0x141dd70f0]
xor edx, edx
call fcn.14004e8b0
cmp qword [rsp + 0xd8], 0
mov rbp, qword [rsp + 0x68]
mov r12d, r14d
je 0x140039808
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, r13
call fcn.14004e8b0
cmp qword [rsp + 0x60], 0
je 0x140039821
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, rsi
call fcn.14004e8b0
lea r13, [0x141dd11c8]
lea rsi, [rsp + 0x120]
lea rdi, [rsp + 0x210]
nop dword [rax + rax]
mov rcx, rsi
mov rdx, rdi
call fcn.14003de40
mov rbx, qword [rsp + 0x120]
test rbx, rbx
je 0x1400398ca
mov r14, qword [rsp + 0x130]
imul rax, r14, 0x38
lea r15, [rbx + rax]
add r15, 0x168
cmp qword [rbx + rax + 0x168], 0
je 0x14003988c
mov r8, qword [r15 + 8]
mov rcx, qword [0x141dd70f0]
xor edx, edx
call fcn.14004e8b0
cmp qword [r15 + 0x20], 0
je 0x1400398a5
mov r8, qword [r15 + 0x28]
mov rcx, qword [0x141dd70f0]
xor edx, edx
call fcn.14004e8b0
shl r14, 5
cmp qword [rbx + r14], 0
je 0x140039840
add rbx, r14
mov r8, qword [rbx + 8]
mov rcx, qword [0x141dd70f0]
xor edx, edx
call fcn.14004e8b0
jmp 0x140039840
cmp qword [rsp + 0x80], 0
je 0x1400398eb
mov r8, qword [rsp + 0x88]
mov rcx, qword [0x141dd70f0]
xor edx, edx
call fcn.14004e8b0
mov rdi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0xc8]
mov rax, qword [rsp + 0xc0]
mov qword [rax], r13
mov qword [rax + 0x10], 2
mov r13, qword [rsp + 0x70]
jmp 0x14003aeaa
lea r8, [rsp + 0xf0]
lea rcx, [rdi + 0x68]
cmp ebx, 6
cmove rcx, r12
mov edx, 0xfffffff5
call fcn.14003e1a0
mov r12, rdx
test rax, rax
je 0x14003a3da
mov rax, qword [rsp + 0xc0]
mov qword [rax], r12
mov qword [rax + 0x10], 2
mov rdi, qword [rsp + 0x58]
mov rbx, rsi
mov r13, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x60]
jmp 0x14003adfe
mov r12, qword [rsp + 0xb0]
mov r8, qword [rsp + 0x60]
jmp 0x1400399cd
mov rsi, r13
test rdi, rdi
jne 0x140039810
jmp 0x140039821
jne 0x14003adc7
cmp rdi, rdx
jb 0x1400399cd
mov rdi, rdx
mov qword [rsp + 0x210], rbx
mov qword [rsp + 0x218], rsi
mov qword [rsp + 0x220], rdi
mov qword [rsp + 0x228], r14
lea rcx, [rsp + 0x210]
mov rdx, r12
call fcn.140034480
cmp qword [rsp + 0xd0], 1
je 0x140039a15
lea rcx, [rsp + 0x210]
call fcn.140037050
mov rsi, qword [rsp + 0x218]
mov r8, qword [rsp + 0x220]
lea rcx, [rsp + 0xe0]
mov rdx, rsi
call fcn.14003cd60
cmp qword [rsp + 0x210], 0
je 0x140039a51
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, rsi
call fcn.14004e8b0
mov r15, qword [rsp + 0xe0]
movabs rax, 0x8000000000000000
cmp r15, rax
jne 0x140039f5e
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x88], 2
mov qword [rsp + 0x90], 0
mov r8d, 0x200
mov r13d, 2
xor r15d, r15d
xor esi, esi
xor edi, edi
cmp r8, 0x201
jb 0x140039abf
jmp 0x140039ae0
jae 0x140039bad
cmp r8, 0x201
jae 0x140039ae0
mov r12d, 0x200
lea rbx, [rsp + 0x210]
mov r14, r8
jmp 0x140039b14
sub r8, rdi
sub rsi, rdi
cmp r8, rsi
ja 0x140039b79
mov eax, 0xffffffff
cmp r15, rax
mov edi, 0xffffffff
cmovb rdi, r15
mov qword [rsp + 0x90], rdi
mov rsi, r15
mov r12, rdi
mov rbx, r13
mov r14, rdi
xor ecx, ecx
call fcn.14004e838
mov rcx, rbx
mov edx, r14d
call fcn.14004e8f8
mov ebp, eax
test eax, eax
jne 0x140039b39
call fcn.14004e938
test eax, eax
jne 0x140039c93
mov r8d, ebp
cmp r14, r8
jne 0x140039ab0
call fcn.14004e938
cmp eax, 0x7a
jne 0x14003adc7
lea r8, [r14 + r14]
cmp r14, 0x7fffffff
mov eax, 0xffffffff
cmova r8, rax
cmp r8, 0x201
jae 0x140039ae0
jmp 0x140039abf
mov qword [rsp + 0x20], 2
mov r9d, 2
lea rcx, [rsp + 0x80]
mov rdx, rdi
call fcn.140042210
mov r15, qword [rsp + 0x80]
mov r13, qword [rsp + 0x88]
jmp 0x140039aef
cmp r12, r8
jb 0x14003adc7
lea rsi, [rsp + 0x120]
mov rcx, rsi
mov rdx, rbx
call fcn.140032090
mov rcx, rsi
mov r12, qword [rsp + 0xb0]
mov rdx, r12
mov r8, qword [rsp + 0x60]
call fcn.140034480
cmp qword [rsp + 0xd0], 1
je 0x140039bf9
lea rcx, [rsp + 0x120]
call fcn.140037050
mov rsi, qword [rsp + 0x128]
mov r8, qword [rsp + 0x130]
lea rcx, [rsp + 0xe0]
mov rdx, rsi
call fcn.14003cd60
cmp qword [rsp + 0x120], 0
je 0x140039c35
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, rsi
call fcn.14004e8b0
mov r15, qword [rsp + 0xe0]
mov rbp, qword [rsp + 0xe8]
mov rbx, qword [rsp + 0xf0]
cmp qword [rsp + 0x80], 0
je 0x140039c6e
mov r8, qword [rsp + 0x88]
mov rcx, qword [0x141dd70f0]
xor edx, edx
call fcn.14004e8b0
movabs rcx, 0x8000000000000000
lea rax, [rcx + 2]
cmp r15, rax
jge 0x14003845e
lea rax, [rcx + 1]
cmp r15, rax
je 0x140039ccb
jmp 0x140039d21
call fcn.14004e938
mov ebp, eax
shl rbp, 0x20
cmp qword [rsp + 0x80], 0
je 0x140039cbf
mov r8, qword [rsp + 0x88]
mov rcx, qword [0x141dd70f0]
xor edx, edx
call fcn.14004e8b0
or rbp, 2
mov r12, qword [rsp + 0xb0]
mov eax, ebp
and eax, 3
cmp eax, 1
jne 0x140039d21
mov rsi, qword [rbp - 1]
mov rdi, qword [rbp + 7]
mov rax, qword [rdi]
test rax, rax
je 0x140039cea
mov rcx, rsi
call rax
dec rbp
cmp qword [rdi + 8], 0
je 0x140039d10
cmp qword [rdi + 0x10], 0x11
jb 0x140039cff
mov rsi, qword [rsi - 8]
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, rsi
call fcn.14004e8b0
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, rbp
call fcn.14004e8b0
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x88], 2
mov qword [rsp + 0x90], 0
mov r8d, 0x200
mov r13d, 2
xor esi, esi
xor ebp, ebp
xor edi, edi
cmp r8, 0x201
jb 0x140039d7f
jmp 0x140039da0
jae 0x140039e7b
cmp r8, 0x201
jae 0x140039da0
mov r15d, 0x200
lea rbx, [rsp + 0x210]
mov r14, r8
jmp 0x140039dd4
sub r8, rdi
sub rbp, rdi
cmp r8, rbp
ja 0x140039e47
mov eax, 0xffffffff
cmp rsi, rax
mov edi, 0xffffffff
cmovb rdi, rsi
mov qword [rsp + 0x90], rdi
mov rbp, rsi
mov r15, rdi
mov rbx, r13
mov r14, rdi
xor ecx, ecx
call fcn.14004e838
mov rcx, rbx
mov edx, r14d
call fcn.14004e8c8
test eax, eax
jne 0x140039e07
mov r12d, eax
call fcn.14004e938
mov ecx, eax
mov eax, r12d
mov r12, qword [rsp + 0xb0]
test ecx, ecx
jne 0x140039f73
mov r8d, eax
cmp r14, r8
jne 0x140039d70
call fcn.14004e938
cmp eax, 0x7a
jne 0x14003adc7
lea r8, [r14 + r14]
cmp r14, 0x7fffffff
mov eax, 0xffffffff
cmova r8, rax
cmp r8, 0x201
jae 0x140039da0
jmp 0x140039d7f
mov qword [rsp + 0x20], 2
mov r9d, 2
lea rcx, [rsp + 0x80]
mov rdx, rdi
call fcn.140042210
mov rsi, qword [rsp + 0x80]
mov r13, qword [rsp + 0x88]
jmp 0x140039daf
cmp r15, r8
jb 0x14003adc7
lea rsi, [rsp + 0x120]
mov rcx, rsi
mov rdx, rbx
call fcn.140032090
mov rcx, rsi
mov rdx, r12
mov r8, qword [rsp + 0x60]
call fcn.140034480
cmp qword [rsp + 0xd0], 1
mov rdi, qword [rsp + 0x58]
je 0x140039ec4
lea rcx, [rsp + 0x120]
call fcn.140037050
mov rsi, qword [rsp + 0x128]
mov r8, qword [rsp + 0x130]
lea rcx, [rsp + 0xe0]
mov rdx, rsi
call fcn.14003cd60
cmp qword [rsp + 0x120], 0
je 0x140039f00
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, rsi
call fcn.14004e8b0
mov r15, qword [rsp + 0xe0]
mov rbp, qword [rsp + 0xe8]
mov rbx, qword [rsp + 0xf0]
cmp qword [rsp + 0x80], 0
je 0x140039f39
mov r8, qword [rsp + 0x88]
mov rcx, qword [0x141dd70f0]
xor edx, edx
call fcn.14004e8b0
movabs rsi, 0x8000000000000000
lea rax, [rsi + 2]
cmp r15, rax
jge 0x14003845e
lea rax, [rsi + 1]
cmp r15, rax
je 0x140039fb2
jmp 0x14003a017
mov rbp, qword [rsp + 0xe8]
mov rbx, qword [rsp + 0xf0]
jmp 0x14003845e
call fcn.14004e938
mov ebp, eax
shl rbp, 0x20
cmp qword [rsp + 0x80], 0
je 0x140039f9f
mov r8, qword [rsp + 0x88]
mov rcx, qword [0x141dd70f0]
xor edx, edx
call fcn.14004e8b0
or rbp, 2
mov rdi, qword [rsp + 0x58]
movabs rsi, 0x8000000000000000
mov eax, ebp
and eax, 3
cmp eax, 1
jne 0x14003a017
mov rsi, qword [rbp - 1]
mov rdi, qword [rbp + 7]
mov rax, qword [rdi]
test rax, rax
je 0x140039fd1
mov rcx, rsi
call rax
dec rbp
cmp qword [rdi + 8], 0
je 0x140039ff7
cmp qword [rdi + 0x10], 0x11
jb 0x140039fe6
mov rsi, qword [rsi - 8]
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, rsi
call fcn.14004e8b0
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, rbp
call fcn.14004e8b0
mov rdi, qword [rsp + 0x58]
movabs rsi, 0x8000000000000000
lea rdx, [0x141dd1021]
lea rcx, [rsp + 0x120]
mov r8d, 4
call fcn.140032e90
mov rax, qword [rsp + 0x120]
cmp rax, rsi
je 0x14003a398
mov qword [rsp + 0x78], rax
mov r13, qword [rsp + 0x128]
mov r12, qword [rsp + 0x130]
add r12, r13
mov dil, 1
xor ebx, ebx
mov qword [rsp + 0x68], r13
mov r9, qword [rsp + 0x60]
mov qword [rsp + 0xe0], 0
mov qword [rsp + 0xe8], 2
mov qword [rsp + 0xf0], 0
mov eax, 2
xor r14d, r14d
mov ebp, ebx
xor r15d, r15d
mov esi, ebp
test bp, bp
jne 0x14003a0c0
jmp 0x14003a0e0
mov word [rax + r14*2], si
inc r14
mov qword [rsp + 0xf0], r14
mov esi, ebp
test bp, bp
je 0x14003a0e0
nop word [rax + rax]
xor ebx, ebx
xor ebp, ebp
cmp si, 0x22
je 0x14003a178
jmp 0x14003a1c4
cmp r13, r12
je 0x14003a203
movzx ecx, byte [r13]
test cl, cl
js 0x14003a110
inc r13
mov esi, ecx
xor ebp, ebp
cmp si, 0x22
je 0x14003a178
jmp 0x14003a1c4
mov esi, ecx
and esi, 0x1f
movzx r8d, byte [r13 + 1]
and r8d, 0x3f
cmp cl, 0xdf
jbe 0x14003a15a
movzx edx, byte [r13 + 2]
shl r8d, 6
and edx, 0x3f
or edx, r8d
cmp cl, 0xf0
jb 0x14003a18c
movzx ecx, byte [r13 + 3]
add r13, 4
and esi, 7
shl esi, 0x12
shl edx, 6
and ecx, 0x3f
or ecx, edx
or esi, ecx
cmp esi, 0xffff
jbe 0x14003a170
jmp 0x14003a19d
add r13, 2
shl esi, 6
or esi, r8d
nop word cs:[rax + rax]
xor ebp, ebp
cmp si, 0x22
jne 0x14003a1c4
xor r15b, 1
mov esi, ebp
test bp, bp
jne 0x14003a0c0
jmp 0x14003a0e0
add r13, 3
shl esi, 0xc
or esi, edx
cmp esi, 0xffff
jbe 0x14003a170
lea ecx, [rsi + 0xff0000]
shr ecx, 0xa
or ecx, 0xd800
and esi, 0x3ff
or esi, 0xdc00
mov ebx, esi
mov ebp, esi
mov esi, ecx
cmp si, 0x22
je 0x14003a178
movzx ecx, si
cmp ecx, 0x3b
jne 0x14003a1d6
test r15b, 1
je 0x14003a2bf
cmp r14, qword [rsp + 0xe0]
jne 0x14003a0a3
lea rcx, [rsp + 0xe0]
call fcn.140049680
mov r9, qword [rsp + 0x60]
mov rax, qword [rsp + 0xe8]
jmp 0x14003a0a3
xor esi, esi
test r14, r14
setne al
or dil, al
test dil, 1
je 0x14003a233
mov rdx, qword [rsp + 0xe8]
lea rcx, [rsp + 0x210]
mov r8, r14
call fcn.140032090
mov r9, qword [rsp + 0x60]
jmp 0x14003a245
movabs rax, 0x8000000000000000
mov qword [rsp + 0x210], rax
mov rdi, qword [rsp + 0x58]
cmp qword [rsp + 0xe0], 0
je 0x14003a270
mov r8, qword [rsp + 0xe8]
mov rcx, qword [0x141dd70f0]
xor edx, edx
call fcn.14004e8b0
mov r9, qword [rsp + 0x60]
mov rax, qword [rsp + 0x210]
movabs rcx, 0x8000000000000000
cmp rax, rcx
je 0x14003a37d
mov r8, qword [rsp + 0x218]
mov rcx, qword [rsp + 0x220]
test rcx, rcx
jne 0x14003a2c7
test rax, rax
je 0x14003a2b8
mov rcx, qword [0x141dd70f0]
xor edx, edx
call fcn.14004e8b0
mov r9, qword [rsp + 0x60]
mov edi, esi
jmp 0x14003a069
mov sil, 1
jmp 0x14003a205
mov rdx, qword [rsp + 0x228]
mov qword [rsp + 0x210], rax
mov qword [rsp + 0x218], r8
mov qword [rsp + 0x220], rcx
mov qword [rsp + 0x228], rdx
lea rcx, [rsp + 0x210]
mov rdx, qword [rsp + 0xb0]
mov r8, r9
call fcn.140034480
cmp qword [rsp + 0xd0], 1
je 0x14003a31f
lea rcx, [rsp + 0x210]
call fcn.140037050
mov r14, qword [rsp + 0x218]
mov r8, qword [rsp + 0x220]
lea rcx, [rsp + 0xe0]
mov rdx, r14
call fcn.14003cd60
cmp qword [rsp + 0x210], 0
je 0x14003a35b
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, r14
call fcn.14004e8b0
mov r15, qword [rsp + 0xe0]
movabs rax, 0x8000000000000000
cmp r15, rax
jne 0x14003a41d
mov edi, esi
jmp 0x14003a064
cmp qword [rsp + 0x78], 0
je 0x14003a398
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, qword [rsp + 0x68]
call fcn.14004e8b0
lea rbp, [0x141dd1230]
jmp 0x140037f8a
lea r8, [rsp + 0x100]
mov rcx, r13
mov edx, 0xfffffff4
call fcn.14003e1a0
test rax, rax
mov rdi, qword [rsp + 0x58]
je 0x14003a84c
mov rax, qword [rsp + 0xc0]
mov qword [rax], rdx
mov qword [rax + 0x10], 2
mov rbx, rsi
mov rsi, qword [rsp + 0x60]
jmp 0x14003adf1
mov rbp, qword [rsp + 0xe8]
mov rbx, qword [rsp + 0xf0]
cmp qword [rsp + 0x78], 0
je 0x14003a448
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, qword [rsp + 0x68]
call fcn.14004e8b0
mov r12, qword [rsp + 0xb0]
jmp 0x14003845e
lea rsi, [rsp + 0x120]
lea rdi, [rsp + 0x210]
mov rcx, rsi
mov rdx, rdi
call fcn.14003de40
mov rbx, qword [rsp + 0x120]
test rbx, rbx
je 0x14003a4f2
mov r15, qword [rsp + 0x130]
imul rax, r15, 0x38
lea r12, [rbx + rax]
add r12, 0x168
cmp qword [rbx + rax + 0x168], 0
je 0x14003a4b2
mov r8, qword [r12 + 8]
mov rcx, qword [0x141dd70f0]
xor edx, edx
call fcn.14004e8b0
cmp qword [r12 + 0x20], 0
je 0x14003a4cd
mov r8, qword [r12 + 0x28]
mov rcx, qword [0x141dd70f0]
xor edx, edx
call fcn.14004e8b0
shl r15, 5
cmp qword [rbx + r15], 0
je 0x14003a465
add rbx, r15
mov r8, qword [rbx + 8]
mov rcx, qword [0x141dd70f0]
xor edx, edx
call fcn.14004e8b0
jmp 0x14003a465
cmp rbp, qword [rsp + 0x80]
mov rax, qword [rsp + 0xb8]
jne 0x14003a519
lea rcx, [rsp + 0x80]
call fcn.140049680
mov rax, qword [rsp + 0x88]
mov word [rax + rbp*2], 0
mov r15, qword [rsp + 0x80]
movabs rcx, 0x8000000000000000
cmp r15, rcx
mov rdi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0xc8]
mov r12d, r14d
mov r14d, dword [rsp + 0xb0]
jne 0x14003a915
mov r13, rax
mov rbp, qword [rsp + 0x68]
jmp 0x1400398f8
xorps xmm0, xmm0
movups xmmword [rsp + 0x154], xmm0
movups xmmword [rsp + 0x148], xmm0
movups xmmword [rsp + 0x138], xmm0
movups xmmword [rsp + 0x128], xmm0
movups xmmword [rsp + 0x168], xmm0
movups xmmword [rsp + 0x178], xmm0
test rdx, rdx
jne 0x14003aadb
test r12, r12
jne 0x14003aadb
mov eax, 1
test rbp, rbp
jne 0x14003aadb
mov r8, qword [rsp + 0xa8]
cmp byte [r8 + 0xc0], 1
jne 0x14003ab19
movzx ecx, word [r8 + 0xc2]
mov dword [rsp + 0x15c], eax
mov word [rsp + 0x160], cx
mov qword [rsp + 0x1e8], rdx
mov rbx, qword [r8 + 0xb8]
test rbx, rbx
jne 0x14003ab31
mov dword [rsp + 0x120], 0x68
lea rax, [rsp + 0x120]
mov r8d, dword [rsp + 0xb0]
jmp 0x14003ac03
lea rcx, [0x141dd70e0]
call fcn.140032de0
jmp 0x1400388d0
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0xd8], rax
mov rax, qword [rsp + 0xa8]
mov rbp, qword [rsp + 0x68]
cmp qword [rax + 0x38], rcx
mov qword [rsp + 0x60], r15
je 0x140038875
mov rcx, rax
mov rax, qword [rax + 0x40]
mov rcx, qword [rcx + 0x48]
add rcx, rax
xor r10d, r10d
mov rdx, rax
jmp 0x14003a96c
xor r10d, r10d
test r8w, r8w
je 0x14003aa23
mov r8w, 1
test r10w, r10w
jne 0x14003a95f
cmp rdx, rcx
je 0x14003aa4d
movzx r9d, byte [rdx]
test r9b, r9b
js 0x14003a991
inc rdx
jmp 0x14003aa18
mov r10d, r9d
and r10d, 0x1f
movzx esi, byte [rdx + 1]
and esi, 0x3f
cmp r9b, 0xdf
jbe 0x14003a9db
movzx r11d, byte [rdx + 2]
shl esi, 6
and r11d, 0x3f
or r11d, esi
cmp r9b, 0xf0
jb 0x14003a9eb
movzx r9d, byte [rdx + 3]
add rdx, 4
and r10d, 7
shl r10d, 0x12
shl r11d, 6
and r9d, 0x3f
or r9d, r11d
or r9d, r10d
jmp 0x14003a9f9
add rdx, 2
shl r10d, 6
or r10d, esi
mov r9d, r10d
jmp 0x14003aa18
add rdx, 3
shl r10d, 0xc
or r11d, r10d
mov r9d, r11d
cmp r9d, 0xffff
jbe 0x14003aa18
and r9d, 0x3ff
or r9d, 0xdc00
mov r10d, r9d
jmp 0x14003a962
xor r10d, r10d
mov r8d, r9d
jmp 0x14003a962
mov rsi, rbx
lea r15, [0x141dd11c8]
mov rax, qword [rsp + 0xc0]
mov qword [rax], r15
mov qword [rax + 0x10], 2
mov rbx, rsi
mov rsi, qword [rsp + 0x60]
jmp 0x14003ae8f
mov dword [rsp + 0xb0], r14d
mov rsi, rbx
mov qword [rsp + 0x210], rax
mov qword [rsp + 0x218], rcx
mov word [rsp + 0x220], 0
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0x210]
call fcn.14003af10
mov rdx, qword [rsp + 0x120]
mov rbx, qword [rsp + 0x130]
cmp rbx, rdx
jne 0x14003aab1
lea rcx, [rsp + 0x120]
call fcn.140049680
mov rdx, qword [rsp + 0x120]
mov r15, qword [rsp + 0x128]
mov word [r15 + rbx*2], 0
mov rcx, r15
movabs rax, 0x8000000000000000
cmp rdx, rax
jne 0x14003888a
jmp 0x14003aa2d
mov dword [rsp + 0x15c], 0x100
mov qword [rsp + 0x170], rbp
mov qword [rsp + 0x178], r12
mov qword [rsp + 0x180], rdx
mov eax, 0x101
mov r8, qword [rsp + 0xa8]
cmp byte [r8 + 0xc0], 1
je 0x14003a8b5
mov qword [rsp + 0x1e8], rdx
mov rbx, qword [r8 + 0xb8]
test rbx, rbx
je 0x14003a8e4
mov rdx, r8
add rdx, 0xa8
mov dword [rsp + 0x120], 0x70
lea rcx, [rsp + 0x1f8]
call fcn.14003e6a0
mov r13, qword [rsp + 0x1f8]
mov rcx, qword [rsp + 0x200]
test r13, r13
je 0x14003adc9
mov qword [rsp + 0xa8], rcx
mov r8d, dword [rsp + 0xb0]
or r8d, 0x80000
mov rax, qword [rsp + 0x180]
mov qword [rsp + 0x270], rax
movups xmm0, xmmword [rsp + 0x170]
movaps xmmword [rsp + 0x260], xmm0
movups xmm0, xmmword [rsp + 0x160]
movaps xmmword [rsp + 0x250], xmm0
movups xmm0, xmmword [rsp + 0x120]
movups xmm1, xmmword [rsp + 0x130]
movups xmm2, xmmword [rsp + 0x140]
movups xmm3, xmmword [rsp + 0x150]
movaps xmmword [rsp + 0x240], xmm3
movaps xmmword [rsp + 0x230], xmm2
movaps xmmword [rsp + 0x220], xmm1
movaps xmmword [rsp + 0x210], xmm0
mov qword [rsp + 0x278], r13
lea rax, [rsp + 0x210]
mov rdx, qword [rsp + 0x1a8]
lea rcx, [rsp + 0x80]
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], r15
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], r8d
mov dword [rsp + 0x20], 1
mov rcx, qword [rsp + 0x70]
xor r8d, r8d
xor r9d, r9d
call fcn.14004e9e0
test eax, eax
je 0x14003ad88
movups xmm0, xmmword [rsp + 0xe0]
movups xmm1, xmmword [rsp + 0xf0]
movups xmm2, xmmword [rsp + 0x100]
mov rax, qword [rsp + 0xc0]
movups xmmword [rax + 0x30], xmm2
movups xmmword [rax + 0x20], xmm1
movups xmmword [rax + 0x10], xmm0
movaps xmm0, xmmword [rsp + 0x80]
movups xmmword [rax], xmm0
test rbx, rbx
mov rbx, rsi
je 0x14003aca3
mov rcx, r13
mov rdx, qword [rsp + 0xa8]
call fcn.14003e9f0
mov rcx, qword [rsp + 0x1e8]
call fcn.14004ea08
mov rcx, r12
call fcn.14004ea08
mov rcx, rbp
call fcn.14004ea08
xor eax, eax
xchg byte [0x141dd70e0], al
cmp al, 2
jne 0x14003acd8
lea rcx, [0x141dd70e0]
call fcn.14004ea28
cmp qword [rsp + 0x198], 0
mov rdi, qword [rsp + 0x68]
mov r15, qword [rsp + 0x70]
je 0x14003ad03
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, qword [rsp + 0xd0]
call fcn.14004e8b0
cmp qword [rsp + 0x60], 0
mov rsi, qword [rsp + 0x1c8]
je 0x14003ad29
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, qword [rsp + 0xd8]
call fcn.14004e8b0
cmp qword [rsp + 0x1a0], 0
je 0x14003ad4a
mov r8, qword [rsp + 0x1a8]
mov rcx, qword [0x141dd70f0]
xor edx, edx
call fcn.14004e8b0
cmp qword [rsp + 0x78], 0
je 0x14003ad63
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, r15
call fcn.14004e8b0
test rbx, rbx
setne al
test r14b, al
je 0x140038651
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, rdi
call fcn.14004e8b0
jmp 0x140038651
call fcn.14004e938
shl rax, 0x20
or rax, 2
mov rcx, qword [rsp + 0xc0]
mov qword [rcx], rax
mov qword [rcx + 0x10], 2
test rbx, rbx
mov rbx, rsi
mov rsi, qword [rsp + 0x60]
je 0x14003ade4
mov rcx, r13
mov rdx, qword [rsp + 0xa8]
call fcn.14003e9f0
jmp 0x14003ade4
ud2
mov rax, qword [rsp + 0xc0]
mov qword [rax], rcx
mov qword [rax + 0x10], 2
mov rbx, rsi
mov rsi, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x1e8]
call fcn.14004ea08
mov rcx, r12
call fcn.14004ea08
mov r13, qword [rsp + 0x70]
mov rcx, rbp
call fcn.14004ea08
mov r12d, r14d
cmp qword [rsp + 0xe0], 0
mov rbp, qword [rsp + 0x68]
je 0x14003ae26
mov rcx, qword [rsp + 0xe8]
call fcn.14004ea08
cmp qword [rsp + 0xf0], 0
je 0x14003ae3e
mov rcx, qword [rsp + 0xf8]
call fcn.14004ea08
cmp qword [rsp + 0x100], 0
je 0x14003ae56
mov rcx, qword [rsp + 0x108]
call fcn.14004ea08
xor eax, eax
xchg byte [0x141dd70e0], al
cmp al, 2
jne 0x14003ae6e
lea rcx, [0x141dd70e0]
call fcn.14004ea28
cmp qword [rsp + 0x198], 0
je 0x14003ae8f
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, qword [rsp + 0xd0]
call fcn.14004e8b0
test rsi, rsi
je 0x14003aeaa
mov rcx, qword [0x141dd70f0]
xor edx, edx
mov r8, qword [rsp + 0xd8]
call fcn.14004e8b0
cmp qword [rsp + 0x1a0], 0
je 0x14003aecb
mov r8, qword [rsp + 0x1a8]
mov rcx, qword [0x141dd70f0]
xor edx, edx
call fcn.14004e8b0
cmp qword [rsp + 0x78], 0
je 0x14003aef4
mov rcx, qword [0x141dd70f0]
xor esi, esi
xor edx, edx
mov r8, r13
call fcn.14004e8b0
test r12b, r12b
jne 0x140038628
jmp 0x140038649
test r12b, r12b
je 0x140038649
xor esi, esi
jmp 0x140038628
call fcn.1400334f0
ud2