Function at 0x14015b390
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
sub rsp, 0x188
lea rbp, [rsp + 0x80]
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], rcx
mov eax, dword [0x1402597e0]
mov ecx, dword [0x1402597e4]
mov edx, 0x9de2a2ff
xor edx, 0xe3809fbf
sub eax, edx
add eax, ecx
add eax, 0x7e623d40
mov edx, eax
xor edx, 0xffffffff
and edx, 0x683d9362
mov r8d, 0xffffffff
xor r8d, 0x683d9362
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x683d9362
mov r8d, 0x9e2b6eed
xor r8d, 0xf616fd8f
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xc61d6b3a
xor edx, edx
div ecx
mov ecx, 0x4f61e422
xor edx, edx
div ecx
cmp eax, 0xa940c5d5
je 0x14015c5e2
mov eax, dword [0x1402597e8]
xor eax, 0x7c2212f7
mov ecx, dword [0x1402597ec]
xor ecx, 0x871619c3
sub eax, ecx
and eax, 0xf7bb7d16
add eax, 0xf7ac5
mov ecx, 0x95d79a4d
imul rax, rcx
shr rax, 0x3f
mov dword [rbp + 0xe4], eax
mov eax, 0x10
mov qword [rbp + 0x98], rax
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x98]
mov rcx, rsp
mov qword [rbp + 0xd0], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x98]
mov rcx, rsp
mov qword [rbp + 0x28], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x98]
mov rcx, rsp
mov qword [rbp + 0x30], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x98]
mov rcx, rsp
mov qword [rbp + 0x38], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x98]
mov rcx, rsp
mov qword [rbp + 0x40], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x48], rax
mov eax, 0x20
mov qword [rbp + 0xb0], rax
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0xb0]
mov rcx, rsp
mov qword [rbp + 0x50], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x98]
mov rcx, rsp
mov qword [rbp + 0x58], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0xb0]
mov rcx, rsp
mov qword [rbp + 0x60], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x98]
mov rcx, rsp
mov qword [rbp + 0x68], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x98]
mov rcx, rsp
mov qword [rbp + 0x70], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x98]
mov rcx, rsp
mov qword [rbp + 0x78], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0xb0]
mov rcx, rsp
mov qword [rbp + 0x80], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x98]
mov rcx, rsp
mov qword [rbp + 0x88], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x98]
mov rcx, rsp
mov qword [rbp + 0x90], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x98]
mov rcx, rsp
mov qword [rbp + 0xa0], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0xb0]
mov rcx, rsp
mov qword [rbp + 0xa8], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0xb0]
mov rcx, rsp
mov qword [rbp + 0xb8], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xc0], rax
sub rsp, 0x20
call fcn.1401a68de
mov rcx, qword [rbp + 0xf8]
add rsp, 0x20
mov qword [rbp + 0xd8], rax
add rax, 0x50
mov qword [rbp + 0xc8], rax
mov edx, 0x18
sub rsp, 0x20
call fcn.14015c640
mov rcx, qword [rbp + 0xd0]
add rsp, 0x20
mov word [rcx], 0x5ff
sub rsp, 0x20
call fcn.140067800
mov rcx, qword [rbp + 0xd8]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0xe4]
mov qword [rbp + 0xe8], rdx
cmp byte [rcx + 0x50], 0
sete cl
mov byte [rbp + 0xf7], cl
cmp eax, 0xb5146c0
ja 0x14015c5e2
mov al, byte [rbp + 0xf7]
test al, 1
jne 0x14015b6b6
jmp 0x14015c3aa
mov rcx, qword [rbp + 0x28]
mov edx, 0x10
sub rsp, 0x20
call fcn.14015c640
mov rax, qword [rbp + 0xe8]
mov rcx, qword [rbp + 0x28]
mov r8, qword [rbp + 0x60]
add rsp, 0x20
mov rdx, qword [rax]
mov qword [r8], rdx
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
mov rdx, 0xffffffff80000002
mov r9d, 0x20019
sub rsp, 0x20
call fcn.1400e49d6
mov rax, qword [rbp + 0xc8]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14015c3aa
mov rax, qword [rbp + 0x28]
mov rcx, qword [rax]
mov qword [rbp + 0x20], rcx
cmp byte [rax + 8], 0
jne 0x14015b79f
sub rsp, 0x20
call fcn.14008e1a0
add rsp, 0x20
mov rax, qword [rbp + 0xc8]
cmp byte [rax], 0
jne 0x14015c3aa
mov rcx, qword [rbp + 0x68]
mov edx, 0x18
sub rsp, 0x20
call fcn.14015c640
mov rcx, qword [rbp + 0x68]
call fcn.14015c830
mov rax, qword [rbp + 0xc8]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14015b79a
mov rax, qword [rbp + 0xf8]
mov rcx, qword [rbp + 0x68]
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rdx, qword [rcx + 8]
mov qword [rax + 8], rdx
mov rcx, qword [rcx + 0x10]
mov qword [rax + 0x10], rcx
jmp 0x14015c5d1
jmp 0x14015c3aa
mov eax, dword [0x1402597f0]
xor eax, 0x2c7c1ceb
xor edx, edx
div dword [0x1402597f4]
sub eax, 0x62f7aaf6
and eax, 0xe88b0b3b
add eax, 0x375788c1
cmp eax, 0x3a1dcb42
jbe 0x14015c5eb
mov rcx, qword [rbp + 0x30]
mov eax, dword [0x1402597f8]
mov r8d, dword [0x1402597fc]
xor edx, edx
sub edx, eax
xor eax, eax
sub eax, r8d
add edx, eax
xor eax, eax
sub eax, edx
mov r8d, 0xa6722bcf
xor edx, edx
div r8d
mov edx, eax
mov eax, edx
xor eax, 0xffffffff
mov r8d, edx
xor r8d, 0xffffffff
and eax, r8d
mov r8d, 0x403a58d4
xor r8d, 0xdea1a705
mov r9d, 0xebae1410
xor r9d, 0x1451ebef
xor r8d, r9d
mov r9d, 0xffffffff
xor r9d, 0x9e9bffd1
and r8d, r9d
xor eax, 0xffffffff
mov r9d, 0x2b7e023f
xor r9d, 0xd481fdc0
xor r8d, r9d
and eax, r8d
or edx, 0x9e9bffd1
xor edx, 0xffffffff
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
mov edx, 0xad2a163c
xor edx, 0xb12ba6e4
imul eax, edx
mov dword [rbp + 0xc], eax
mov word [rcx], 0x5fa
sub rsp, 0x20
call fcn.140067800
mov rcx, qword [rbp + 0xc8]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0xc]
mov qword [rbp + 0x10], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x1f], cl
cmp eax, 0xd85e2d20
ja 0x14015c5eb
mov al, byte [rbp + 0x1f]
test al, 1
jne 0x14015b8b4
jmp 0x14015c287
mov eax, dword [0x140259800]
xor eax, 0x6c6026dc
mov ecx, dword [0x140259804]
mov edx, 0x736554b
xor edx, 0x9408b10a
xor ecx, edx
add eax, ecx
xor eax, 0x22ce4d4b
imul eax, eax, 0x5efe9260
mov r8d, 0xffffffff
xor r8d, 0x17975def
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x17975def
mov r8d, 0xcb005fa7
xor r8d, 0xdc970248
or eax, r8d
imul eax, edx
add eax, ecx
cmp eax, 0xf91be95b
jae 0x14015c5f4
mov rcx, qword [rbp + 0x70]
mov rdx, qword [rbp + 0x78]
mov rax, qword [rbp + 0x10]
mov r9d, dword [0x140259808]
xor r9d, 0xb157ff43
mov r8d, dword [0x14025980c]
mov r10d, 0x2818d50a
xor r10d, 0xbf0b05ca
xor r8d, r10d
add r9d, r8d
sub r9d, 0xdf95d761
mov r8d, 0x9aa0f77d
xor r8d, 0x3b5e6871
imul r9d, r8d
mov r8d, r9d
xor r8d, 0xffffffff
mov r10d, r9d
xor r10d, 0xffffffff
or r8d, r10d
and r8d, 0x6cfa7a83
xor r8d, 0xffffffff
mov r10d, 0xffffffff
xor r10d, 0x6cfa7a83
mov r11d, 0xf2eccbd
xor r11d, 0x63d4b63e
mov esi, 0x4555f084
xor esi, 0xbaaa0f7b
xor r11d, esi
or r10d, r11d
and r9d, r10d
xor r9d, 0xffffffff
and r8d, r9d
xor r8d, 0xffffffff
mov dword [rbp - 4], r8d
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001cda0
mov rax, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x38]
add rsp, 0x20
mov rdx, qword [rax]
mov qword [rbp - 0x18], rdx
mov rax, qword [rax + 8]
mov qword [rbp - 0x10], rax
mov edx, 8
sub rsp, 0x20
call fcn.14015c640
mov r8, qword [rbp - 0x18]
mov rax, qword [rbp - 0x10]
mov rcx, qword [rbp + 0x20]
mov rdx, qword [rbp + 0x80]
add rsp, 0x20
mov qword [rdx], r8
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.1400e5200
mov rcx, qword [rbp + 0xc8]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 4]
mov qword [rbp], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0xb], cl
cmp eax, 0xc848e862
je 0x14015c5f4
mov al, byte [rbp + 0xb]
test al, 1
jne 0x14015ba69
jmp 0x14015c287
mov r11d, dword [0x140259810]
xor r11d, 0x69fe84cf
mov eax, dword [0x140259814]
xor eax, 0x1a6f0a36
or r11d, eax
mov ecx, r11d
xor ecx, 0xffffffff
mov edx, 0xa46731a2
xor edx, 0x33d53dba
mov eax, 0xd63135
xor eax, 0xff29ceca
xor edx, eax
mov r8d, 0xffffffff
xor r8d, 0x9243a0c1
mov eax, ecx
and eax, 0x9243a0c1
and r11d, r8d
mov r9d, edx
and r9d, 0x9243a0c1
mov r10d, r8d
and r10d, 0x97b20c18
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, edx
mov edx, 0x99aabac8
xor edx, 0x66554537
xor ecx, edx
mov edx, 0xbd702b8b
xor edx, 0x2f338b4a
or edx, r8d
and ecx, edx
or eax, ecx
mov ecx, 0xfaf5329e
xor ecx, 0x7ac62658
xor edx, edx
div ecx
imul eax, eax, 0x15eec3b6
cmp eax, 0xac4d8279
ja 0x14015c5fd
mov rcx, qword [rbp]
mov edx, dword [0x140259818]
mov r8d, dword [0x14025981c]
xor r8d, 0xffffffff
mov eax, edx
xor eax, r8d
and eax, edx
mov r8d, 0xd304cbdc
xor edx, edx
div r8d
sub eax, 0x31777b51
mov edx, eax
xor edx, 0x935160b2
mov r8d, 0x7105fef2
xor r8d, 0x8efa010d
xor edx, r8d
mov r8d, 0xacc8d2f5
xor r8d, 0x3f99b247
or eax, r8d
and eax, edx
mov edx, ecx
mov dword [rbp - 0x20], edx
movabs rdx, 0x100000000
and rcx, rdx
movabs rdx, 0x8d50a4b1d6d11092
movabs r8, 0x8d50a4b1d6d11092
xor rdx, r8
cmp rcx, rdx
sete cl
mov byte [rbp - 0x19], cl
cmp eax, 0x73e09c61
jbe 0x14015c5fd
mov al, byte [rbp - 0x19]
test al, 1
jne 0x14015bbba
jmp 0x14015bdd1
sub rsp, 0x20
call fcn.14008e1b8
add rsp, 0x20
mov rax, qword [rbp + 0xc8]
mov al, byte [rax]
mov cl, 0x1b
xor cl, 0x1b
cmp al, cl
jne 0x14015c287
mov rcx, qword [rbp + 0x88]
mov edx, 0x18
sub rsp, 0x20
call fcn.14015c640
mov rcx, qword [rbp + 0x88]
call fcn.14015c830
mov rax, qword [rbp + 0xc8]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x5c
xor cl, 0x5c
cmp al, cl
je 0x14015bc9e
mov eax, dword [0x140259820]
add eax, dword [0x140259824]
xor ecx, ecx
sub ecx, 0x887af86
add eax, ecx
sub eax, 0x1a7743c5
or eax, eax
xor eax, 0xffffffff
mov ecx, 0x80631eca
or ecx, 0x80631eca
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
cmp eax, 0x15dd274c
ja 0x14015c606
mov eax, dword [0x140259828]
xor eax, dword [0x14025982c]
and eax, 0x2708d0d
add eax, 0x3153b49f
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x772496fd
mov edx, 0xffffffff
xor edx, 0x772496fd
and eax, edx
sub eax, ecx
mov ecx, 0x3cba88c7
xor ecx, 0xf2ae413f
cmp eax, ecx
ja 0x14015c606
jmp 0x14015c287
mov eax, dword [0x140259830]
mov ecx, dword [0x140259834]
xor ecx, 0xecde5a15
or eax, ecx
and eax, 0xfe8bc2ad
or eax, eax
mov ecx, 0x25250dbc
xor ecx, 0xdadaf243
xor eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x8d3a0c69
mov edx, 0xffffffff
xor edx, 0x8d3a0c69
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
and eax, 0x69367dee
cmp eax, 0xc77cbda5
je 0x14015c60f
mov rcx, qword [rbp + 0x20]
mov rax, qword [rbp + 0xf8]
mov rdx, qword [rbp + 0x88]
mov r9d, dword [0x140259838]
sub r9d, dword [0x14025983c]
and r9d, 0x55780080
mov r10d, r9d
xor r10d, 0xffffffff
and r10d, 0xe353c45f
mov r11d, 0xffffffff
xor r11d, 0xe353c45f
mov r8d, r9d
and r8d, r11d
imul r8d, r10d
mov r11d, 0x5552ef72
xor r11d, 0xb6012b2d
mov r10d, r9d
and r10d, r11d
or r9d, 0xe353c45f
imul r9d, r10d
add r9d, r8d
mov r10d, 0xffffffff
xor r10d, 0x7615f958
mov r8d, r9d
xor r8d, r10d
and r8d, r9d
mov dword [rbp - 0x28], r8d
mov r8, qword [rdx]
mov qword [rax], r8
mov r8, qword [rdx + 8]
mov qword [rax + 8], r8
mov rdx, qword [rdx + 0x10]
mov qword [rax + 0x10], rdx
sub rsp, 0x20
call fcn.1400e5707
mov rcx, qword [rbp + 0xc8]
mov eax, dword [rbp - 0x28]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0x10
xor dl, 0x10
cmp cl, dl
sete cl
mov byte [rbp - 0x21], cl
cmp eax, 0xb435f5b7
ja 0x14015bcf3
mov al, byte [rbp - 0x21]
test al, 1
jne 0x14015c5d1
jmp 0x14015c3aa
mov eax, dword [0x140259840]
mov ecx, dword [0x140259844]
xor ecx, 0xd1bc3d9c
xor eax, ecx
and eax, 0x757996ba
mov ecx, 0x678b397d
xor ecx, 0x678b397d
mov edx, 0xbce524f4
xor edx, 0xaa15000a
sub ecx, edx
sub eax, ecx
mov ecx, 0x893ec777
xor edx, edx
div ecx
cmp eax, 0x2c0f907f
jae 0x14015c618
mov rcx, qword [rbp + 0x40]
mov eax, dword [0x140259848]
mov edx, dword [0x14025984c]
mov r8d, 0x8f3d5c6b
xor r8d, 0x70c2a394
mov esi, eax
xor esi, r8d
mov r8d, edx
xor r8d, 0xffffffff
and esi, r8d
or eax, edx
xor eax, 0xffffffff
or esi, eax
mov eax, 0x4ef82fc0
xor eax, 0xb107d03f
xor esi, eax
mov edx, esi
xor edx, 0xffffffff
mov r9d, 0xf4b13b71
xor r9d, 0xe1dd8550
mov eax, 0x91acba68
xor eax, 0x6e534597
xor r9d, eax
mov r8d, 0xffffffff
xor r8d, 0x721ee4fe
mov eax, edx
and eax, 0x721ee4fe
and esi, r8d
mov r10d, r9d
and r10d, 0x721ee4fe
mov r11d, r8d
and r11d, 0x156cbe21
or eax, esi
or r10d, r11d
xor eax, r10d
or edx, r9d
xor edx, 0xffffffff
or r8d, 0x721ee4fe
and edx, r8d
or eax, edx
mov edx, 0x358c5d7c
xor edx, 0x803e19d2
sub eax, edx
imul eax, eax, 0x109e26cc
mov dword [rbp - 0x3c], eax
mov eax, 0x98ccc235
xor eax, 0xc42777d
mov dword [rbp - 0x40], eax
mov word [rcx], 0xb62
sub rsp, 0x20
call fcn.140067800
mov rdx, qword [rbp + 0xc8]
mov ecx, dword [rbp - 0x40]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp - 0x3c]
mov qword [rbp - 0x38], r8
cmp byte [rdx], 0
sete dl
mov byte [rbp - 0x29], dl
cmp eax, ecx
jb 0x14015be18
mov al, byte [rbp - 0x29]
test al, 1
jne 0x14015bf25
jmp 0x14015c287
mov rcx, qword [rbp + 0x90]
mov rdx, qword [rbp + 0xa0]
mov rax, qword [rbp - 0x38]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001cda0
mov rax, qword [rbp + 0x90]
mov rcx, qword [rbp + 0x48]
add rsp, 0x20
mov rdx, qword [rax]
mov qword [rbp - 0x50], rdx
mov rax, qword [rax + 8]
mov qword [rbp - 0x48], rax
movabs rdx, 0x776be49c2c1498d3
movabs rax, 0x776be49c2c1498c3
xor rdx, rax
sub rsp, 0x20
call fcn.14015c640
mov r9, qword [rbp - 0x50]
mov rax, qword [rbp - 0x48]
mov rcx, qword [rbp + 0x48]
mov rdx, qword [rbp + 0x20]
mov r8, qword [rbp + 0xa8]
add rsp, 0x20
mov qword [r8], r9
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.1400e5740
mov rax, qword [rbp + 0xc8]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x7f
xor cl, 0x7f
cmp al, cl
jne 0x14015c287
mov rax, qword [rbp + 0x48]
cmp byte [rax + 8], 0
jne 0x14015c087
sub rsp, 0x20
call fcn.14008e1bb
add rsp, 0x20
mov rax, qword [rbp + 0xc8]
cmp byte [rax], 0
jne 0x14015c287
mov rcx, qword [rbp + 0xb8]
mov edx, 0x18
sub rsp, 0x20
call fcn.14015c640
mov rcx, qword [rbp + 0xb8]
call fcn.14015c830
mov rax, qword [rbp + 0xc8]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xe0
xor cl, 0xe0
cmp al, cl
je 0x14015c03c
jmp 0x14015c287
mov rcx, qword [rbp + 0x20]
mov rax, qword [rbp + 0xf8]
mov rdx, qword [rbp + 0xb8]
mov r8, qword [rdx]
mov qword [rax], r8
mov r8, qword [rdx + 8]
mov qword [rax + 8], r8
mov rdx, qword [rdx + 0x10]
mov qword [rax + 0x10], rdx
sub rsp, 0x20
call fcn.1400e5707
mov rax, qword [rbp + 0xc8]
add rsp, 0x20
mov al, byte [rax]
cmp al, 0
je 0x14015c5d1
jmp 0x14015c3aa
mov rcx, qword [rbp + 0x50]
mov rax, qword [rbp + 0x48]
mov rax, qword [rax]
mov qword [rbp - 0x58], rax
mov edx, 0x18
sub rsp, 0x20
call fcn.14015c640
mov rcx, qword [rbp + 0xc0]
add rsp, 0x20
mov edx, 0x18
sub rsp, 0x20
call fcn.14015c640
mov r9d, dword [rbp - 0x20]
mov r8, qword [rbp - 0x58]
mov rdx, qword [rbp + 0xc0]
mov rcx, qword [rbp + 0x50]
mov rax, qword [rbp + 0xc8]
add rsp, 0x20
mov r10b, 0x26
xor r10b, 0x27
mov byte [rdx + 0x10], r10b
mov dword [rdx], r9d
mov qword [rdx + 8], r8
mov r8, qword [rdx]
mov qword [rcx], r8
mov r8, qword [rdx + 8]
mov qword [rcx + 8], r8
mov rdx, qword [rdx + 0x10]
mov qword [rcx + 0x10], rdx
cmp byte [rax], 0
jne 0x14015c287
mov ecx, dword [0x140259850]
add ecx, dword [0x140259854]
mov edx, 0x333aac6e
xor edx, 0xccc55391
mov eax, ecx
xor eax, edx
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xf429c605
or ecx, 0xf429c605
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xff4c4913
xor ecx, 0xd842a698
xor eax, ecx
mov ecx, 0x2204a183
xor ecx, 0x2204a183
mov edx, 0xd41f8ca5
xor edx, 0xef632b8d
sub ecx, edx
sub eax, ecx
cmp eax, 0x3ce3f22a
jb 0x14015c621
mov rcx, qword [rbp + 0x20]
mov rax, qword [rbp + 0xf8]
mov rdx, qword [rbp + 0x50]
mov r8d, dword [0x140259858]
mov r11d, dword [0x14025985c]
mov r9d, 0x6b7fa468
xor r9d, 0x4b3fe645
xor r11d, r9d
mov r10d, 0x1a1cd2d3
xor r10d, 0xe5e32d2c
mov r9d, r8d
xor r9d, r10d
mov r10d, r11d
and r10d, r9d
mov r9d, 0x1316ed73
xor r9d, 0xece9128c
mov esi, r11d
xor esi, r9d
mov r9d, r8d
and r9d, esi
imul r9d, r10d
mov r10d, r8d
and r10d, r11d
or r8d, r11d
imul r8d, r10d
add r8d, r9d
mov r10d, r8d
xor r10d, 0xffffffff
and r10d, 0x7b46edd6
mov r11d, 0xffffffff
xor r11d, 0x7b46edd6
mov r9d, r8d
and r9d, r11d
imul r9d, r10d
mov r10d, r8d
and r10d, 0x7b46edd6
or r8d, 0x7b46edd6
imul r8d, r10d
add r8d, r9d
sub r8d, 0xd9705619
and r8d, 0xd513ce8a
mov dword [rbp - 0x60], r8d
mov r8, qword [rdx]
mov qword [rax], r8
mov r8, qword [rdx + 8]
mov qword [rax + 8], r8
mov rdx, qword [rdx + 0x10]
mov qword [rax + 0x10], rdx
sub rsp, 0x20
call fcn.1400e5707
mov rcx, qword [rbp + 0xc8]
mov eax, dword [rbp - 0x60]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x59], cl
cmp eax, 0x7a02cb39
jbe 0x14015c621
mov al, byte [rbp - 0x59]
test al, 1
jne 0x14015c5d1
jmp 0x14015c3aa
mov eax, dword [0x140259860]
or eax, dword [str.fhw]
mov ecx, 0x3dfd2510
xor ecx, 0x2798e25
xor edx, edx
div ecx
mov ecx, 0xf73f152
xor edx, edx
div ecx
add eax, 0x8e2bc0de
cmp eax, 0x8142d870
jb 0x14015c62a
mov rax, qword [rbp + 0xc8]
mov rcx, qword [rbp + 0x20]
mov r8d, dword [0x140259868]
mov edx, dword [0x14025986c]
sub r8d, 0x697d54eb
sub r8d, edx
add r8d, 0x697d54eb
mov edx, 0xfa96904f
xor edx, 0x5696fb0
mov r9d, r8d
xor r9d, edx
and r9d, 0x123f83b3
mov r10d, 0x1a3674d2
xor r10d, 0x809f761
mov edx, 0x3a25aa0e
xor edx, 0xc5da55f1
xor r10d, edx
mov edx, r8d
and edx, r10d
imul edx, r9d
mov r9d, r8d
and r9d, 0x123f83b3
mov r10d, 0x14c11686
xor r10d, 0x6fe9535
or r8d, r10d
imul r8d, r9d
add r8d, edx
mov edx, r8d
and edx, 0x6898d093
xor r8d, 0x6898d093
or edx, r8d
sub edx, 0xff9ed08d
mov dword [rbp - 0x68], edx
mov byte [rax], 0
sub rsp, 0x20
call fcn.1400e5707
mov rcx, qword [rbp + 0xc8]
mov eax, dword [rbp - 0x68]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x61], cl
cmp eax, 0x314c42b3
jb 0x14015c2bb
mov al, byte [rbp - 0x61]
test al, 1
jne 0x14015c39c
jmp 0x14015c3aa
mov rax, qword [rbp + 0xc8]
mov cl, 0x9a
xor cl, 0x9b
mov byte [rax], cl
mov ecx, dword [0x140259870]
mov eax, dword [0x140259874]
mov edx, 0x99e10a8a
xor edx, 0x24874e8f
xor eax, edx
xor ecx, eax
mov eax, ecx
add eax, 1
xor ecx, 0xffffffff
or ecx, 0xcd105c7e
add ecx, eax
and ecx, 0x9e73a06d
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x19abb409
and eax, edx
xor ecx, 0xffffffff
mov edx, 0x42482832
xor edx, 0x5be39c3b
mov r8d, 0xeb4b6c88
xor r8d, 0x14b49377
xor edx, r8d
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
cmp eax, 0xee7b28fd
jae 0x14015c633
mov eax, dword [0x140259878]
imul eax, dword [0x14025987c]
mov ecx, eax
and ecx, 0x3456fe3b
shl ecx, 1
mov edx, 0x10c90768
xor edx, 0x249ff953
xor eax, edx
add eax, ecx
mov r8d, eax
or r8d, 0x72cc7e58
mov ecx, 0x51798f6b
xor ecx, 0xae867094
xor r8d, ecx
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x72cc7e58
and eax, ecx
xor r8d, 0xffffffff
xor eax, 0xffffffff
and r8d, eax
mov ecx, r8d
xor ecx, 0xffffffff
mov eax, 0x2db10eec
xor eax, 0xb064dc05
and eax, ecx
mov r9d, 0xffffffff
xor r9d, 0x9dd5d2e9
and r8d, r9d
mov ecx, 0xffffffff
xor ecx, 0xa3817553
and ecx, 0x9dd5d2e9
mov edx, 0x479a4efa
xor edx, 0xe41b3ba9
and edx, r9d
or eax, r8d
or ecx, edx
xor eax, ecx
mov dword [rbp - 0x7c], eax
mov eax, 0x73bc8b64
xor eax, 0x57fba4e2
mov dword [rbp - 0x80], eax
sub rsp, 0x20
call fcn.14015c972
mov ecx, dword [rbp - 0x80]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x7c]
mov rdx, qword [rdx]
mov qword [rbp - 0x78], rdx
cmp word [rdx + 0x12], 1
setg dl
mov byte [rbp - 0x69], dl
cmp eax, ecx
je 0x14015c633
mov al, byte [rbp - 0x69]
test al, 1
jne 0x14015c50e
jmp 0x14015c571
mov rax, qword [rbp - 0x78]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xc5722261
jne 0x14015c571
mov rax, qword [rbp + 0xc8]
mov cl, 0x30
xor cl, 0x30
mov byte [rax], cl
sub rsp, 0x20
call fcn.14015c984
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.14009ff50
mov rax, qword [rbp + 0xc8]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x2a
xor cl, 0x2a
cmp al, cl
jne 0x14015c5d1
sub rsp, 0x20
call fcn.14015c9b1
add rsp, 0x20
mov rax, qword [rbp + 0xc8]
cmp byte [rax], 0
jne 0x14015c5d1
mov rcx, qword [rbp + 0x58]
mov edx, 0x18
sub rsp, 0x20
call fcn.14015c640
mov rcx, qword [rbp + 0x58]
call fcn.14015c830
mov rax, qword [rbp + 0xc8]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14015c5d1
mov rax, qword [rbp + 0xf8]
mov rcx, qword [rbp + 0x58]
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rdx, qword [rcx + 8]
mov qword [rax + 8], rdx
mov rcx, qword [rcx + 0x10]
mov qword [rax + 0x10], rcx
mov rax, qword [rbp + 0x100]
lea rsp, [rbp + 0x108]
pop rsi
pop rbp
ret
shr cl, 1
clc
mov ebp, ecx
out dx, al
invalid
mov word [rcx - 0x2716b560], ss
int1
invalid
sub al, dl
lodsb al, byte [rsi]
jmp 0x14015b924
invalid
out dx, al
ficom dword [0x1365daf2f]
invalid
xchg dword [rax + 5], eax
jmp 0x14015bcf3
xchg ebp, eax
rol dword [rcx - 0x80816b5], cl
invalid
int3
sbb al, 0xfa
mov esi, 0xfc88e957
invalid
std
or byte [rbx], bl
int1
jmp 0x14015c41d