Function at 0x140187ed0
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x180
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x68], rdx
mov qword [rbp + 0x70], rcx
mov eax, 0x10
call fcn.1401d4340
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x78], rax
sub rsp, 0x20
call fcn.140187c7e
add rsp, 0x20
mov qword [rbp + 0x80], rax
mov ecx, 0x296
sub rsp, 0x20
call fcn.140060dd0
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0x80]
mov dword [rbp + 0xfc], ecx
mov cl, byte [rax]
mov dl, 0xd6
xor dl, 0xd6
xor eax, eax
cmp cl, dl
mov dword [rbp + 0x8c], eax
jne 0x140188933
mov eax, dword [0x1401df7b0]
xor edx, edx
div dword [0x1401df7b4]
mov ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xa0d7b4f9
or eax, edx
mov edx, 0xffffffff
xor edx, 0xa0d7b4f9
mov r8d, 0xffffffff
xor r8d, 0xa0d7b4f9
or edx, r8d
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0xa8763a49
add eax, ecx
mov ecx, 0xd7489fc7
xor ecx, 0x32873a51
xor edx, edx
div ecx
cmp eax, 0x1617f891
jae 0x1401889f9
mov eax, dword [0x1401df7b8]
xor edx, edx
div dword [0x1401df7bc]
mov ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0x154b8c94
xor edx, 0xeab4736b
xor ecx, edx
and eax, ecx
mov ecx, 0x7cc627f9
xor ecx, 0x2a68ae78
mov edx, 0x53314730
xor edx, 0xacceb8cf
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x56ae8981
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x59e386e8
xor ecx, 0xc4f3d823
xor eax, ecx
imul eax, eax, 0x60e9ba81
mov dword [rbp + 0x60], eax
mov cx, 0x3862
xor cx, 0x3ac2
sub rsp, 0x20
call fcn.140060dd0
mov rcx, qword [rbp + 0x80]
add rsp, 0x20
mov edx, eax
mov eax, dword [rbp + 0x60]
mov dword [rbp + 0xf8], edx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x67], cl
cmp eax, 0x3f748510
jbe 0x1401889f9
mov cl, byte [rbp + 0x67]
xor eax, eax
test cl, 1
mov dword [rbp + 0x8c], eax
jne 0x140188081
jmp 0x140188933
lea rcx, [rbp + 0xfc]
lea rdx, [rbp + 0xf8]
sub rsp, 0x20
call fcn.1400a37ff
mov rcx, qword [rbp + 0x80]
add rsp, 0x20
xor eax, eax
cmp byte [rcx], 0
mov dword [rbp + 0x8c], eax
jne 0x140188933
sub rsp, 0x20
mov cx, 0x371
call fcn.140060dd0
add rsp, 0x20
mov r8d, eax
mov rax, qword [rbp + 0x80]
mov al, byte [rax]
test al, al
setne cl
sete al
mov edx, dword [rbp + 0xf8]
mov dword [rbp + 0x58], edx
sub edx, r8d
sete dl
and al, dl
movzx eax, al
mov dword [rbp + 0x5c], eax
or cl, dl
test cl, 1
mov dword [rbp + 0x8c], eax
jne 0x140188933
mov eax, dword [rbp + 0x58]
movsxd rcx, eax
mov qword [rbp + 0x50], rcx
mov ecx, 0xc79e3882
xor ecx, 0xc79e3882
cmp eax, ecx
jge 0x14018816b
mov rcx, qword [rbp + 0x50]
movabs rdx, 0x655e51f4ec8e4c10
movabs rax, 0x655e51f4ec8e4c10
xor rdx, rax
movabs r8, 0xf1eb6df31d3b0b28
movabs rax, 0x8e14920ce2c4f4d7
xor r8, rax
sub rsp, 0x20
call fcn.14000d167
mov eax, dword [rbp + 0x5c]
add rsp, 0x20
mov dword [rbp + 0x8c], eax
jmp 0x140188933
mov rcx, qword [rbp + 0x50]
sub rsp, 0x20
call fcn.14000aa66
add rsp, 0x20
mov r8, rax
mov qword [rbp + 0x48], r8
mov ecx, dword [rbp + 0xfc]
mov edx, dword [rbp + 0xf8]
sub rsp, 0x20
call fcn.1400a382a
add rsp, 0x20
mov rax, qword [rbp + 0x80]
cmp byte [rax], 0
jne 0x140188902
mov ecx, 0x275
sub rsp, 0x20
call fcn.140060dd0
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0x80]
mov dword [rbp + 0x44], ecx
mov al, byte [rax]
mov cl, 0x79
xor cl, 0x79
cmp al, cl
jne 0x140188902
mov ecx, dword [0x1401df7c0]
mov edx, dword [0x1401df7c4]
mov eax, ecx
and eax, edx
xor ecx, edx
or eax, ecx
mov ecx, 0x2892b9ba
xor ecx, 0xdf1182dd
or eax, ecx
sub eax, 0x7807d19d
sub eax, 0xed4bedbe
mov ecx, 0xeeb7b3e9
xor ecx, 0xfa59a710
cmp eax, ecx
je 0x140188a02
mov ecx, dword [rbp + 0x44]
mov edx, dword [0x1401df7c8]
mov r8d, dword [0x1401df7cc]
mov eax, 0xe4fdb99d
xor eax, 0x24df6059
xor r8d, eax
mov eax, edx
and eax, r8d
xor edx, r8d
or eax, edx
add eax, 0xa497bf11
add eax, 0xe55c13d
sub eax, 0xa497bf11
and eax, 0x60d7fa64
and eax, 0xd8d7b060
cmp dword [rbp + 0xf8], ecx
sete cl
mov byte [rbp + 0x43], cl
cmp eax, 0xfb9c2dae
ja 0x140188a02
mov al, byte [rbp + 0x43]
test al, 1
jne 0x14018827e
jmp 0x1401882b8
mov rcx, qword [rbp + 0x48]
mov eax, 1
cmp rcx, 0
mov dword [rbp + 0x8c], eax
je 0x140188933
mov rcx, qword [rbp + 0x48]
sub rsp, 0x20
call fcn.14001e83b
add rsp, 0x20
mov eax, 1
mov dword [rbp + 0x8c], eax
jmp 0x140188933
mov cx, 0xbead
xor cx, 0xbed0
sub rsp, 0x20
call fcn.140060afe
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x80]
mov qword [rbp + 0x38], rcx
cmp byte [rax], 0
jne 0x140188902
mov rax, qword [rbp + 0x38]
mov rcx, qword [rbp + 0x70]
mov rdx, qword [rbp + 0x78]
movsxd r8, dword [rbp + 0xfc]
mov qword [rbp + 0x10], r8
lea r8, [rbp + 0x90]
add r8, 0x40
mov qword [rbp + 0x18], r8
add rdx, 8
mov qword [rbp + 0x20], rdx
add rcx, 8
mov qword [rbp + 0x28], rcx
mov qword [rbp + 0x30], rax
mov rcx, qword [rbp + 0x10]
mov rax, qword [rbp + 0x30]
mov qword [rbp + 8], rax
cmp rax, rcx
jge 0x1401888c8
lea rcx, [rbp + 0x90]
mov edx, 0x68
sub rsp, 0x20
call fcn.140187ca0
mov rax, qword [rbp + 8]
mov rdx, qword [rbp + 0x48]
add rsp, 0x20
imul rax, rax, 0x68
add rdx, rax
lea rcx, [rbp + 0x90]
mov r8d, 0x68
sub rsp, 0x20
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp + 0x18]
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x10], rax
sub rsp, 0x20
call fcn.140187c7e
mov rcx, qword [rbp - 0x10]
add rsp, 0x20
mov qword [rbp - 8], rax
sub rsp, 0x20
call fcn.140097272
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp - 8]
mov dword [rbp + 4], ecx
mov al, byte [rax]
mov cl, 0x22
xor cl, 0x22
cmp al, cl
jne 0x140188509
mov eax, dword [rbp + 4]
movsxd rcx, eax
mov qword [rbp - 0x18], rcx
cmp eax, 0
jge 0x1401883f2
mov rcx, qword [rbp - 0x18]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14000d167
add rsp, 0x20
jmp 0x140188509
mov eax, dword [0x1401df7d0]
xor edx, edx
div dword [0x1401df7d4]
imul eax, eax, 0x6df7e44f
mov r8d, 0xffffffff
xor r8d, 0x7a5811c
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x7a5811c
or eax, 0x7a5811c
imul eax, edx
add eax, ecx
mov ecx, 0x3cf63b44
xor edx, edx
div ecx
cmp eax, 0x64ddfd25
je 0x140188a0b
mov r8, qword [rbp - 0x18]
mov rdx, qword [rbp - 0x10]
mov rcx, qword [rbp + 0x78]
mov eax, dword [0x1401df7d8]
or eax, dword [0x1401df7dc]
mov r9d, eax
xor r9d, 0xffffffff
and r9d, 0x2f620fa1
mov r10d, 0xffffffff
xor r10d, 0x2f620fa1
and eax, r10d
sub eax, r9d
imul r9d, eax, 0xd7e07f2d
mov eax, r9d
xor eax, 0xffffffff
mov r10d, r9d
xor r10d, 0xffffffff
or eax, r10d
mov r10d, 0x4618b061
xor r10d, 0x35eb6b2d
and eax, r10d
xor eax, 0xffffffff
mov r10d, 0x1b912c2c
xor r10d, 0x6862f760
mov r11d, 0xdb2ec23a
xor r11d, 0x24d13dc5
xor r10d, r11d
mov r11d, 0xffffffff
xor r11d, 0x73f3db4c
or r10d, r11d
and r9d, r10d
xor r9d, 0xffffffff
and eax, r9d
xor eax, 0xffffffff
mov dword [rbp - 0x1c], eax
sub rsp, 0x20
call fcn.140097445
mov eax, dword [rbp - 0x1c]
add rsp, 0x20
cmp eax, 0xa560c8ac
ja 0x140188449
jmp 0x140188509
mov rax, qword [rbp + 8]
mov rcx, qword [rbp + 0x80]
mov rdx, qword [rbp + 0x20]
mov r8, qword [rbp + 0x78]
mov r8, qword [r8]
mov qword [rbp - 0x38], r8
mov rdx, qword [rdx]
mov qword [rbp - 0x30], rdx
cmp byte [rcx], 0
mov qword [rbp - 0x28], rax
jne 0x1401886e6
mov rcx, qword [rbp - 0x38]
mov rdx, qword [rbp + 0x28]
mov rax, qword [rbp + 0x70]
mov rax, qword [rax]
mov rdx, qword [rdx]
mov qword [rbp - 0x40], rdx
cmp rax, rcx
jne 0x14018866c
mov rax, qword [rbp - 0x38]
cmp rax, 0
je 0x1401885e5
mov rcx, qword [rbp - 0x38]
mov rax, qword [rbp - 0x30]
mov rdx, qword [rbp - 0x40]
add rdx, 8
mov qword [rbp - 0x60], rdx
add rax, 8
mov qword [rbp - 0x58], rax
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rbp - 0x50], rax
xor eax, eax
mov qword [rbp - 0x48], rax
mov rcx, qword [rbp - 0x50]
mov rax, qword [rbp - 0x48]
mov qword [rbp - 0x68], rax
cmp rax, rcx
je 0x1401885e5
mov rax, qword [rbp - 0x68]
mov rdx, qword [rbp - 0x58]
mov rcx, qword [rbp - 0x60]
mov cl, byte [rcx + rax]
mov dl, byte [rdx + rax]
movabs r8, 0xda0307e5e2e98a00
movabs r9, 0xda0307e5e2e98a01
xor r8, r9
add rax, r8
cmp cl, dl
mov qword [rbp - 0x48], rax
je 0x140188593
jmp 0x14018866c
mov rax, qword [rbp - 0x30]
mov rcx, qword [rbp + 0x68]
mov rdx, qword [rbp + 0x90]
mov qword [rcx], rdx
mov rdx, qword [rbp + 0x98]
mov qword [rcx + 8], rdx
cmp rax, 0
je 0x140188648
mov rax, qword [rbp - 0x30]
mov rax, qword [rax]
movabs rcx, 0x57e21d0e136e170d
movabs rdx, 0x17e21d0e136e170d
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x140188648
mov rcx, qword [rbp - 0x30]
sub rsp, 0x20
call fcn.14000eb2e
add rsp, 0x20
mov rax, qword [rbp + 0x48]
cmp rax, 0
je 0x1401887b8
mov rcx, qword [rbp + 0x48]
sub rsp, 0x20
call fcn.14001e83b
add rsp, 0x20
jmp 0x1401887b8
mov rdx, qword [rbp + 8]
xor eax, eax
mov ecx, eax
sub rcx, 1
mov rax, rdx
sub rax, rcx
mov r8, rdx
and r8, 0xffffffffffffffff
movabs rcx, 0x839ac6c485cf4ec0
movabs r9, 0x839ac6c485cf4ec2
xor rcx, r9
imul rcx, r8
add rdx, 0xffffffffffffffff
sub rdx, rcx
mov rcx, rax
and rcx, rdx
movabs rdx, 0xe4a78e5b9af6bbc9
movabs r8, 0xe4a78e5b9af6bbc9
xor rdx, r8
cmp rcx, rdx
mov qword [rbp - 0x28], rax
jge 0x1401886e6
sub rsp, 0x20
call fcn.1400077a3
mov rax, qword [rbp + 8]
add rsp, 0x20
mov qword [rbp - 0x28], rax
mov rax, qword [rbp - 0x30]
mov rcx, qword [rbp - 0x28]
mov qword [rbp - 0x70], rcx
cmp rax, 0
je 0x140188799
mov rax, qword [rbp - 0x30]
mov rcx, qword [rax]
movabs rdx, 0x5c0d48a476007bdf
movabs rax, 0x1c0d48a476007bdf
xor rdx, rax
mov rax, rcx
and rax, rdx
xor rax, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
and rcx, rdx
movabs rdx, 0x9d4301872ac166ff
movabs r8, 0x62bcfe78d53e9900
xor rdx, r8
xor rcx, rdx
and rax, rcx
movabs rcx, 0x4df3095684e94d2c
movabs rdx, 0xb20cf6a97b16b2d3
xor rcx, rdx
xor rax, rcx
movabs rcx, 0xd32a1e4bbd4258c9
movabs rdx, 0xd32a1e4bbd4258c9
xor rcx, rdx
cmp rax, rcx
jne 0x140188799
mov rcx, qword [rbp - 0x30]
sub rsp, 0x20
call fcn.14000eb2e
add rsp, 0x20
mov rax, qword [rbp - 0x70]
mov rcx, qword [rbp + 0x80]
mov cl, byte [rcx]
cmp cl, 0
mov qword [rbp + 0x30], rax
je 0x14018831f
jmp 0x140188902
mov eax, dword [0x1401df7e0]
xor edx, edx
div dword [0x1401df7e4]
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x507d6fea
mov edx, 0xffffffff
xor edx, 0x507d6fea
and eax, edx
or ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x4af9bed4
or eax, edx
and ecx, 0x4af9bed4
mov edx, 0x1bbec68e
xor edx, 0xe4413971
xor ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x88cf31a9
xor ecx, 0x7730ce56
mov edx, eax
xor edx, ecx
and edx, 0xe010c72f
mov r8d, 0xffffffff
xor r8d, 0xe010c72f
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xe010c72f
or eax, 0xe010c72f
imul eax, edx
add eax, ecx
mov ecx, 0xcb6e8bc9
xor ecx, 0x2640c3ba
cmp eax, ecx
jbe 0x140188a14
mov eax, dword [0x1401df7e8]
and eax, dword [0x1401df7ec]
mov edx, 0xcd9ba226
xor edx, 0xa399e88e
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
and ecx, 0x6e024aa8
shl ecx, 1
mov edx, 0x283d0937
xor edx, 0x463f439f
sub ecx, edx
sub eax, ecx
mov ecx, 0xcdc68dac
xor ecx, 0x243713b4
and eax, ecx
mov ecx, 0xe8c68ef
xor edx, edx
div ecx
mov ecx, 0x5b005d67
xor ecx, 0x10021b56
cmp eax, ecx
ja 0x140188a14
xor eax, eax
mov dword [rbp + 0x8c], eax
jmp 0x140188933
mov rcx, qword [rbp + 0x48]
mov eax, 0xd
cmp rcx, 0
mov dword [rbp + 0x8c], eax
je 0x140188933
mov rcx, qword [rbp + 0x48]
sub rsp, 0x20
call fcn.14001e83b
add rsp, 0x20
mov eax, 0xd
mov dword [rbp + 0x8c], eax
jmp 0x140188933
mov eax, dword [rbp + 0x5c]
mov rcx, qword [rbp + 0x48]
cmp rcx, 0
mov dword [rbp + 0x8c], eax
je 0x140188933
mov rcx, qword [rbp + 0x48]
sub rsp, 0x20
call fcn.14001e83b
mov eax, dword [rbp + 0x5c]
add rsp, 0x20
mov dword [rbp + 0x8c], eax
mov eax, dword [rbp + 0x8c]
mov dword [rbp - 0x74], eax
mov eax, dword [0x1401df7f0]
or eax, dword [0x1401df7f4]
mov ecx, 0xd551ea28
xor edx, edx
div ecx
mov ecx, 0x3a7924b2
xor edx, edx
div ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x29052c14
mov r8d, 0xffffffff
xor r8d, 0x29052c14
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x29052c14
or eax, 0x29052c14
imul eax, edx
add eax, ecx
cmp eax, 0x7c9fdb39
je 0x140188a1d
mov eax, dword [0x1401df7f8]
mov ecx, dword [0x1401df7fc]
mov edx, 0x16894a71
xor edx, 0x86b6690
xor ecx, edx
xor eax, ecx
mov ecx, 0x7736c41
xor ecx, 0xe4e78628
add eax, ecx
mov ecx, 0x65e7e6f7
xor ecx, 0xf61d374a
imul eax, ecx
mov ecx, 0xf9f1fcda
xor ecx, 0x1eec53e4
sub eax, ecx
mov ecx, 0xe885972e
xor ecx, 0x22fb3f97
cmp eax, ecx
ja 0x140188a1d
mov eax, dword [rbp - 0x74]
lea rsp, [rbp + 0x100]
pop rbp
ret
jo 0x140188a70
std
jmp 0x140187fc5
outsb dx, byte [rsi]
cmp byte [rcx - 0x7f316bd], bh
invalid
pop rax
and bl, byte [r10 - 0x5ca17]
call [rsp + rbp*2 + 0x3fe9ac0e]
invalid
pushfq
insb byte [rdi], dx
invalid
stosd dword [rdi], eax
adc al, 0x7b
jmp 0x140188997
add byte [rax + 0x10], bh
mov qword [rbp + 0xb8], rax
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0xb8]
mov rcx, rsp
mov qword [rbp + 0xb0], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0xb8]
mov rcx, rsp
mov qword [rbp + 0xc0], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xc8], rax
sub rsp, 0x20
call fcn.140187c7e
mov rcx, qword [rbp + 0xd0]
add rsp, 0x20
mov qword [rbp + 0xe0], rax
mov qword [rcx], 0
mov rax, rcx
add rax, 8
mov qword [rbp + 0xd8], rax
mov qword [rcx + 8], 0
mov qword [rbp + 0x140], 0
mov ecx, 0x169
sub rsp, 0x20
call fcn.140060afe
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0xe8], rcx
cmp byte [rax], 0
jne 0x140189e1d
mov ecx, 1
sub rsp, 0x20
call fcn.140094f1c
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0xe0]
mov dword [rbp + 0xa4], ecx
mov al, byte [rax]
mov cl, 0x49
xor cl, 0x49
cmp al, cl
jne 0x140189e1d
mov edx, dword [rbp + 0xa4]
mov rcx, qword [rbp + 0xe8]
lea r8, [rbp + 0x140]
sub rsp, 0x20
call fcn.1400a530a
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0xe0]
mov dword [rbp + 0xa0], ecx
cmp byte [rax], 0
jne 0x140189e1d
mov eax, dword [rbp + 0xa0]
cmp eax, 0
je 0x140188c5c
movabs rcx, 0x79fa97d947587e2
movabs rax, 0x79fa97d947587a2
xor rcx, rax
movabs rdx, 0x15e453c7c36c098a
movabs rax, 0x15e453c7c36c0982
xor rdx, rax
sub rsp, 0x20
call fcn.1400133d1
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x1401eb5d0]
mov qword [rcx], rax
lea rax, [0x1401eaf80]
mov qword [rcx + 0x10], rax
mov rax, qword [0x1401eafd0]
mov qword [rcx + 0x18], rax
mov rax, qword [0x1401eafd8]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
movabs rax, 0xdbed7fa7b5adf383
movabs rdx, 0xdbed7fa7f6c82aac
xor rax, rdx
lea rdx, [0x1401eaf80]
lea r8, [0x1401eafad]
lea r9, [0x1401eafa2]
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.14001331d
add rsp, 0x30
jmp 0x140189e1d
sub rsp, 0x20
call fcn.140187b20
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x98], rcx
mov al, byte [rax]
mov cl, 0xf1
xor cl, 0xf1
cmp al, cl
jne 0x140189e1d
sub rsp, 0x20
call fcn.1400a64ae
mov rcx, qword [rbp + 0xe0]
add rsp, 0x20
mov qword [rbp + 0x88], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x97], al
jne 0x140189dd4
sub rsp, 0x20
call fcn.1400a64c5
mov rcx, qword [rbp + 0xe0]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x97], al
jne 0x140189dd4
mov ecx, 0x4e
sub rsp, 0x20
call fcn.1400a64dc
mov rcx, qword [rbp + 0xe0]
add rsp, 0x20
mov dword [rbp + 0x84], eax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x97], al
jne 0x140189dd4
mov ecx, 0x4f
sub rsp, 0x20
call fcn.1400a64dc
mov rcx, qword [rbp + 0xe0]
add rsp, 0x20
mov dword [rbp + 0x80], eax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x97], al
jne 0x140189dd4
mov rcx, qword [rbp + 0x88]
sub rsp, 0x20
call fcn.1400a64fb
mov rcx, qword [rbp + 0xe0]
add rsp, 0x20
mov qword [rbp + 0x78], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x97], al
jne 0x140189dd4
mov rcx, qword [rbp + 0x78]
sub rsp, 0x20
call fcn.1400a36f6
mov rcx, qword [rbp + 0xe0]
add rsp, 0x20
mov qword [rbp + 0x70], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x97], al
jne 0x140189dd4
mov r8d, dword [rbp + 0x80]
mov edx, dword [rbp + 0x84]
mov rcx, qword [rbp + 0x78]
sub rsp, 0x20
call fcn.1400a3717
mov rcx, qword [rbp + 0xe0]
add rsp, 0x20
mov qword [rbp + 0x68], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x97], al
jne 0x140189dd4
mov rdx, qword [rbp + 0x68]
mov rcx, qword [rbp + 0x70]
sub rsp, 0x20
call fcn.1400a374a
mov rcx, qword [rbp + 0xe0]
add rsp, 0x20
mov qword [rbp + 0x60], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x97], al
jne 0x140189dd4
mov cx, 0x4e3e
xor cx, 0x4d80
sub rsp, 0x20
call fcn.140060dd0
mov rcx, qword [rbp + 0xe0]
add rsp, 0x20
mov dword [rbp + 0x5c], eax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x97], al
jne 0x140189dd4
mov cx, 0xfc32
xor cx, 0xff78
sub rsp, 0x20
call fcn.140060dd0
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0xe0]
mov dword [rbp + 0x58], ecx
mov cl, byte [rax]
mov dl, 0x4b
xor dl, 0x4b
mov al, 1
cmp cl, dl
mov byte [rbp + 0x97], al
jne 0x140189dd4
mov ecx, 0x2f2
sub rsp, 0x20
call fcn.140060dd0
mov rcx, qword [rbp + 0xe0]
add rsp, 0x20
mov dword [rbp + 0x54], eax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x97], al
jne 0x140189dd4
mov cx, 0xab68
xor cx, 0xa990
sub rsp, 0x20
call fcn.140060dd0
mov rcx, qword [rbp + 0xe0]
add rsp, 0x20
mov dword [rbp + 0x50], eax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x97], al
jne 0x140189dd4
mov eax, dword [0x1401df800]
mov ecx, dword [0x1401df804]
xor ecx, 0xd07241b4
and eax, ecx
add eax, 0xc19da866
mov ecx, 0x1fed4b45
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xe746c801
and eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xe746c801
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xb51ac151
xor ecx, 0xcee09bbe
cmp eax, ecx
jbe 0x140189e30
mov r10d, dword [rbp + 0x50]
mov r11d, dword [rbp + 0x54]
mov rsi, qword [rbp + 0x78]
mov edi, dword [rbp + 0x80]
mov r9d, dword [rbp + 0x84]
mov r8d, dword [rbp + 0x58]
mov rcx, qword [rbp + 0x70]
mov eax, dword [0x1401df808]
xor edx, edx
div dword [0x1401df80c]
mov ebx, 0x1edf70e7
xor edx, edx
div ebx
mov edx, dword [rbp + 0x5c]
mov ebx, eax
add ebx, 1
xor eax, 0xffffffff
or eax, 0xa15dcc99
add eax, ebx
add eax, 0xee44c49e
mov dword [rbp + 0x48], eax
mov eax, 0xbc697ab4
xor eax, 0xd537ed0b
mov dword [rbp + 0x44], eax
mov eax, 0xd5834c3e
xor eax, 0xd54f4c1e
sub rsp, 0x50
mov dword [rsp + 0x20], edi
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x30], r11d
mov dword [rsp + 0x38], r10d
mov dword [rsp + 0x40], eax
call fcn.1400a3775
mov rdx, qword [rbp + 0xe0]
mov ecx, dword [rbp + 0x44]
add rsp, 0x50
mov eax, dword [rbp + 0x48]
cmp byte [rdx], 0
sete dl
mov byte [rbp + 0x4f], dl
cmp eax, ecx
jb 0x140189e30
mov cl, byte [rbp + 0x4f]
mov al, 1
test cl, 1
mov byte [rbp + 0x97], al
jne 0x140188fef
jmp 0x140189dd4
mov eax, dword [0x1401df810]
xor eax, 0x9da23064
sub eax, dword [0x1401df814]
imul eax, eax, 0xcd2af58a
or eax, eax
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x336eac34
mov edx, 0x2b3d0fff
xor edx, 0x1853a3cb
mov r8d, 0x13cc5a85
xor r8d, 0xec33a57a
xor edx, r8d
and ecx, edx
mov edx, 0x5b4ac94e
xor edx, 0xa4b536b1
xor eax, edx
xor ecx, 0xffffffff
and eax, ecx
add eax, 0xa325eb8
mov ecx, 0x910ffb94
xor ecx, 0x5f89f3de
cmp eax, ecx
je 0x140189e39
mov rax, qword [rbp + 0xb0]
mov ecx, dword [0x1401df818]
or ecx, dword [0x1401df81c]
or ecx, 0xb3464e1e
mov r9d, 0xffffffff
xor r9d, 0xe07feae
mov r8d, ecx
and r8d, r9d
mov edx, ecx
or edx, r9d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, ecx
and r8d, 0xe07feae
mov r9d, 0x9d2ae255
xor r9d, 0x932d1cfb
or ecx, r9d
imul ecx, r8d
add ecx, edx
add ecx, 0xff5dc700
mov dword [rbp + 0x34], ecx
mov qword [rax], 0
mov ecx, 0xc6
sub rsp, 0x20
call fcn.140060afe
mov rcx, qword [rbp + 0xe0]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x34]
mov qword [rbp + 0x38], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x43], cl
cmp eax, 0xcb358a86
jae 0x140189e39
mov cl, byte [rbp + 0x43]
mov al, 1
test cl, 1
mov byte [rbp + 0x97], al
jne 0x140189115
jmp 0x140189dd4
mov r8, qword [rbp + 0xb0]
mov rdx, qword [rbp + 0x38]
mov rcx, qword [rbp + 0x68]
sub rsp, 0x20
call fcn.1400a37ca
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0xe0]
mov dword [rbp + 0x30], ecx
mov cl, byte [rax]
mov dl, 0xcc
xor dl, 0xcc
mov al, 1
cmp cl, dl
mov byte [rbp + 0x97], al
jne 0x140189dd4
mov eax, dword [rbp + 0x30]
mov ecx, 0x88163709
xor ecx, 0x88163709
cmp eax, ecx
je 0x1401891f6
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.1400133d1
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x1401eb5d0]
mov qword [rcx], rax
lea rax, [0x1401eaf80]
mov qword [rcx + 0x10], rax
mov rax, qword [0x1401eafd0]
mov qword [rcx + 0x18], rax
mov rax, qword [0x1401eafd8]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x1401eaf80]
lea r8, [0x1401eafad]
lea r9, [0x1401eafa2]
sub rsp, 0x30
mov qword [rsp + 0x20], 0x5e09bc7
call fcn.14001331d
mov rax, qword [rbp + 0xe0]
add rsp, 0x30
mov al, byte [rax]
mov byte [rbp + 0x97], al
jmp 0x140189dd4
lea rcx, [rbp + 0x130]
mov edx, 0x10
sub rsp, 0x20
call fcn.140187ca0
add rsp, 0x20
mov word [rbp + 0x12e], 0x33b
lea rcx, [rbp + 0x12e]
sub rsp, 0x20
call fcn.14005fe20
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x28], rcx
cmp byte [rax], 0
jne 0x140189d84
mov rax, qword [rbp + 0x28]
mov rcx, qword [rax]
mov qword [rbp + 0xf0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xf8], rax
lea rcx, [rbp + 0xf0]
lea rdx, [rbp + 0x130]
sub rsp, 0x20
call fcn.140187ed0
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0xe0]
mov dword [rbp + 0x24], ecx
cmp byte [rax], 0
jne 0x140189d84
mov eax, dword [rbp + 0x24]
cmp eax, 0
je 0x140189315
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.1400133d1
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x1401eb5d0]
mov qword [rcx], rax
lea rax, [0x1401eaf80]
mov qword [rcx + 0x10], rax
mov rax, qword [0x1401eafd0]
mov qword [rcx + 0x18], rax
mov rax, qword [0x1401eafd8]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x1401eaf80]
lea r8, [0x1401eafad]
lea r9, [0x1401eafa2]
sub rsp, 0x30
mov qword [rsp + 0x20], 0x34b081b9
call fcn.14001331d
add rsp, 0x30
jmp 0x140189d84
mov eax, dword [str.X_R]
mov edx, dword [0x1401df824]
xor edx, 0xc22f4ef3
mov r8d, eax
and r8d, edx
mov ecx, 0x6c928160
xor ecx, 0x6c928162
imul ecx, r8d
add eax, edx
sub eax, ecx
mov ecx, 0xc055c2a5
xor ecx, 0xc548f8d2
imul eax, ecx
mov ecx, 0xb7da2bce
xor ecx, 0x4825d431
mov edx, eax
xor edx, ecx
and edx, 0x69d3b92a
mov r8d, 0xf79290ca
xor r8d, 0x9e4129e0
mov ecx, 0xd4c630e5
xor ecx, 0x2b39cf1a
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x69d3b92a
or eax, 0x69d3b92a
imul eax, edx
add eax, ecx
mov ecx, 0x9790b0ce
xor ecx, 0x299070b2
sub eax, ecx
cmp eax, 0x17fe328d
jb 0x140189e42
mov rax, qword [rbp + 0xc0]
mov ecx, dword [0x1401df828]
mov r9d, dword [0x1401df82c]
mov edx, 0x9652ef2c
xor edx, 0x69ad10d3
mov r10d, r9d
xor r10d, edx
mov r8d, ecx
and r8d, r10d
mov edx, ecx
or edx, r10d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, ecx
and r8d, r9d
or ecx, r9d
imul ecx, r8d
add ecx, edx
mov edx, 0x3a30afdb
xor edx, 0xe37427dc
xor ecx, edx
and ecx, 0x327a58da
sub ecx, 0x69c45942
mov dword [rbp + 0x18], ecx
mov ecx, 0xd98ebc70
xor ecx, 0xff24e86b
mov dword [rbp + 0x14], ecx
mov dword [rax], 0x4d
lea rcx, [rbp + 0x100]
mov edx, 0x28
sub rsp, 0x20
call fcn.140187ca0
add rsp, 0x20
lea rcx, [rbp + 0x100]
mov edx, 0x28
sub rsp, 0x20
call fcn.140187ca0
add rsp, 0x20
mov cx, 0xd5aa
xor cx, 0xd5df
sub rsp, 0x20
call fcn.140060dd0
mov rdx, qword [rbp + 0xe0]
mov ecx, dword [rbp + 0x14]
add rsp, 0x20
mov r8d, eax
mov eax, dword [rbp + 0x18]
mov dword [rbp + 0x1c], r8d
cmp byte [rdx], 0
sete dl
mov byte [rbp + 0x23], dl
cmp eax, ecx
je 0x1401893b0
mov al, byte [rbp + 0x23]
test al, 1
jne 0x1401894a3
jmp 0x140189d84
mov eax, dword [0x1401df830]
mov ecx, 0x43367cd4
xor ecx, 0x70cd8b5f
xor eax, ecx
xor edx, edx
div dword [0x1401df834]
mov ecx, 0x50a9c8cb
xor ecx, 0x50a9c8cb
sub ecx, eax
xor eax, eax
sub eax, 0xd5a341df
add ecx, eax
xor eax, eax
sub eax, ecx
imul eax, eax, 0x6b1fc76d
mov ecx, 0x6d09e0e4
xor ecx, 0xdf8521c3
add eax, ecx
mov ecx, 0x648a2f1a
xor ecx, 0x57eeaa73
sub eax, ecx
sub eax, 0xb28cc127
cmp eax, 0xf81621a8
je 0x140189e4b
mov eax, dword [0x1401df838]
xor eax, 0xb3a383b9
or eax, dword [0x1401df83c]
mov ecx, 0x3f7966b2
xor ecx, 0x63e25749
xor edx, edx
div ecx
mov ecx, 0xe9df5428
xor ecx, 0x6ea2dde5
xor edx, edx
div ecx
mov r9d, eax
mov eax, dword [rbp + 0x1c]
mov edx, 0x9ca85409
xor edx, 0x6357abf6
mov ecx, r9d
xor ecx, edx
and ecx, 0xda5d35d9
mov r10d, 0x946ef347
xor r10d, 0x4e33c69e
mov edx, 0xbb2adb1
xor edx, 0xf44d524e
xor r10d, edx
and r9d, r10d
mov edx, 0x98c70675
xor edx, 0x6614e65b
mov r8d, 0xc3136a8d
xor r8d, 0x3cec9572
xor edx, r8d
mov r8d, 0x2c89f9ab
xor r8d, 0xf6d4cc72
and edx, r8d
mov r8d, 0x21887a6
xor r8d, 0xfccb6788
and r8d, r10d
or ecx, r9d
or edx, r8d
xor ecx, edx
mov dword [rbp + 4], ecx
mov dword [rbp + 0x100], eax
mov ecx, 0x378
sub rsp, 0x20
call fcn.140060afe
mov rcx, qword [rbp + 0xe0]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 4]
mov qword [rbp + 8], rdx
mov cl, byte [rcx]
mov dl, 0x28
xor dl, 0x28
cmp cl, dl
sete cl
mov byte [rbp + 0x13], cl
cmp eax, 0xbc046c0b
jb 0x140189508
mov al, byte [rbp + 0x13]
test al, 1
jne 0x14018960a
jmp 0x140189d84
mov rax, qword [rbp + 8]
cmp rax, 0
je 0x140189632
mov rcx, qword [rbp + 8]
xor eax, eax
mov edx, eax
sub rsp, 0x20
call fcn.140013580
add rsp, 0x20
jmp 0x140189d84
lea rcx, [rbp + 0x100]
add rcx, 8
mov qword [rbp - 0x10], rcx
mov edx, 0x20
sub rsp, 0x20
call fcn.140187ca0
add rsp, 0x20
mov cx, 0x9c63
xor cx, 0x9c40
sub rsp, 0x20
call fcn.140060afe
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp - 8], rcx
cmp byte [rax], 0
jne 0x140189d84
mov rax, qword [rbp - 8]
cmp rax, 0
je 0x1401896a8
mov rcx, qword [rbp - 8]
xor eax, eax
mov edx, eax
sub rsp, 0x20
call fcn.140013580
add rsp, 0x20
jmp 0x140189d84
mov ecx, 0x212
sub rsp, 0x20
call fcn.140060dd0
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0xe0]
mov dword [rbp - 0x14], ecx
cmp byte [rax], 0
jne 0x140189d84
mov eax, dword [0x1401df840]
mov ecx, dword [0x1401df844]
xor ecx, 0x8e6613c2
xor edx, edx
div ecx
mov ecx, 0xddaa19df
xor ecx, 0x204a84e4
sub eax, ecx
mov ecx, 0x3ccb0c8c
xor ecx, 0x682a3f32
imul eax, ecx
xor eax, 0x5f69c7c3
cmp eax, 0x239cad7d
je 0x140189e54
mov eax, dword [0x1401df848]
or eax, dword [0x1401df84c]
imul eax, eax, 0x4563d254
mov ecx, 0xd667acb5
xor edx, edx
div ecx
mov ecx, eax
mov eax, dword [rbp - 0x14]
imul ecx, ecx, 0xcda600e8
mov dword [rbp - 0x24], ecx
mov dword [rbp + 0x118], eax
mov ecx, 0x394
sub rsp, 0x20
call fcn.140060afe
mov rcx, qword [rbp + 0xe0]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x24]
mov qword [rbp - 0x20], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x15], cl
cmp eax, 0x6deec599
je 0x140189e54
mov al, byte [rbp - 0x15]
test al, 1
jne 0x140189786
jmp 0x140189d84
mov rax, qword [rbp - 0x20]
cmp rax, 0
je 0x1401897ae
mov rcx, qword [rbp - 0x20]
xor eax, eax
mov edx, eax
sub rsp, 0x20
call fcn.140013580
add rsp, 0x20
jmp 0x140189d84
mov rax, qword [rbp - 0x10]
mov rcx, qword [0x1401eb548]
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rcx, qword [rcx + 8]
mov qword [rax + 8], rcx
mov cx, 0x39de
xor cx, 0x3ae2
sub rsp, 0x20
call fcn.140060afe
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp - 0x30], rcx
mov al, byte [rax]
mov cl, 0xe6
xor cl, 0xe6
cmp al, cl
jne 0x140189d84
mov rax, qword [rbp - 0x30]
movabs rcx, 0x19b5336a4bc5ca76
movabs rdx, 0x19b5336a4bc5ca76
xor rcx, rdx
cmp rax, rcx
je 0x140189838
mov rcx, qword [rbp - 0x30]
xor eax, eax
mov edx, eax
sub rsp, 0x20
call fcn.140013580
add rsp, 0x20
jmp 0x140189d84
mov eax, dword [0x1401df850]
mov r8d, dword [0x1401df854]
mov ecx, 0x114073c7
xor ecx, 0xb9ca5dea
xor r8d, ecx
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
sub eax, 0xb643393
mov edx, 0x8dcc625f
xor edx, 0x8dcc625e
mov ecx, eax
add ecx, edx
mov edx, 0xde8ede5b
xor edx, 0x217121a4
xor eax, edx
or eax, 0xece52227
add eax, ecx
or eax, 0xc87d2f0
cmp eax, 0xee226167
jae 0x140189e5d
mov edx, dword [0x1401df858]
mov ecx, dword [0x1401df85c]
xor ecx, 0x1b572008
mov eax, edx
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
or ecx, ecx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
and eax, 0xbca6565a
sub eax, 0xfb119a95
mov ecx, 0x8466f1ed
xor edx, edx
div ecx
mov dword [rbp - 0x44], eax
mov eax, 0x88008be3
xor eax, 0x738d7ecf
mov dword [rbp - 0x48], eax
mov dword [rbp + 0x11c], 4
mov ecx, 0xec
sub rsp, 0x20
call fcn.140060afe
mov rdx, qword [rbp + 0xe0]
mov ecx, dword [rbp - 0x48]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp - 0x44]
mov qword [rbp - 0x40], r8
cmp byte [rdx], 0
sete dl
mov byte [rbp - 0x31], dl
cmp eax, ecx
je 0x140189e5d
mov al, byte [rbp - 0x31]
test al, 1
jne 0x14018994c
jmp 0x140189d84
mov rax, qword [rbp - 0x40]
cmp rax, 0
je 0x140189974
mov rcx, qword [rbp - 0x40]
xor eax, eax
mov edx, eax
sub rsp, 0x20
call fcn.140013580
add rsp, 0x20
jmp 0x140189d84
mov rax, qword [rbp + 0xb0]
mov rcx, qword [rbp + 0xc0]
mov qword [rbp + 0x120], rcx
mov rcx, qword [rax]
mov rdx, qword [rbp + 0x140]
lea r8, [rbp + 0x130]
lea r9, [rbp + 0x100]
sub rsp, 0x20
call fcn.1400a385b
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0xe0]
mov dword [rbp - 0x4c], ecx
cmp byte [rax], 0
jne 0x140189d84
mov eax, dword [rbp - 0x4c]
cmp eax, 0
je 0x140189b1c
mov eax, dword [0x1401df860]
mov edx, dword [0x1401df864]
xor ecx, ecx
sub ecx, edx
add eax, ecx
mov ecx, 0xdcb01ce8
xor ecx, 0xc041c50a
imul eax, ecx
mov edx, 0x6606adf8
xor edx, 0x7888d2b4
mov ecx, eax
and ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0x57796ba6
xor edx, 0x49f714ea
mov r8d, 0x5a991593
xor r8d, 0xa566ea6c
xor edx, r8d
or eax, edx
and ecx, eax
xor ecx, 0xffffffff
mov eax, ecx
or eax, 0x9f5c3913
mov edx, 0x6da0cdd6
xor edx, 0x925f3229
xor eax, edx
or ecx, 0x9f5c3913
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
cmp eax, 0x2d832575
jb 0x140189e66
mov eax, dword [0x1401df868]
xor edx, edx
div dword [0x1401df86c]
and eax, 0xd8fe9150
sub eax, 0xd81f8158
mov ecx, 0xe120ae33
xor ecx, 0xe2c12d54
or eax, ecx
mov dword [rbp - 0x50], eax
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.1400133d1
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x1401eb5d0]
mov qword [rcx], rax
lea rax, [0x1401eaf80]
mov qword [rcx + 0x10], rax
mov rax, qword [0x1401eafd0]
mov qword [rcx + 0x18], rax
mov rax, qword [0x1401eafd8]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
movabs rax, 0x1b7f439492d55367
movabs rdx, 0x1b7f4394b797f804
xor rax, rdx
lea rdx, [0x1401eaf80]
lea r8, [0x1401eafad]
lea r9, [0x1401eafa2]
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.14001331d
mov eax, dword [rbp - 0x50]
add rsp, 0x30
cmp eax, 0xee2ed72f
je 0x140189e66
jmp 0x140189d84
mov rdx, qword [rbp + 0xc8]
mov qword [rdx], 0
mov rcx, qword [rbp + 0x140]
sub rsp, 0x20
call fcn.1400a533d
add rsp, 0x20
mov rax, qword [rbp + 0xe0]
mov al, byte [rax]
mov cl, 0x18
xor cl, 0x18
cmp al, cl
jne 0x140189d84
mov rax, qword [rbp + 0xc8]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400a1dfe
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp - 0x58], rcx
cmp byte [rax], 0
jne 0x140189d84
mov rax, qword [rbp + 0xc8]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400a1e1f
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp - 0x60], rcx
cmp byte [rax], 0
jne 0x140189d84
mov rax, qword [rbp - 0x60]
movabs rcx, 0x96cdfb672b5df533
movabs rdx, 0x96cdfb672b5df533
xor rcx, rdx
cmp rax, rcx
jge 0x140189bf8
mov rcx, qword [rbp - 0x60]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14000d167
add rsp, 0x20
jmp 0x140189d84
mov rcx, qword [rbp + 0xd0]
mov rdx, qword [rbp - 0x60]
sub rsp, 0x20
call fcn.140019790
mov rdx, qword [rbp + 0xd0]
mov rax, qword [rbp + 0xd8]
mov rcx, qword [rbp + 0xe0]
add rsp, 0x20
mov r8, qword [rdx]
mov rax, qword [rax]
movabs r9, 0x63bef990175eb1d3
movabs rdx, 0x63bef990175eb1d3
xor r9, rdx
add rax, 8
lea rdx, [0x1401eaff0]
cmp r8, r9
cmove rax, rdx
mov qword [rbp - 0x70], rax
xor eax, eax
cmp byte [rcx], 0
mov qword [rbp - 0x68], rax
jne 0x140189d84
mov rcx, qword [rbp - 0x60]
mov rax, qword [rbp - 0x68]
mov qword [rbp - 0x78], rax
cmp rax, rcx
je 0x140189cb1
mov rax, qword [rbp - 0x78]
mov rcx, qword [rbp - 0x70]
mov rdx, qword [rbp - 0x58]
mov dl, byte [rdx + rax]
mov byte [rcx + rax], dl
movabs rcx, 0xc847d034243805fc
movabs rdx, 0xc847d034243805fd
xor rcx, rdx
add rax, rcx
mov qword [rbp - 0x68], rax
jmp 0x140189c67
mov rax, qword [rbp + 0xc8]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400a1e40
add rsp, 0x20
mov rax, qword [rbp + 0xe0]
cmp byte [rax], 0
jne 0x140189d84
mov rax, qword [rbp + 0xc8]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400a1e70
add rsp, 0x20
mov rax, qword [rbp + 0xe0]
mov al, byte [rax]
mov cl, 0xc0
xor cl, 0xc0
cmp al, cl
jne 0x140189d84
mov rdx, qword [rbp + 0x60]
mov rcx, qword [rbp + 0x70]
sub rsp, 0x20
call fcn.1400a374a
add rsp, 0x20
mov rax, qword [rbp + 0xe0]
cmp byte [rax], 0
jne 0x140189d84
mov rcx, qword [rbp + 0x68]
sub rsp, 0x20
call fcn.1400a389a
add rsp, 0x20
mov rax, qword [rbp + 0xe0]
cmp byte [rax], 0
jne 0x140189d84
mov rcx, qword [rbp + 0x70]
sub rsp, 0x20
call fcn.1400a389a
add rsp, 0x20
mov rax, qword [rbp + 0xe0]
cmp byte [rax], 0
jne 0x140189d84
mov rdx, qword [rbp + 0x78]
mov rcx, qword [rbp + 0x88]
sub rsp, 0x20
call fcn.1400a651c
add rsp, 0x20
mov rcx, qword [rbp + 0xe0]
mov rax, qword [rbp + 0xb0]
mov dl, byte [rcx]
mov byte [rbp - 0x7b], dl
mov byte [rcx], 0
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400a38bb
mov rcx, qword [rbp + 0xe0]
add rsp, 0x20
mov al, byte [rbp - 0x7b]
mov dl, 1
mov byte [rbp - 0x7a], dl
cmp byte [rcx], 0
mov byte [rbp - 0x79], al
je 0x140189dcb
mov al, byte [rbp - 0x7a]
mov byte [rbp - 0x79], al
mov al, byte [rbp - 0x79]
mov byte [rbp + 0x97], al
mov rax, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0x98]
mov dl, byte [rbp + 0x97]
mov byte [rbp - 0x7c], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.140188a26
mov rax, qword [rbp + 0xe0]
add rsp, 0x20
mov al, byte [rax]
mov cl, 9
xor cl, 9
cmp al, cl
jne 0x140189e1d
mov rax, qword [rbp + 0xe0]
mov cl, byte [rbp - 0x7c]
mov byte [rax], cl
mov rax, qword [rbp + 0xa8]
lea rsp, [rbp + 0x148]
pop rbx
pop rdi
pop rsi
pop rbp
ret
test eax, 0xe9f32607
invalid
fucomi st(6)
push rdx
jmp 0x14018905d
int3
and dword [rax - 0x4b16ba51], ecx
idiv bh
invalid
call [rcx - 0x4c1656a8]
clc
invalid
invalid
mov dword [rdx + 0x12], 0xfbe7e9bf
invalid