Function at 0x1401bdd70
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
sub rsp, 0x318
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x70], rcx
mov eax, 0x10
mov qword [rbp + 0xa0], rax
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0xa0]
mov rcx, rsp
mov qword [rbp + 0x78], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x80], rax
mov eax, 0x20
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0xa0]
mov rcx, rsp
mov qword [rbp + 0x88], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0xa0]
mov rcx, rsp
mov qword [rbp + 0x90], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0xa0]
mov rcx, rsp
mov qword [rbp + 0x98], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0xa0]
mov rcx, rsp
mov qword [rbp + 0xa8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xb0], rax
sub rsp, 0x20
call fcn.1401c4499
add rsp, 0x20
mov qword [rbp + 0xc0], rax
add rax, 0x50
mov qword [rbp + 0xb8], rax
lea rcx, [rbp + 0x270]
mov edx, 0x28
sub rsp, 0x20
call fcn.1401bf3b0
add rsp, 0x20
lea rcx, [rbp + 0x248]
mov edx, 0x28
sub rsp, 0x20
call fcn.1401bf3b0
add rsp, 0x20
lea rcx, [rbp + 0x228]
mov edx, 0x20
sub rsp, 0x20
call fcn.1401bf3b0
add rsp, 0x20
mov word [rbp + 0x226], 0x27a
lea rcx, [rbp + 0x226]
sub rsp, 0x20
call fcn.140063b00
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xc0]
mov qword [rbp + 0xc8], rcx
mov dl, byte [rax + 0x50]
mov r8b, 0x8d
xor r8b, 0x8d
mov cl, 1
xor eax, eax
cmp dl, r8b
mov byte [rbp + 0xd7], cl
mov rcx, rax
mov qword [rbp + 0xd8], rcx
mov qword [rbp + 0xe0], rax
jne 0x1401bee4f
mov eax, dword [0x1401ff138]
mov ecx, 0x656dbcd1
xor ecx, 0x415ee06c
xor eax, ecx
imul eax, dword [0x1401ff13c]
and eax, 0xbace8cb0
sub eax, 0xf034a85c
sub eax, 0xe191c32b
mov ecx, 0xbed108fb
xor ecx, 0x4ee5a0a7
add eax, ecx
and eax, 0xd2c2b011
cmp eax, 0x1a0114a7
je 0x1401bf354
mov rax, qword [rbp + 0xc8]
mov ecx, dword [0x1401ff140]
and ecx, dword [0x1401ff144]
mov edx, ecx
xor edx, 0xff92dc06
xor edx, 0xffffffff
or ecx, 0xff92dc06
and ecx, edx
sub ecx, 0x592ca505
add ecx, 0x8a356ed
mov dword [rbp + 0x54], ecx
mov rcx, qword [0x140209380]
mov rdx, qword [rcx]
mov qword [rbp + 0x200], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x208], rcx
mov rcx, qword [rax]
mov qword [rbp + 0x1f0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1f8], rax
lea rcx, [rbp + 0x210]
lea rdx, [rbp + 0x200]
lea r8, [rbp + 0x1f0]
sub rsp, 0x20
call fcn.1401bf540
mov rcx, qword [rbp + 0xb8]
mov eax, dword [rbp + 0x54]
add rsp, 0x20
mov rdx, qword [rbp + 0x210]
mov qword [rbp + 0x58], rdx
mov rdx, qword [rbp + 0x218]
mov qword [rbp + 0x60], rdx
mov cl, byte [rcx]
mov dl, 0xaf
xor dl, 0xaf
cmp cl, dl
sete cl
mov byte [rbp + 0x6f], cl
cmp eax, 0x18c7335
jbe 0x1401bf354
mov dl, byte [rbp + 0x6f]
mov cl, 1
xor eax, eax
test dl, 1
mov byte [rbp + 0xd7], cl
mov rcx, rax
mov qword [rbp + 0xd8], rcx
mov qword [rbp + 0xe0], rax
jne 0x1401be02e
jmp 0x1401bee4f
mov eax, dword [0x1401ff148]
xor edx, edx
div dword [0x1401ff14c]
mov ecx, 0x45ebb6a3
xor edx, edx
div ecx
mov ecx, eax
mov r8d, 0xffffffff
xor r8d, 0xb8212f1b
mov edx, ecx
and edx, r8d
mov eax, ecx
or eax, r8d
mov r8d, 0x2bc76963
xor r8d, 0xd438969c
xor eax, r8d
imul eax, edx
mov edx, ecx
and edx, 0xb8212f1b
mov r8d, 0xfcb88735
xor r8d, 0x4499a82e
or ecx, r8d
imul ecx, edx
add ecx, eax
mov edx, 0x576cb63b
xor edx, 0xa89349c4
mov eax, ecx
xor eax, edx
mov edx, 0x648d2787
xor edx, 0x9b72d878
xor ecx, edx
and eax, ecx
mov ecx, 0x8bb75e8
or ecx, 0x8bb75e8
mov edx, 0x240b78d8
xor edx, 0xdbf48727
xor ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
cmp eax, 0x3fd99371
je 0x1401bf35d
mov ecx, dword [0x1401ff150]
mov edx, dword [0x1401ff154]
mov eax, ecx
and eax, edx
or ecx, edx
add eax, ecx
mov ecx, 0x70bf13ea
xor edx, edx
div ecx
mov ecx, 0xb232303a
xor edx, edx
div ecx
mov edx, 0x33293ec2
xor edx, 0x21c75218
mov ecx, 0x327400df
xor ecx, 0xcd8bff20
xor edx, ecx
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x12ee6cda
add eax, edx
sub eax, ecx
mov dword [rbp + 0x44], eax
mov eax, 0x70cdaa23
xor eax, 0x51ab4536
mov dword [rbp + 0x40], eax
mov word [rbp + 0x1ee], 0x199
lea rcx, [rbp + 0x1ee]
sub rsp, 0x20
call fcn.140063b00
mov rdx, qword [rbp + 0xb8]
mov ecx, dword [rbp + 0x40]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp + 0x44]
mov qword [rbp + 0x48], r8
cmp byte [rdx], 0
sete dl
mov byte [rbp + 0x53], dl
cmp eax, ecx
je 0x1401be0d7
mov al, byte [rbp + 0x53]
test al, 1
jne 0x1401be187
jmp 0x1401bea5c
mov rax, qword [rbp + 0x48]
mov rcx, qword [rax]
mov qword [rbp + 0x198], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1a0], rax
lea rcx, [rbp + 0x1a8]
lea rdx, [rbp + 0x198]
sub rsp, 0x20
call fcn.14001c672
mov r9, qword [rbp + 0x58]
mov r8, qword [rbp + 0x60]
mov rdx, qword [rbp + 0x80]
add rsp, 0x20
mov rcx, qword [rbp + 0x1a8]
mov rax, qword [rbp + 0x1b0]
mov qword [rbp + 0x188], r9
mov qword [rbp + 0x190], r8
mov qword [rdx], rcx
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x188]
lea r8, [rbp + 0x270]
sub rsp, 0x20
call fcn.14015a460
mov rax, qword [rbp + 0xb8]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xb8
xor cl, 0xb8
cmp al, cl
jne 0x1401bea5c
lea rcx, [rbp + 0x248]
lea rdx, [rbp + 0x270]
sub rsp, 0x20
call fcn.14005e69a
mov rcx, qword [rbp + 0xb8]
add rsp, 0x20
lea rax, [rbp + 0x248]
add rax, 0x20
mov qword [rbp + 0x30], rax
mov al, byte [rbp + 0x268]
mov dl, 0x83
xor dl, 0x83
cmp al, dl
sete al
cmp byte [rcx], 0
setne cl
mov byte [rbp + 0x3f], cl
or al, cl
test al, 1
jne 0x1401be335
mov rcx, qword [rbp + 0x88]
mov edx, 0x20
sub rsp, 0x20
call fcn.1401bf3b0
mov rax, qword [rbp + 0xb8]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xbb
xor cl, 0xbb
cmp al, cl
je 0x1401be2a6
jmp 0x1401bea5c
movabs rdx, 0x7ff182fa4eee828f
movabs rax, 0x7ff182fa4eee82af
xor rdx, rax
lea rcx, [rbp + 0x168]
sub rsp, 0x20
call fcn.1401bf3b0
add rsp, 0x20
lea rcx, [rbp + 0x248]
lea rdx, [rbp + 0x168]
sub rsp, 0x20
call fcn.14005f6a0
mov rax, qword [rbp + 0xb8]
add rsp, 0x20
mov rcx, qword [rbp + 0x168]
mov qword [rbp + 0x228], rcx
mov rcx, qword [rbp + 0x170]
mov qword [rbp + 0x230], rcx
mov rcx, qword [rbp + 0x178]
mov qword [rbp + 0x238], rcx
mov rcx, qword [rbp + 0x180]
mov qword [rbp + 0x240], rcx
mov al, byte [rax]
mov byte [rbp + 0x2f], al
jmp 0x1401be462
mov eax, dword [0x1401ff158]
or eax, dword [0x1401ff15c]
mov ecx, 0x742158
xor ecx, 0xc2cfb709
sub eax, ecx
mov ecx, 0x49fe85c5
xor ecx, 0x49fe85c5
sub ecx, eax
xor eax, eax
sub eax, 0xe129992b
add ecx, eax
xor eax, eax
sub eax, ecx
add eax, 0x89958330
mov ecx, 0x14ee9773
xor ecx, 0xc7fbc6c7
cmp eax, ecx
je 0x1401bf366
mov ecx, dword [0x1401ff160]
xor ecx, 0x36206125
mov edx, dword [0x1401ff164]
mov eax, ecx
and eax, edx
xor ecx, edx
or eax, ecx
and eax, 0xcfd75dca
mov ecx, 0x3aba6365
xor ecx, 0x1ce53b21
or eax, ecx
mov ecx, 0x6d27731d
xor edx, edx
div ecx
cmp eax, 0x34ce2786
je 0x1401bf366
mov al, byte [rbp + 0x3f]
test al, 1
jne 0x1401bea5c
jmp 0x1401be3d0
movabs rdx, 0xfb1a4941d3e7d54d
movabs rax, 0xfb1a4941d3e7d56d
xor rdx, rax
lea rcx, [rbp + 0x148]
sub rsp, 0x20
call fcn.1401bf3b0
add rsp, 0x20
lea rcx, [rbp + 0x148]
sub rsp, 0x20
call fcn.1400807b6
mov rax, qword [rbp + 0xb8]
add rsp, 0x20
mov rcx, qword [rbp + 0x148]
mov qword [rbp + 0x228], rcx
mov rcx, qword [rbp + 0x150]
mov qword [rbp + 0x230], rcx
mov rcx, qword [rbp + 0x158]
mov qword [rbp + 0x238], rcx
mov rcx, qword [rbp + 0x160]
mov qword [rbp + 0x240], rcx
mov cl, byte [rax]
mov dl, 0x43
xor dl, 0x43
xor eax, eax
cmp cl, dl
mov byte [rbp + 0x2f], al
jne 0x1401bed3d
mov rcx, qword [rbp + 0x30]
mov al, byte [rbp + 0x2f]
cmp byte [rcx], 0
sete cl
mov dl, 0xe1
xor dl, 0xe1
cmp al, dl
setne dl
mov byte [rbp + 0x2e], dl
mov al, cl
and al, dl
xor cl, dl
or al, cl
test al, 1
jne 0x1401bea67
lea rax, [rbp + 0x1d8]
add rax, 8
mov qword [rbp + 0x10], rax
movabs rax, 0xcc3cbcae58a79e1
movabs rcx, 0xcc3cbcae58a79e0
xor rax, rcx
mov qword [rbp + 0x1d8], rax
mov ecx, 1
mov r8d, 8
sub rsp, 0x20
mov rdx, r8
call fcn.140019910
add rsp, 0x20
mov qword [rbp + 0x1e0], rax
mov ecx, 0x18
mov edx, 8
sub rsp, 0x20
call fcn.14001c310
mov rcx, qword [rbp + 0x78]
add rsp, 0x20
mov qword [rbp + 0x18], rax
mov ax, 0x4f5d
xor ax, 0x4d07
mov word [rcx], ax
sub rsp, 0x20
call fcn.140063b00
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xb8]
mov qword [rbp + 0x20], rcx
mov cl, byte [rax]
mov dl, 0x6d
xor dl, 0x6d
mov al, 1
cmp cl, dl
mov byte [rbp + 0x2d], al
jne 0x1401be8e1
mov rcx, qword [rbp + 0x90]
mov rax, qword [rbp + 0x20]
mov rdx, qword [rax]
mov qword [rbp + 0x138], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x140], rax
lea rdx, [rbp + 0x138]
sub rsp, 0x20
call fcn.14001c672
mov rcx, qword [rbp + 0x90]
mov rax, qword [rbp + 0x18]
add rsp, 0x20
mov rdx, qword [rcx]
mov rcx, qword [rcx + 8]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov cx, 0x6f82
xor cx, 0x65d1
sub rsp, 0x20
call fcn.140064060
mov rcx, qword [rbp + 0xb8]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0x18]
mov dword [rax + 0x10], edx
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x2d], al
jne 0x1401be8e1
mov ecx, 0x3c
sub rsp, 0x20
call fcn.140064060
mov rcx, qword [rbp + 0xb8]
add rsp, 0x20
mov dword [rbp + 0xc], eax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x2d], al
jne 0x1401be8e1
mov ecx, 0xb6c
sub rsp, 0x20
call fcn.140064060
mov rcx, qword [rbp + 0xb8]
add rsp, 0x20
mov dword [rbp + 8], eax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x2d], al
jne 0x1401be8e1
mov eax, dword [rbp + 8]
mov ecx, dword [rbp + 0xc]
movsxd rcx, ecx
movsxd rdx, eax
lea r8, [rbp + 0x1d0]
sub rsp, 0x20
call fcn.1401bf67f
add rsp, 0x20
test al, 1
jne 0x1401be636
jmp 0x1401be648
sub rsp, 0x20
call fcn.140009cc0
add rsp, 0x20
jmp 0x1401be8d5
mov rax, qword [rbp + 0x1d0]
mov qword [rbp], rax
add rax, 0xffffffff80000000
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x1401be717
mov eax, dword [0x1401ff168]
mov ecx, 0x2f2cca93
xor ecx, 0x8b6622c
xor eax, ecx
or eax, dword [0x1401ff16c]
mov ecx, 0x4b16d3c4
xor edx, edx
div ecx
mov ecx, 0xf5139180
xor edx, edx
div ecx
xor eax, 0x40a9b00c
mov ecx, 0xaa47460d
xor ecx, 0x385d277c
cmp eax, ecx
ja 0x1401bf36f
mov eax, dword [0x1401ff170]
mov ecx, dword [0x1401ff174]
mov edx, 0x3be62203
xor edx, 0x101d2581
xor ecx, edx
xor edx, edx
div ecx
mov ecx, 0xc34bcaf
xor edx, edx
div ecx
xor eax, 0x93f13147
mov ecx, 0x568494fc
xor ecx, 0x568494fc
mov edx, 0x969857ac
xor edx, 0x685393e6
sub ecx, edx
sub eax, ecx
mov dword [rbp - 4], eax
sub rsp, 0x20
call fcn.140009cc0
mov eax, dword [rbp - 4]
add rsp, 0x20
cmp eax, 0x1e14a471
je 0x1401be6af
jmp 0x1401be8d5
mov rcx, qword [rbp + 0x18]
mov rax, qword [rbp + 0x10]
mov rdx, qword [rbp]
mov dword [rcx + 0x14], edx
mov rax, qword [rax]
mov qword [rax + 8], rcx
mov rax, qword [rbp + 0x1d8]
mov qword [rbp + 0x1c0], rax
mov rax, qword [rbp + 0x1e0]
mov qword [rbp + 0x1c8], rax
lea rcx, [rbp + 0x1d8]
sub rsp, 0x20
call fcn.140141885
add rsp, 0x20
mov ecx, 0x710
sub rsp, 0x20
call fcn.140064060
mov rcx, qword [rbp + 0xb8]
add rsp, 0x20
mov dword [rbp - 8], eax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x2d], al
jne 0x1401be8e1
mov r8d, dword [rbp - 8]
mov rax, qword [rbp + 0x228]
mov qword [rbp + 0x128], rax
mov rax, qword [rbp + 0x230]
mov qword [rbp + 0x130], rax
mov rax, qword [rbp + 0x1c0]
mov qword [rbp + 0x118], rax
mov rax, qword [rbp + 0x1c8]
mov qword [rbp + 0x120], rax
lea rcx, [rbp + 0x128]
lea rdx, [rbp + 0x118]
sub rsp, 0x20
call fcn.140154ae0
mov rcx, qword [rbp + 0xb8]
add rsp, 0x20
mov qword [rbp - 0x10], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x2d], al
jne 0x1401be8e1
mov word [rbp + 0x1be], 0xda
lea rcx, [rbp + 0x1be]
sub rsp, 0x20
call fcn.140063b00
mov rcx, qword [rbp + 0xb8]
add rsp, 0x20
mov qword [rbp - 0x18], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x2d], al
jne 0x1401be8e1
mov rcx, qword [rbp + 0x98]
mov rax, qword [rbp - 0x18]
mov rdx, qword [rax]
mov qword [rbp + 0x108], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x110], rax
lea rdx, [rbp + 0x108]
sub rsp, 0x20
call fcn.14001c672
mov rax, qword [rbp + 0x98]
mov rdx, qword [rbp + 0x70]
add rsp, 0x20
mov rcx, qword [rax]
mov rax, qword [rax + 8]
mov rdx, qword [rdx]
add rdx, 0x18
mov qword [rbp - 0x20], rdx
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], rax
lea rcx, [rbp + 0xe8]
xor edx, edx
mov r8d, 0x10
sub rsp, 0x20
call sub.msvcrt.dll_memset
mov rcx, qword [rbp - 0x20]
mov rdx, qword [rbp - 0x10]
add rsp, 0x20
lea r8, [rbp + 0xf8]
xor eax, eax
mov r9d, eax
lea rax, [rbp + 0xe8]
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.140154690
add rsp, 0x30
mov rax, qword [rbp + 0xb8]
mov al, byte [rax]
mov byte [rbp + 0x2d], al
mov rax, qword [rbp + 0xb8]
mov rcx, qword [rbp + 0xa8]
mov dl, byte [rbp + 0x2d]
mov byte [rbp - 0x21], dl
mov dl, 0x1d
xor dl, 0x1d
mov byte [rax], dl
mov rax, qword [rbp + 0x1d8]
mov qword [rcx], rax
mov rax, qword [rbp + 0x1e0]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.14013b130
mov rax, qword [rbp + 0xb8]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401bea5c
mov ecx, dword [0x1401ff178]
xor ecx, 0x75fe3dd2
mov edx, dword [0x1401ff17c]
mov eax, ecx
or eax, edx
xor eax, 0xffffffff
or ecx, edx
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
xor eax, 0xeedaa0dd
sub eax, 0xc83a7e52
add eax, 0x3c96cba8
cmp eax, 0x474977b0
jb 0x1401bf378
mov rdx, qword [rbp + 0xb8]
mov r8b, byte [rbp - 0x21]
mov ecx, dword [0x1401ff180]
mov r9d, dword [0x1401ff184]
mov eax, ecx
add eax, 1
mov r10d, 0xd39c7ca8
xor r10d, 0x2c638357
xor ecx, r10d
or ecx, r9d
add ecx, eax
mov r9d, 0xb9343d40
xor r9d, 0x22aca212
mov eax, ecx
or eax, r9d
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov r9d, 0x2d00626c
xor r9d, 0xb698fd3e
mov r10d, 0x9b4f555b
xor r10d, 0x64b0aaa4
xor r9d, r10d
and ecx, r9d
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, eax
xor ecx, 0xf9ef0813
mov r9d, 0xa13acf1e
xor r9d, 0x5ec530e1
xor ecx, r9d
or eax, 0xf9ef0813
and eax, ecx
mov r9d, 0xc31e351
xor r9d, 0xc31e350
mov ecx, eax
add ecx, r9d
xor eax, 0xffffffff
mov r9d, 0xcea7a7d5
xor r9d, 0x37876bae
or eax, r9d
add eax, ecx
mov ecx, 0x6eaf5ebc
xor ecx, 0xa2858658
cmp r8b, 0
sete r9b
mov byte [rbp - 0x22], r9b
mov byte [rdx], r8b
cmp eax, ecx
jb 0x1401bf378
mov cl, byte [rbp - 0x22]
xor eax, eax
test cl, 1
mov qword [rbp - 0x30], rax
jne 0x1401bea79
jmp 0x1401bed43
xor eax, eax
mov qword [rbp - 0x30], rax
jmp 0x1401bed43
mov cl, byte [rbp + 0x2e]
xor eax, eax
test cl, 1
mov qword [rbp - 0x30], rax
jne 0x1401bed43
mov ecx, 0x30
mov edx, 8
sub rsp, 0x20
call fcn.14001c310
add rsp, 0x20
mov qword [rbp - 0x40], rax
mov qword [rax], 0
mov dword [rax + 8], 2
mov ecx, 0x1f6
sub rsp, 0x20
call fcn.1400638f0
mov r8, qword [rbp + 0xb8]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x60]
mov qword [rbp - 0x38], rcx
mov dl, 1
xor ecx, ecx
cmp byte [r8], 0
mov byte [rbp + 0xd7], dl
mov qword [rbp + 0xd8], rcx
mov qword [rbp + 0xe0], rax
jne 0x1401bee4f
mov rax, qword [rbp - 0x38]
movabs rcx, 0xb065c3922d3988c2
movabs rdx, 0x4f9a3c6dad3988c2
xor rcx, rdx
add rax, rcx
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x1401beb42
mov rcx, qword [rbp - 0x38]
mov rdx, 0xffffffff80000000
mov r8d, 0x7fffffff
sub rsp, 0x20
call fcn.14000e57e
add rsp, 0x20
xor eax, eax
mov qword [rbp - 0x30], rax
jmp 0x1401bed43
mov rax, qword [rbp - 0x40]
mov rcx, qword [rbp - 0x38]
mov dword [rax + 0xc], ecx
mov ecx, 0x10
mov edx, 8
sub rsp, 0x20
call fcn.140013970
mov rcx, qword [rbp + 0xb0]
add rsp, 0x20
mov rdx, rax
mov qword [rbp - 0x48], rdx
sub rsp, 0x20
call fcn.140077216
mov r9, qword [rbp + 0xb0]
mov r8, qword [rbp - 0x40]
mov rdx, qword [rbp + 0xb8]
mov rcx, qword [rbp - 0x48]
mov rax, qword [rbp + 0x60]
add rsp, 0x20
mov r10, qword [r9]
mov qword [r8 + 0x10], r10
mov r9, qword [r9 + 8]
mov qword [r8 + 0x18], r9
mov r8b, byte [rdx]
mov r9b, 0x2a
xor r9b, 0x2a
mov dl, 1
cmp r8b, r9b
mov byte [rbp + 0xd7], dl
mov qword [rbp + 0xd8], rcx
mov qword [rbp + 0xe0], rax
jne 0x1401bee4f
mov ecx, dword [0x1401ff188]
xor ecx, 0xab54bb22
imul ecx, dword [0x1401ff18c]
mov eax, ecx
and eax, 0x51586d63
xor ecx, 0x51586d63
or eax, ecx
xor ecx, ecx
sub ecx, 0x4674ad5c
add eax, ecx
mov ecx, 0x362d12bf
xor edx, edx
div ecx
cmp eax, 0x6b816466
jae 0x1401bf381
mov eax, dword [0x1401ff190]
mov ecx, dword [0x1401ff194]
xor ecx, 0xd5f307d1
xor eax, 0xffffffff
mov edx, 0xb9004869
xor edx, 0x46ffb796
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0xe74f7748
or eax, ecx
mov ecx, 0xa3a5fd19
xor ecx, 0x44ea8a51
or ecx, edx
xor eax, 0xffffffff
and eax, ecx
imul r11d, eax, 0x9216fdba
mov ecx, r11d
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x515e2d1a
mov r8d, 0xffffffff
xor r8d, 0xede41e2d
mov r9d, 0x5d71abed
xor r9d, 0xb095b5c0
mov eax, ecx
and eax, r9d
and r11d, r8d
mov r9d, edx
and r9d, 0xede41e2d
mov r10d, 0x76e15e1
xor r10d, 0x563038fb
and r10d, r8d
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, edx
mov edx, 0x68c22e84
xor edx, 0x973dd17b
xor ecx, edx
mov edx, 0xf574713
xor edx, 0xe2b3593e
or edx, r8d
and ecx, edx
or eax, ecx
mov ecx, 0xa95fef3c
xor edx, edx
div ecx
mov rdx, qword [rbp - 0x40]
mov ecx, eax
mov rax, qword [rbp + 0x70]
mov dword [rbp - 0x4c], ecx
mov ecx, 0x324c3859
xor ecx, 0x4a9d2ef1
mov dword [rbp - 0x50], ecx
mov rcx, qword [0x140208bd0]
mov qword [rdx + 0x20], rcx
mov rcx, qword [0x140208bd8]
mov qword [rdx + 0x28], rcx
mov rax, qword [rax]
mov rcx, qword [rax + 0x20]
add rcx, 8
sub rsp, 0x20
call fcn.1400272cf
mov ecx, dword [rbp - 0x50]
mov eax, dword [rbp - 0x4c]
add rsp, 0x20
cmp eax, ecx
je 0x1401bec11
mov rax, qword [rbp - 0x48]
mov qword [rbp - 0x30], rax
jmp 0x1401bed43
xor eax, eax
mov qword [rbp - 0x30], rax
mov rax, qword [rbp - 0x30]
mov qword [rbp - 0x58], rax
mov ecx, dword [0x1401ff198]
mov eax, 0xf4c4b111
xor eax, 0x79440ac6
xor ecx, eax
add ecx, dword [0x1401ff19c]
or ecx, ecx
xor ecx, 0xffffffff
mov eax, 0xb09f5e86
or eax, 0xb09f5e86
xor eax, 0xffffffff
or ecx, eax
mov eax, 0xf171223a
xor eax, 0xe8eddc5
xor ecx, eax
sub ecx, 0x8199da45
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xb73f8637
and eax, edx
mov edx, 0xde09a65a
xor edx, 0x21f659a5
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0xb73f8637
and ecx, edx
mov edx, 0xed2f693a
xor edx, 0x12d096c5
xor eax, edx
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x79ecc156
xor ecx, 0xeef2704
cmp eax, ecx
je 0x1401bf38a
mov rcx, qword [rbp + 0xb8]
mov eax, dword [0x1401ff1a0]
xor eax, 0xedd594ca
mov r8d, dword [0x1401ff1a4]
xor r8d, 0x988992d2
xor edx, edx
div r8d
xor edx, edx
sub edx, 0x277a25b8
sub eax, edx
xor eax, 0xf5a6cb4d
mov edx, 0xcd27108
xor edx, 0x47db406f
add eax, edx
mov cl, byte [rcx]
mov byte [rbp - 0x59], cl
cmp eax, 0xea25e6c0
jae 0x1401bf38a
mov rax, qword [rbp + 0x60]
mov rcx, qword [rbp - 0x58]
mov dl, byte [rbp - 0x59]
mov byte [rbp + 0xd7], dl
mov qword [rbp + 0xd8], rcx
mov qword [rbp + 0xe0], rax
jmp 0x1401bee4f
mov rax, qword [rbp + 0xb8]
mov dl, byte [rbp + 0xd7]
mov rcx, qword [rbp + 0xd8]
mov r8, qword [rbp + 0xe0]
mov qword [rbp - 0x68], r8
mov byte [rbp - 0x5b], dl
mov r8b, 0x61
xor r8b, 0x61
cmp dl, r8b
sete dl
mov byte [rbp - 0x5a], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401bd4d0
mov rax, qword [rbp + 0xb8]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401bf0da
mov eax, dword [0x1401ff1a8]
xor eax, 0x962a7680
mov ecx, dword [str.iAb_b]
xor ecx, 0xffffffff
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov ecx, 0x4bfa8f13
xor ecx, 0x7e8c08a5
sub eax, ecx
add eax, 0x505058de
add eax, 0x357687b6
mov ecx, 0x2bd52983
xor ecx, 0xced92b69
add eax, ecx
mov r8d, 0xffffffff
xor r8d, 0xd9085a7d
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xd9085a7d
mov r8d, 0xca6d5dc1
xor r8d, 0x136507bc
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xf1a5ab2
xor ecx, 0xbc79cc3d
cmp eax, ecx
je 0x1401bf393
mov ecx, dword [0x1401ff1b0]
xor ecx, 0x4b330a5e
add ecx, dword [0x1401ff1b4]
mov eax, 0x420ad75c
xor eax, 0xdd4d5d04
mov edx, ecx
xor edx, eax
xor edx, 0xffffffff
and edx, 0x9f478a58
mov eax, 0x8f6d5494
xor eax, 0x8f6d5496
imul eax, edx
sub eax, 0x9f478a58
sub ecx, eax
mov edx, 0x8c4a98b8
xor edx, 0xe4b2938b
mov eax, ecx
or eax, edx
mov edx, 0x724ce871
xor edx, 0x8db3178e
xor eax, edx
or ecx, 0x68f80b33
mov edx, 0xee1b58cf
xor edx, 0x11e4a730
xor ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xb268a5
xor ecx, 0x432caf53
add eax, ecx
mov dword [rbp - 0x70], eax
lea rcx, [rbp + 0x228]
sub rsp, 0x20
call fcn.14005f56a
mov rcx, qword [rbp + 0xb8]
mov eax, dword [rbp - 0x70]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0xea
xor dl, 0xea
cmp cl, dl
sete cl
mov byte [rbp - 0x69], cl
cmp eax, 0x47bcdac0
jae 0x1401bf393
mov al, byte [rbp - 0x69]
test al, 1
jne 0x1401beffb
jmp 0x1401bf0da
lea rcx, [rbp + 0x248]
sub rsp, 0x20
call fcn.14005e71d
mov rax, qword [rbp + 0xb8]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401bf0da
lea rcx, [rbp + 0x270]
sub rsp, 0x20
call fcn.14005e71d
mov rax, qword [rbp + 0xb8]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401bf0da
mov rax, qword [rbp - 0x68]
cmp rax, 0
je 0x1401bf0c3
mov rax, qword [rbp - 0x68]
mov rcx, qword [rax]
movabs rdx, 0x4000000000000000
mov rax, rcx
and rax, rdx
movabs rdx, 0xee8d2a104c1cfac0
movabs r8, 0x1172d5efb3e3053f
xor rdx, r8
xor rax, rdx
xor rcx, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
or rcx, rdx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
or rax, rcx
cmp rax, 0
jne 0x1401bf0c3
mov rcx, qword [rbp - 0x68]
sub rsp, 0x20
call fcn.14000f935
add rsp, 0x20
mov al, byte [rbp - 0x5a]
mov rcx, qword [rbp + 0xb8]
mov dl, byte [rbp - 0x5b]
mov byte [rcx], dl
test al, 1
jne 0x1401bf34a
sub rsp, 0x20
call fcn.1401bf737
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x78], rax
cmp word [rax + 0x12], 1
jle 0x1401bf34a
mov ecx, dword [0x1401ff1b8]
mov eax, 0xd7662eef
xor eax, 0x586ebbd6
xor ecx, eax
mov edx, dword [0x1401ff1bc]
xor edx, 0xffffffff
mov eax, ecx
xor eax, edx
and eax, ecx
or eax, 0xb4631bfc
sub eax, 0xfe80ae15
mov ecx, 0xff20719f
xor ecx, 0x2f355490
sub eax, ecx
add eax, 0xfe80ae15
mov edx, eax
xor edx, 0xffffffff
and edx, 0x9c1decfc
mov r8d, 0x8a26666f
xor r8d, 0x163b8a93
mov ecx, 0xc01e11c3
xor ecx, 0x3fe1ee3c
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x9c1decfc
or eax, 0x9c1decfc
imul eax, edx
add eax, ecx
cmp eax, 0x8dfb3b71
ja 0x1401bf39c
mov rcx, qword [rbp - 0x78]
mov esi, dword [0x1401ff1c0]
xor esi, 0x6c1ad74e
mov r11d, dword [0x1401ff1c4]
mov edx, esi
xor edx, 0xffffffff
mov r9d, r11d
xor r9d, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x38568772
mov r10d, 0x429af1a3
xor r10d, 0x7acc76d1
mov eax, edx
and eax, r10d
and esi, r8d
mov r10d, r9d
and r10d, 0x38568772
and r11d, r8d
or eax, esi
or r10d, r11d
xor eax, r10d
or edx, r9d
xor edx, 0xffffffff
or r8d, 0x38568772
and edx, r8d
or eax, edx
imul eax, eax, 0x3f2a2b53
mov r8d, 0xcfd3d1f6
xor r8d, 0xbd4bc881
xor edx, edx
div r8d
mov edx, 0x19487be5
xor edx, 0xb6959c94
xor eax, edx
mov rcx, qword [rcx + 0x18]
cmp dword [rcx + 8], 0xc5722261
sete cl
mov byte [rbp - 0x79], cl
cmp eax, 0xdbbacc1f
jae 0x1401bf39c
mov al, byte [rbp - 0x79]
test al, 1
jne 0x1401bf23e
jmp 0x1401bf34a
mov rax, qword [rbp + 0xb8]
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401bf749
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.140093060
mov rax, qword [rbp + 0xb8]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401bf34a
mov ecx, dword [0x1401ff1c8]
mov edx, dword [0x1401ff1cc]
mov eax, ecx
xor eax, 0xffffffff
mov r8d, edx
xor r8d, 0xffffffff
and eax, r8d
or ecx, edx
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov edx, eax
xor edx, 0xffffffff
and edx, 0xbbca78d1
mov r8d, 0xffffffff
xor r8d, 0xbbca78d1
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xbbca78d1
mov r8d, 0x821e73a1
xor r8d, 0x39d40b70
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xeb33e3dd
xor ecx, 0x3f5e0bd4
sub eax, ecx
imul eax, eax, 0x697209ab
mov ecx, 0x4019c424
xor ecx, 0x2c565ae8
cmp eax, ecx
jb 0x1401bf3a5
mov eax, dword [0x1401ff1d0]
xor edx, edx
div dword [0x1401ff1d4]
sub eax, 0xc4766ded
mov ecx, 0x6cdd1913
xor edx, edx
div ecx
mov ecx, 0xa651a294
xor ecx, 0xaee972d5
imul eax, ecx
mov dword [rbp - 0x80], eax
sub rsp, 0x20
call fcn.1401bf77e
mov eax, dword [rbp - 0x80]
add rsp, 0x20
cmp eax, 0xd8406056
jae 0x1401bf3a5
jmp 0x1401bf34a
lea rsp, [rbp + 0x298]
pop rsi
pop rbp
ret
inc dword [rdi - 0x1c16b837]
jmp 0x1401bf35b
invalid
invalid
invalid
cld
jno 0x1401bf35d
invalid
test byte [rdx + 0x77], sil
jmp 0x1401be96b
xlatb
push rsi
nop
ret 0x87e9
invalid
or byte [rsi - 0x6c1635bc], cl
sti
invalid
fdiv qword [rax - 0x2316cd73]
std
invalid
and byte [rcx + 0x42], dl
mov ebp, 0xffff4fe9
jmp qword [rsi - 0x70]