Function at 0x1400cb5a0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
sub rsp, 0x188
lea rbp, [rsp + 0x80]
mov qword [rbp + 0xf0], r8
mov qword [rbp + 0xf8], rdx
mov qword [rbp + 0x100], rcx
mov eax, dword [0x140110f48]
xor edx, edx
div dword [0x140110f4c]
imul eax, eax, 0x8da62a48
mov ecx, 0x24324bda
xor edx, edx
div ecx
imul eax, eax, 0x8e499565
cmp eax, 0x38485107
je 0x1400cc878
mov r8, qword [rbp + 0xf0]
mov r9, qword [rbp + 0xf8]
mov r11, qword [rbp + 0x100]
mov eax, 0x8c6cd1bc
mov dword [rbp + 0xdc], eax
mov eax, 0x10
mov qword [rbp + 0xc8], rax
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp + 0xc8]
mov r10, rsp
mov qword [rbp + 0x68], r10
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp + 0xc8]
mov rcx, rsp
mov qword [rbp + 0x70], rcx
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp + 0xc8]
mov rdx, rsp
mov qword [rbp + 0x78], rdx
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp + 0xc8]
mov rsi, rsp
mov qword [rbp + 0x80], rsi
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp + 0xc8]
mov rsi, rsp
mov qword [rbp + 0x88], rsi
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp + 0xc8]
mov rsi, rsp
mov qword [rbp + 0x90], rsi
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp + 0xc8]
mov rsi, rsp
mov qword [rbp + 0x98], rsi
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp + 0xc8]
mov rsi, rsp
mov qword [rbp + 0xa0], rsi
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp + 0xc8]
mov rsi, rsp
mov qword [rbp + 0xa8], rsi
call fcn.1400ec140
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xb0], rax
mov eax, 0x60
mov qword [rbp + 0xb8], rax
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp + 0xb8]
mov rsi, rsp
mov qword [rbp + 0xc0], rsi
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp + 0xc8]
mov rsi, rsp
mov qword [rbp + 0xd0], rsi
call fcn.1400ec140
sub rsp, rax
mov eax, dword [rbp + 0xdc]
mov rsi, rsp
mov qword [rbp + 0xe0], rsi
mov qword [r10], r11
mov qword [rcx], r9
mov qword [rdx], r8
mov rcx, qword [rcx]
movzx ecx, byte [rcx]
cmp ecx, 0x24
sete cl
mov byte [rbp + 0xef], cl
cmp eax, 0x68def2b3
je 0x1400cb5f4
mov al, byte [rbp + 0xef]
test al, 1
jne 0x1400cb799
jmp 0x1400cc806
mov eax, dword [0x140110f58]
xor eax, dword [0x140110f5c]
mov ecx, 0xfc66e2e8
xor edx, edx
div ecx
or eax, 0x17229ba1
imul eax, eax, 0xae50272a
cmp eax, 0x9327cd81
jae 0x1400cc8cd
mov rcx, qword [rbp + 0x70]
mov eax, dword [0x140110f60]
imul eax, dword [0x140110f64]
mov r8d, 0x5a55a64b
xor edx, edx
div r8d
sub eax, 0x913948a8
xor eax, 0x567d7700
mov rcx, qword [rcx]
movzx ecx, byte [rcx + 1]
cmp ecx, 0x31
sete cl
mov byte [rbp + 0x67], cl
cmp eax, 0x560b79d9
ja 0x1400cb7c4
mov al, byte [rbp + 0x67]
test al, 1
jne 0x1400cb815
jmp 0x1400cc806
mov eax, dword [0x140110f68]
xor eax, dword [0x140110f6c]
and eax, 0x6d3ce4d4
and eax, 0xe4fd51b4
xor eax, 0xbe239a93
cmp eax, 0x6d0fa1b
jb 0x1400cc8d2
mov rcx, qword [rbp + 0x70]
mov eax, dword [0x140110f70]
add eax, dword [0x140110f74]
or eax, 0x2d40a83d
add eax, 0x4fa1f76d
add eax, 0xaca59478
mov rcx, qword [rcx]
movzx ecx, byte [rcx + 2]
cmp ecx, 0x24
sete cl
mov byte [rbp + 0x66], cl
cmp eax, 0xeb2534c4
jae 0x1400cc8d2
mov al, byte [rbp + 0x66]
test al, 1
jne 0x1400cb885
jmp 0x1400cc806
mov eax, dword [0x140110f78]
and eax, dword [0x140110f7c]
sub eax, 0x2c144628
and eax, 0x4ff766f6
xor eax, 0x2cf64834
cmp eax, 0xa980f3d3
jae 0x1400cc8d7
mov rax, qword [rbp + 0x70]
mov ecx, dword [0x140110f80]
sub ecx, dword [0x140110f84]
and ecx, 0xfc4701e4
or ecx, 0xf9d1855f
imul ecx, ecx, 0x668044df
mov dword [rbp + 0x60], ecx
mov rcx, qword [rax]
add rcx, 3
mov edx, 0x24
sub rsp, 0x20
call sub.msvcrt.dll_strchr
mov rdx, qword [rbp + 0x80]
add rsp, 0x20
mov rcx, rax
mov eax, dword [rbp + 0x60]
mov qword [rdx], rcx
cmp rcx, 0
setne cl
mov byte [rbp + 0x65], cl
cmp eax, 0x1e420685
jbe 0x1400cb8ab
mov al, byte [rbp + 0x65]
test al, 1
jne 0x1400cb91e
jmp 0x1400cc806
mov eax, dword [0x140110f88]
or eax, dword [0x140110f8c]
sub eax, 0xa025c0c9
add eax, 0xe9617546
add eax, 0x4072aa9
cmp eax, 0x9193a832
ja 0x1400cc906
mov r8, qword [rbp + 0x90]
mov rcx, qword [rbp + 0xc0]
mov r9, qword [rbp + 0x70]
mov eax, dword [0x140110f90]
sub eax, dword [0x140110f94]
add eax, 0x2af4269c
mov r10d, 0x58ba0c30
xor edx, edx
div r10d
mov rdx, qword [rbp + 0x80]
mov r10d, eax
mov rax, qword [rbp + 0xa0]
sub r10d, 0x9618751d
mov dword [rbp + 0x5c], r10d
mov r9, qword [r9]
add r9, 3
mov qword [r8], r9
mov rdx, qword [rdx]
mov r8, qword [r8]
sub rdx, r8
mov dword [rax], edx
sub rsp, 0x20
call fcn.1400c7510
mov rax, qword [rbp + 0x68]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0x38], rcx
mov rcx, qword [rax]
sub rsp, 0x20
call sub.msvcrt.dll_strlen
mov rdx, qword [rbp + 0x38]
mov rcx, qword [rbp + 0xc0]
add rsp, 0x20
mov r8d, eax
sub rsp, 0x20
call fcn.1400c7560
add rsp, 0x20
mov rax, qword [0x140110e98]
mov qword [rbp + 0x40], rax
mov rcx, qword [0x140110e98]
sub rsp, 0x20
call sub.msvcrt.dll_strlen
mov rdx, qword [rbp + 0x40]
mov rcx, qword [rbp + 0xc0]
add rsp, 0x20
mov r8d, eax
sub rsp, 0x20
call fcn.1400c7560
mov rcx, qword [rbp + 0xc0]
mov rdx, qword [rbp + 0x90]
mov rax, qword [rbp + 0xa0]
add rsp, 0x20
mov rdx, qword [rdx]
mov r8d, dword [rax]
sub rsp, 0x20
call fcn.1400c7560
mov rcx, qword [rbp + 0xd0]
call fcn.1400c7510
mov rax, qword [rbp + 0x68]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0x48], rcx
mov rcx, qword [rax]
sub rsp, 0x20
call sub.msvcrt.dll_strlen
mov rdx, qword [rbp + 0x48]
mov rcx, qword [rbp + 0xd0]
add rsp, 0x20
mov r8d, eax
sub rsp, 0x20
call fcn.1400c7560
mov rdx, qword [rbp + 0x90]
mov rax, qword [rbp + 0xa0]
mov rcx, qword [rbp + 0xd0]
add rsp, 0x20
mov rdx, qword [rdx]
mov r8d, dword [rax]
sub rsp, 0x20
call fcn.1400c7560
mov rax, qword [rbp + 0x68]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0x50], rcx
mov rcx, qword [rax]
sub rsp, 0x20
call sub.msvcrt.dll_strlen
mov rdx, qword [rbp + 0x50]
mov rcx, qword [rbp + 0xd0]
add rsp, 0x20
mov r8d, eax
sub rsp, 0x20
call fcn.1400c7560
mov rcx, qword [rbp + 0x98]
mov rdx, qword [rbp + 0xd0]
call fcn.1400c7920
mov rax, qword [rbp + 0x68]
add rsp, 0x20
mov rcx, qword [rax]
sub rsp, 0x20
call sub.msvcrt.dll_strlen
mov rcx, qword [rbp + 0xa8]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x5c]
mov dword [rcx], edx
cmp eax, 0xaca6704d
je 0x1400cb944
jmp 0x1400cbb2e
mov rax, qword [rbp + 0xa8]
cmp dword [rax], 0
jle 0x1400cbd5a
mov eax, dword [0x140110f98]
or eax, dword [0x140110f9c]
or eax, 0xcabe36ca
add eax, 0x7a158b84
imul eax, eax, 0x19f62321
cmp eax, 0x111772ef
jbe 0x1400ccab8
mov rcx, qword [rbp + 0xa8]
mov eax, dword [str.X_]
add eax, dword [0x140110fa4]
add eax, 0xc41360b9
imul eax, eax, 0xaba71e0e
add eax, 0x9756d552
cmp dword [rcx], 0x10
setg cl
mov byte [rbp + 0x37], cl
cmp eax, 0xf64c8717
ja 0x1400ccab8
mov al, byte [rbp + 0x37]
test al, 1
jne 0x1400cbbac
jmp 0x1400cbc0e
mov eax, dword [0x140110fa8]
or eax, dword [0x140110fac]
xor eax, 0x1c176a4a
mov ecx, 0x37f06217
xor edx, edx
div ecx
mov ecx, 0x294bde53
xor edx, edx
div ecx
cmp eax, 0x32c222e
ja 0x1400ccabd
mov eax, dword [0x140110fb0]
xor eax, dword [0x140110fb4]
or eax, 0xa7faee0e
add eax, 0x8a70ac6c
imul eax, eax, 0x72565e87
cmp eax, 0xfdb260be
jae 0x1400ccabd
mov eax, 0x10
mov dword [rbp + 0x30], eax
jmp 0x1400cbc79
mov eax, dword [0x140110fb8]
imul eax, dword [0x140110fbc]
imul eax, eax, 0x75d8c477
add eax, 0xdadba945
or eax, 0x36aca23b
cmp eax, 0x7c4bdeb8
jb 0x1400ccac2
mov rcx, qword [rbp + 0xa8]
mov eax, dword [0x140110fc0]
and eax, dword [0x140110fc4]
sub eax, 0x1ee7a6a4
add eax, 0xbc8d8397
mov r8d, 0x711c560d
xor edx, edx
div r8d
mov ecx, dword [rcx]
mov dword [rbp + 0x2c], ecx
cmp eax, 0xb204e429
ja 0x1400ccac2
mov eax, dword [rbp + 0x2c]
mov dword [rbp + 0x30], eax
jmp 0x1400cbc79
mov eax, dword [rbp + 0x30]
mov dword [rbp + 0x28], eax
mov eax, dword [0x140110fc8]
xor edx, edx
div dword [0x140110fcc]
or eax, 0xe228674
sub eax, 0x7dcf8bdb
sub eax, 0x827d8b79
cmp eax, 0x6c705255
je 0x1400ccac7
mov r8d, dword [rbp + 0x28]
mov rdx, qword [rbp + 0x98]
mov rcx, qword [rbp + 0xc0]
mov eax, dword [0x140110fd0]
xor eax, dword [0x140110fd4]
and eax, 0xea29e237
add eax, 0x580fd803
imul eax, eax, 0xaac1595b
mov dword [rbp + 0x24], eax
sub rsp, 0x20
call fcn.1400c7560
mov eax, dword [rbp + 0x24]
add rsp, 0x20
cmp eax, 0x425816a4
ja 0x1400ccac7
jmp 0x1400cbcf8
mov eax, dword [0x140110fd8]
xor eax, dword [0x140110fdc]
imul eax, eax, 0x2d867605
and eax, 0x5419aa1
add eax, 0xda869908
cmp eax, 0x89bce030
jbe 0x1400ccaeb
mov rcx, qword [rbp + 0xa8]
mov eax, dword [0x140110fe0]
add eax, dword [0x140110fe4]
xor eax, 0x9ad9b74b
imul eax, eax, 0xd73b740a
imul eax, eax, 0x1ab6f1ec
mov edx, dword [rcx]
sub edx, 0x10
mov dword [rcx], edx
cmp eax, 0x1ab15755
jb 0x1400cbd1f
jmp 0x1400cbb2e
mov eax, dword [0x140110fe8]
imul eax, dword [0x140110fec]
mov ecx, 0xb0c80c4d
xor edx, edx
div ecx
imul eax, eax, 0xe9989625
mov ecx, 0x7ef3ef4
xor edx, edx
div ecx
cmp eax, 0x6cb892c9
ja 0x1400ccafe
mov rcx, qword [rbp + 0x98]
mov eax, dword [0x140110ff0]
sub eax, dword [0x140110ff4]
imul eax, eax, 0xcc53fae
and eax, 0x56dcde34
xor eax, 0x52d2aa85
mov dword [rbp + 0x20], eax
xor edx, edx
mov r8d, 0x10
sub rsp, 0x20
call sub.msvcrt.dll_memset
mov rax, qword [rbp + 0x68]
add rsp, 0x20
mov rcx, qword [rax]
sub rsp, 0x20
call sub.msvcrt.dll_strlen
mov rcx, qword [rbp + 0xb0]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x20]
mov dword [rcx], edx
cmp eax, 0xeeafe612
ja 0x1400ccafe
jmp 0x1400cbdf8
mov eax, dword [0x140110ff8]
sub eax, dword [0x140110ffc]
or eax, 0xccd959e
imul eax, eax, 0x7f955d31
and eax, 0xbfecb586
cmp eax, 0x1ae6d14f
jbe 0x1400ccb3f
mov rcx, qword [rbp + 0xb0]
mov eax, dword [0x140111000]
sub eax, dword [0x140111004]
and eax, 0x57f4fbea
and eax, 0xa0ca03c6
imul eax, eax, 0xe8483ff3
cmp dword [rcx], 0
setne cl
mov byte [rbp + 0x1f], cl
cmp eax, 0xb036cdf9
jb 0x1400cbe1f
mov al, byte [rbp + 0x1f]
test al, 1
jne 0x1400cbe66
jmp 0x1400cc09d
mov eax, dword [0x140111008]
xor eax, dword [0x14011100c]
imul eax, eax, 0xe075ae47
mov ecx, 0xeca00520
xor edx, edx
div ecx
xor eax, 0xd38e5157
cmp eax, 0x65e33956
je 0x1400ccb44
mov rcx, qword [rbp + 0xb0]
mov eax, dword [0x140111010]
sub eax, dword [0x140111014]
add eax, 0x6a810139
imul eax, eax, 0x2dc7cbc1
mov r8d, 0xcd7f632b
xor edx, edx
div r8d
mov ecx, dword [rcx]
and ecx, 1
cmp ecx, 0
setne cl
mov byte [rbp + 0x1e], cl
cmp eax, 0x20b4cee2
ja 0x1400ccb44
mov al, byte [rbp + 0x1e]
test al, 1
jne 0x1400cbee3
jmp 0x1400cbf5b
mov eax, dword [0x140111018]
and eax, dword [0x14011101c]
or eax, 0x7b51a0bd
and eax, 0x417b68b8
or eax, 0x7f4f3da4
cmp eax, 0xf28d5a66
jae 0x1400ccb49
mov rdx, qword [rbp + 0x98]
mov rcx, qword [rbp + 0xc0]
mov eax, dword [0x140111020]
and eax, dword [0x140111024]
and eax, 0xffb2840e
sub eax, 0x78d4ab94
add eax, 0x93be789c
mov dword [rbp + 0x18], eax
mov r8d, 1
sub rsp, 0x20
call fcn.1400c7560
mov eax, dword [rbp + 0x18]
add rsp, 0x20
cmp eax, 0xe73cf35a
ja 0x1400ccb49
jmp 0x1400cbfe2
mov eax, dword [0x140111028]
imul eax, dword [0x14011102c]
sub eax, 0x6ba41453
mov ecx, 0x8b00787b
xor edx, edx
div ecx
or eax, 0xebd482e1
cmp eax, 0xf9a94ab9
ja 0x1400ccb6f
mov rcx, qword [rbp + 0xc0]
mov eax, dword [0x140111030]
xor eax, dword [0x140111034]
mov r8d, 0x920756f0
xor edx, edx
div r8d
mov edx, eax
mov rax, qword [rbp + 0x68]
and edx, 0x2d95361c
and edx, 0xaaf55f60
mov dword [rbp + 0x14], edx
mov rdx, qword [rax]
mov r8d, 1
sub rsp, 0x20
call fcn.1400c7560
mov eax, dword [rbp + 0x14]
add rsp, 0x20
cmp eax, 0x34722f31
ja 0x1400cbf86
jmp 0x1400cbfe2
mov eax, dword [0x140111038]
xor edx, edx
div dword [0x14011103c]
imul eax, eax, 0x5b4c6f5c
xor eax, 0x7720a13
and eax, 0x453852d9
cmp eax, 0x95096a27
ja 0x1400ccb95
mov eax, dword [0x140111040]
and eax, dword [0x140111044]
and eax, 0x1e8518d0
sub eax, 0x7f792763
imul eax, eax, 0xed9d18c3
cmp eax, 0x4cb66b77
je 0x1400cc00b
jmp 0x1400cc037
mov eax, dword [0x140111048]
imul eax, dword [0x14011104c]
imul eax, eax, 0x81b919fc
sub eax, 0x689f47b5
add eax, 0x2f76162f
cmp eax, 0x6ee2534c
jbe 0x1400ccb9a
mov rcx, qword [rbp + 0xb0]
mov eax, dword [0x140111050]
add eax, dword [0x140111054]
mov r8d, 0x292c2292
xor edx, edx
div r8d
and eax, 0xc687970e
sub eax, 0x7d3b2a63
mov edx, dword [rcx]
sar edx, 1
mov dword [rcx], edx
cmp eax, 0xc9dfc085
je 0x1400ccb9a
jmp 0x1400cbdf8
mov rax, qword [rbp + 0x78]
mov rcx, qword [rax]
mov rdx, qword [0x140110e98]
sub rsp, 0x20
call sub.msvcrt.dll_strcpy
mov rdx, qword [rbp + 0x90]
mov rcx, qword [rbp + 0x78]
add rsp, 0x20
mov rax, qword [rbp + 0xa0]
mov rcx, qword [rcx]
mov rdx, qword [rdx]
movsxd r8, dword [rax]
sub rsp, 0x20
call sub.msvcrt.dll_strncat
add rsp, 0x20
mov rax, qword [rbp + 0x78]
mov rcx, qword [rax]
lea rdx, [0x140110ea4]
sub rsp, 0x20
call sub.msvcrt.dll_strcat
mov rcx, qword [rbp + 0x98]
mov rdx, qword [rbp + 0xc0]
call fcn.1400c7920
mov rax, qword [rbp + 0xb0]
add rsp, 0x20
mov dword [rax], 0
mov rax, qword [rbp + 0xb0]
cmp dword [rax], 0x3e8
jge 0x1400cc569
mov rcx, qword [rbp + 0xd0]
sub rsp, 0x20
call fcn.1400c7510
mov rax, qword [rbp + 0xb0]
add rsp, 0x20
mov eax, dword [rax]
and eax, 1
cmp eax, 0
je 0x1400cc1e7
mov eax, dword [0x140111058]
xor eax, dword [0x14011105c]
xor eax, 0x24328e08
or eax, 0x37d16125
sub eax, 0xb688b7cd
cmp eax, 0x7fc739a5
je 0x1400ccbac
mov rax, qword [rbp + 0x68]
mov ecx, dword [0x140111060]
add ecx, dword [0x140111064]
imul ecx, ecx, 0x9bc92ddb
and ecx, 0xd3247e0d
sub ecx, 0xf0f95251
mov dword [rbp + 0x10], ecx
mov rcx, qword [rax]
mov qword [rbp + 8], rcx
mov rcx, qword [rax]
sub rsp, 0x20
call sub.msvcrt.dll_strlen
mov rcx, qword [rbp + 0xd0]
mov rdx, qword [rbp + 8]
add rsp, 0x20
mov r8d, eax
sub rsp, 0x20
call fcn.1400c7560
mov eax, dword [rbp + 0x10]
add rsp, 0x20
cmp eax, 0x8564ed6a
ja 0x1400cc17d
jmp 0x1400cc262
mov eax, dword [0x140111068]
xor edx, edx
div dword [0x14011106c]
sub eax, 0xb1bbe3cd
sub eax, 0x2a0113cf
add eax, 0x3f54157f
cmp eax, 0x3c46c257
je 0x1400ccbe7
mov rdx, qword [rbp + 0x98]
mov rcx, qword [rbp + 0xd0]
mov eax, dword [0x140111070]
imul eax, dword [0x140111074]
or eax, 0x58b6d9a4
and eax, 0xf4881a5d
xor eax, 0x882f40a3
mov dword [rbp + 4], eax
mov r8d, 0x10
sub rsp, 0x20
call fcn.1400c7560
mov eax, dword [rbp + 4]
add rsp, 0x20
cmp eax, 0x5361c344
jb 0x1400cc20f
jmp 0x1400cc262
mov eax, dword [0x140111078]
or eax, dword [0x14011107c]
sub eax, 0xcf97cbc8
xor eax, 0xbe24d295
mov ecx, 0x934bacf8
xor edx, edx
div ecx
cmp eax, 0x5681cb3c
jae 0x1400ccc0d
mov rax, qword [rbp + 0xb0]
mov ecx, dword [0x140111080]
add ecx, dword [0x140111084]
imul ecx, ecx, 0xa92a1af2
imul ecx, ecx, 0x7a757489
and ecx, 0x535dcb51
mov dword [rbp - 4], ecx
mov eax, dword [rax]
mov ecx, 3
cdq
idiv ecx
mov eax, dword [rbp - 4]
cmp edx, 0
setne cl
mov byte [rbp + 3], cl
cmp eax, 0x13c1acbb
jb 0x1400cc28c
mov al, byte [rbp + 3]
test al, 1
jne 0x1400cc2e5
jmp 0x1400cc30d
mov rcx, qword [rbp + 0xd0]
mov rax, qword [rbp + 0xa0]
mov rdx, qword [rbp + 0x90]
mov rdx, qword [rdx]
mov r8d, dword [rax]
sub rsp, 0x20
call fcn.1400c7560
add rsp, 0x20
mov rax, qword [rbp + 0xb0]
mov eax, dword [rax]
mov ecx, 7
cdq
idiv ecx
cmp edx, 0
je 0x1400cc35d
mov rax, qword [rbp + 0x68]
mov rcx, qword [rax]
mov qword [rbp - 0x10], rcx
mov rcx, qword [rax]
sub rsp, 0x20
call sub.msvcrt.dll_strlen
mov rcx, qword [rbp + 0xd0]
mov rdx, qword [rbp - 0x10]
add rsp, 0x20
mov r8d, eax
sub rsp, 0x20
call fcn.1400c7560
add rsp, 0x20
mov eax, dword [0x140111088]
sub eax, dword [0x14011108c]
or eax, 0x39b966cc
or eax, 0x56b433b5
mov ecx, 0x99184905
xor edx, edx
div ecx
cmp eax, 0x89538581
je 0x1400ccc12
mov rcx, qword [rbp + 0xb0]
mov eax, dword [0x140111090]
add eax, dword [0x140111094]
or eax, 0xbd26db1b
sub eax, 0xacc55486
and eax, 0xa91deff6
mov ecx, dword [rcx]
and ecx, 1
cmp ecx, 0
setne cl
mov byte [rbp - 0x11], cl
cmp eax, 0xf4486b09
ja 0x1400ccc12
mov al, byte [rbp - 0x11]
test al, 1
jne 0x1400cc3d2
jmp 0x1400cc44b
mov eax, dword [0x140111098]
xor eax, dword [0x14011109c]
add eax, 0x1ceab59a
add eax, 0xda822cb1
sub eax, 0x6b8e2689
cmp eax, 0x9bd1de13
je 0x1400ccc17
mov rdx, qword [rbp + 0x98]
mov rcx, qword [rbp + 0xd0]
mov eax, dword [0x1401110a0]
and eax, dword [0x1401110a4]
imul eax, eax, 0xe412bb57
add eax, 0x9e87924b
sub eax, 0x69f1634d
mov dword [rbp - 0x18], eax
mov r8d, 0x10
sub rsp, 0x20
call fcn.1400c7560
mov eax, dword [rbp - 0x18]
add rsp, 0x20
cmp eax, 0x640ff09a
je 0x1400cc3f8
jmp 0x1400cc4e3
mov eax, dword [0x1401110a8]
sub eax, dword [0x1401110ac]
add eax, 0x848dddc7
and eax, 0x455d1e61
mov ecx, 0xcdc971df
xor edx, edx
div ecx
cmp eax, 0xa87b0757
je 0x1400ccc3d
mov eax, dword [0x1401110b0]
xor edx, edx
div dword [0x1401110b4]
mov ecx, eax
mov rax, qword [rbp + 0x68]
add ecx, 0x66aa70ba
imul ecx, ecx, 0xe682cbd6
xor ecx, 0x9532c5bb
mov dword [rbp - 0x1c], ecx
mov rcx, qword [rax]
mov qword [rbp - 0x28], rcx
mov rcx, qword [rax]
sub rsp, 0x20
call sub.msvcrt.dll_strlen
mov rcx, qword [rbp + 0xd0]
mov rdx, qword [rbp - 0x28]
add rsp, 0x20
mov r8d, eax
sub rsp, 0x20
call fcn.1400c7560
mov eax, dword [rbp - 0x1c]
add rsp, 0x20
cmp eax, 0xaadc97a6
je 0x1400cc475
jmp 0x1400cc4e3
mov eax, dword [0x1401110b8]
and eax, dword [0x1401110bc]
or eax, 0x112a73e7
imul eax, eax, 0xdd084e9f
xor eax, 0xa37004fd
cmp eax, 0x767cd2d8
je 0x1400ccc78
mov rdx, qword [rbp + 0xd0]
mov rcx, qword [rbp + 0x98]
mov eax, dword [0x1401110c0]
sub eax, dword [0x1401110c4]
or eax, 0x4870bf27
or eax, 0xf44c4e25
add eax, 0xb83ca2ff
mov dword [rbp - 0x2c], eax
sub rsp, 0x20
call fcn.1400c7920
mov eax, dword [rbp - 0x2c]
add rsp, 0x20
cmp eax, 0x20ce1e30
jbe 0x1400cc50a
jmp 0x1400cc556
mov rax, qword [rbp + 0xb0]
mov ecx, dword [rax]
add ecx, 1
mov dword [rax], ecx
jmp 0x1400cc11b
mov eax, dword [0x1401110c8]
add eax, dword [0x1401110cc]
add eax, 0xc72d0f7a
mov ecx, 0x1554734f
xor edx, edx
div ecx
mov ecx, 0x87f76fda
xor edx, edx
div ecx
cmp eax, 0x442779e6
je 0x1400ccc98
mov eax, dword [0x1401110d0]
add eax, dword [0x1401110d4]
mov ecx, 0xd4f40c7c
xor edx, edx
div ecx
mov ecx, eax
mov rax, qword [rbp + 0x78]
xor ecx, 0xad820d05
and ecx, 0xbc980ef9
mov dword [rbp - 0x30], ecx
mov rcx, qword [rax]
mov qword [rbp - 0x38], rcx
mov rcx, qword [rax]
sub rsp, 0x20
call sub.msvcrt.dll_strlen
mov rdx, qword [rbp - 0x38]
mov rcx, qword [rbp + 0x88]
mov r8, qword [rbp + 0x98]
add rsp, 0x20
mov r9, rax
mov rax, qword [rbp + 0xe0]
add rdx, r9
mov qword [rcx], rdx
movzx edx, byte [r8]
shl edx, 0x10
movzx r9d, byte [r8 + 6]
shl r9d, 8
or edx, r9d
movzx r8d, byte [r8 + 0xc]
or edx, r8d
mov dword [rax], edx
mov rcx, qword [rcx]
mov edx, dword [rax]
mov r8d, 4
sub rsp, 0x20
call fcn.1400cade0
mov rax, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0x88]
mov r8, qword [rbp + 0x98]
add rsp, 0x20
mov rdx, qword [rcx]
add rdx, 4
mov qword [rcx], rdx
movzx edx, byte [r8 + 1]
shl edx, 0x10
movzx r9d, byte [r8 + 7]
shl r9d, 8
or edx, r9d
movzx r8d, byte [r8 + 0xd]
or edx, r8d
mov dword [rax], edx
mov rcx, qword [rcx]
mov edx, dword [rax]
mov r8d, 4
sub rsp, 0x20
call fcn.1400cade0
mov rax, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0x88]
mov r8, qword [rbp + 0x98]
add rsp, 0x20
mov rdx, qword [rcx]
add rdx, 4
mov qword [rcx], rdx
movzx edx, byte [r8 + 2]
shl edx, 0x10
movzx r9d, byte [r8 + 8]
shl r9d, 8
or edx, r9d
movzx r8d, byte [r8 + 0xe]
or edx, r8d
mov dword [rax], edx
mov rcx, qword [rcx]
mov edx, dword [rax]
mov r8d, 4
sub rsp, 0x20
call fcn.1400cade0
mov rax, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0x88]
mov r8, qword [rbp + 0x98]
add rsp, 0x20
mov rdx, qword [rcx]
add rdx, 4
mov qword [rcx], rdx
movzx edx, byte [r8 + 3]
shl edx, 0x10
movzx r9d, byte [r8 + 9]
shl r9d, 8
or edx, r9d
movzx r8d, byte [r8 + 0xf]
or edx, r8d
mov dword [rax], edx
mov rcx, qword [rcx]
mov edx, dword [rax]
mov r8d, 4
sub rsp, 0x20
call fcn.1400cade0
mov rax, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0x88]
mov r8, qword [rbp + 0x98]
add rsp, 0x20
mov rdx, qword [rcx]
add rdx, 4
mov qword [rcx], rdx
movzx edx, byte [r8 + 4]
shl edx, 0x10
movzx r9d, byte [r8 + 0xa]
shl r9d, 8
or edx, r9d
movzx r8d, byte [r8 + 5]
or edx, r8d
mov dword [rax], edx
mov rcx, qword [rcx]
mov edx, dword [rax]
mov r8d, 4
sub rsp, 0x20
call fcn.1400cade0
mov rax, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0x88]
mov rdx, qword [rbp + 0x98]
add rsp, 0x20
mov r8, qword [rcx]
add r8, 4
mov qword [rcx], r8
movzx edx, byte [rdx + 0xb]
mov dword [rax], edx
mov rcx, qword [rcx]
mov edx, dword [rax]
mov r8d, 2
sub rsp, 0x20
call fcn.1400cade0
mov rax, qword [rbp + 0x88]
mov rcx, qword [rbp + 0x98]
add rsp, 0x20
mov rdx, qword [rax]
add rdx, 2
mov qword [rax], rdx
mov rax, qword [rax]
mov byte [rax], 0
xor edx, edx
mov r8d, 0x10
sub rsp, 0x20
call sub.msvcrt.dll_memset
mov eax, dword [rbp - 0x30]
add rsp, 0x20
cmp eax, 0x43fba168
jb 0x1400cc597
jmp 0x1400cc867
mov eax, dword [0x1401110d8]
sub eax, dword [0x1401110dc]
xor eax, 0x5f83e02
mov ecx, 0x90c5f0ff
xor edx, edx
div ecx
sub eax, 0xdf59dbdd
cmp eax, 0x6b9a2be9
jae 0x1400cced3
mov rcx, qword [rbp + 0x78]
mov eax, dword [0x1401110e0]
xor edx, edx
div dword [0x1401110e4]
or eax, 0x38be99a7
or eax, 0xb4e138b9
xor eax, 0xaf906e9f
mov rcx, qword [rcx]
mov byte [rcx], 0
cmp eax, 0x12de71eb
jb 0x1400cced3
jmp 0x1400cc867
mov rax, qword [rbp + 0x78]
mov rax, qword [rax]
lea rsp, [rbp + 0x108]
pop rsi
pop rbp
ret
mov rcx, qword [rbp + 0xf0]
mov r8, qword [rbp + 0xf8]
mov r10, qword [rbp + 0x100]
mov eax, 0x10
mov qword [rbp - 0x40], rax
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp - 0x40]
mov r9, rsp
call fcn.1400ec140
sub rsp, rax
mov rax, qword [rbp - 0x40]
mov rdx, rsp
call fcn.1400ec140
sub rsp, rax
mov rax, rsp
mov qword [r9], r10
mov qword [rdx], r8
mov qword [rax], rcx
jmp 0x1400cb5f4
jmp 0x1400cb7c4
jmp 0x1400cb83b
mov rax, qword [rbp + 0x70]
mov rcx, qword [rax]
add rcx, 3
mov edx, 0x24
sub rsp, 0x20
call sub.msvcrt.dll_strchr
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x80]
mov qword [rax], rcx
jmp 0x1400cb8ab
mov rax, qword [rbp + 0xa0]
mov r8, qword [rbp + 0x90]
mov rcx, qword [rbp + 0xc0]
mov rdx, qword [rbp + 0x80]
mov r9, qword [rbp + 0x70]
mov r9, qword [r9]
add r9, 3
mov qword [r8], r9
mov rdx, qword [rdx]
mov r8, qword [r8]
sub rdx, r8
mov dword [rax], edx
sub rsp, 0x20
call fcn.1400c7510
mov rax, qword [rbp + 0x68]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp - 0x60], rcx
mov rcx, qword [rax]
sub rsp, 0x20
call sub.msvcrt.dll_strlen
mov rdx, qword [rbp - 0x60]
mov rcx, qword [rbp + 0xc0]
add rsp, 0x20
mov r8d, eax
sub rsp, 0x20
call fcn.1400c7560
add rsp, 0x20
mov rax, qword [0x140110e98]
mov qword [rbp - 0x58], rax
mov rcx, qword [0x140110e98]
sub rsp, 0x20
call sub.msvcrt.dll_strlen
mov rdx, qword [rbp - 0x58]
mov rcx, qword [rbp + 0xc0]
add rsp, 0x20
mov r8d, eax
sub rsp, 0x20
call fcn.1400c7560
mov rcx, qword [rbp + 0xc0]
mov rdx, qword [rbp + 0x90]
mov rax, qword [rbp + 0xa0]
add rsp, 0x20
mov rdx, qword [rdx]
mov r8d, dword [rax]
sub rsp, 0x20
call fcn.1400c7560
mov rcx, qword [rbp + 0xd0]
call fcn.1400c7510
mov rax, qword [rbp + 0x68]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp - 0x50], rcx
mov rcx, qword [rax]
sub rsp, 0x20
call sub.msvcrt.dll_strlen
mov rdx, qword [rbp - 0x50]
mov rcx, qword [rbp + 0xd0]
add rsp, 0x20
mov r8d, eax
sub rsp, 0x20
call fcn.1400c7560
mov rdx, qword [rbp + 0x90]
mov rax, qword [rbp + 0xa0]
mov rcx, qword [rbp + 0xd0]
add rsp, 0x20
mov rdx, qword [rdx]
mov r8d, dword [rax]
sub rsp, 0x20
call fcn.1400c7560
mov rax, qword [rbp + 0x68]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp - 0x48], rcx
mov rcx, qword [rax]
sub rsp, 0x20
call sub.msvcrt.dll_strlen
mov rdx, qword [rbp - 0x48]
mov rcx, qword [rbp + 0xd0]
add rsp, 0x20
mov r8d, eax
sub rsp, 0x20
call fcn.1400c7560
mov rcx, qword [rbp + 0x98]
mov rdx, qword [rbp + 0xd0]
call fcn.1400c7920
mov rax, qword [rbp + 0x68]
add rsp, 0x20
mov rcx, qword [rax]
sub rsp, 0x20
call sub.msvcrt.dll_strlen
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xa8]
mov dword [rax], ecx
jmp 0x1400cb944
jmp 0x1400cbb65
jmp 0x1400cbbda
jmp 0x1400cbc36
mov r8d, dword [rbp + 0x28]
mov rdx, qword [rbp + 0x98]
mov rcx, qword [rbp + 0xc0]
sub rsp, 0x20
call fcn.1400c7560
add rsp, 0x20
jmp 0x1400cbca7
mov rax, qword [rbp + 0xa8]
mov ecx, dword [rax]
sub ecx, 0x10
mov dword [rax], ecx
jmp 0x1400cbd1f
mov rcx, qword [rbp + 0x98]
xor edx, edx
mov r8d, 0x10
sub rsp, 0x20
call sub.msvcrt.dll_memset
mov rax, qword [rbp + 0x68]
add rsp, 0x20
mov rcx, qword [rax]
sub rsp, 0x20
call sub.msvcrt.dll_strlen
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xb0]
mov dword [rax], ecx
jmp 0x1400cbd8a
jmp 0x1400cbe1f
jmp 0x1400cbe91
mov rdx, qword [rbp + 0x98]
mov rcx, qword [rbp + 0xc0]
mov r8d, 1
sub rsp, 0x20
call fcn.1400c7560
add rsp, 0x20
jmp 0x1400cbf09
mov rcx, qword [rbp + 0xc0]
mov rax, qword [rbp + 0x68]
mov rdx, qword [rax]
mov r8d, 1
sub rsp, 0x20
call fcn.1400c7560
add rsp, 0x20
jmp 0x1400cbf86
jmp 0x1400cc00b
mov rax, qword [rbp + 0xb0]
mov ecx, dword [rax]
sar ecx, 1
mov dword [rax], ecx
jmp 0x1400cc05f
mov rax, qword [rbp + 0x68]
mov rcx, qword [rax]
mov qword [rbp - 0x68], rcx
mov rcx, qword [rax]
sub rsp, 0x20
call sub.msvcrt.dll_strlen
mov rcx, qword [rbp + 0xd0]
mov rdx, qword [rbp - 0x68]
add rsp, 0x20
mov r8d, eax
sub rsp, 0x20
call fcn.1400c7560
add rsp, 0x20
jmp 0x1400cc17d
mov rdx, qword [rbp + 0x98]
mov rcx, qword [rbp + 0xd0]
mov r8d, 0x10
sub rsp, 0x20
call fcn.1400c7560
add rsp, 0x20
jmp 0x1400cc20f
jmp 0x1400cc28c
jmp 0x1400cc387
mov rdx, qword [rbp + 0x98]
mov rcx, qword [rbp + 0xd0]
mov r8d, 0x10
sub rsp, 0x20
call fcn.1400c7560
add rsp, 0x20
jmp 0x1400cc3f8
mov rax, qword [rbp + 0x68]
mov rcx, qword [rax]
mov qword [rbp - 0x70], rcx
mov rcx, qword [rax]
sub rsp, 0x20
call sub.msvcrt.dll_strlen
mov rcx, qword [rbp + 0xd0]
mov rdx, qword [rbp - 0x70]
add rsp, 0x20
mov r8d, eax
sub rsp, 0x20
call fcn.1400c7560
add rsp, 0x20
jmp 0x1400cc475
mov rdx, qword [rbp + 0xd0]
mov rcx, qword [rbp + 0x98]
sub rsp, 0x20
call fcn.1400c7920
add rsp, 0x20
jmp 0x1400cc50a
mov rax, qword [rbp + 0x78]
mov rcx, qword [rax]
mov qword [rbp - 0x78], rcx
mov rcx, qword [rax]
sub rsp, 0x20
call sub.msvcrt.dll_strlen
mov rdx, qword [rbp - 0x78]
mov rcx, qword [rbp + 0x88]
mov r8, qword [rbp + 0x98]
add rsp, 0x20
mov r9, rax
mov rax, qword [rbp + 0xe0]
add rdx, r9
mov qword [rcx], rdx
movzx edx, byte [r8]
shl edx, 0x10
movzx r9d, byte [r8 + 6]
shl r9d, 8
or edx, r9d
movzx r8d, byte [r8 + 0xc]
or edx, r8d
mov dword [rax], edx
mov rcx, qword [rcx]
mov edx, dword [rax]
mov r8d, 4
sub rsp, 0x20
call fcn.1400cade0
mov rax, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0x88]
mov r8, qword [rbp + 0x98]
add rsp, 0x20
mov rdx, qword [rcx]
add rdx, 4
mov qword [rcx], rdx
movzx edx, byte [r8 + 1]
shl edx, 0x10
movzx r9d, byte [r8 + 7]
shl r9d, 8
or edx, r9d
movzx r8d, byte [r8 + 0xd]
or edx, r8d
mov dword [rax], edx
mov rcx, qword [rcx]
mov edx, dword [rax]
mov r8d, 4
sub rsp, 0x20
call fcn.1400cade0
mov rax, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0x88]
mov r8, qword [rbp + 0x98]
add rsp, 0x20
mov rdx, qword [rcx]
add rdx, 4
mov qword [rcx], rdx
movzx edx, byte [r8 + 2]
shl edx, 0x10
movzx r9d, byte [r8 + 8]
shl r9d, 8
or edx, r9d
movzx r8d, byte [r8 + 0xe]
or edx, r8d
mov dword [rax], edx
mov rcx, qword [rcx]
mov edx, dword [rax]
mov r8d, 4
sub rsp, 0x20
call fcn.1400cade0
mov rax, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0x88]
mov r8, qword [rbp + 0x98]
add rsp, 0x20
mov rdx, qword [rcx]
add rdx, 4
mov qword [rcx], rdx
movzx edx, byte [r8 + 3]
shl edx, 0x10
movzx r9d, byte [r8 + 9]
shl r9d, 8
or edx, r9d
movzx r8d, byte [r8 + 0xf]
or edx, r8d
mov dword [rax], edx
mov rcx, qword [rcx]
mov edx, dword [rax]
mov r8d, 4
sub rsp, 0x20
call fcn.1400cade0
mov rax, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0x88]
mov r8, qword [rbp + 0x98]
add rsp, 0x20
mov rdx, qword [rcx]
add rdx, 4
mov qword [rcx], rdx
movzx edx, byte [r8 + 4]
shl edx, 0x10
movzx r9d, byte [r8 + 0xa]
shl r9d, 8
or edx, r9d
movzx r8d, byte [r8 + 5]
or edx, r8d
mov dword [rax], edx
mov rcx, qword [rcx]
mov edx, dword [rax]
mov r8d, 4
sub rsp, 0x20
call fcn.1400cade0
mov rax, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0x88]
mov rdx, qword [rbp + 0x98]
add rsp, 0x20
mov r8, qword [rcx]
add r8, 4
mov qword [rcx], r8
movzx edx, byte [rdx + 0xb]
mov dword [rax], edx
mov rcx, qword [rcx]
mov edx, dword [rax]
mov r8d, 2
sub rsp, 0x20
call fcn.1400cade0
mov rax, qword [rbp + 0x88]
mov rcx, qword [rbp + 0x98]
add rsp, 0x20
mov rdx, qword [rax]
add rdx, 2
mov qword [rax], rdx
mov rax, qword [rax]
mov byte [rax], 0
xor edx, edx
mov r8d, 0x10
sub rsp, 0x20
call sub.msvcrt.dll_memset
add rsp, 0x20
jmp 0x1400cc597
mov rax, qword [rbp + 0x78]
mov rax, qword [rax]
mov byte [rax], 0
jmp 0x1400cc830