Function at 0x140149e00
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x2f8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x270], 0xfffffffffffffffe
mov rsi, rdx
mov rdi, rcx
cmp qword [0x14055f1b8], 0
jne 0x140149eaf
mov ecx, 0xe8
mov edx, 0x53982ce4
mov r8d, 0xda597af5
call fcn.1400af2b0
lea rcx, [0x140420878]
mov qword [rax], rcx
mov qword [rax + 0x28], 0
xor ecx, ecx
sub rcx, qword [0x1404feba8]
movabs rdx, 0x94146f9ab7a3bb80
xor rdx, rcx
movabs r8, 0x14146f9ab7a3bb80
and r8, rcx
lea rcx, [rdx + r8*2]
neg rcx
mov qword [rax + 0x30], rcx
mov byte [rax + 0x18], 0
lea rcx, [0x1404208d8]
mov qword [rax + 0x10], rcx
mov dword [rax + 8], 0
xorps xmm0, xmm0
movups xmmword [rax + 0x38], xmm0
mov qword [0x14055f1b8], rax
mov rax, qword [0x14055f1b8]
mov rbx, qword [rax + 0x38]
mov qword [rbp - 0x18], rbx
mov qword [rbp - 0x10], 0x7fffffff
mov byte [rbp - 8], 1
lea r14, [0x1404224e8]
mov qword [rbp - 0x20], r14
xorps xmm0, xmm0
movups xmmword [rbp], xmm0
mov rcx, rbx
call fcn.14022a9d0
movsxd rax, dword [rax + 0x3c]
add rax, qword [0x14055f2b8]
lea rcx, [rax + rbx]
xor edx, edx
cmp dword [rbx + rax], 0x4550
cmove rdx, rcx
mov eax, dword [rdx + 0xd8]
test rax, rax
je 0x140149f64
movabs rcx, 0xb5522f029e6614d3
add rcx, qword [0x14055f350]
mov rdx, rcx
xor rdx, rax
and ecx, eax
lea rax, [rdx + rcx*2]
movabs r15, 0x4aadd0fd6199eb2d
add r15, rax
cmp dword [rbx + r15], 0x71
jb 0x140149f64
mov r8, qword [rbx + r15 + 0x70]
lea rdx, [0x1404e23e8]
mov rcx, rbx
call fcn.14014f940
mov r8, qword [rbx + r15 + 0x78]
lea rdx, case.0x140119ecb.0
mov rcx, rbx
call fcn.14014f940
mov qword [rbp - 0x20], r14
mov rbx, qword [rbp + 8]
test rbx, rbx
je 0x140149f9c
lock dec dword [rbx + 8]
jne 0x140149f9c
mov rax, qword [rbx]
mov rax, qword [rax]
mov rcx, rbx
call qword [case.0x140119ecb.0]
lock dec dword [rbx + 0xc]
jne 0x140149f9c
mov rax, qword [rbx]
mov rax, qword [rax + 8]
mov rcx, rbx
call qword [case.0x140119ecb.0]
mov ecx, dword [rsi + 0xc134]
mov edx, dword [rsi]
mov eax, dword [rdi + 0x160]
mov r8d, dword [rdi + 0x164]
mov r9d, edx
xor r9d, edx
not r9d
and r9d, r8d
and r8d, edx
xor r8d, edx
xor r8d, r9d
movups xmm0, xmmword [rsi + 0xc124]
mov dword [rdi + 0x164], r8d
movups xmmword [rdi + 0x168], xmm0
mov dword [rdi + 0x178], ecx
mov ecx, dword [rsi + 0xc114]
mov edx, eax
and edx, ecx
xor eax, ecx
xor eax, edx
mov dword [rdi + 0x160], eax
lea rbx, [rsi + 0x40]
shr eax, 0x1f
lea r14, [rdi + 0x50]
mov byte [rdi + 0x58], al
movups xmm0, xmmword [rsi + 0x40]
movups xmm1, xmmword [rsi + 0x50]
movups xmm2, xmmword [rsi + 0x60]
movups xmm3, xmmword [rsi + 0x70]
movups xmmword [rdi + 0x59], xmm0
movups xmmword [rdi + 0x69], xmm1
movups xmmword [rdi + 0x79], xmm2
movups xmmword [rdi + 0x89], xmm3
mov dword [rsp + 0x20], 0x8c43f8ab
mov rcx, r14
mov rdx, rbx
mov r8d, 0x86f9da6b
mov r9d, 0xb4432971
call fcn.140155b30
mov dword [rsp + 0x20], 0xcd92695d
mov rcx, r14
mov rdx, rbx
mov r8d, 0x48e29530
mov r9d, 0x4e15a94e
call fcn.140155ff0
xorps xmm0, xmm0
movaps xmmword [rbp + 0x1e0], xmm0
mov qword [rbp + 0x1f0], 0
call fcn.1400b26e0
mov r14, rax
lea rdx, [rbp + 0x1e0]
mov rcx, rax
call fcn.14014b460
mov rcx, qword [0x14055f1e0]
mov r12, qword [0x1404fe468]
mov edx, dword [0x14055f348]
mov r8d, dword [0x1404febb0]
mov eax, r8d
xor eax, 0xb1908314
mov r9d, r8d
and r9d, 0x31908314
add r9d, r9d
mov r10d, eax
xor r10d, r9d
and r9d, eax
lea r9d, [r10 + r9*2]
mov eax, edx
sub eax, r9d
imul eax, edx
mov edx, r8d
xor edx, 0xb1908315
and r8d, 0x31908315
lea r8d, [rdx + r8*2]
xor edx, edx
div r8d
test edx, edx
je 0x14014a10f
nop word cs:[rax + rax]
mov eax, dword [r12]
mov eax, dword [0x14055f34c]
cmp eax, 0x31
jge 0x14014a100
movsxd r13, dword [r12]
mov r15d, dword [0x140424f7c]
test rcx, rcx
jne 0x14014a146
mov ecx, 0x160
call fcn.1403dccdc
mov qword [rbp + 0x260], rax
mov rcx, rax
call fcn.1401174b0
mov rax, qword [rbp + 0x260]
mov qword [0x14055f1e0], rax
mov rbx, qword [0x14055f1e0]
mov r9, qword [rdi + 0x190]
mov eax, dword [rdi + 0x160]
mov ecx, eax
not ecx
xor eax, 0x10000
and ecx, 0xfffeffff
or eax, ecx
not eax
or eax, ecx
mov ecx, eax
xor ecx, 0x10000
not eax
and eax, 0xfffeffff
or eax, ecx
cmp eax, 0xffffffff
setne dl
mov rcx, rbx
mov r8, rsi
call fcn.140117cc0
lea rax, [rsi + 0xc124]
mov qword [rbp + 0x260], rax
mov rax, r13
xor rax, r12
and r13, r12
lea rax, [rax + r13*2]
mov ecx, dword [0x14055f348]
nop word cs:[rax + rax]
mov ecx, dword [0x1404fe454]
mov edx, dword [0x1404febb0]
mov r8d, dword [0x14055f34c]
lea r9d, [rdx + 0x2cc93e7f]
mov r10d, r9d
xor r10d, 0x84c744cd
and r9d, 0x4c744cd
lea r9d, [r10 + r9*2]
cmp r8d, r9d
jge 0x14014a1c0
mov r8d, edx
xor r8d, 0xdb3ad2
and edx, 0xdb3ad2
lea edx, [r8 + rdx*2]
mov r8d, ecx
sub r8d, edx
inc r8d
mov edx, r8d
xor edx, 0x9feea631
and r8d, 0x1feea631
lea edx, [rdx + r8*2]
add edx, 0xaf5c118e
mov r8d, edx
not r8d
mov r12d, r8d
xor r12d, ecx
xor ecx, edx
and r12d, r8d
or r12d, ecx
not r12d
xor ecx, ecx
nop word cs:[rax + rax]
mov r8d, dword [0x14055f34c]
cmp r8d, 0xa
jg 0x14014a267
mov dword [0x1404fe454], edx
test cl, cl
je 0x14014a276
mov r8d, dword [0x14055f34c]
cmp r8d, 0xa
jge 0x14014a250
jmp 0x14014a25d
mov ecx, dword [0x1404febb0]
mov edx, ecx
xor edx, 0x4e6f7cec
and edx, ecx
xor ecx, 0xb1908313
lea ecx, [rcx + rdx*2]
xor r13d, r13d
mov dword [rbp + 0x1fc], ecx
cmp r12d, ecx
jne 0x14014a2a6
test r15d, r15d
jg 0x14014a8d2
mov eax, dword [0x14055f348]
mov ecx, 0xd74db5b
sub ecx, eax
imul ecx, eax
jmp 0x14014a2cc
mov eax, dword [0x14055f348]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
jne 0x14014a2c0
test rsi, rsi
je 0x14014a2c0
lea rcx, [rbp - 0x20]
mov r8d, 0x200
xor edx, edx
call fcn.140404f80
mov edx, dword [rsi]
mov rcx, rdi
call fcn.1400b2190
test al, al
je 0x14014b02f
mov rcx, rbx
call fcn.140119e50
lea rdx, [rbp - 0x20]
mov rcx, rbx
call fcn.140119f00
test al, al
je 0x14014a3db
mov r15, qword [rdi + 0x108]
mov eax, dword [rbp - 0x1c]
mov ecx, eax
not ecx
mov edx, eax
xor edx, 1
and ecx, 0xfffffffe
or ecx, edx
cmp ecx, 0xffffffff
je 0x14014a339
mov ecx, dword [rbp - 0x18]
mov dword [r15 + 8], ecx
mov edx, eax
and edx, 2
mov ecx, 0xb1908313
mov r8d, dword [0x1404febb0]
add r8d, ecx
cmp edx, r8d
je 0x14014a36a
movzx edx, word [rbp - 0x12]
mov word [r15 + 0xc], dx
mov edx, dword [rbp - 0x10]
mov dword [r15 + 0x10], edx
mov byte [r15 + 0x90], 1
mov edx, eax
and edx, 4
add ecx, dword [0x1404febb0]
cmp edx, ecx
je 0x14014a380
mov ecx, dword [rbp - 0xc]
mov dword [r15 + 0x14], ecx
test al, 8
je 0x14014a391
lea rdx, [rbp - 8]
lea rcx, [r15 + 0x18]
call fcn.140244d40
mov eax, dword [rbp - 0x1c]
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0x10
and eax, 0xffffffef
or eax, edx
and ecx, 0xffffffef
mov edx, eax
not edx
mov r8d, eax
xor r8d, ecx
mov r9d, edx
and edx, ecx
not ecx
and r9d, ecx
or r9d, r8d
not r9d
and ecx, eax
or ecx, edx
or ecx, r9d
cmp ecx, 0xffffffff
je 0x14014a3db
lea rdx, [rbp + 0x78]
add r15, 0x68
mov rcx, r15
call fcn.140244d40
mov ecx, dword [rdi + 0x160]
mov eax, ecx
not eax
mov edx, dword [0x1404febb0]
mov r8d, edx
neg r8d
add edx, 0xb1d08313
not edx
mov r9d, eax
xor r9d, edx
and r9d, eax
and edx, ecx
and eax, 0xffbfffff
or eax, edx
or eax, r9d
mov ecx, r8d
xor ecx, 0x4e6f7cee
and r8d, 0x4e6f7cee
lea ecx, [rcx + r8*2]
neg ecx
xor ecx, eax
je 0x14014a436
mov rax, qword [rdi + 0x108]
mov byte [rax + 0x90], 1
mov rcx, rdi
mov rdx, rsi
call fcn.1400f7040
test al, al
je 0x14014b02f
mov rax, qword [rdi + 0x108]
mov qword [rax + 0x3c0], 0x3e8
lea rdx, [rbp + 0x1e0]
mov rcx, r14
call fcn.14014b510
test byte [rdi + 0x160], 1
jne 0x14014a910
mov rcx, rdi
call fcn.14014fa90
mov rbx, rax
mov r14d, dword [rdi + 0x118]
mov dword [rax + 0x87c], 0
lea rcx, [rax + 0x840]
mov r15, qword [rax + 0x840]
mov r8, qword [r15 + 8]
mov rdx, rcx
call fcn.140124470
mov qword [r15 + 8], r15
mov qword [r15], r15
mov qword [r15 + 0x10], r15
mov qword [rbx + 0x848], 0
mov dword [rbx + 0x880], r14d
mov rcx, rbx
call fcn.140071880
mov rcx, rbx
mov rdx, rdi
call fcn.140072d20
mov rcx, rbx
add rcx, 8
call fcn.140152b90
mov rcx, rbx
call fcn.140083030
cmp qword [0x14055f1b8], 0
jne 0x14014a543
mov ecx, 0xe8
call fcn.1403dccdc
lea rcx, [0x140420878]
mov qword [rax], rcx
mov qword [rax + 0x28], 0
mov qword [rax + 0x30], 0xf
mov byte [rax + 0x18], 0
lea rcx, [0x1404208d8]
mov qword [rax + 0x10], rcx
mov dword [rax + 8], 0
xorps xmm0, xmm0
movups xmmword [rax + 0x38], xmm0
mov qword [0x14055f1b8], rax
mov rax, qword [0x14055f1b8]
mov rcx, qword [rax + 0x38]
lea rdx, [0x14055eca2]
call fcn.1401d55d0
mov eax, dword [rdi + 0x164]
mov ecx, eax
not ecx
mov edx, eax
xor edx, 0xfffffeff
mov r8d, ecx
or r8d, 0x100
and r8d, edx
mov edx, r8d
not edx
and ecx, edx
and eax, r8d
or eax, ecx
xor eax, edx
test eax, r8d
setne dl
or dl, byte [0x14055f358]
mov dword [rbp + 0x260], r12d
mov r12d, dword [rdi + 0x160]
mov eax, r12d
not eax
mov ecx, eax
or ecx, 0xffffdfff
cmp ecx, 0xffffffff
setne cl
mov r8d, edx
not r8b
and r8b, cl
lea rcx, [rdi + 0x308]
mov qword [rbp + 0x208], rcx
mov rcx, qword [rdi + 0x190]
mov r14d, dword [0x14055e91e]
mov r10d, r14d
not r10d
mov r15d, r14d
xor r15d, 2
mov r11d, r10d
and r11d, 0xfffffffd
or r11d, r15d
xor r14d, 1
and r10d, 0xfffffffe
or r10d, r14d
mov r14d, r12d
xor r14d, 8
and eax, 0xfffffff7
or eax, r14d
mov r14d, r12d
shr r14d, 0x17
and r14d, 1
mov r15d, r12d
shr r15d, 0x1d
and r15d, 1
mov r9d, r12d
and r9d, 4
shr r9d, 2
mov ebx, r12d
xor ebx, 0xffffefff
test ebx, r12d
mov r12d, dword [rbp + 0x260]
setne bl
cmp r10d, 0xffffffff
setne byte [rsp + 0x40]
cmp r11d, 0xffffffff
setne byte [rsp + 0x48]
cmp eax, 0xffffffff
mov qword [rsp + 0x50], rcx
setne byte [rsp + 0x38]
mov byte [rsp + 0x30], r14b
mov byte [rsp + 0x28], r15b
mov r15, qword [rbp + 0x208]
mov byte [rsp + 0x20], r9b
and dl, 1
mov rcx, r15
mov r9d, ebx
call fcn.1401a34c0
mov rcx, rdi
call fcn.1401493b0
test al, al
je 0x14014b02f
mov eax, dword [rdi + 0x160]
mov ecx, eax
not ecx
xor eax, 0x1000
and ecx, 0xffffefff
or ecx, eax
not ecx
mov eax, 0xb1908313
add eax, dword [0x1404febb0]
cmp ecx, eax
je 0x14014a75b
call fcn.14014bb80
mov r14, rax
mov rax, qword [rsi + 0xc1bb]
mov qword [r14 + 0x40], rax
movups xmm0, xmmword [rsi + 0xc1ab]
movups xmmword [r14 + 0x30], xmm0
cmp qword [0x14055f1b8], 0
jne 0x14014a72f
mov ecx, 0xe8
call fcn.1403dccdc
lea rcx, [0x140420878]
mov qword [rax], rcx
mov qword [rax + 0x28], 0
mov qword [rax + 0x30], 0xf
mov byte [rax + 0x18], 0
lea rcx, [0x1404208d8]
mov qword [rax + 0x10], rcx
mov dword [rax + 8], 0
xorps xmm0, xmm0
movups xmmword [rax + 0x38], xmm0
mov qword [0x14055f1b8], rax
mov rax, qword [0x14055f1b8]
mov rax, qword [rax + 0x38]
movsxd rcx, dword [rax + 0x3c]
mov ecx, dword [rax + rcx + 0x98]
add rax, rcx
test rcx, rcx
cmove rax, rcx
mov qword [r14 + 0x18], rax
mov rcx, r14
call fcn.140153480
mov rax, qword [rdi + 0x108]
mov rcx, qword [rax + 0x3a8]
lea rdx, [rsi + 0xc1ab]
mov r8d, 0x18
call fcn.14012a390
mov eax, dword [rdi + 0x160]
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0x40000000
mov r8d, eax
and r8d, 0xbfffffff
or r8d, edx
mov edx, ecx
and edx, 0xbfffffff
or edx, r8d
cmp edx, 0xffffffff
jne 0x14014a7ee
mov edx, dword [0x14055f35c]
mov r8d, edx
not r8d
mov r9d, ecx
xor r9d, r8d
and r8d, ecx
and edx, eax
or edx, r8d
and r9d, ecx
lea ecx, [rdx + r9*2]
xor eax, 0x1000
and ecx, 0xffffefff
or ecx, eax
cmp ecx, 0xffffffff
setne dl
mov rcx, r15
call fcn.1401b7130
mov rcx, r15
call fcn.1401b7c60
mov eax, 0xb1908314
add eax, dword [0x1404febb0]
test dword [rdi + 0x160], eax
je 0x14014a821
mov rcx, rdi
call fcn.1400b7810
test al, al
je 0x14014ab7b
mov rcx, rdi
call fcn.1400b7920
test al, al
je 0x14014ad7b
lea r9, [rsi + 0xc553]
mov rcx, qword [rdi + 0x108]
mov r8, qword [rdi + 0x198]
mov rdx, rsi
call fcn.14012bda0
test al, al
je 0x14014abde
mov r8d, dword [rsi + 0xc55f]
test r8, r8
je 0x14014a8a7
mov edx, dword [rsi + 0xc563]
add rdx, qword [rdi + 0x198]
lea rax, [0x140424248]
mov qword [rbp + 0x238], rax
mov dword [rbp + 0x240], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x248], xmm0
mov byte [rbp + 0x258], 0
lea rcx, [rbp + 0x238]
call fcn.14011e000
mov byte [rbp + 0x258], 0
lea rcx, [rbp + 0x238]
call fcn.1401250a0
mov rax, qword [rdi + 0x108]
mov rcx, qword [rax + 0x3a8]
add rsi, 0xc22b
mov dil, 1
mov r8d, 0x304
mov rdx, rsi
call fcn.14012a390
jmp 0x14014b063
xor r13d, r13d
mov ecx, 4
nop word [rax + rax]
lea edx, [rcx - 4]
movsxd rdx, edx
mov edx, dword [rax + rdx]
mov r8d, r13d
xor r8d, edx
not edx
and edx, r13d
and r13d, r8d
not r8d
or edx, r8d
not edx
or r13d, edx
cmp ecx, r15d
jge 0x14014a2a6
add ecx, 4
jmp 0x14014a8e0
mov edx, dword [rsi + 0x38]
mov rcx, rdi
xor r8d, r8d
call fcn.1400b2810
test al, al
je 0x14014b02f
mov r15d, dword [rsi + 0xc138]
mov rcx, rdi
call fcn.14014fa90
mov r14, rax
mov eax, dword [rdi + 0x118]
mov dword [rbp + 0x208], eax
mov dword [r14 + 0x87c], r15d
lea rcx, [r14 + 0x840]
mov r15, qword [r14 + 0x840]
mov r8, qword [r15 + 8]
mov rdx, rcx
call fcn.140124470
mov qword [r15 + 8], r15
mov qword [r15], r15
mov qword [r15 + 0x10], r15
mov qword [r14 + 0x848], 0
mov eax, dword [rbp + 0x208]
mov dword [r14 + 0x880], eax
mov rcx, r14
call fcn.140071880
mov rcx, r14
mov rdx, rdi
call fcn.140072d20
mov rcx, r14
add rcx, 8
call fcn.140152b90
mov rcx, r14
call fcn.140083030
xorps xmm0, xmm0
mov rax, qword [rbp + 0x260]
movups xmmword [rax], xmm0
mov qword [rax + 0x10], 0
mov rcx, rdi
call fcn.1400b3100
test al, al
je 0x14014b02f
mov eax, dword [rsi + 0xc148]
mov rcx, qword [rsi + 0xc140]
mov qword [rdi + 0x184], rcx
mov dword [rdi + 0x18c], eax
mov byte [rbp + 0x26f], 0
lea rdx, [rbp + 0x26f]
mov rcx, rdi
call fcn.1400b3240
test al, al
je 0x14014b02f
mov qword [rsi + 0xc140], 0
mov dword [rsi + 0xc148], 0
mov rax, qword [rdi]
mov rax, qword [rax + 0x48]
mov rcx, rdi
mov rdx, rsi
call qword [case.0x140119ecb.0]
test al, al
je 0x14014b02f
mov edx, dword [rsi + 0xc118]
mov rcx, rdi
call fcn.14014b620
mov eax, dword [rsi + 0xc11c]
mov dword [rdi + 0x180], eax
mov dword [rdi + 0x130], eax
mov qword [rsi + 0xc118], 0
mov r14d, dword [rsi + 0xc52f]
mov edx, dword [rsi + 0xc533]
mov rcx, rdi
call fcn.1400f6e80
mov rcx, rdi
mov rdx, rax
mov r8d, r14d
call fcn.1400b3160
test al, al
je 0x14014b02f
mov rcx, qword [rdi + 0x108]
add rcx, 8
lea rdx, [rbp - 0x20]
call fcn.14014b6e0
lea rdx, [rbp - 0x20]
mov rcx, rbx
call fcn.14011a010
cmp word [rsi + 0xc607], 0
jne 0x14014aad1
mov rcx, rbx
mov edx, 0x61e0000
call fcn.140119d70
test al, al
je 0x14014a4f1
mov rcx, qword [rdi + 0x190]
movzx edx, word [rsi + 0xc607]
call fcn.140235be0
lea rbx, [rbp + 0x238]
mov rcx, rbx
mov rdx, rax
call fcn.1400b1b60
mov rcx, qword [rdi + 0x190]
movzx edx, word [rsi + 0xc5cf]
call fcn.140235be0
lea r14, [rbp + 0x210]
mov rcx, r14
mov rdx, rax
call fcn.1400b1b60
mov edx, dword [rdi + 0x118]
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], r14
mov byte [rsp + 0x48], 0
mov dword [rsp + 0x40], 1
mov qword [rsp + 0x38], 0
mov dword [rsp + 0x30], 0x186a3
lea rcx, [rbp + 0x200]
xor r8d, r8d
mov r9d, 1
call fcn.14010b030
lea rcx, [rbp + 0x210]
call fcn.1400716a0
lea rcx, [rbp + 0x238]
call fcn.1400716a0
jmp 0x14014a4f1
mov rcx, qword [rdi + 0x190]
movzx edx, word [rsi + 0xc5e1]
call fcn.140235be0
lea rcx, [rbp + 0x238]
mov rdx, rax
call fcn.1400b1b60
mov rcx, qword [rdi + 0x190]
movzx edx, word [rsi + 0xc5e9]
call fcn.140235be0
lea rcx, [rbp + 0x210]
mov rdx, rax
call fcn.1400b1b60
lea rcx, [rbp + 0x200]
lea rdx, [rbp + 0x210]
lea r8, [rbp + 0x238]
call fcn.14010c6b0
jmp 0x14014ade3
mov rcx, qword [rdi + 0x190]
movzx edx, word [rsi + 0xc601]
xor eax, eax
cmp r12d, dword [rbp + 0x1fc]
setne al
mov r8d, dword [0x140424fa4]
sub r8d, r13d
add eax, 0x958f0507
add eax, 0x6a70faf8
and eax, r8d
mov r8d, 0xb1908313
nop word cs:[rax + rax]
mov r9d, dword [0x14055f34c]
cmp r9d, 0x5d
jg 0x14014ac4f
mov r9d, dword [0x1404febb0]
add r9d, r8d
mov r10d, dword [0x14055f348]
lea r11d, [r10 - 1]
imul r11d, r10d
and r11d, 1
cmp r11d, r9d
je 0x14014ac85
mov r9d, dword [0x14055f348]
lea r10d, [r9 - 1]
imul r10d, r9d
and r10d, 1
mov r9d, dword [0x1404febb0]
mov r11d, r9d
xor r11d, 0xb1908313
and r9d, 0x31908313
lea r9d, [r11 + r9*2]
cmp r10d, r9d
jne 0x14014ac20
jmp 0x14014ac2d
mov r8d, 0xb1908314
lea r10, [fcn.140149e00]
add r10d, r10d
add r10d, 0x1900
nop dword [rax]
mov r11d, dword [0x1404febb0]
add r11d, r8d
test r10d, r11d
je 0x14014acbc
mov r11d, dword [0x14055f34c]
cmp r11d, 0x27
jge 0x14014aca0
cmp eax, r9d
sete al
setne r8b
movzx r9d, byte [0x14055f358]
xor r8b, r9b
not r9b
and r9b, al
or r9b, r8b
not r9b
or r9b, r8b
and r9b, 1
mov byte [0x14055f358], r9b
call fcn.140235be0
mov r14, rax
lea r15, [rbp + 0x240]
test rax, rax
lea rbx, [0x1404211b8]
cmove r14, rbx
mov qword [rbp + 0x250], 0
mov qword [rbp + 0x258], 0xf
movzx eax, byte [0x1404febb4]
add al, 0x52
mov ecx, eax
xor cl, 0x12
and al, 0x12
add al, al
add al, cl
mov byte [rbp + 0x240], al
mov rcx, r14
mov edx, 0xcd3aa9c8
mov r8d, 0x7d0236fc
call fcn.1400af8b0
mov r12, rax
movabs rax, 0x6beb9065485c4480
add rax, qword [0x1404feba8]
cmp r12, rax
jbe 0x14014ae00
mov rcx, r15
mov rdx, r12
mov r9, r14
call fcn.14008ad70
jmp 0x14014ae1e
mov rcx, qword [rdi + 0x190]
movzx edx, word [rsi + 0xc5e3]
call fcn.140235be0
lea rcx, [rbp + 0x238]
mov rdx, rax
call fcn.1400b1b60
mov rcx, qword [rdi + 0x190]
movzx edx, word [rsi + 0xc5e9]
call fcn.140235be0
lea rcx, [rbp + 0x210]
mov rdx, rax
call fcn.1400b1b60
lea rcx, [rbp + 0x200]
lea rdx, [rbp + 0x210]
lea r8, [rbp + 0x238]
call fcn.14010c6b0
mov dword [0x14055f348], 0
lea rcx, [rbp + 0x210]
call fcn.1400716a0
lea rcx, [rbp + 0x238]
call fcn.1400716a0
jmp 0x14014b02f
mov qword [rbp + 0x250], r12
mov rcx, r15
mov rdx, r14
mov r8, r12
call fcn.1404048d0
mov byte [rbp + r12 + 0x240], 0
lea r12, [0x1404208d8]
mov qword [rbp + 0x238], r12
mov rcx, qword [rdi + 0x190]
movzx edx, word [rsi + 0xc5e9]
call fcn.140235be0
lea r14, [rbp + 0x218]
test rax, rax
cmovne rbx, rax
mov qword [rbp + 0x228], 0
mov qword [rbp + 0x230], 0xf
movzx eax, byte [0x1404febb4]
add al, 0x64
mov byte [rbp + 0x218], al
mov rcx, rbx
mov edx, 0xcd3aa9c8
mov r8d, 0x7d0236fc
call fcn.1400af8b0
mov r15, rax
cmp rax, 0xf
jbe 0x14014ae9e
mov rcx, r14
mov rdx, r15
mov r9, rbx
call fcn.14008ad70
jmp 0x14014aebc
mov qword [rbp + 0x228], r15
mov rcx, r14
mov rdx, rbx
mov r8, r15
call fcn.1404048d0
mov byte [rbp + r15 + 0x218], 0
mov qword [rbp + 0x210], r12
lea rcx, [rbp + 0x200]
lea rdx, [rbp + 0x210]
lea r8, [rbp + 0x238]
call fcn.14010c6b0
mov rax, qword [rbp + 0x230]
cmp rax, 0x10
jb 0x14014afae
mov rcx, qword [rbp + 0x218]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x14014afa9
mov r8, qword [rcx - 8]
mov rdx, qword [0x1404feba8]
mov r9, rdx
not r9
movabs r10, 0x94146f9ab7a3bb96
and r10, rdx
movabs r11, 0x6beb9065485c4469
movabs rbx, 0x14146f9ab7a3bb96
and rbx, r9
and r9, r11
or r9, r10
xor r11, rdx
or rbx, r11
not rbx
lea r9, [r9 + rbx*2]
sub r9, rdx
add r9, rcx
sub r9, r8
movabs rcx, 0x94146f9ab7a3bb8f
add rcx, r9
cmp rcx, 0x20
jae 0x14014b0ff
mov rcx, qword [0x1404feba8]
movabs rdx, 0xdd2129fb1eaf3a9b
xor rdx, rcx
movabs r9, 0x5d2129fb1eaf3a9b
and r9, rcx
lea rcx, [rdx + r9*2]
movabs rdx, 0x8eca666a29ad09fe
add rax, rdx
add rax, rcx
mov rdx, rax
mov rcx, r8
call fcn.1400ac440
mov rax, qword [rbp + 0x258]
cmp rax, 0x10
jb 0x14014b02f
mov rcx, qword [rbp + 0x240]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x14014b02a
mov r8, qword [rcx - 8]
movabs rdx, 0x1c283bce126cd86c
add rdx, rcx
movabs rcx, 0x7ffffffffffffff8
and rcx, rdx
xor rdx, 0xfffffffffffffff8
lea rcx, [rdx + rcx*2]
movabs rdx, 0xe3d7c431ed932794
xor rdx, rcx
movabs r9, 0x63d7c431ed932794
and r9, rcx
lea rcx, [rdx + r9*2]
sub rcx, r8
cmp rcx, 0x20
jae 0x14014b104
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.1400ac440
mov eax, dword [rdi + 0x164]
mov ecx, eax
not ecx
xor eax, 0x200
and ecx, 0xfffffdff
or ecx, eax
cmp ecx, 0xffffffff
je 0x14014b051
or byte [rsi + 4], 0x10
jmp 0x14014b061
mov rax, qword [rdi]
mov rax, qword [rax + 0x30]
mov rcx, rdi
call qword [case.0x140119ecb.0]
xor edi, edi
mov rcx, qword [rbp + 0x1e0]
test rcx, rcx
je 0x14014b0e4
mov rdx, qword [rbp + 0x1f0]
sub rdx, rcx
cmp rdx, 0x1000
jb 0x14014b0df
mov rax, qword [rcx - 8]
movabs r8, 0xfc27668a48461cc6
xor r8, rcx
movabs r9, 0x7c27668a48461cc6
and r9, rcx
lea rcx, [r8 + r9*2]
sub rcx, rax
movabs r8, 0x240aa199ff2186fe
add r8, rcx
movabs rcx, 0xdfcdf7dbb8985c34
xor rcx, r8
movabs r9, 0x5fcdf7dbb8985c34
and r9, r8
lea rcx, [rcx + r9*2]
cmp rcx, 0x20
jae 0x14014b0fa
add rdx, 0x27
mov rcx, rax
call fcn.1400ac440
mov eax, edi
add rsp, 0x2f8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call fcn.1403bcb3c
call fcn.1403bcb3c
call fcn.1403bcb3c
int3