Function at 0x14028ce70
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
push rdi
push rbx
sub rsp, 0x198
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x28], rcx
mov eax, 0x10
mov qword [rbp + 0x40], rax
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x40]
mov rcx, rsp
mov qword [rbp + 0x30], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x40]
mov rcx, rsp
mov qword [rbp + 0x38], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x40]
mov rcx, rsp
mov qword [rbp + 0x80], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x40]
mov rcx, rsp
mov qword [rbp + 0x60], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x40]
mov rcx, rsp
mov qword [rbp + 0x70], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x40]
mov rcx, rsp
mov qword [rbp + 0x88], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x40]
mov rcx, rsp
mov qword [rbp + 0x48], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x50], rax
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
add rsp, 0x20
mov qword [rbp + 0x90], rax
add rax, 0x60
mov qword [rbp + 0x58], rax
mov ecx, 0x20
mov edx, 8
sub rsp, 0x20
call fcn.140035850
mov rcx, qword [rbp + 0x60]
add rsp, 0x20
mov qword [rbp + 0x78], rax
xor eax, eax
mov edx, eax
sub rsp, 0x20
call fcn.140048c00
mov rdx, qword [rbp + 0x60]
mov rcx, qword [rbp + 0x70]
mov rax, qword [rbp + 0x78]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rax], r8
mov rdx, qword [rdx + 8]
mov qword [rax + 8], rdx
add rax, 0x10
mov qword [rbp + 0x68], rax
xor eax, eax
mov edx, eax
sub rsp, 0x20
call fcn.14004a005
mov r8, qword [rbp + 0x70]
mov rdx, qword [rbp + 0x78]
mov rax, qword [rbp + 0x80]
mov rcx, qword [rbp + 0x88]
add rsp, 0x20
mov r9, qword [r8]
mov qword [rdx + 0x10], r9
mov r8, qword [r8 + 8]
mov qword [rdx + 0x18], r8
mov qword [rax], rdx
mov ax, 0xfe45
xor ax, 0xfe3f
mov word [rcx], ax
sub rsp, 0x20
call fcn.14008db90
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x90]
mov qword [rbp + 0x98], rcx
cmp byte [rax + 0x60], 0
jne 0x14028d3c2
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
add rsp, 0x20
mov rax, qword [rbp + 0x98]
xorps xmm0, xmm0
movaps xmmword [rbp + 0x100], xmm0
mov rcx, qword [rax]
mov qword [rbp + 0xf0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xf8], rax
lea rcx, [rbp + 0x100]
mov rdx, 0xffffffff80000001
lea r8, [rbp + 0xf0]
mov r9d, 0x20019
sub rsp, 0x20
call fcn.14011d9d0
mov rax, qword [rbp + 0x58]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14028d3c2
mov rax, qword [rbp + 0x100]
mov qword [rbp + 0x20], rax
cmp byte [rbp + 0x108], 0
jne 0x14028d0bb
sub rsp, 0x20
call fcn.1400ad910
add rsp, 0x20
mov rax, qword [rbp + 0x58]
mov al, byte [rax]
mov cl, 0xb3
xor cl, 0xb3
cmp al, cl
jne 0x14028d3c2
jmp 0x14028d4a8
mov r8, qword [rbp + 0x20]
mov rdx, qword [rbp + 0x80]
mov rcx, qword [rbp + 0x28]
sub rsp, 0x20
call fcn.140282df0
mov rcx, qword [rbp + 0x58]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x1f], al
jne 0x14028d265
mov eax, dword [0x1402b8d80]
xor edx, edx
div dword [0x1402b8d84]
or eax, 0xad6a4e4d
mov ecx, eax
and ecx, 0x2f9cacc4
shl ecx, 1
xor eax, 0x2f9cacc4
add eax, ecx
mov ecx, 0x59aae07e
xor ecx, 0xa6551f81
mov edx, eax
xor edx, ecx
and edx, 0xf18a5c05
mov r8d, 0xf3f76f73
xor r8d, 0x27d3376
mov ecx, 0x9a84ba5c
xor ecx, 0x657b45a3
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0xfb1371b6
xor r8d, 0xa992db3
mov edx, eax
and edx, r8d
or eax, 0xf18a5c05
imul eax, edx
add eax, ecx
cmp eax, 0x3f7451ff
je 0x14028e041
mov r8, qword [rbp + 0x20]
mov rdx, qword [rbp + 0x80]
mov rcx, qword [rbp + 0x28]
mov ebx, dword [0x1402b8d88]
mov eax, dword [0x1402b8d8c]
xor eax, 0xa43f38d6
imul ebx, eax
mov r9d, ebx
xor r9d, 0xffffffff
mov r11d, 0xffffffff
xor r11d, 0x7f7679fc
mov r10d, 0x3ef204f7
xor r10d, 0xc449f74f
mov eax, 0xe18637d8
xor eax, 0x1e79c827
xor r10d, eax
mov eax, r9d
and eax, 0xfabbf3b8
and ebx, r10d
mov esi, r11d
and esi, 0xfabbf3b8
mov edi, r10d
and edi, 0x7f7679fc
or eax, ebx
or esi, edi
xor eax, esi
or r9d, r11d
xor r9d, 0xffffffff
or r10d, 0xfabbf3b8
and r9d, r10d
or eax, r9d
mov r9d, 0x828d3fde
xor r9d, 0x57a9a83b
xor eax, r9d
mov r9d, eax
and r9d, 0x8a1bd3aa
shl r9d, 1
mov r10d, 0x609e43f1
xor r10d, 0xea85905b
xor eax, r10d
add eax, r9d
mov dword [rbp + 0x18], eax
mov eax, 0xf5b223e4
xor eax, 0xdb973c8e
mov dword [rbp + 0x14], eax
sub rsp, 0x20
call fcn.140289250
mov rdx, qword [rbp + 0x58]
mov ecx, dword [rbp + 0x14]
mov eax, dword [rbp + 0x18]
add rsp, 0x20
mov dl, byte [rdx]
mov byte [rbp + 0x1e], dl
cmp eax, ecx
jb 0x14028e041
mov al, byte [rbp + 0x1e]
mov byte [rbp + 0x1f], al
jmp 0x14028d265
mov rax, qword [rbp + 0x58]
mov rcx, qword [rbp + 0x20]
mov dl, byte [rbp + 0x1f]
mov byte [rbp + 0x13], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.14011e1cc
mov rax, qword [rbp + 0x58]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14028d3c2
mov al, byte [rbp + 0x13]
mov rcx, qword [rbp + 0x58]
mov byte [rcx], al
cmp al, 0
jne 0x14028d3c2
mov eax, dword [str.Ydp:J]
xor edx, edx
div dword [0x1402b8d94]
mov ecx, eax
mov edx, 0xffffffff
xor edx, 0x4a9a3fa
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0x21464a54
xor ecx, 0x894d60a6
or eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x31151c96
mov r8d, 0xa1db7529
xor r8d, 0x90ce69bf
mov ecx, 0xbbdd97ec
xor ecx, 0x44226813
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x31151c96
mov r8d, 0x939485f5
xor r8d, 0xa2819963
or eax, r8d
imul eax, edx
add eax, ecx
cmp eax, 0x18454541
jb 0x14028e04a
mov eax, dword [0x1402b8d98]
mov ecx, dword [0x1402b8d9c]
xor eax, 0xffffffff
mov edx, 0x2dbe7203
xor edx, 0xd2418dfc
xor ecx, edx
mov edx, 0x2712e629
xor edx, 0x8eb6a49a
mov r8d, 0xab06716
xor r8d, 0xf54f98e9
xor edx, r8d
or eax, ecx
mov ecx, 0x3c8830a9
xor ecx, 0x952c721a
or ecx, edx
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0x561a9a53
xor ecx, 0xfe78e379
sub eax, ecx
and eax, eax
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xc738ddbb
mov edx, 0xffffffff
xor edx, 0xc738ddbb
or ecx, edx
and eax, ecx
mov ecx, 0x8b8e3c8a
xor ecx, 0x7471c375
xor eax, ecx
mov ecx, 0x11da2807
xor edx, edx
div ecx
cmp eax, 0xd678d0f1
ja 0x14028d325
jmp 0x14028d4a8
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
add rsp, 0x20
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
mov qword [rbp + 8], rax
cmp word [rax + 0x12], 1
jle 0x14028d49a
mov rax, qword [rbp + 8]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xd4054986
jne 0x14028d49a
mov rax, qword [rbp + 0x58]
mov byte [rax], 0
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
mov rcx, qword [rbp + 0x38]
add rsp, 0x20
mov qword [rcx], 0
mov rdx, qword [rax + 0x10]
xor r8d, r8d
sub rsp, 0x20
call fcn.140024f90
mov rax, qword [rbp + 0x38]
add rsp, 0x20
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400c0539
mov rax, qword [rbp + 0x58]
add rsp, 0x20
cmp byte [rax], 0
je 0x14028d465
jmp 0x14028db5d
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
add rsp, 0x20
mov rcx, rax
add rcx, 0x10
mov rax, qword [rax + 0x10]
mov rdx, qword [rax + 0x38]
xor r8d, r8d
sub rsp, 0x20
call fcn.140024f90
add rsp, 0x20
mov rax, qword [rbp + 0x58]
mov al, byte [rax]
cmp al, 0
jne 0x14028db5d
mov ax, 0x9d04
xor ax, 0x950e
mov word [rbp + 0xee], ax
lea rcx, [rbp + 0xee]
sub rsp, 0x20
call fcn.14008db90
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x58]
mov qword [rbp], rcx
mov al, byte [rax]
mov cl, 0x9d
xor cl, 0x9d
cmp al, cl
jne 0x14028d818
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
mov rcx, qword [rbp + 0x48]
add rsp, 0x20
mov rax, qword [rbp]
xorps xmm0, xmm0
movaps xmmword [rcx], xmm0
mov rdx, qword [rax]
mov qword [rbp + 0xd8], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0xe0], rax
mov rdx, 0xffffffff80000002
lea r8, [rbp + 0xd8]
mov r9d, 0x20019
sub rsp, 0x20
call fcn.14011d9d0
mov rax, qword [rbp + 0x58]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14028d818
mov rax, qword [rbp + 0x48]
mov rcx, qword [rax]
mov qword [rbp - 8], rcx
mov al, byte [rax + 8]
mov cl, 0x12
xor cl, 0x12
cmp al, cl
jne 0x14028d586
sub rsp, 0x20
call fcn.1400ad910
add rsp, 0x20
mov rax, qword [rbp + 0x58]
cmp byte [rax], 0
jne 0x14028d818
jmp 0x14028d9f5
mov r8, qword [rbp - 8]
mov rdx, qword [rbp + 0x80]
mov rcx, qword [rbp + 0x28]
sub rsp, 0x20
call fcn.140282df0
mov rax, qword [rbp + 0x58]
add rsp, 0x20
mov cl, byte [rax]
mov dl, 0x5a
xor dl, 0x5a
mov al, 1
cmp cl, dl
mov byte [rbp - 9], al
jne 0x14028d6bc
mov ecx, dword [0x1402b8da0]
mov eax, dword [0x1402b8da4]
xor eax, 0xe7bf948
xor ecx, eax
sub ecx, 0x19d2f465
and ecx, ecx
xor ecx, 0xffffffff
mov eax, 0xffffffff
xor eax, 0x676eb499
mov edx, 0xffffffff
xor edx, 0x676eb499
or eax, edx
and ecx, eax
mov eax, 0x1a98d016
xor eax, 0xe5672fe9
xor ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
mov edx, 0x728cbecc
xor edx, 0x8d734133
xor eax, edx
mov edx, 0xb2bb3250
xor edx, 0x9bc3ead5
mov r8d, 0x8f03a869
xor r8d, 0x70fc5796
xor edx, r8d
or eax, edx
mov edx, 0x2978d885
and edx, 0x2978d885
xor edx, 0xffffffff
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
cmp eax, 0xc84fe804
ja 0x14028e053
mov r8, qword [rbp - 8]
mov rcx, qword [rbp + 0x28]
mov eax, dword [0x1402b8da8]
and eax, dword [0x1402b8dac]
or eax, 0xdf9bafea
imul eax, eax, 0x596ca789
mov r9d, 0xdb479871
xor edx, edx
div r9d
mov rdx, qword [rbp + 0x80]
mov dword [rbp - 0x10], eax
sub rsp, 0x20
call fcn.140289250
mov rcx, qword [rbp + 0x58]
mov eax, dword [rbp - 0x10]
add rsp, 0x20
mov cl, byte [rcx]
mov byte [rbp - 0xa], cl
cmp eax, 0x88a4196c
ja 0x14028e053
mov al, byte [rbp - 0xa]
mov byte [rbp - 9], al
jmp 0x14028d6bc
mov al, byte [rbp - 9]
mov byte [rbp - 0x11], al
mov ecx, dword [0x1402b8db0]
mov eax, dword [0x1402b8db4]
mov edx, 0x6af900a5
xor edx, 0xf2f9f270
xor eax, edx
sub ecx, eax
sub ecx, 0x4f58e092
mov eax, 0x32a21706
xor eax, 0x56a34698
sub ecx, eax
mov eax, ecx
and eax, 0x97ea60d8
xor ecx, 0x97ea60d8
or eax, ecx
cmp eax, 0xa98d5fa7
jb 0x14028e05c
mov rcx, qword [rbp - 8]
mov eax, dword [0x1402b8db8]
sub eax, dword [0x1402b8dbc]
mov r8d, 0xc5650e0f
xor edx, edx
div r8d
mov edx, eax
mov rax, qword [rbp + 0x58]
or edx, 0x5e734a34
mov r8d, 0x39d73ed9
xor r8d, 0xb3959143
and edx, r8d
mov dword [rbp - 0x18], edx
mov byte [rax], 0
sub rsp, 0x20
call fcn.14011e1cc
mov rcx, qword [rbp + 0x58]
mov eax, dword [rbp - 0x18]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x12], cl
cmp eax, 0x755eea04
je 0x14028e05c
mov al, byte [rbp - 0x12]
test al, 1
jne 0x14028d77e
jmp 0x14028d818
mov al, byte [rbp - 0x11]
mov rcx, qword [rbp + 0x58]
mov byte [rcx], al
cmp al, 0
jne 0x14028d818
mov eax, dword [0x1402b8dc0]
xor eax, 0x26233ddd
imul eax, dword [0x1402b8dc4]
mov ecx, 0xe7b8d2e9
xor ecx, 0xe7b8d2e9
mov edx, 0x3f583246
xor edx, 0x2a454810
sub ecx, edx
add eax, ecx
or eax, 0xac7abd34
and eax, 0xadd02fff
cmp eax, 0x3873aa10
je 0x14028e065
mov eax, dword [0x1402b8dc8]
mov ecx, dword [0x1402b8dcc]
xor ecx, 0x10d112ea
and eax, ecx
mov ecx, 0xe8303edd
xor ecx, 0x76c1c308
or eax, ecx
xor eax, 0x3f273fa3
mov ecx, eax
and ecx, 0x537c979e
shl ecx, 1
add eax, 0x537c979e
sub eax, ecx
cmp eax, 0x36cb465c
jbe 0x14028d7d0
jmp 0x14028d9f5
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
add rsp, 0x20
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
cmp word [rax + 0x12], 1
jle 0x14028d9e7
mov rax, qword [rbp - 0x20]
mov rax, qword [rax + 0x18]
mov eax, dword [rax + 8]
mov ecx, 0x89a65dec
xor ecx, 0x5da3146a
cmp eax, ecx
jne 0x14028d9e7
mov rax, qword [rbp + 0x58]
mov byte [rax], 0
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
mov rcx, qword [rbp + 0x30]
add rsp, 0x20
mov qword [rcx], 0
mov rdx, qword [rax + 0x10]
xor eax, eax
mov r8b, al
xor r8b, 0
and r8b, 1
sub rsp, 0x20
call fcn.140024f90
mov rax, qword [rbp + 0x30]
add rsp, 0x20
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400c0539
mov rax, qword [rbp + 0x58]
add rsp, 0x20
cmp byte [rax], 0
je 0x14028d9aa
mov eax, dword [0x1402b8dd0]
xor eax, 0xac3dd276
imul eax, dword [0x1402b8dd4]
xor ecx, ecx
sub ecx, 0x281a940f
sub eax, ecx
mov ecx, 0xf9e81ed0
xor edx, edx
div ecx
mov ecx, 0xd6366fd1
xor edx, edx
div ecx
cmp eax, 0x1788dd1e
jae 0x14028e06e
mov r8d, dword [0x1402b8dd8]
xor r8d, dword [0x1402b8ddc]
mov eax, r8d
xor eax, 0xffffffff
and eax, 0xc7a4c2d6
mov r9d, 0x18081e4b
xor r9d, 0xdfacdc9d
mov ecx, 0x86a43fb7
xor ecx, 0x795bc048
xor r9d, ecx
and r8d, r9d
mov ecx, 0xffffffff
xor ecx, 0xd8e9d66
and ecx, 0xc7a4c2d6
mov edx, 0x4da3fd26
xor edx, 0x402d6040
and edx, r9d
or eax, r8d
or ecx, edx
xor eax, ecx
mov ecx, eax
and ecx, 0xc3719f9b
shl ecx, 1
add eax, 0xc3719f9b
sub eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0x388b8822
xor edx, 0x87068be1
and ecx, edx
mov edx, 0xffffffff
xor edx, 0xbf8d03c3
and eax, edx
sub eax, ecx
mov ecx, 0x22ed6867
xor ecx, 0x15a3fcad
cmp eax, ecx
je 0x14028d902
jmp 0x14028db5d
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
add rsp, 0x20
mov rcx, rax
add rcx, 0x10
mov rax, qword [rax + 0x10]
mov rdx, qword [rax + 0x38]
mov r8b, 1
xor r8b, 1
and r8b, 1
sub rsp, 0x20
call fcn.140024f90
add rsp, 0x20
mov rax, qword [rbp + 0x58]
mov al, byte [rax]
cmp al, 0
jne 0x14028db5d
mov rax, qword [rbp + 0x28]
mov rax, qword [rax]
mov rax, qword [rax + 0x28]
mov qword [rbp - 0x28], rax
cmp byte [rax], 0
je 0x14028db5d
mov rax, qword [rbp - 0x28]
mov cl, 0xd2
xor cl, 0xd3
mov byte [rax], cl
mov ecx, 0x30
mov edx, 8
sub rsp, 0x20
call fcn.140035850
add rsp, 0x20
mov qword [rbp - 0x38], rax
mov qword [rax], 0
mov dword [rax + 8], 0
mov ecx, 0x5d7
sub rsp, 0x20
call fcn.14008d810
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x58]
mov qword [rbp - 0x30], rcx
mov al, byte [rax]
mov cl, 9
xor cl, 9
cmp al, cl
jne 0x14028db5d
mov rax, qword [rbp - 0x30]
movabs rcx, 0x246b4345d295c426
movabs rdx, 0x246b4345d295c426
xor rcx, rdx
movabs rdx, 0x62cbe371455234d0
movabs r8, 0x9d341c8ec55234d0
xor rdx, r8
sub rcx, rdx
sub rax, rcx
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x14028dadb
mov rcx, qword [rbp - 0x30]
mov rdx, 0xffffffff80000000
mov r8d, 0x7fffffff
sub rsp, 0x20
call fcn.140018506
add rsp, 0x20
jmp 0x14028db5d
mov rdx, qword [rbp - 0x38]
mov rcx, qword [rbp + 0x50]
mov rax, qword [rbp + 0x28]
mov r8, qword [rbp - 0x30]
mov dword [rdx + 0xc], r8d
mov rax, qword [rax]
mov rdx, qword [rax + 0x28]
sub rsp, 0x20
call fcn.1400a5047
mov rdx, qword [rbp + 0x50]
mov rcx, qword [rbp - 0x38]
mov rax, qword [rbp + 0x58]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rcx + 0x10], r8
mov rdx, qword [rdx + 8]
mov qword [rcx + 0x18], rdx
cmp byte [rax], 0
jne 0x14028db5d
mov rdx, qword [rbp - 0x38]
mov rax, qword [rbp + 0x28]
mov rcx, qword [0x1402c5840]
mov qword [rdx + 0x20], rcx
mov rcx, qword [str.XX__]
mov qword [rdx + 0x28], rcx
mov rax, qword [rax]
mov rcx, qword [rax + 0x20]
add rcx, 8
sub rsp, 0x20
call fcn.140042db0
add rsp, 0x20
mov rax, qword [rbp + 0x58]
mov cl, byte [rax]
mov byte [rbp - 0x41], cl
mov byte [rax], 0
mov ecx, 0x936
sub rsp, 0x20
call fcn.14008d810
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x58]
mov qword [rbp - 0x40], rcx
cmp byte [rax], 0
jne 0x14028de8b
mov rax, qword [rbp - 0x40]
mov rcx, qword [rbp + 0x78]
cmp rax, qword [rcx]
jl 0x14028dbe6
mov cx, 0x6157
xor cx, 0x6afe
sub rsp, 0x20
call fcn.14008d810
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x58]
mov qword [rbp - 0x50], rcx
mov al, byte [rax]
mov cl, 0x36
xor cl, 0x36
cmp al, cl
jne 0x14028de8b
mov rax, qword [rbp - 0x50]
mov rcx, qword [rbp + 0x68]
cmp rax, qword [rcx]
jl 0x14028dbe6
jmp 0x14028deb0
mov ax, 0xe0bc
xor ax, 0xe02c
mov word [rbp + 0xd6], ax
lea rcx, [rbp + 0xd6]
sub rsp, 0x20
call fcn.14008db90
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x58]
mov qword [rbp - 0x58], rcx
cmp byte [rax], 0
jne 0x14028de95
mov rdx, qword [rbp + 0x78]
lea rcx, [rbp + 0xc0]
sub rsp, 0x20
call fcn.140168d20
mov rax, qword [rbp + 0x58]
add rsp, 0x20
mov rcx, qword [rbp + 0xc0]
mov qword [rbp - 0x68], rcx
mov rcx, qword [rbp + 0xc8]
mov qword [rbp - 0x60], rcx
mov al, byte [rax]
mov cl, 0x7e
xor cl, 0x7e
cmp al, cl
jne 0x14028de95
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
mov rcx, qword [rbp + 0x28]
mov r8, qword [rbp - 0x58]
mov rdx, qword [rbp - 0x68]
add rsp, 0x20
mov rax, qword [rbp - 0x60]
mov rcx, qword [rcx]
add rcx, 0x18
mov r9, qword [r8]
mov qword [rbp + 0xb0], r9
mov r8, qword [r8 + 8]
mov qword [rbp + 0xb8], r8
mov qword [rbp + 0xa0], rdx
mov qword [rbp + 0xa8], rax
lea rdx, [rbp + 0xb0]
lea r8, [rbp + 0xa0]
sub rsp, 0x20
call fcn.1401826c0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x58]
mov qword [rbp - 0x70], rcx
mov al, byte [rax]
mov cl, 1
xor cl, 1
cmp al, cl
jne 0x14028dde4
mov eax, dword [0x1402b8de0]
mov ecx, dword [0x1402b8de4]
mov edx, 0x9545d55a
xor edx, 0xc3a55678
xor ecx, edx
or eax, ecx
and eax, 0xf60348b8
mov ecx, 0x31b9780f
xor ecx, 0x8cfa57fa
add eax, ecx
mov ecx, 0xd9a8b921
xor edx, edx
div ecx
cmp eax, 0x15e0afb8
je 0x14028e077
mov rcx, qword [rbp - 0x70]
mov eax, dword [0x1402b8de8]
xor eax, 0x775c4f23
mov r8d, dword [0x1402b8dec]
mov edx, 0xfd00c56
xor edx, 0xfd00c56
sub edx, eax
mov eax, 0xd4cc28f1
xor eax, 0xd4cc28f1
sub eax, r8d
add edx, eax
mov eax, 0x3792d24c
xor eax, 0x3792d24c
sub eax, edx
imul eax, eax, 0x6ab7c0f2
mov r8d, 0x3b23e46b
xor r8d, 0xe1ff9ced
mov edx, eax
xor edx, r8d
xor edx, 0xffffffff
or eax, 0xdadc7886
and eax, edx
mov r9d, 0xffffffff
xor r9d, 0xda2f62d9
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
xor edx, 0xffffffff
imul edx, r8d
mov r9d, 0x32107b2a
xor r9d, 0xe83f19f3
mov r8d, eax
and r8d, r9d
or eax, 0xda2f62d9
imul eax, r8d
add eax, edx
mov dword [rbp - 0x74], eax
sub rsp, 0x20
call fcn.1400c20e0
mov eax, dword [rbp - 0x74]
add rsp, 0x20
cmp eax, 0xb0e223e
je 0x14028dd24
jmp 0x14028dde4
mov rax, qword [rbp - 0x60]
cmp rax, 0
je 0x14028de9f
mov rax, qword [rbp - 0x60]
mov rcx, qword [rax]
movabs rdx, 0x5c6a92f58c86ca70
movabs rax, 0xa3956d0a7379358f
xor rdx, rax
mov rax, rcx
xor rax, rdx
movabs rdx, 0xd758ad84fe739e62
movabs r8, 0x28a7527b018c619d
xor rdx, r8
xor rcx, rdx
and rax, rcx
movabs rcx, 0x4000000000000000
movabs rdx, 0x4000000000000000
or rcx, rdx
xor rcx, 0xffffffffffffffff
or rax, rcx
xor rax, 0xffffffffffffffff
movabs rcx, 0xda3494c768134c45
movabs rdx, 0xda3494c768134c45
xor rcx, rdx
cmp rax, rcx
jne 0x14028de9f
mov rcx, qword [rbp - 0x60]
sub rsp, 0x20
call fcn.14001a7c0
add rsp, 0x20
jmp 0x14028de9f
mov al, 1
mov byte [rbp - 0x75], al
jmp 0x14028df7a
mov al, 1
mov byte [rbp - 0x75], al
jmp 0x14028df7a
mov rax, qword [rbp + 0x58]
mov al, byte [rax]
cmp al, 0
mov byte [rbp - 0x75], al
jne 0x14028df7a
mov ecx, dword [0x1402b8df0]
imul ecx, dword [0x1402b8df4]
or ecx, 0x48070e07
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0x940bf352
xor edx, 0x6bf40cad
xor ecx, edx
and eax, ecx
mov ecx, 0x63aa87dd
or ecx, 0x63aa87dd
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xd061c83
mov ecx, 0xffffffff
xor ecx, 0x13ae94f1
or eax, edx
or ecx, 0x13ae94f1
xor eax, 0xffffffff
and eax, ecx
cmp eax, 0xcdea5799
je 0x14028e080
mov eax, dword [0x1402b8df8]
mov ecx, dword [0x1402b8dfc]
mov edx, 0x36c4bd7b
xor edx, 0x8df5a18e
xor ecx, edx
xor edx, edx
div ecx
mov ecx, eax
mov eax, 0xffffffff
xor eax, 0xd39b2e86
xor edx, edx
sub edx, 1
sub eax, edx
sub ecx, eax
and ecx, 0x2ec4da18
mov edx, 0xffffffff
xor edx, 0xf9ffda1d
mov eax, ecx
xor eax, edx
and eax, ecx
cmp eax, 0x7f86d96b
je 0x14028df1b
mov al, byte [rbp - 0x41]
mov byte [rbp - 0x75], al
jmp 0x14028df7a
mov rax, qword [rbp + 0x58]
mov rcx, qword [rbp + 0x78]
mov dl, byte [rbp - 0x75]
mov byte [rbp - 0x76], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.14027a340
mov rax, qword [rbp + 0x58]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14028dfb6
mov al, byte [rbp - 0x76]
mov rcx, qword [rbp + 0x58]
mov byte [rcx], al
cmp al, 0
je 0x14028e035
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
add rsp, 0x20
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
mov qword [rbp - 0x80], rax
cmp word [rax + 0x12], 1
jle 0x14028e035
mov rax, qword [rbp - 0x80]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xd4054986
jne 0x14028e035
mov rax, qword [rbp + 0x58]
mov byte [rax], 0
sub rsp, 0x20
call fcn.140282d5a
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.1400c0539
mov rax, qword [rbp + 0x58]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14028e035
add byte [rax], al
sub rsp, 0x20
call fcn.140282db9
add rsp, 0x20
lea rsp, [rbp + 0x118]
pop rbx
pop rdi
pop rsi
pop rbp
ret
add r9d, r10d
invalid
outsd dx, dword [rsi]
invalid
pop rbx
cdq
jno 0x14028e026
jmp 0x14028d659
mov byte [rdx], bh
pop rdx
fsubr st(1)
movsb byte [rdi], byte [rsi]
idiv bh
call qword [rsi + 0x3d]
movabs byte [0x2d02fffff762e940], al
mov al, 0x4b
jmp 0x14028d902
push rsi
cmp eax, 0x62e940a2
idiv edi
inc dword [rdx]
sub eax, 0x8be94bb0
add ch, byte [0xcc122c24]
clc
invalid
mov ebx, 0xe9e056d1
movsb byte [rdi], byte [rsi]
cld
invalid
invalid