Function at 0x14005b910
Capabilities:
Encode data using base64
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x18
lea rbp, [rsp + 0x10]
mov r12, r8
mov r14, rdx
mov r13, rcx
mov eax, dword [0x141dc99f0]
sub eax, dword [0x141dc99f4]
xor eax, 0x5e5bacd6
imul eax, eax, 0xd907a487
or eax, 0x37b6d166
cmp eax, 0x75ef9045
jae 0x14005b960
mov eax, 0x310
call fcn.1400f07c0
sub rsp, rax
nop
mov eax, dword [0x141dc99f8]
xor edx, edx
div dword [0x141dc99fc]
or eax, 0x1e372922
xor eax, 0x2ed3ab86
imul ecx, eax, 0xf209edfd
mov eax, 0x310
call fcn.1400f07c0
sub rsp, rax
mov rdi, rsp
cmp ecx, 0xd6509d75
je 0x14005b960
mov eax, 0x20
call fcn.1400f07c0
sub rsp, rax
mov rbx, rsp
nop word cs:[rax + rax]
mov eax, dword [0x141dc9a00]
sub eax, dword [0x141dc9a04]
imul eax, eax, 0xe611396a
cmp eax, 0x6519a787
je 0x14005b9b0
test r12, r12
je 0x14005bba0
movzx esi, byte [r14]
nop word cs:[rax + rax]
mov eax, dword [0x141dc9a18]
xor eax, dword [0x141dc9a1c]
imul eax, eax, 0x725bd7ac
and eax, 0xb95c7d54
cmp eax, 0xa11ee316
ja 0x14005b9e0
nop
mov eax, dword [0x141dc9a20]
xor edx, edx
div dword [0x141dc9a24]
or eax, 0xc12459d0
cmp eax, 0x8103d48d
je 0x14005ba00
cmp esi, 0x2d
je 0x14005ba24
cmp esi, 0x2b
jne 0x14005ba5f
dec r12
nop word [rax + rax]
mov eax, dword [0x141dc9a28]
and eax, dword [0x141dc9a2c]
imul eax, eax, 0xe5b711bd
xor eax, 0x87c08410
and eax, 0xffc0af94
cmp eax, 0x6b5fbbec
ja 0x14005ba30
test r12, r12
je 0x14005bbf0
inc r14
mov eax, dword [0x141dc9a40]
xor eax, dword [0x141dc9a44]
or eax, 0x463069fe
add eax, 0xe474fbbf
xor eax, 0x7ccf2388
cmp eax, 0xdb17cbd8
jbe 0x14005ba97
sub rsp, 0x20
mov rcx, rbx
mov rdx, r14
mov r8, r12
call fcn.140045d10
add rsp, 0x20
mov dword [rbp + 4], esi
nop word [rax + rax]
mov eax, dword [0x141dc9a48]
mov ecx, dword [str.O_a6]
add eax, ecx
add eax, 0x29ea0e6b
xor eax, 0x1f71906a
imul rsi, rax, 0x7d6514d1
shr rsi, 0x3e
sub rsp, 0x20
mov rcx, rbx
mov rdx, r14
mov r8, r12
call fcn.140045d10
add rsp, 0x20
cmp esi, 0x1d02b747
ja 0x14005baa0
movzx r15d, byte [rbx + 0x11]
cmp r15b, 2
jne 0x14005bcdb
mov r8d, dword [rbp + 4]
nop word cs:[rax + rax]
mov eax, dword [0x141dc9a50]
xor edx, edx
div dword [0x141dc9a54]
or eax, 0x7114ec20
imul eax, eax, 0xe52938af
add eax, 0x9832840c
cmp eax, 0x7767df78
jb 0x14005bb00
cmp r12, 3
je 0x14005bc60
cmp r12, 8
jne 0x14005bdab
movabs rax, 0xdfdfdfdfdfdfdfdf
mov ecx, 0x92975eb5
and rax, qword [r14]
nop dword [rax + rax]
mov edx, dword [0x141dc9a58]
xor edx, dword [0x141dc9a5c]
and edx, 0xf8aea158
imul edx, edx, 0x1d76a7d5
shr edx, 1
imul rdx, rcx
shr rdx, 0x3c
cmp edx, 0x6cf5151d
je 0x14005bb50
movabs rcx, 0x5954494e49464e49
cmp rax, rcx
je 0x14005bdd5
jmp 0x14005bdab
mov eax, dword [0x141dc9a08]
and eax, dword [0x141dc9a0c]
add eax, 0x17ce7af
or eax, 0xa3d854ce
cmp eax, 0x693d9578
je 0x14005bba0
mov word [r13], 1
nop word cs:[rax + rax]
mov eax, dword [0x141dc9a10]
imul eax, dword [0x141dc9a14]
cmp eax, 0xee7da863
je 0x14005bbd0
jmp 0x14005c52d
mov eax, dword [0x141dc9a30]
mov ecx, dword [0x141dc9a34]
add eax, ecx
add eax, 0xac2d7b24
xor eax, 0x3d34297
imul eax, eax, 0x240aadbd
cmp eax, 0x9ce7cf99
ja 0x14005bbf0
mov word [r13], 0x101
mov eax, 0xaca8dd41
nop word cs:[rax + rax]
mov ecx, dword [0x141dc9a38]
and ecx, dword [0x141dc9a3c]
imul rcx, rax
shr rcx, 0x3f
imul ecx, ecx, 0x16c5dac4
xor ecx, 0xf2d13b07
cmp ecx, 0x691a0bc5
jb 0x14005bc30
jmp 0x14005c52d
mov eax, dword [0x141dc9a60]
xor edx, edx
div dword [0x141dc9a64]
cmp eax, 0x99840eda
je 0x14005bc60
movzx ecx, word [r14 + 1]
shl rcx, 8
movzx eax, byte [r14]
or rax, rcx
mov ecx, 0xb710b3fd
nop word [rax + rax]
mov edx, dword [0x141dc9a68]
or edx, dword [0x141dc9a6c]
xor edx, 0xbaa23f4d
imul rdx, rcx
shr rdx, 0x3f
cmp edx, 0x207e33ca
ja 0x14005bc90
and eax, 0xdfdfdf
cmp rax, 0x464e49
je 0x14005bdd5
cmp eax, 0x4e414e
jne 0x14005bdab
movsd xmm0, qword [0x1401037f8]
jmp 0x14005bddd
mov qword [rbp - 8], r13
mov r13, qword [rbx]
mov rsi, qword [rbx + 8]
lea rax, [r13 + 0x16]
cmp rax, 0x3b
ja 0x14005bed7
test r15b, r15b
jne 0x14005bed7
movabs rcx, 0x1fffffffffffff
lea rax, [rcx + 2]
cmp rsi, rax
jae 0x14005bed7
cmp r13, 0x16
jg 0x14005bdfc
movq xmm1, rsi
punpckldq xmm1, xmmword [0x1401037b0]
subpd xmm1, xmmword [0x1401037c0]
movapd xmm0, xmm1
unpckhpd xmm0, xmm1
addsd xmm0, xmm1
nop
mov eax, dword [0x141dc9a70]
and eax, dword [0x141dc9a74]
xor eax, 0x47042282
and eax, 0x57d622e6
cmp eax, 0x6a8082e
je 0x14005bd40
test r13, r13
mov r8d, dword [rbp + 4]
js 0x14005c388
lea rax, [0x141db69c0]
nop word cs:[rax + rax]
mov ecx, dword [0x141dc9a90]
add ecx, dword [0x141dc9a94]
or ecx, 0x2769a147
add ecx, 0x40aa0d9a
cmp ecx, 0xae149102
ja 0x14005bd80
mulsd xmm0, qword [rax + r13*8]
jmp 0x14005c39a
mov byte [r13 + 1], 1
mov eax, dword [0x141dc9a98]
imul eax, dword [0x141dc9a9c]
imul eax, eax, 0x1ef80608
cmp eax, 0x98da3605
je 0x14005bdb0
mov al, 1
mov byte [r13], al
jmp 0x14005c52d
movsd xmm0, qword [0x1401037f0]
cmp r8d, 0x2d
jne 0x14005bdeb
xorpd xmm0, xmmword [0x1401037e0]
movsd qword [r13 + 8], xmm0
xor eax, eax
mov byte [r13], al
jmp 0x14005c52d
lea rdx, [0x141db6ac0]
mov rax, rsi
mul qword [rdx + r13*8 - 0xb0]
jo 0x14005bed7
inc rcx
cmp rax, rcx
ja 0x14005bed7
movq xmm1, rax
punpckldq xmm1, xmmword [0x1401037b0]
subpd xmm1, xmmword [0x1401037c0]
movapd xmm0, xmm1
unpckhpd xmm0, xmm1
nop dword [rax]
mov eax, dword [0x141dc9a78]
xor edx, edx
div dword [0x141dc9a7c]
imul eax, eax, 0x3c9dba
add eax, 0x12cbc5a2
imul rax, rax, 0x6dcc900f
shr rax, 0x3e
cmp eax, 0xb5cdf084
ja 0x14005be40
addsd xmm0, xmm1
mulsd xmm0, qword [0x1401037d0]
mov rcx, qword [rbp - 8]
mov r8d, dword [rbp + 4]
nop
mov eax, dword [0x141dc9a80]
xor edx, edx
div dword [0x141dc9a84]
xor eax, 0x909e43e5
imul eax, eax, 0x755b0f55
shr eax, 3
imul rax, rax, 0x107fc653
shr rax, 0x38
cmp eax, 0xf3584116
je 0x14005be80
nop
mov eax, dword [0x141dc9a88]
or eax, dword [0x141dc9a8c]
add eax, 0xaa77b956
xor eax, 0x5194c018
and eax, 0x79f4c09f
cmp eax, 0x20b425dc
jb 0x14005beb0
jmp 0x14005c39e
sub rsp, 0x20
mov rcx, r13
mov rdx, rsi
call fcn.14005cf60
add rsp, 0x20
mov rbx, rax
test r15b, r15b
je 0x14005bf72
test edx, edx
js 0x14005bf72
mov r15, rdx
inc rsi
mov eax, dword [0x141dc9aa8]
or eax, dword [0x141dc9aac]
xor eax, 0xd8e24452
imul eax, eax, 0x54e14b8e
cmp eax, 0x1c0c7118
jb 0x14005bf00
sub rsp, 0x20
mov rcx, r13
mov rdx, rsi
call fcn.14005cf60
add rsp, 0x20
mov r13, qword [rbp - 8]
mov r10, r15
nop dword [rax + rax]
cmp r10d, edx
sete cl
cmp rbx, rax
sete r8b
mov r9d, dword [0x141dc9ab0]
sub r9d, dword [0x141dc9ab4]
cmp r9d, 0xc1e8faf4
je 0x14005bf40
and r8b, cl
mov r15d, dword [rbp + 4]
je 0x14005bfb6
jmp 0x14005c508
mov r10, rdx
mov r15d, dword [rbp + 4]
nop dword [rax]
mov eax, dword [0x141dc9aa0]
xor eax, dword [0x141dc9aa4]
imul eax, eax, 0xab94c1c8
add eax, 0xb7f0e6fb
imul rax, rax, 0x73a7ccf
shr rax, 0x38
cmp eax, 0xdb1db9c9
ja 0x14005bf80
test r10d, r10d
mov r13, qword [rbp - 8]
jns 0x14005c508
sub rsp, 0x20
mov rcx, rdi
mov rdx, r14
mov r8, r12
call fcn.1400451c0
add rsp, 0x20
xor eax, eax
mov qword [rbp - 0x10], rax
cmp qword [rdi], 0
je 0x14005c4d7
mov ecx, dword [rdi + 0x308]
cmp ecx, 0xfffffebc
jl 0x14005c4d7
cmp ecx, 0x135
jle 0x14005c010
mov eax, 0x7ff
mov qword [rbp - 0x10], rax
jmp 0x14005c4d7
mov eax, dword [0x141dc9ab8]
imul eax, dword [0x141dc9abc]
and eax, 0x1bb26408
xor eax, 0xe071100
or eax, 0x488ab6
cmp eax, 0x500c0867
ja 0x14005c010
mov eax, 0x7ff
mov qword [rbp - 0x10], rax
lea r12, [0x141db6966]
xor r15d, r15d
test ecx, ecx
jle 0x14005c140
mov r14d, 0x92583aab
nop word cs:[rax + rax]
mov eax, dword [0x141dc9ac0]
xor eax, dword [0x141dc9ac4]
imul rax, r14
shr rax, 0x3e
imul eax, eax, 0x669540ea
or eax, 0x23677529
cmp eax, 0xa7a157ed
ja 0x14005c060
mov esi, 0x3c
cmp ecx, 0x13
jae 0x14005c0b1
mov eax, ecx
mov ecx, dword [0x141dc9d10]
or ecx, dword [0x141dc9d14]
imul ecx, ecx, 0x9db1ea25
cmp ecx, 0xefdf0ff3
je 0x14005c092
movzx esi, byte [rax + r12]
mov eax, dword [0x141dc9d18]
add eax, dword [0x141dc9d1c]
xor eax, 0xadd23ee8
imul eax, eax, 0xee2a9d54
cmp eax, 0x1edb1918
jne 0x14005c0f0
sub rsp, 0x20
mov rcx, rdi
mov rdx, rsi
call fcn.140044960
add rsp, 0x20
nop word cs:[rax + rax]
mov eax, dword [0x141dc9d20]
and eax, dword [0x141dc9d24]
imul ebx, eax, 0xb38ff1c6
sub rsp, 0x20
mov rcx, rdi
mov rdx, rsi
call fcn.140044960
add rsp, 0x20
cmp ebx, 0xed24ebea
je 0x14005c0f0
mov ecx, dword [rdi + 0x308]
cmp ecx, 0xfffff800
jle 0x14005c47d
add r15d, esi
test ecx, ecx
jg 0x14005c060
nop word [rax + rax]
mov eax, dword [0x141dc9ac8]
xor eax, dword [0x141dc9acc]
xor eax, 0x38d1a90
and eax, 0x13ef1adb
cmp eax, 0x83f87e6
ja 0x14005c140
mov esi, 0xa9c1d3cf
xor r13d, r13d
nop word cs:[rax + rax]
mov eax, dword [0x141dc9ad0]
mov edx, dword [0x141dc9ad4]
add eax, edx
add eax, 0x10981076
and eax, 0xd0bd74d9
add eax, 0x6050a41e
cmp eax, 0xc6899572
ja 0x14005c170
test ecx, ecx
je 0x14005c23d
mov eax, dword [0x141dc9ae8]
xor edx, edx
div dword [0x141dc9aec]
mov eax, dword [0x141dc9af0]
or eax, dword [0x141dc9af4]
imul eax, eax, 0x8373baa5
add eax, 0xdcdaa9db
cmp eax, 0x8a07c8a7
jb 0x14005c1aa
neg ecx
mov eax, dword [0x141dc9af8]
sub eax, dword [0x141dc9afc]
imul rdx, rax, 0x230bc8f5
shr rdx, 0x20
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 0x1f
add eax, 0xf1738c1
cmp eax, 0xc2356b80
ja 0x14005c1ca
nop word cs:[rax + rax]
mov eax, dword [0x141dc9b00]
xor eax, dword [0x141dc9b04]
xor eax, 0x80020300
or eax, 0x307974b6
and eax, 0xf0fb77fe
cmp eax, 0x26e64bea
jb 0x14005c200
mov r14d, 0x3c
cmp ecx, 0x13
jae 0x14005c2d3
mov eax, ecx
movzx r14d, byte [rax + r12]
jmp 0x14005c2d3
movzx eax, byte [rdi + 8]
mov ecx, dword [0x141dc9ad8]
mov edx, dword [0x141dc9adc]
add ecx, edx
add ecx, 0x9c5db46e
or ecx, 0xe57b51ff
cmp ecx, 0x597d0c96
jb 0x14005c241
nop word cs:[rax + rax]
mov ecx, dword [0x141dc9ae0]
imul ecx, dword [0x141dc9ae4]
and ecx, 0xdbbb8cb
imul ecx, ecx, 0x2de74c24
imul rcx, rsi
shr rcx, 0x39
cmp ecx, 0x361bcc3
je 0x14005c270
cmp al, 4
ja 0x14005c3b9
cmp al, 2
mov r14d, 0
adc r14, 1
nop dword [rax]
mov eax, dword [0x141dc9b08]
and eax, dword [0x141dc9b0c]
or eax, 0x5e4a485f
imul eax, eax, 0x73a5df61
xor eax, 0xae11e0
cmp eax, 0x18b3e67b
jb 0x14005c2b0
test r13b, r13b
jne 0x14005c370
nop dword [rax]
mov ebx, dword [str._3_E]
imul ebx, dword [0x141dc9b14]
sub rsp, 0x20
mov rcx, rdi
mov rdx, r14
call fcn.140044120
add rsp, 0x20
cmp ebx, 0x5a4b85fd
je 0x14005c370
mov ecx, dword [rdi + 0x308]
cmp ecx, 0x7ff
jg 0x14005c489
mov eax, dword [0x141dc9d00]
xor edx, edx
div dword [0x141dc9d04]
and eax, 0x1d101282
xor eax, 0xb4108316
or eax, 0x42eb6c49
cmp eax, 0xb120875b
jb 0x14005c31a
sub r15d, r14d
mov eax, dword [0x141dc9d08]
add eax, dword [0x141dc9d0c]
or eax, 0xe4011a41
and eax, 0xef411b67
add eax, 0x8340cfac
cmp eax, 0x2bea073e
jb 0x14005c341
test ecx, ecx
jle 0x14005c170
jmp 0x14005c3b9
sub rsp, 0x20
mov rcx, rdi
mov rdx, r14
call fcn.140044120
add rsp, 0x20
jmp 0x14005c2e0
shl r13, 3
lea rax, [0x141db69c0]
sub rax, r13
divsd xmm0, qword [rax]
mov rcx, qword [rbp - 8]
cmp r8d, 0x2d
jne 0x14005c3ac
xorpd xmm0, xmmword [0x1401037e0]
movsd qword [rcx + 8], xmm0
mov byte [rcx], 0
jmp 0x14005c52d
dec r15d
cmp r15d, 0xfffffc01
jg 0x14005c493
mov esi, 0x3c
mov r13, qword [rbp - 8]
jmp 0x14005c3e7
add r14d, r15d
mov r15d, r14d
cmp r14d, 0xfffffc02
jae 0x14005c49a
mov eax, dword [0x141dc9b20]
imul eax, dword [0x141dc9b24]
xor eax, 0x11304118
or eax, 0xaacdbcc7
imul rax, rax, 0x41f42567
shr rax, 0x3d
cmp eax, 0xcfca56ed
ja 0x14005c45d
mov eax, dword [0x141dc9b28]
add eax, dword [0x141dc9b2c]
and eax, 0x611e6139
imul ebx, eax, 0xb11b42f4
add ebx, 0x4f85663e
mov r14d, 0xfffffc02
sub r14d, r15d
cmp r14d, 0x3c
cmovae r14d, esi
sub rsp, 0x20
mov rcx, rdi
mov rdx, r14
call fcn.140044960
add rsp, 0x20
cmp ebx, 0x24546ce3
jae 0x14005c3d4
mov edx, 0xfffffc02
sub edx, r15d
cmp edx, 0x3c
cmovae edx, esi
sub rsp, 0x20
mov rcx, rdi
call fcn.140044960
add rsp, 0x20
jmp 0x14005c410
xor eax, eax
mov qword [rbp - 0x10], rax
mov r15d, dword [rbp + 4]
jmp 0x14005c4d7
mov r13, qword [rbp - 8]
mov r15d, dword [rbp + 4]
jmp 0x14005c4d7
mov r14d, r15d
mov r13, qword [rbp - 8]
lea r12d, [r14 + 0x3ff]
mov r15d, dword [rbp + 4]
nop word cs:[rax + rax]
mov eax, dword [0x141dc9b18]
add eax, dword [0x141dc9b1c]
imul eax, eax, 0x67cef26
and eax, 0xa14ba14c
cmp eax, 0x7bbfe656
je 0x14005c4b0
cmp r12d, 0x7fe
jle 0x14005c53e
xor ebx, ebx
nop dword [rax]
mov eax, dword [0x141dc9d28]
xor edx, edx
div dword [0x141dc9d2c]
xor eax, 0x3a93df53
add eax, 0xdbdd141d
or eax, 0xa4e13eff
cmp eax, 0xf27c9d5f
ja 0x14005c4e0
mov r10, qword [rbp - 0x10]
shl r10, 0x34
or r10, rbx
movq xmm0, r10
cmp r15d, 0x2d
jne 0x14005c522
pxor xmm0, xmmword [0x1401037e0]
movq qword [r13 + 8], xmm0
mov byte [r13], 0
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
sub rsp, 0x20
mov edx, 0x35
mov rcx, rdi
call fcn.140044120
add rsp, 0x20
mov r8, qword [rdi]
mov eax, dword [0x141dc9b30]
or eax, dword [str.ty_]
or eax, 0xf57533d2
imul rax, rax, 0xb8cd1ef
shr rax, 0x3b
cmp eax, 0x64064b3c
je 0x14005c556
movabs rsi, 0xfffffffffffff
test r8, r8
je 0x14005c64a
mov eax, dword [0x141dc9b38]
imul eax, dword [0x141dc9b3c]
or eax, 0xbfdfefdb
imul eax, eax, 0x3a67c93
cmp eax, 0x940b7494
ja 0x14005c58c
mov ecx, dword [rdi + 0x308]
mov eax, dword [0x141dc9b40]
imul eax, dword [0x141dc9b44]
and eax, 0x4de9893f
imul eax, eax, 0x80d9c4a8
imul rax, rax, 0x615b3701
shr rax, 0x3e
cmp eax, 0x62339950
je 0x14005c5b1
test ecx, ecx
js 0x14005c64a
cmp ecx, 0x12
ja 0x14005c9ce
mov eax, dword [0x141dc9b48]
xor edx, edx
div dword [0x141dc9b4c]
and eax, 0x800000
add eax, 0x69f80735
cmp eax, 0xe1f9a6e
jb 0x14005c5e8
test rcx, rcx
je 0x14005c69e
xor eax, eax
test al, al
jne 0x14005c612
mov eax, dword [0x141dc9b50]
xor edx, edx
div dword [0x141dc9b54]
xor eax, 0x62ba035b
imul eax, eax, 0x966afeca
add eax, 0xae150026
cmp eax, 0x5a236fb7
ja 0x14005c616
cmp ecx, 1
jne 0x14005c6a5
xor ebx, ebx
xor r11d, r11d
jmp 0x14005c806
xor ebx, ebx
mov ecx, r14d
add ecx, 0x3fe
mov eax, dword [0x141dc9cf0]
sub eax, dword [0x141dc9cf4]
cmp eax, 0xae943b51
je 0x14005c655
mov r12d, ecx
and rbx, rsi
mov eax, dword [0x141dc9cf8]
and eax, dword [0x141dc9cfc]
imul rax, rax, 0x3e732787
shr rax, 0x3c
add eax, 0xa8748897
and eax, 0x8874809a
cmp eax, 0x1831ed3e
jbe 0x14005c66e
mov r10d, r12d
jmp 0x14005c508
xor ebx, ebx
jmp 0x14005c899
xor eax, eax
test al, al
jne 0x14005c6a7
mov r9d, ecx
and r9d, 0xfffffffe
mov eax, dword [0x141dc9b58]
sub eax, dword [0x141dc9b5c]
xor eax, 0x73a27bc1
cmp eax, 0x883d422d
ja 0x14005c6b2
xor ebx, ebx
xor r10d, r10d
nop
mov eax, dword [0x141dc9b88]
add eax, dword [0x141dc9b8c]
imul eax, eax, 0x9ad2f1f5
xor eax, 0xb1200525
cmp eax, 0xa1b301f8
ja 0x14005c6d0
add rbx, rbx
lea r11, [rbx + rbx*4]
cmp r10, r8
jae 0x14005c743
mov eax, dword [0x141dc9be8]
xor eax, dword [0x141dc9bec]
imul rax, rax, 0x59d8425b
shr rax, 0x3e
or eax, 0x5fc8abee
cmp eax, 0x86eb9f2
jb 0x14005c6fa
movzx eax, byte [rdi + r10 + 8]
add r11, rax
mov eax, dword [0x141dc9bf0]
and eax, dword [0x141dc9bf4]
xor eax, 0x10814120
and eax, 0x9799d3e3
cmp eax, 0x12f77c46
je 0x14005c726
mov r15, r10
or r15, 1
mov eax, dword [0x141dc9bc0]
xor edx, edx
div dword [0x141dc9bc4]
nop dword [rax + rax]
mov eax, dword [0x141dc9bc8]
add eax, dword [0x141dc9bcc]
and eax, 0x840268
imul eax, eax, 0xca6e8505
cmp eax, 0xbfed9d4
jb 0x14005c760
add r11, r11
lea rbx, [r11 + r11*4]
cmp r15, r8
jae 0x14005c7d6
mov eax, dword [0x141dc9bd0]
or eax, dword [0x141dc9bd4]
and eax, 0x2e155a5f
cmp eax, 0x7a25fb05
je 0x14005c78a
movzx eax, byte [rdi + r15 + 8]
mov r15d, dword [rbp + 4]
mov edx, dword [0x141dc9bd8]
or edx, dword [0x141dc9bdc]
or edx, 0x6fa895f9
imul rdx, rdx, 0x50bb9d47
shr rdx, 0x3c
cmp edx, 0x96a71cc4
ja 0x14005c7ac
add rbx, rax
jmp 0x14005c7da
mov r15d, dword [rbp + 4]
lea r11, [r10 + 2]
mov eax, dword [0x141dc9be0]
or eax, dword [0x141dc9be4]
xor eax, 0x1e5415ff
cmp eax, 0x910f4914
ja 0x14005c7de
add r10, 2
cmp r10, r9
mov r10, r11
jne 0x14005c6d0
mov eax, dword [0x141dc9b60]
imul eax, dword [0x141dc9b64]
add eax, 0x8c5e6b06
imul rax, rax, 0x79ff8b1f
shr rax, 0x3e
or eax, 0xff8cb24a
cmp eax, 0xf1d121c7
jb 0x14005c806
test cl, 1
je 0x14005c899
mov eax, dword [0x141dc9b68]
xor edx, edx
div dword [0x141dc9b6c]
add rbx, rbx
lea rbx, [rbx + rbx*4]
mov eax, dword [0x141dc9b70]
xor eax, dword [0x141dc9b74]
or eax, 0x42e2d3a0
and eax, 0x42e3dbe0
cmp eax, 0xaa0b83a1
ja 0x14005c849
cmp r11, r8
jae 0x14005c899
mov eax, dword [0x141dc9b78]
mov edx, dword [0x141dc9b7c]
add eax, edx
add eax, 0x8ab96f09
imul rax, rax, 0x4e50034d
shr rax, 0x3d
cmp eax, 0x393a4278
ja 0x14005c86b
movzx eax, byte [rdi + r11 + 8]
add rbx, rax
mov eax, dword [0x141dc9b80]
sub eax, dword [0x141dc9b84]
xor eax, 0x62440640
and eax, 0x6a4df76c
add eax, 0x450404cd
cmp eax, 0xba8b8f8b
ja 0x14005c899
cmp r8, rcx
jbe 0x14005c9c5
movzx eax, byte [rdi + rcx + 8]
lea rdx, [rcx + 1]
cmp rdx, r8
jne 0x14005c979
cmp al, 5
jne 0x14005c979
mov eax, dword [0x141dc9b98]
xor edx, edx
div dword [0x141dc9b9c]
mov eax, dword [0x141dc9ba0]
and eax, dword [0x141dc9ba4]
imul eax, eax, 0xb94d3a27
add eax, 0x40b30761
cmp eax, 0xf0ce39f5
ja 0x14005c8ec
movzx eax, byte [rdi + 0x30c]
mov edx, dword [0x141dc9ba8]
xor edx, dword [0x141dc9bac]
or edx, 0x29cf96b2
xor edx, 0x6407ed82
imul edx, edx, 0x3ab52c50
cmp edx, 0x2cd51b7a
jb 0x14005c911
test al, al
jne 0x14005c9aa
mov eax, dword [0x141dc9bb0]
mov edx, dword [0x141dc9bb4]
add eax, edx
add eax, 0x3c0750af
xor eax, 0xf2e0a2
and eax, 0x48fff4e2
cmp eax, 0xe55aba77
je 0x14005c93b
test rcx, rcx
je 0x14005c9ef
test byte [rdi + rcx + 7], 1
mov r13, qword [rbp - 8]
mov r15d, dword [rbp + 4]
jne 0x14005c9aa
jmp 0x14005c9c5
mov ecx, dword [0x141dc9b90]
add ecx, dword [0x141dc9b94]
xor ecx, 0xe6008800
and ecx, 0xfe528914
shr ecx, 1
imul rcx, rcx, 0x4a609661
shr rcx, 0x3d
cmp ecx, 0xd4e8a00
ja 0x14005c979
cmp al, 4
jbe 0x14005c9c5
inc rbx
mov eax, dword [0x141dc9bb8]
xor eax, dword [0x141dc9bbc]
add eax, 0x7e016eca
cmp eax, 0x3e062ecd
ja 0x14005c9ad
mov rax, rbx
shr rax, 0x35
je 0x14005ca00
mov eax, dword [0x141dc9bf8]
imul eax, dword [0x141dc9bfc]
imul eax, eax, 0x443c0ab1
add eax, 0xe4966de
cmp eax, 0xfc85f350
ja 0x14005ca48
jmp 0x14005ca08
mov r13, qword [rbp - 8]
mov r15d, dword [rbp + 4]
mov rax, rbx
shr rax, 0x35
jne 0x14005c9ce
mov ecx, r14d
jmp 0x14005cbfc
mov eax, dword [0x141dc9c00]
add eax, dword [0x141dc9c04]
and eax, 0xe9785990
add eax, 0x65ce7e3b
mov ebx, 0xc718b7fd
imul rbx, rax
shr rbx, 0x3f
sub rsp, 0x20
mov edx, 1
mov rcx, rdi
call fcn.140044960
add rsp, 0x20
cmp ebx, 0xf4042824
jne 0x14005ca5f
sub rsp, 0x20
mov edx, 1
mov rcx, rdi
call fcn.140044960
add rsp, 0x20
jmp 0x14005ca08
lea ecx, [r14 + 1]
mov r9, qword [rdi]
mov eax, dword [0x141dc9c08]
imul eax, dword [0x141dc9c0c]
add eax, 0x2f807049
or eax, 0x96e62063
cmp eax, 0x3e775530
jb 0x14005ca66
test r9, r9
je 0x14005cbb8
mov eax, dword [0x141dc9c10]
or eax, dword [0x141dc9c14]
xor eax, 0x11488180
and eax, 0x1d58a18a
xor eax, 0x11cb7954
cmp eax, 0xc38d7091
ja 0x14005ca8d
mov r8d, dword [rdi + 0x308]
mov eax, dword [0x141dc9c18]
xor edx, edx
div dword [0x141dc9c1c]
xor eax, 0x357fcdfa
add eax, 0xb0f23400
and eax, 0x765c0276
cmp eax, 0x4331f9b0
jb 0x14005cab6
mov eax, dword [0x141dc9c20]
add eax, dword [0x141dc9c24]
and eax, 0x522aa1d
cmp eax, 0x2911aeed
je 0x14005cada
test r8d, r8d
js 0x14005cbb8
mov rbx, 0xffffffffffffffff
cmp r8d, 0x12
ja 0x14005cbba
mov eax, dword [0x141dc9c28]
xor edx, edx
div dword [0x141dc9c2c]
mov eax, 0xd0831afb
mov edx, dword [0x141dc9c30]
mov r10d, dword [0x141dc9c34]
add edx, r10d
add edx, 0xce38a6c4
imul rdx, rax
shr rdx, 0x3e
cmp edx, 0xe6b49baa
je 0x14005cb1f
test r8, r8
je 0x14005cc3d
mov eax, 0xbf10130d
mov edx, 0xa11463af
mov r10d, dword [0x141dc9c38]
and r10d, dword [0x141dc9c3c]
imul r10, rax
shr r10, 0x3f
or r10d, 0x7b36a5fc
imul r10, rdx
shr r10, 0x3c
cmp r10d, 0xad92934f
ja 0x14005cb58
mov eax, dword [0x141dc9c40]
imul eax, dword [0x141dc9c44]
and eax, 0xf1347f7f
add eax, 0xc2698ea5
cmp eax, 0x5a2ffe3a
jb 0x14005cb86
cmp r8d, 1
jne 0x14005cc44
xor ebx, ebx
xor r10d, r10d
jmp 0x14005cd43
xor ebx, ebx
mov r12d, r14d
add r12d, 0x400
mov eax, dword [0x141dc9cd8]
xor edx, edx
div dword [0x141dc9cdc]
imul rax, rax, 0x7d9a8f0f
shr rax, 0x3e
imul eax, eax, 0x4e357bee
and eax, 0x270b3912
cmp eax, 0x7d5d6fc6
ja 0x14005cbc4
cmp r12d, 0x7fe
jg 0x14005c4d7
mov eax, dword [0x141dc9ce0]
xor edx, edx
div dword [0x141dc9ce4]
lea rax, [rsi + 1]
mov edx, dword [0x141dc9ce8]
imul edx, dword [0x141dc9cec]
xor edx, 0x220a4209
and edx, 0xaacbc239
cmp edx, 0x3c6c9a96
je 0x14005cc0e
cmp rbx, rax
jb 0x14005c64f
jmp 0x14005c66b
xor ebx, ebx
jmp 0x14005cdd0
mov r11d, r8d
and r11d, 0xfffffffe
xor r12d, r12d
mov r13d, 0x9c565065
xor ebx, ebx
xor r10d, r10d
mov eax, dword [0x141dc9c70]
xor edx, edx
div dword [0x141dc9c74]
xor eax, 0x2661080
and eax, 0xe2677182
imul rax, r13
shr rax, 0x3d
cmp eax, 0xe84a30a2
ja 0x14005cc59
add rbx, rbx
lea rax, [rbx + rbx*4]
cmp r10, r9
jae 0x14005cce4
movzx edx, byte [rdi + r10 + 8]
mov ebx, dword [0x141dc9cc8]
or ebx, dword [0x141dc9ccc]
and ebx, 0x22a0004b
xor ebx, 0x52bc8151
cmp ebx, 0x141b3dd1
jb 0x14005cc92
mov r15d, dword [0x141dc9cd0]
xor r15d, dword [0x141dc9cd4]
xor r15d, 0x3affac26
add r15d, 0x92210a21
or r15d, 0x5c74b3d
lea rbx, [rax + rdx]
cmp r15d, 0x9aec307c
ja 0x14005ccb2
jmp 0x14005cce7
mov rbx, rax
mov rax, r10
or rax, 1
add rbx, rbx
lea rbx, [rbx + rbx*4]
cmp rax, r9
mov r15d, dword [rbp + 4]
jae 0x14005cd0b
movzx eax, byte [rdi + rax + 8]
add rbx, rax
test r12b, r12b
jne 0x14005cd06
add r10, 2
mov eax, dword [0x141dc9cb8]
xor edx, edx
div dword [0x141dc9cbc]
mov eax, dword [0x141dc9cc0]
or eax, dword [0x141dc9cc4]
add eax, 0xdaa49b2a
or eax, 0x1be452be
cmp eax, 0xfcd0baa
jb 0x14005cd1d
cmp r10, r11
jne 0x14005cc59
mov eax, dword [0x141dc9c48]
and eax, dword [0x141dc9c4c]
cmp eax, 0x7346dad3
je 0x14005cd43
test r8b, 1
je 0x14005cdd0
add rbx, rbx
lea rbx, [rbx + rbx*4]
mov eax, dword [0x141dc9c50]
and eax, dword [0x141dc9c54]
add eax, 0xb9532a19
or eax, 0xb60dee12
add eax, 0x406586f4
cmp eax, 0x90b8fa69
jb 0x14005cd63
cmp r10, r9
jae 0x14005cdcc
mov eax, dword [0x141dc9c58]
mov edx, dword [0x141dc9c5c]
add eax, edx
add eax, 0x7e6a0aa2
and eax, 0x3927b86c
xor eax, 0xdb557e3f
cmp eax, 0x4e8fae04
jb 0x14005cd8a
movzx eax, byte [rdi + r10 + 8]
add rbx, rax
mov eax, dword [0x141dc9c60]
xor edx, edx
div dword [0x141dc9c64]
cmp eax, 0x4d463792
je 0x14005cdb7
mov r15d, dword [rbp + 4]
mov eax, dword [0x141dc9c68]
add eax, dword [0x141dc9c6c]
imul eax, eax, 0x47b79f96
xor eax, 0x6d7be01e
cmp eax, 0xad58777b
ja 0x14005cdd0
cmp r9, r8
jbe 0x14005cef3
movzx eax, byte [rdi + r8 + 8]
cmp al, 5
sete r10b
lea rdx, [r8 + 1]
cmp rdx, r9
sete dl
and dl, r10b
mov r9d, dword [0x141dc9c78]
imul r9d, dword [0x141dc9c7c]
add r9d, 0xc3f50e4f
or r9d, 0xe5252770
imul r9d, r9d, 0x459dc8f5
cmp r9d, 0xa85288de
jb 0x14005ce10
test dl, dl
je 0x14005cefc
xor eax, eax
test al, al
jne 0x14005ce47
cmp byte [rdi + 0x30c], 0
jne 0x14005cf26
test r8, r8
je 0x14005cf51
mov eax, dword [0x141dc9c88]
and eax, dword [0x141dc9c8c]
imul rdx, rax, 0x111eb8e1
shr rdx, 0x20
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 0x1d
imul eax, eax, 0x4bf10355
and eax, 0x328d6809
cmp eax, 0x6e1fe1a3
ja 0x14005ce61
mov eax, dword [0x141dc9c90]
xor edx, edx
div dword [0x141dc9c94]
mov eax, dword [0x141dc9c98]
sub eax, dword [0x141dc9c9c]
cmp eax, 0xfe2116b6
je 0x14005cea1
movzx r8d, byte [rdi + r8 + 7]
mov eax, dword [0x141dc9ca0]
xor edx, edx
div dword [0x141dc9ca4]
mov eax, dword [0x141dc9ca8]
sub eax, dword [0x141dc9cac]
add eax, 0x74266c00
xor eax, 0xe510c48c
imul eax, eax, 0x97c4dd6a
cmp eax, 0xc927b88b
ja 0x14005cec8
test r8b, 1
jne 0x14005cf26
jmp 0x14005cf51
mov r13, qword [rbp - 8]
jmp 0x14005cbba
xor edx, edx
test dl, dl
jne 0x14005cefe
mov edx, dword [0x141dc9c80]
sub edx, dword [0x141dc9c84]
xor edx, 0x705143af
imul edx, edx, 0x527a79cc
cmp edx, 0xf2732fac
je 0x14005cf02
cmp al, 4
jbe 0x14005cf51
inc rbx
mov eax, dword [0x141dc9cb0]
and eax, dword [0x141dc9cb4]
add eax, 0xa050baac
imul rax, rax, 0x2405027d
shr rax, 0x3c
xor eax, 0x7aff1e02
cmp eax, 0xde4d5fb8
jae 0x14005cf29
mov r13, qword [rbp - 8]
mov r15d, dword [rbp + 4]
jmp 0x14005cbba