Function at 0x1400c15a0
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push rbp
push rsi
sub rsp, 0x258
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x170], r8
mov qword [rbp + 0x178], rdx
mov qword [rbp + 0x180], rcx
mov eax, 0x10
mov qword [rbp + 0x188], rax
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0x188]
mov rcx, rsp
mov qword [rbp + 0x1a8], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0x188]
mov rcx, rsp
mov qword [rbp + 0x1a0], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0x188]
mov rcx, rsp
mov qword [rbp + 0x190], rcx
call fcn.140215890
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x198], rax
sub rsp, 0x20
call fcn.1400c2c26
mov rcx, qword [rbp + 0x1a0]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x1a8]
mov qword [rbp + 0x1b0], rdx
mov dword [rax], 0
mov word [rcx], 0xdf
sub rsp, 0x20
call fcn.14006cf90
mov rcx, qword [rbp + 0x1b0]
add rsp, 0x20
mov qword [rbp + 0x1b8], rax
xor eax, eax
cmp byte [rcx], 0
mov dword [rbp + 0x1c4], eax
jne 0x1400c2be9
mov eax, dword [0x14021bdc8]
mov ecx, dword [0x14021bdcc]
xor ecx, 0x660d45c8
imul eax, ecx
mov ecx, 0xee5f9456
xor ecx, 0xa9c3c61
and eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x6f29a873
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x6f29a873
mov r8d, 0x5e6639c4
xor r8d, 0x314f91b7
or eax, r8d
imul eax, edx
add eax, ecx
mov r8d, 0xffffffff
xor r8d, 0xd940742d
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xd940742d
or eax, 0xd940742d
imul eax, edx
add eax, ecx
mov ecx, 0x44dd381d
xor ecx, 0xc7301565
cmp eax, ecx
jbe 0x1400c2bf9
mov ecx, dword [0x14021bdd0]
mov edx, dword [0x14021bdd4]
mov eax, ecx
xor eax, 0xffffffff
mov r8d, edx
xor r8d, 0xffffffff
and eax, r8d
xor ecx, 0xffffffff
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
mov ecx, 0xd2c9d26a
xor ecx, 0x2d362d95
xor eax, ecx
mov ecx, 0xafca87ef
xor edx, edx
div ecx
sub eax, 0xc5132e06
add eax, 0xdcbd1b40
add eax, 0xc5132e06
mov ecx, 0x7264b3dc
xor edx, edx
div ecx
mov ecx, eax
mov rax, qword [rbp + 0x1b8]
mov dword [rbp + 0x15c], ecx
mov rdx, qword [rax]
mov rcx, qword [rax + 8]
add rcx, 8
lea rax, [0x14022bee8]
cmp rdx, 0
cmove rcx, rax
mov edx, 0x80000000
mov r8d, 1
xor eax, eax
mov r9d, eax
sub rsp, 0x40
mov dword [rsp + 0x20], 3
mov dword [rsp + 0x28], pe_nt_image_headers64
mov qword [rsp + 0x30], 0
call fcn.1400b8592
mov rcx, qword [rbp + 0x1b0]
add rsp, 0x40
mov rdx, rax
mov eax, dword [rbp + 0x15c]
mov qword [rbp + 0x160], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x16f], cl
cmp eax, 0xd30f83a9
jae 0x1400c2bf9
mov cl, byte [rbp + 0x16f]
xor eax, eax
test cl, 1
mov dword [rbp + 0x1c4], eax
jne 0x1400c1825
jmp 0x1400c2be9
mov rcx, qword [rbp + 0x160]
xor eax, eax
mov edx, eax
sub rsp, 0x20
call fcn.1400b85dc
mov rcx, qword [rbp + 0x1b0]
add rsp, 0x20
mov dword [rbp + 0x158], eax
xor eax, eax
cmp byte [rcx], 0
mov dword [rbp + 0x1c4], eax
jne 0x1400c2be9
mov rax, qword [0x14022dd80]
mov rax, qword [rax]
mov al, byte [rax + 0x10]
mov byte [rbp + 0x14f], al
mov al, 0xae
xor al, 0xae
mov byte [rbp + 0x14e], al
mov rax, qword [0x14022d9b8]
sub rsp, 0x20
call qword [rax]
mov cl, byte [rbp + 0x14e]
add rsp, 0x20
mov rdx, rax
mov al, byte [rbp + 0x14f]
mov qword [rbp + 0x150], rdx
cmp al, cl
je 0x1400c18f6
mov rcx, qword [rbp + 0x150]
mov eax, dword [rbp + 0x158]
movsxd r8, eax
mov edx, 0x50e8a537
xor edx, 0x50e8a537
sub rsp, 0x20
call fcn.1400b855f
mov rdx, qword [rbp + 0x1b0]
add rsp, 0x20
mov rcx, rax
xor eax, eax
cmp byte [rdx], 0
mov qword [rbp + 0x140], rcx
mov dword [rbp + 0x1c4], eax
je 0x1400c1940
jmp 0x1400c2be9
mov rcx, qword [rbp + 0x150]
mov eax, dword [rbp + 0x158]
movsxd r8, eax
xor edx, edx
sub rsp, 0x20
call fcn.1400bbf8a
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1b0]
mov dl, byte [rax]
mov r8b, 0x67
xor r8b, 0x67
xor eax, eax
cmp dl, r8b
mov qword [rbp + 0x140], rcx
mov dword [rbp + 0x1c4], eax
jne 0x1400c2be9
mov r9, qword [rbp + 0x1a8]
mov r8d, dword [rbp + 0x158]
mov rcx, qword [rbp + 0x160]
mov rdx, qword [rbp + 0x140]
mov qword [rbp + 0x138], rdx
xor eax, eax
sub rsp, 0x30
mov qword [rsp + 0x20], 0
call fcn.1400b8607
mov rcx, qword [rbp + 0x1b0]
add rsp, 0x30
xor eax, eax
cmp byte [rcx], 0
mov dword [rbp + 0x1c4], eax
jne 0x1400c2be9
mov rcx, qword [rbp + 0x138]
movsxd r8, dword [rcx + 0x3c]
mov rdx, r8
add rdx, rcx
mov qword [rbp + 0x130], rdx
mov rax, rdx
xor rax, rcx
mov rcx, rdx
or rcx, rcx
xor rcx, 0xffffffffffffffff
mov r9, r8
xor r9, 0xffffffffffffffff
mov r10, r8
xor r10, 0xffffffffffffffff
and r9, r10
xor rcx, 0xffffffffffffffff
movabs r10, 0xe0b7b61a63b8c9b5
movabs r11, 0x1f4849e59c47364a
xor r10, r11
xor r9, r10
and rcx, r9
or rdx, r8
movabs r8, 0xc2a9dceef945f369
movabs r9, 0x3d56231106ba0c96
xor r8, r9
xor rdx, r8
or rcx, rdx
xor rcx, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jge 0x1400c1a38
sub rsp, 0x20
call fcn.140008bc6
add rsp, 0x20
xor eax, eax
mov dword [rbp + 0x1c4], eax
jmp 0x1400c2be9
mov rax, qword [rbp + 0x130]
mov rcx, rax
add rcx, 0x18
mov qword [rbp + 0x108], rcx
mov edx, dword [rax + 0x88]
mov dword [rbp + 0x114], edx
mov rdx, rax
add rdx, 0x14
mov qword [rbp + 0x118], rdx
movzx eax, word [rax + 0x14]
mov rdx, rcx
xor rdx, 0xffffffffffffffff
xor r8d, r8d
sub r8, 1
sub rdx, r8
sub rax, rdx
mov qword [rbp + 0x120], rax
mov rdx, rcx
xor rdx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
and rdx, 0xffffffffffffffff
shl rdx, 1
sub rdx, 0xffffffffffffffff
sub rcx, rdx
mov qword [rbp + 0x128], rcx
and rax, rcx
cmp rax, 0
jge 0x1400c1ace
sub rsp, 0x20
call fcn.140008bc6
add rsp, 0x20
xor eax, eax
mov dword [rbp + 0x1c4], eax
jmp 0x1400c2be9
mov rcx, qword [rbp + 0x120]
mov rax, qword [rbp + 0x130]
add rax, 6
mov qword [rbp + 0xf0], rax
xor eax, eax
mov qword [rbp + 0xf8], rcx
mov word [rbp + 0x106], ax
mov rdx, qword [rbp + 0xf0]
mov rax, qword [rbp + 0xf8]
mov cx, word [rbp + 0x106]
mov word [rbp + 0xde], cx
mov qword [rbp + 0xe0], rax
cmp cx, word [rdx]
mov qword [rbp + 0xe8], rax
jae 0x1400c1d53
mov rdx, qword [rbp + 0x128]
mov rcx, qword [rbp + 0x108]
mov rax, qword [rbp + 0x118]
movzx eax, word [rax]
movabs r8, 0xaa44a255d2f089dd
movabs r9, 0x55bb5daa2d0f7622
xor r8, r9
xor rcx, r8
xor r8d, r8d
sub r8, 1
sub rcx, r8
sub rax, rcx
mov qword [rbp + 0xd0], rax
xor rax, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
mov rcx, 0xffffffffffffffff
movabs r8, 0xb9cdc7b981618387
xor rcx, r8
or rax, rdx
movabs rdx, 0xb9cdc7b981618387
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jge 0x1400c1bc7
sub rsp, 0x20
call fcn.140008bc6
add rsp, 0x20
xor eax, eax
mov dword [rbp + 0x1c4], eax
jmp 0x1400c2be9
mov rcx, qword [rbp + 0xd0]
mov ax, word [rbp + 0xde]
mov dx, 0x1ee7
xor dx, 0x1ecf
imul ax, dx
movzx eax, ax
mov edx, eax
mov rax, rcx
add rax, rdx
mov qword [rbp + 0xc8], rax
xor rcx, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0x7f2eed5eaa90e99c
movabs rdx, 0x7f2eed5eaa90e99c
xor rcx, rdx
cmp rax, rcx
jge 0x1400c1c35
sub rsp, 0x20
call fcn.140008bc6
add rsp, 0x20
xor eax, eax
mov dword [rbp + 0x1c4], eax
jmp 0x1400c2be9
mov rcx, qword [rbp + 0xc8]
sub rsp, 0x20
mov edx, 6
call fcn.140071240
mov r8, qword [rbp + 0x1b0]
mov r10, qword [rbp + 0xc8]
mov rcx, qword [rbp + 0xe0]
add rsp, 0x20
mov rdx, rax
mov ax, word [rbp + 0xde]
mov r9d, 0xbef6c673
sub rdx, r9
setne dl
mov r9b, byte [r8]
mov r8, rcx
cmove r8, r10
movzx edx, dl
shl edx, 3
test r9b, r9b
cmove rcx, r8
mov qword [rbp + 0xb8], rcx
mov ecx, 2
cmove ecx, edx
mov dl, cl
test dl, 2
mov dword [rbp + 0xc0], ecx
mov word [rbp + 0xc6], ax
je 0x1400c1cbc
jmp 0x1400c1ce6
mov ax, word [rbp + 0xde]
mov cx, 0x3fe1
xor cx, 0xefab
sub ax, cx
add ax, 1
add ax, 0xd04a
xor ecx, ecx
mov dword [rbp + 0xc0], ecx
mov word [rbp + 0xc6], ax
mov rcx, qword [rbp + 0xb8]
mov edx, dword [rbp + 0xc0]
mov ax, word [rbp + 0xc6]
mov dword [rbp + 0xb0], edx
xor r8d, r8d
mov dword [rbp + 0xb4], r8d
test edx, edx
mov qword [rbp + 0xf8], rcx
mov word [rbp + 0x106], ax
je 0x1400c1af7
jmp 0x1400c1d25
mov eax, dword [rbp + 0xb4]
mov rcx, qword [rbp + 0xb8]
mov edx, dword [rbp + 0xb0]
sub edx, 7
mov qword [rbp + 0xe8], rcx
mov dword [rbp + 0x1c4], eax
jne 0x1400c2be9
jmp 0x1400c1d53
mov r9, qword [rbp + 0x138]
mov eax, dword [rbp + 0x114]
mov rcx, qword [rbp + 0xe8]
mov qword [rbp + 0xa0], rcx
movsxd rdx, eax
mov rax, rdx
and rax, r9
movabs rcx, 0x37cb1fa14eab0546
movabs r8, 0x37cb1fa14eab0544
xor rcx, r8
imul rax, rcx
mov rcx, rdx
xor rcx, r9
add rcx, rax
mov qword [rbp + 0xa8], rcx
mov r8, rcx
xor r8, 0xffffffffffffffff
mov rax, r9
and rax, r8
movabs r8, 0x8878ba95cfc4c114
movabs r10, 0x7787456a303b3eeb
xor r8, r10
xor r9, r8
mov r8, rcx
and r8, r9
or rax, r8
xor rcx, rdx
movabs rdx, 0x3d9c2f530fcaecd1
movabs r8, 0xc263d0acf035132e
xor rdx, r8
xor rax, rdx
xor rcx, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs r8, 0x31ee8d7eeeeaa300
xor rdx, r8
or rax, rcx
movabs rcx, 0xc5c5c5d67f7e6949
movabs r8, 0xf42b48a89194ca49
xor rcx, r8
or rcx, rdx
movabs rdx, 0x4fef8de78cd0bb45
movabs r8, 0xb0107218732f44ba
xor rdx, r8
xor rax, rdx
and rax, rcx
movabs rcx, 0xa71ab9f00ba01b1
movabs rdx, 0xa71ab9f00ba01b1
xor rcx, rdx
cmp rax, rcx
jge 0x1400c1e7b
sub rsp, 0x20
call fcn.140008bc6
add rsp, 0x20
xor eax, eax
mov dword [rbp + 0x1c4], eax
jmp 0x1400c2be9
mov rdx, qword [rbp + 0xa0]
mov rcx, qword [rbp + 0xa8]
sub rsp, 0x20
call fcn.1400c1350
mov rcx, qword [rbp + 0x1b0]
add rsp, 0x20
mov qword [rbp + 0x98], rax
xor eax, eax
cmp byte [rcx], 0
mov dword [rbp + 0x1c4], eax
jne 0x1400c2be9
mov rax, qword [rbp + 0x138]
mov rcx, qword [rbp + 0x98]
movsxd r8, dword [rcx + 0x20]
mov rcx, rax
xor rcx, 0xffffffffffffffff
xor edx, edx
sub rdx, 1
sub rcx, rdx
mov r9, r8
sub r9, rcx
mov qword [rbp + 0x90], r9
mov rcx, r9
xor rcx, rax
mov rax, r9
xor rax, 0xffffffffffffffff
movabs rdx, 0xb0b5755dd3da2ba5
movabs r10, 0xe892bf62f045e3ae
xor rdx, r10
and rdx, rax
mov r10, 0xffffffffffffffff
movabs rax, 0x5827ca3f239fc80b
xor r10, rax
and r9, r10
mov rax, r8
xor rax, 0xffffffffffffffff
movabs r11, 0x5827ca3f239fc80b
and rax, r11
and r8, r10
or rdx, r9
or rax, r8
xor rdx, rax
movabs rax, 0x600c9df9d4c53ae1
movabs r8, 0x9ff362062b3ac51e
xor rax, r8
xor rdx, rax
mov rax, rcx
xor rax, rdx
and rax, rcx
cmp rax, 0
jge 0x1400c1f89
sub rsp, 0x20
call fcn.140008bc6
add rsp, 0x20
xor eax, eax
mov dword [rbp + 0x1c4], eax
jmp 0x1400c2be9
mov rdx, qword [rbp + 0xa0]
mov rcx, qword [rbp + 0x90]
sub rsp, 0x20
call fcn.1400c1350
mov rcx, qword [rbp + 0x1b0]
add rsp, 0x20
mov qword [rbp + 0x88], rax
xor eax, eax
cmp byte [rcx], 0
mov dword [rbp + 0x1c4], eax
jne 0x1400c2be9
mov r8, qword [rbp + 0x138]
mov rax, qword [rbp + 0x98]
movsxd rax, dword [rax + 0x1c]
mov rcx, rax
add rcx, r8
mov qword [rbp + 0x80], rcx
mov rdx, rcx
xor rdx, r8
xor rcx, rax
mov rax, rdx
xor rax, 0xffffffffffffffff
movabs r8, 0x3f3d84b42ed0468
movabs r9, 0xfc0c27b4bd12fb97
xor r8, r9
xor rdx, r8
and rax, rdx
or rcx, rcx
xor rcx, 0xffffffffffffffff
or rax, rcx
xor rax, 0xffffffffffffffff
movabs rcx, 0x837d44d853b423e8
movabs rdx, 0x837d44d853b423e8
xor rcx, rdx
cmp rax, rcx
jge 0x1400c2111
mov eax, dword [0x14021bdd8]
mov ecx, 0x26abb164
xor ecx, 0x2ba9a2b5
xor eax, ecx
or eax, dword [0x14021bddc]
mov ecx, 0xffffffff
xor ecx, 0x1c9466e1
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, 0x44cd3370
xor eax, 0x44cd3370
mov edx, 0xb4386cb
xor edx, 0x410679cf
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, 0x5d9f7609
add eax, ecx
mov ecx, 0x7b2db9ba
xor ecx, 0x96855af5
cmp eax, ecx
ja 0x1400c2c02
mov eax, dword [0x14021bde0]
mov edx, dword [0x14021bde4]
mov ecx, 0xb4d264da
xor ecx, 0xb4d264da
sub ecx, eax
mov eax, 0x7904370b
xor eax, 0x7904370b
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
or eax, 0x5894ce88
and eax, 0x47c67523
mov ecx, 0xe6d439ae
xor edx, edx
div ecx
mov dword [rbp + 0x7c], eax
sub rsp, 0x20
call fcn.140008bc6
mov eax, dword [rbp + 0x7c]
add rsp, 0x20
cmp eax, 0xc58bea8e
ja 0x1400c2c02
xor eax, eax
mov dword [rbp + 0x1c4], eax
jmp 0x1400c2be9
mov rdx, qword [rbp + 0xa0]
mov rcx, qword [rbp + 0x80]
sub rsp, 0x20
call fcn.1400c1350
mov rcx, qword [rbp + 0x1b0]
add rsp, 0x20
mov qword [rbp + 0x70], rax
xor eax, eax
cmp byte [rcx], 0
mov dword [rbp + 0x1c4], eax
jne 0x1400c2be9
mov eax, dword [0x14021bde8]
sub eax, dword [0x14021bdec]
imul eax, eax, 0xfaacf1ee
mov ecx, 0xff491d21
xor ecx, 0x8e16ca4b
imul eax, ecx
add eax, 0xe1bdaa3d
cmp eax, 0xe692775d
je 0x1400c2c0b
mov rcx, qword [rbp + 0x170]
mov rdx, qword [rbp + 0x98]
mov eax, dword [0x14021bdf0]
xor eax, 0xd9f93903
mov r9d, dword [0x14021bdf4]
mov r10d, 0x98627d10
xor r10d, 0x679d82ef
mov r8d, eax
xor r8d, r10d
and r8d, r9d
xor r9d, 0xffffffff
and eax, r9d
sub eax, r8d
mov r8d, 0x9cc000b8
xor r8d, 0x16bbc023
imul eax, r8d
xor r8d, r8d
sub r8d, 0x2f4cb9e4
sub eax, r8d
mov r8d, 0x5c7778ca
xor r8d, 0xa3888735
mov r9d, eax
xor r9d, r8d
and r9d, 0x87124931
mov r10d, 0xffffffff
xor r10d, 0x87124931
mov r8d, eax
and r8d, r10d
imul r8d, r9d
mov r10d, 0x41018d8c
xor r10d, 0xc613c4bd
mov r9d, eax
and r9d, r10d
mov r10d, 0x6ed039c7
xor r10d, 0xe9c270f6
or eax, r10d
imul eax, r9d
add eax, r8d
add rdx, 0x18
mov qword [rbp + 0x60], rdx
add rcx, 8
mov qword [rbp + 0x68], rcx
cmp eax, 0x29c442f4
jbe 0x1400c2c0b
xor eax, eax
mov ecx, eax
xor eax, eax
mov qword [rbp + 0x50], rcx
mov dword [rbp + 0x5c], eax
jmp 0x1400c225e
mov rcx, qword [rbp + 0x60]
mov rax, qword [rbp + 0x50]
mov edx, dword [rbp + 0x5c]
mov dword [rbp + 0x44], edx
mov qword [rbp + 0x48], rax
movsxd rcx, dword [rcx]
cmp rax, rcx
jge 0x1400c2b11
mov rcx, qword [rbp + 0x48]
lea rdx, [rbp + 0x1d0]
sub rsp, 0x20
call fcn.1400c2c50
add rsp, 0x20
test al, 1
jne 0x1400c22a1
jmp 0x1400c22b3
sub rsp, 0x20
call fcn.140008bc6
add rsp, 0x20
jmp 0x1400c2b04
mov r8, qword [rbp + 0x138]
mov rcx, qword [rbp + 0x88]
mov rax, qword [rbp + 0x1d0]
movabs rdx, 0x3b2a6e2bd445802d
add rax, rdx
add rax, rcx
movabs rcx, 0x3b2a6e2bd445802d
sub rax, rcx
movsxd rdx, dword [rax]
movabs rcx, 0x9322839bd361e623
movabs rax, 0x6cdd7c642c9e19dc
xor rcx, rax
mov rax, r8
xor rax, rcx
xor ecx, ecx
sub rcx, 1
sub rax, rcx
mov rcx, rdx
sub rcx, rax
mov qword [rbp + 0x38], rcx
mov rax, rcx
xor rax, r8
xor rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x1400c2340
sub rsp, 0x20
call fcn.140008bc6
add rsp, 0x20
jmp 0x1400c2b04
mov rdx, qword [rbp + 0xa0]
mov rcx, qword [rbp + 0x38]
sub rsp, 0x20
call fcn.1400c1350
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1b0]
mov qword [rbp + 0x30], rcx
cmp byte [rax], 0
jne 0x1400c2b04
mov rcx, qword [rbp + 0x48]
movabs rax, 0xebf247a0bd74f770
add rcx, rax
add rcx, 1
movabs rax, 0xebf247a0bd74f770
sub rcx, rax
mov qword [rbp + 0x28], rcx
lea rdx, [rbp + 0x1c8]
sub rsp, 0x20
call fcn.1400c2c50
add rsp, 0x20
test al, 1
jne 0x1400c23b6
jmp 0x1400c23c8
sub rsp, 0x20
call fcn.140008bc6
add rsp, 0x20
jmp 0x1400c2b04
mov r9, qword [rbp + 0x138]
mov rax, qword [rbp + 0x70]
add rax, qword [rbp + 0x1c8]
movsxd rcx, dword [rax]
mov rdx, rcx
add rdx, r9
mov qword [rbp + 0x20], rdx
mov rax, rdx
xor rax, 0xffffffffffffffff
movabs r10, 0x235d1274488e8b70
movabs r8, 0xdca2ed8bb771748f
xor r10, r8
mov r8, rdx
xor r8, r10
or rax, r8
and rax, r9
xor rax, 0xffffffffffffffff
and r9, r9
xor r9, 0xffffffffffffffff
mov r8, rdx
and r8, r9
xor r8, 0xffffffffffffffff
and rax, r8
xor rax, 0xffffffffffffffff
xor rdx, rcx
movabs r8, 0x5e280806c5f3dd3c
movabs rcx, 0x5e280806c5f3dd3d
xor r8, rcx
mov rcx, rax
add rcx, r8
xor rax, 0xffffffffffffffff
or rax, rdx
add rax, rcx
cmp rax, 0
jge 0x1400c2473
sub rsp, 0x20
call fcn.140008bc6
add rsp, 0x20
jmp 0x1400c2b04
mov rdx, qword [rbp + 0x120]
mov rcx, qword [rbp + 0x20]
sub rsp, 0x20
call fcn.1400c1350
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1b0]
mov qword [rbp + 0x18], rcx
cmp byte [rax], 0
jne 0x1400c2b04
mov eax, dword [0x14021bdf8]
xor eax, 0x8f2ef6b2
add eax, dword [0x14021bdfc]
mov r8d, 0xffffffff
xor r8d, 0x9dee03c8
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x9d34fd8f
xor r8d, 0x62cb0270
xor ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x9dee03c8
or eax, 0x9dee03c8
imul eax, edx
add eax, ecx
mov ecx, 0x1f6ae8e1
xor edx, edx
div ecx
mov ecx, 0xce23632b
xor edx, edx
div ecx
mov ecx, 0xf0cd02ca
xor ecx, 0x1399e00d
cmp eax, ecx
jae 0x1400c2c14
mov rcx, qword [rbp + 0x30]
mov eax, dword [0x14021be00]
mov r9d, dword [0x14021be04]
mov edx, 0xb078f36f
xor edx, 0x4f870c90
mov r10d, r9d
xor r10d, edx
mov r8d, eax
and r8d, r10d
mov edx, eax
or edx, r10d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, edx
or eax, 0x63995209
mov edx, 0x238bcbed
xor edx, 0xd990f49
xor eax, edx
sub eax, 0x44c04120
cmp rcx, 0
sete cl
mov byte [rbp + 0x17], cl
cmp eax, 0x5fa86e5d
ja 0x1400c2c14
mov rcx, qword [rbp + 0x30]
mov dl, byte [rbp + 0x17]
xor eax, eax
test dl, 1
mov rdx, rax
mov qword [rbp - 8], rdx
mov qword [rbp], rcx
mov qword [rbp + 8], rax
jne 0x1400c2620
jmp 0x1400c25a9
mov rax, qword [rbp - 8]
mov rcx, qword [rbp]
mov qword [rbp - 0x18], rcx
mov qword [rbp - 0x10], rax
cmp byte [rcx], 0
mov qword [rbp + 8], rax
je 0x1400c2620
mov r8, qword [rbp - 0x10]
mov rax, qword [rbp - 0x18]
movabs rcx, 0x6450343fb9e4a24b
movabs rdx, 0x6450343fb9e4a24a
xor rcx, rdx
add rax, rcx
mov rcx, r8
add rcx, 1
xor r8, 0xffffffffffffffff
mov rdx, rcx
and rdx, r8
cmp rdx, 0
mov qword [rbp - 8], rcx
mov qword [rbp], rax
jge 0x1400c25a9
sub rsp, 0x20
call fcn.140008bc6
mov rax, qword [rbp - 0x10]
add rsp, 0x20
mov qword [rbp + 8], rax
mov rdx, qword [rbp + 8]
mov qword [rbp - 0x20], rdx
mov rax, rdx
add rax, 0xffffffffffffffff
mov rcx, rax
xor rcx, rdx
cmp rcx, 0
setl cl
cmp rax, 0xffffffffffffffff
setg al
and al, cl
test al, 1
jne 0x1400c2652
jmp 0x1400c2664
sub rsp, 0x20
call fcn.140008bc6
add rsp, 0x20
jmp 0x1400c2b04
mov rcx, qword [rbp + 0x170]
mov rax, qword [rbp + 0x68]
mov rax, qword [rax]
mov qword [rbp - 0x30], rax
mov rcx, qword [rcx]
mov qword [rbp - 0x28], rcx
cmp rax, 0
je 0x1400c26aa
mov rax, qword [rbp - 0x28]
mov r8, qword [rbp - 0x30]
mov rdx, qword [rbp - 0x20]
mov rcx, qword [rbp + 0x30]
sub rsp, 0x20
call rax
add rsp, 0x20
mov qword [rbp - 0x38], rax
jmp 0x1400c26c4
mov rax, qword [rbp - 0x28]
mov rdx, qword [rbp - 0x20]
mov rcx, qword [rbp + 0x30]
sub rsp, 0x20
call rax
add rsp, 0x20
mov qword [rbp - 0x38], rax
mov rax, qword [rbp + 0x1b0]
mov rcx, qword [rbp - 0x38]
mov qword [rbp - 0x40], rcx
cmp byte [rax], 0
jne 0x1400c2b04
mov eax, dword [rbp + 0x44]
mov rcx, qword [rbp - 0x40]
mov rdx, qword [rbp + 0x180]
cmp rcx, rdx
mov dword [rbp - 0x44], eax
jne 0x1400c2af1
mov rax, qword [rbp + 0x18]
mov rcx, qword [0x14022dd80]
mov rcx, qword [rcx]
cmp byte [rcx + 0x10], 0
mov qword [rbp - 0x50], rax
je 0x1400c2a46
mov rax, qword [rbp + 0x48]
invalid
invalid
invalid
invalid