Function at 0x140022b10
Capabilities:
Encode data using base64

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x58
lea rbp, [rsp + 0x50]
mov r10, rdx
mov qword [rbp - 0x48], rcx
mov rax, qword [0x140204550]
movabs rbx, 0xe043a4191d34acb2
mov eax, dword [rax + rbx]
mov rcx, qword [0x140204558]
mov ecx, dword [rcx + rbx]
imul eax, eax, 0xf57e2081
imul ecx, ecx, 0xf5dba7ce
lea eax, [rax + rcx - 0x7c7c8e74]
shl rax, 8
call fcn.14004ff50
sub rsp, rax
mov rcx, rsp
mov r14, rcx
mov rax, qword [0x140204560]
mov eax, dword [rax + rbx]
mov rdx, qword [0x140204568]
mov edx, dword [rdx + rbx]
shld eax, edx, 0xb
xor eax, 0x7c12517c
shl rax, 8
call fcn.14004ff50
sub rsp, rax
mov rax, rsp
mov qword [rbp], rax
mov rdx, qword [0x140204570]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204578]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x18
movabs r8, 0xbb2fb213cf9d227a
xor rdx, r8
mov qword [rcx], rdx
mov rdx, qword [0x140204580]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204588]
mov r8, qword [r8 + rbx]
movabs r9, 0x2c601e18c5302cb4
imul rdx, r9
movabs r9, 0x12d9025131bd2a61
imul r8, r9
add rdx, r8
movabs r8, 0x5abda930fd4abbc8
add rdx, r8
mov qword [rax], rdx
mov rdx, qword [0x140204590]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204598]
mov r8, qword [r8 + rbx]
movabs r9, 0xc18967fd86bff4c1
imul rdx, r9
movabs r9, 0xe7de8d91557d8edf
imul r8, r9
add rdx, r8
movabs r8, 0xa1160dd6769c6832
add rdx, r8
mov qword [rcx + 8], rdx
mov rdx, qword [0x1402045a0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x1402045a8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0xc
movabs r8, 0x5f34308ed06cb3bb
xor rdx, r8
mov qword [rax + 8], rdx
mov rdx, qword [0x1402045b0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x1402045b8]
mov r8, qword [r8 + rbx]
movabs r9, 0x4262f9a6b7cbbed0
imul rdx, r9
movabs r9, 0x9f4fad273c6478ad
imul r8, r9
add rdx, r8
movabs r8, 0xf6e3fb7abeac8e66
add rdx, r8
mov qword [rcx + 0x10], rdx
mov rdx, qword [0x1402045c0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x1402045c8]
mov r8, qword [r8 + rbx]
movabs r9, 0x499f72e80a6ac215
imul rdx, r9
movabs r9, 0xae80357590e89278
imul r8, r9
add rdx, r8
movabs r8, 0xedbeb43d75fcc6e9
add rdx, r8
mov qword [rax + 0x10], rdx
mov rdx, qword [0x1402045d0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x1402045d8]
mov r8, qword [r8 + rbx]
movabs r9, 0xf56e2af2a3321019
imul rdx, r9
movabs r9, 0xd030b8bd61dfbc5c
imul r8, r9
add rdx, r8
movabs r8, 0xedbbaf9acb1a5765
add rdx, r8
mov qword [rcx + 0x18], rdx
mov rdx, qword [0x1402045e0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x1402045e8]
mov r8, qword [r8 + rbx]
movabs r9, 0x1e329ef20cf24a04
imul rdx, r9
movabs r9, 0xe36459a6254fd6b4
imul r8, r9
add rdx, r8
movabs r8, 0x7dbcc7fcf51fe0b8
add rdx, r8
mov qword [rax + 0x18], rdx
mov rdx, qword [0x1402045f0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x1402045f8]
mov r8, qword [r8 + rbx]
movabs r9, 0x5d5dd77a711f2758
imul rdx, r9
movabs r9, 0x38ec1f4f716ce634
imul r8, r9
add rdx, r8
movabs r8, 0xf8de4379bef11288
add rdx, r8
mov qword [rcx + 0x20], rdx
mov rdx, qword [0x140204600]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204608]
mov r8, qword [r8 + rbx]
shld rdx, r8, 2
movabs r8, 0xcdd3ac207ea0ed1a
xor rdx, r8
mov qword [rax + 0x20], rdx
mov rdx, qword [0x140204610]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204618]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0xd
movabs r8, 0xe815ef83f3433e50
xor rdx, r8
mov qword [rcx + 0x28], rdx
mov rdx, qword [0x140204620]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204628]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x13
movabs r8, 0x86b6b2edd746bd51
xor rdx, r8
mov qword [rax + 0x28], rdx
mov rdx, qword [0x140204630]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204638]
mov r8, qword [r8 + rbx]
movabs r9, 0xe87a44b5c6a7980
imul rdx, r9
movabs r9, 0xa612381a5995dfcd
imul r8, r9
add rdx, r8
movabs r8, 0xe2bc40430687cdee
add rdx, r8
mov qword [rcx + 0x30], rdx
mov rdx, qword [0x140204640]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204648]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x3d
movabs r8, 0xef33425934711d64
xor rdx, r8
mov qword [rax + 0x30], rdx
mov rdx, qword [0x140204650]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204658]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x13
movabs r8, 0xb87309a4c252e4e
xor rdx, r8
mov qword [rcx + 0x38], rdx
mov rdx, qword [0x140204660]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204668]
mov r8, qword [r8 + rbx]
movabs r9, 0x49ed3731014ff81e
imul rdx, r9
movabs r9, 0xf2baa5a89232f783
imul r8, r9
add rdx, r8
movabs r8, 0x3458cd39e01c4a70
add rdx, r8
mov qword [rax + 0x38], rdx
mov rdx, qword [0x140204670]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204678]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x35
movabs r8, 0x342a37d57393f293
xor rdx, r8
mov qword [rcx + 0x40], rdx
mov rdx, qword [0x140204680]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204688]
mov r8, qword [r8 + rbx]
movabs r9, 0xba22d3c24d9f068f
imul rdx, r9
movabs r9, 0x539d2dea2a23133f
imul r8, r9
add rdx, r8
movabs r8, 0xd8c9304caf10cb0
add rdx, r8
mov qword [rax + 0x40], rdx
mov rdx, qword [0x140204690]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204698]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x29
movabs r8, 0xcdb6efed6b36e888
xor rdx, r8
mov qword [rcx + 0x48], rdx
mov rdx, qword [0x1402046a0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x1402046a8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 9
movabs r8, 0x840b1e8f08cd6e65
xor rdx, r8
mov qword [rax + 0x48], rdx
mov rdx, qword [0x1402046b0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x1402046b8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x2e
movabs r8, 0xa1565f978cdc2cf3
xor rdx, r8
mov qword [rcx + 0x50], rdx
mov rdx, qword [0x1402046c0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x1402046c8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x15
movabs r8, 0xf56b15a63ae568da
xor rdx, r8
mov qword [rax + 0x50], rdx
mov rdx, qword [0x1402046d0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x1402046d8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x37
movabs r8, 0x9c1b948fe2f20837
xor rdx, r8
mov qword [rcx + 0x58], rdx
mov rdx, qword [0x1402046e0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x1402046e8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x14
movabs r8, 0x90ce371d60d3c5b5
xor rdx, r8
mov qword [rax + 0x58], rdx
mov rdx, qword [0x1402046f0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x1402046f8]
mov r8, qword [r8 + rbx]
movabs r9, 0xf9e454c099b75efe
imul rdx, r9
movabs r9, 0x89de77ce4294363
imul r8, r9
add rdx, r8
movabs r8, 0xd3dc896ff7c1e073
add rdx, r8
mov qword [rcx + 0x60], rdx
mov rdx, qword [0x140204700]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204708]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x10
movabs r8, 0xf8bace2a88bffa71
xor rdx, r8
mov qword [rax + 0x60], rdx
mov rdx, qword [0x140204710]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204718]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x14
movabs r8, 0x4e42d4a30f56dc9a
xor rdx, r8
mov qword [rcx + 0x68], rdx
mov rdx, qword [0x140204720]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204728]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x19
movabs r8, 0x40e83586b9eda966
xor rdx, r8
mov qword [rax + 0x68], rdx
mov rdx, qword [0x140204730]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204738]
mov r8, qword [r8 + rbx]
movabs r9, 0xec10804f8ff13ef1
imul rdx, r9
movabs r9, 0x6589bf6570919002
imul r8, r9
add rdx, r8
movabs r8, 0x709189239b8a3836
add rdx, r8
mov qword [rcx + 0x70], rdx
mov rdx, qword [0x140204740]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204748]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0xf
movabs r8, 0x5679866a8fa5b2a1
xor rdx, r8
mov qword [rax + 0x70], rdx
mov rdx, qword [0x140204750]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204758]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x3a
movabs r8, 0xbbcbdf603c9c24fa
xor rdx, r8
mov qword [rcx + 0x78], rdx
mov rdx, qword [0x140204760]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204768]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x2c
movabs r8, 0xc75e63f941814a04
xor rdx, r8
mov qword [rax + 0x78], rdx
mov rdx, qword [0x140204770]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204778]
mov r8, qword [r8 + rbx]
movabs r9, 0xdf68f4e06bc7a34c
imul rdx, r9
movabs r9, 0x337a06a1045d8aa0
imul r8, r9
add rdx, r8
movabs r8, 0x44fdfdec842b8248
add rdx, r8
mov qword [rcx + 0x80], rdx
mov rdx, qword [0x140204780]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204788]
mov r8, qword [r8 + rbx]
movabs r9, 0x8b517f1074806ec6
imul rdx, r9
movabs r9, 0x95c49f35fdcc5c91
imul r8, r9
add rdx, r8
movabs r8, 0x6619e9816850ed9c
add rdx, r8
mov qword [rax + 0x80], rdx
mov rdx, qword [0x140204790]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204798]
mov r8, qword [r8 + rbx]
movabs r9, 0x1c3ae4d6f291e101
imul rdx, r9
movabs r9, 0xf06bd119069538ab
imul r8, r9
add rdx, r8
movabs r8, 0x5c62bf27f321bbd6
add rdx, r8
mov qword [rcx + 0x88], rdx
mov rdx, qword [0x1402047a0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x1402047a8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x14
movabs r8, 0x6abb5a3c61e7e2fa
xor rdx, r8
mov qword [rax + 0x88], rdx
mov rdx, qword [0x1402047b0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x1402047b8]
mov r8, qword [r8 + rbx]
movabs r9, 0x38a0bac18f7828af
imul rdx, r9
movabs r9, 0xff397245f2aa26b9
imul r8, r9
add rdx, r8
movabs r8, 0x21f75326bef615f3
add rdx, r8
mov qword [rcx + 0x90], rdx
mov rdx, qword [0x1402047c0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x1402047c8]
mov r8, qword [r8 + rbx]
movabs r9, 0xe933847b50127e79
imul rdx, r9
movabs r9, 0x32cc8f34f38cbea3
imul r8, r9
add rdx, r8
movabs r8, 0x8939dc6f07f80256
add rdx, r8
mov qword [rax + 0x90], rdx
mov rdx, qword [0x1402047d0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x1402047d8]
mov r8, qword [r8 + rbx]
movabs r9, 0x7960fe7db1b9dfaa
imul rdx, r9
movabs r9, 0x210a8c46b277a9f9
imul r8, r9
add rdx, r8
movabs r8, 0x612974a76d3ebf2f
add rdx, r8
mov qword [rcx + 0x98], rdx
mov rdx, qword [0x1402047e0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x1402047e8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x26
movabs r8, 0x7ad7853a3c4e92db
xor rdx, r8
mov qword [rax + 0x98], rdx
mov rdx, qword [0x1402047f0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x1402047f8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x14
movabs r8, 0xb536ae9a97de0c8d
xor rdx, r8
mov qword [rcx + 0xa0], rdx
mov rdx, qword [0x140204800]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204808]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x38
movabs r8, 0xe5f7dc2badee8fd3
xor rdx, r8
mov qword [rax + 0xa0], rdx
mov rdx, qword [0x140204810]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204818]
mov r8, qword [r8 + rbx]
movabs r9, 0xf0e22324a34776c9
imul rdx, r9
movabs r9, 0xab12dc1f005361f0
imul r8, r9
add rdx, r8
movabs r8, 0x611022a844d87328
add rdx, r8
mov qword [rcx + 0xa8], rdx
mov rdx, qword [0x140204820]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204828]
mov r8, qword [r8 + rbx]
movabs r9, 0xd4f26f8ae8ef3ee4
imul rdx, r9
movabs r9, 0x3c62bb3a674807c4
imul r8, r9
add rdx, r8
movabs r8, 0x5e3e09f00fa51860
add rdx, r8
mov qword [rax + 0xa8], rdx
mov rdx, qword [0x140204830]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204838]
mov r8, qword [r8 + rbx]
movabs r9, 0x5795e3e5756f74fc
imul rdx, r9
movabs r9, 0x539222598d1cb844
imul r8, r9
add rdx, r8
movabs r8, 0x6e95b69d88f540ec
add rdx, r8
mov qword [rcx + 0xb0], rdx
mov rdx, qword [0x140204840]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204848]
mov r8, qword [r8 + rbx]
movabs r9, 0x62a497e6d3acc8df
imul rdx, r9
movabs r9, 0xf1b4f58c364047d7
imul r8, r9
add rdx, r8
movabs r8, 0x6b5624222f76ed5f
add rdx, r8
mov qword [rax + 0xb0], rdx
mov rdx, qword [0x140204850]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204858]
mov r8, qword [r8 + rbx]
movabs r9, 0xd5868a5caea30edd
imul rdx, r9
movabs r9, 0x9db442ec1de0c9d0
imul r8, r9
add rdx, r8
movabs r8, 0x6fd8df0efd5fd6a8
add rdx, r8
mov qword [rcx + 0xb8], rdx
mov rdx, qword [0x140204860]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204868]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x31
movabs r8, 0xd789065557baf220
xor rdx, r8
mov qword [rax + 0xb8], rdx
mov rdx, qword [0x140204870]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204878]
mov r8, qword [r8 + rbx]
shld rdx, r8, 5
movabs r8, 0xb1232e6f88c4714
xor rdx, r8
mov qword [rcx + 0xc0], rdx
mov rdx, qword [0x140204880]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204888]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x3f
movabs r8, 0x971b93d2c1bc1f0d
xor rdx, r8
mov qword [rax + 0xc0], rdx
mov rdx, qword [0x140204890]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204898]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x14
movabs r8, 0xf9d7b71f7b758999
xor rdx, r8
mov qword [rcx + 0xc8], rdx
mov rdx, qword [0x1402048a0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x1402048a8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x2c
movabs r8, 0x473cb9d59123b12f
xor rdx, r8
mov qword [rax + 0xc8], rdx
mov rdx, qword [0x1402048b0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x1402048b8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0xe
movabs r8, 0xed11d5264c90fcd0
xor rdx, r8
mov qword [rcx + 0xd0], rdx
mov rdx, qword [0x1402048c0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x1402048c8]
mov r8, qword [r8 + rbx]
movabs r9, 0xf7d15e523d800989
imul rdx, r9
movabs r9, 0x992bc3be0e6b51ab
imul r8, r9
add rdx, r8
movabs r8, 0x79a6393d23ba993e
add rdx, r8
mov qword [rax + 0xd0], rdx
mov rdx, qword [0x1402048d0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x1402048d8]
mov r8, qword [r8 + rbx]
movabs r9, 0xbdce7d03a7a8ccc8
imul rdx, r9
movabs r9, 0x7700d987699c5c4c
imul r8, r9
add rdx, r8
movabs r8, 0x3f9395b1f6794c04
add rdx, r8
mov qword [rcx + 0xd8], rdx
mov rdx, qword [0x1402048e0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x1402048e8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x37
movabs r8, 0xe815a10f259673db
xor rdx, r8
mov qword [rax + 0xd8], rdx
mov rdx, qword [0x1402048f0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x1402048f8]
mov r8, qword [r8 + rbx]
movabs r9, 0xf1958760c8a68c62
imul rdx, r9
movabs r9, 0x3e4a21e079f21f37
imul r8, r9
add rdx, r8
movabs r8, 0x22c8300ac3b3bf95
add rdx, r8
mov qword [rcx + 0xe0], rdx
mov rdx, qword [0x140204900]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204908]
mov r8, qword [r8 + rbx]
movabs r9, 0x37f60ee0f321eb3d
imul rdx, r9
movabs r9, 0x2968523019046e73
imul r8, r9
add rdx, r8
movabs r8, 0xf23bcd6b613a2fd8
add rdx, r8
mov qword [rax + 0xe0], rdx
mov rdx, qword [0x140204910]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204918]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x22
movabs r8, 0xb8695e0c858e74c2
xor rdx, r8
mov qword [rcx + 0xe8], rdx
mov rdx, qword [0x140204920]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204928]
mov r8, qword [r8 + rbx]
movabs r9, 0xf24555df1b22c096
imul rdx, r9
movabs r9, 0x74d0356d491dace9
imul r8, r9
add rdx, r8
movabs r8, 0x9086856d22174df3
add rdx, r8
mov qword [rax + 0xe8], rdx
mov rdx, qword [0x140204930]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204938]
mov r8, qword [r8 + rbx]
movabs r9, 0x843cec9f00f6c501
imul rdx, r9
movabs r9, 0x27942784b096934b
imul r8, r9
add rdx, r8
movabs r8, 0xc553e0a0d5c91463
add rdx, r8
mov qword [rcx + 0xf0], rdx
mov rdx, qword [0x140204940]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204948]
mov r8, qword [r8 + rbx]
movabs r9, 0x80318225fd0805e2
imul rdx, r9
movabs r9, 0xf15730ea10613470
imul r8, r9
add rdx, r8
movabs r8, 0x39fa21c873c41e84
add rdx, r8
mov qword [rax + 0xf0], rdx
mov rdx, qword [0x140204950]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x140204958]
mov r8, qword [r8 + rbx]
movabs r9, 0xc17c26400295ef2f
imul rdx, r9
movabs r9, 0xb5f9957575114d4e
imul r8, r9
add rdx, r8
movabs r8, 0x746cb607bcd4836d
add rdx, r8
mov qword [rcx + 0xf8], rdx
mov rcx, qword [0x140204960]
mov rcx, qword [rcx + rbx]
mov rdx, qword [0x140204968]
mov rdx, qword [rdx + rbx]
shld rcx, rdx, 0x3a
movabs rdx, 0x8e7849ea1adc3269
xor rcx, rdx
mov qword [rax + 0xf8], rcx
mov rax, qword [0x140204970]
mov eax, dword [rax + rbx]
mov rcx, qword [0x140204978]
mov ecx, dword [rcx + rbx]
imul eax, eax, 0x98df109c
imul ecx, ecx, 0x2c9650b9
lea eax, [rax + rcx - 0x3f86bc27]
lea rax, [rax*4 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.14004ff50
sub rsp, rax
mov rax, rsp
mov qword [rbp - 8], rax
mov rax, qword [0x140204980]
mov eax, dword [rax + rbx]
mov rcx, qword [0x140204988]
mov ecx, dword [rcx + rbx]
shld eax, ecx, 9
xor eax, 0xa7580ec
lea rax, [rax*4 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.14004ff50
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x40], rax
mov rax, qword [0x140204990]
mov eax, dword [rax + rbx]
mov rcx, qword [0x140204998]
mov ecx, dword [rcx + rbx]
imul eax, eax, 0xd17c0821
imul ecx, ecx, 0xaef98f53
lea eax, [rax + rcx + 0x3e49cf6f]
lea rax, [rax*8 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.14004ff50
sub rsp, rax
mov rax, rsp
mov r12, rax
mov rax, qword [0x1402049a0]
mov eax, dword [rax + rbx]
mov rcx, qword [0x1402049a8]
mov ecx, dword [rcx + rbx]
imul eax, eax, 0xa8195cb0
imul ecx, ecx, 0x2973931f
lea eax, [rax + rcx + 0x241e6921]
lea rax, [rax*8 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.14004ff50
sub rsp, rax
mov r15, rsp
mov rax, qword [0x1402049b0]
mov eax, dword [rax + rbx]
mov rcx, qword [0x1402049b8]
mov ecx, dword [rcx + rbx]
shld eax, ecx, 0xc
xor eax, 0xa822dae0
lea rax, [rax*4 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.14004ff50
sub rsp, rax
mov rsi, rsp
mov qword [rbp - 0x28], rsi
mov rax, qword [0x1402049c0]
mov eax, dword [rax + rbx]
mov rcx, qword [0x1402049c8]
mov ecx, dword [rcx + rbx]
imul eax, eax, 0x7b804241
imul ecx, ecx, 0x453a96eb
lea eax, [rax + rcx - 0x147b002d]
lea rax, [rax*4 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.14004ff50
sub rsp, rax
mov rcx, rsp
mov qword [rbp - 0x20], rcx
mov rax, qword [0x1402049d0]
mov eax, dword [rax + rbx]
mov rdx, qword [0x1402049d8]
mov edx, dword [rdx + rbx]
shld eax, edx, 0xf
xor eax, 0xcd319197
lea rax, [rax*8 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.14004ff50
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x18], rax
mov qword [rbp - 0x50], r10
add r10, 0x1d
mov qword [rax], r10
mov rax, qword [0x1402049e0]
mov eax, dword [rax + rbx]
mov dword [rcx], eax
sub rsp, 0x20
call fcn.14004d610
add rsp, 0x20
mov rcx, qword [0x1402049e8]
cdqe
lea rax, [rcx + rax*4]
mov eax, dword [rbx + rax]
mov dword [rsi], eax
mov rax, qword [0x1402049f0]
mov eax, dword [rax + rbx]
mov rcx, qword [0x1402049f8]
mov ecx, dword [rcx + rbx]
shld eax, ecx, 0x12
xor eax, 0x12bb6fd4
lea rax, [rax*8 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.14004ff50
sub rsp, rax
mov rax, rsp
mov rdi, rax
mov rcx, qword [0x140204a00]
mov rcx, qword [rcx + rbx]
mov rdx, qword [0x140204a08]
mov rdx, qword [rdx + rbx]
movabs r8, 0xcc82692bc255c207
imul rcx, r8
movabs r8, 0x81ad55e21a74dcf5
imul rdx, r8
add rcx, rdx
movabs rdx, 0xb70135ca9017024
add rcx, rdx
mov qword [rax], rcx
mov rax, qword [0x140204a10]
mov eax, dword [rax + rbx]
mov rcx, qword [0x140204a18]
mov ecx, dword [rcx + rbx]
imul eax, eax, 0x6ad1148e
imul ecx, ecx, 0xcd654f19
lea eax, [rax + rcx - 0x6de85a94]
lea rax, [rax*8 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.14004ff50
sub rsp, rax
mov rax, rsp
mov rsi, rax
mov qword [rbp - 0x38], r12
mov qword [rbp - 0x30], r15
mov qword [rbp - 0x10], rsi
mov r9, qword [rdi]
mov rcx, qword [0x140204a20]
movabs rax, 0xe043a4191d34acb2
mov rcx, qword [rcx + rax]
mov rdx, qword [0x140204a28]
mov rdx, qword [rdx + rax]
movabs r8, 0x534662cf99f46fe8
imul rcx, r8
movabs r8, 0x8694b21692f7547f
imul rdx, r8
add rcx, rdx
movabs rdx, 0xa097c52de381884a
mov r10, r9
add r10, rdx
mov r8, rcx
add r8, r10
mov rcx, qword [0x140204a30]
mov rcx, qword [rcx + rax]
mov rdx, qword [0x140204a38]
mov rdx, qword [rdx + rax]
shld rcx, rdx, 0xc
movabs rdx, 0x1ca0b7dc04f8f549
xor rcx, rdx
mov r10, r9
add r10, rcx
mov rcx, qword [0x140204a40]
add rcx, rax
mov rdx, qword [rcx + r9*8]
mov rcx, qword [rcx + r8*8]
mov qword [r15], rcx
mov rcx, qword [0x140204a50]
movabs r11, 0xe043a4191d34acb5
mov cl, byte [rcx + r11]
xor cl, 0x1a
mov r11, r9
shr r11, cl
xor r9, r11
mov rcx, qword [0x140204a58]
mov rcx, qword [rcx + rax]
mov r11, qword [0x140204a60]
mov r11, qword [r11 + rax]
shld rcx, r11, 0x33
movabs r11, 0xff85f2f868670ede
xor rcx, r11
and r9, rcx
mov cl, byte [r14 + r9]
mov r11, qword [rbp]
mov r9b, byte [r11 + r9]
sub cl, r9b
movzx ecx, cl
add r10, rcx
mov rcx, qword [0x140204a40]
lea rcx, [rcx + r10*8]
mov rcx, qword [rax + rcx]
mov qword [r12], rcx
mov r9, qword [rdi]
mov rcx, qword [0x140204a68]
mov ecx, dword [rcx + rax]
mov r10, qword [0x140204a70]
mov r10d, dword [r10 + rax]
imul ecx, ecx, 0x6a9ce4e
imul r10d, r10d, 0xd0d2c987
add ecx, r10d
add cl, 0x41
mov r10, r8
shr r10, cl
xor r8, r10
mov rcx, qword [0x140204a78]
mov rcx, qword [rcx + rax]
mov r10, qword [0x140204a80]
mov r10, qword [r10 + rax]
shld rcx, r10, 2
movabs r10, 0x78db5f287edd4693
xor rcx, r10
and r8, rcx
mov cl, byte [r14 + r8]
mov r8b, byte [r11 + r8]
sub cl, r8b
movzx ecx, cl
mov r8, qword [0x140204a88]
mov r8, qword [r8 + rax]
mov r10, qword [0x140204a90]
mov rax, qword [r10 + rax]
shld r8, rax, 0x3c
movabs rax, 0xcdee7860b122e216
xor r8, rax
add r9, r8
add r9, rcx
mov qword [rdi], r9
mov eax, 0xb28ec486
mov rcx, rdx
sub rcx, rax
je 0x140023ea7
jmp 0x140023e89
mov eax, 0xb28ec487
mov rcx, rdx
sub rcx, rax
je 0x140023ef4
jmp 0x140023e98
mov eax, 0xb28ec488
sub rdx, rax
je 0x140023eff
jmp 0x1400245e4
mov rax, qword [r15]
mov rcx, rax
sub rcx, 0x48808640
je 0x14002404a
jmp 0x140023ebc
mov rcx, rax
sub rcx, 0x5ecff57a
je 0x140023f5e
jmp 0x140023ece
mov ecx, 0xa2990c92
mov rdx, rax
sub rdx, rcx
je 0x140024391
jmp 0x140023ee1
mov ecx, 0xe5641833
sub rax, rcx
je 0x1400243cc
jmp 0x1400245e4
mov rax, qword [r15]
mov qword [rdi], rax
jmp 0x1400245e6
mov rax, qword [rsi]
movabs rcx, 0xe043a4191d34acb2
add rcx, qword [0x140204a98]
mov rcx, qword [rcx]
movabs rdx, 0xe043a4191d34acb2
add rdx, qword [0x140204aa0]
mov rdx, qword [rdx]
shl rcx, 0x1e
shr rdx, 0x22
or rcx, rdx
movabs rdx, 0x814629722ed7dd84
xor rcx, rdx
cmp rax, rcx
jne 0x140023f52
mov rax, qword [r15]
mov qword [rdi], rax
jmp 0x1400245e6
mov rax, qword [r12]
mov qword [rdi], rax
jmp 0x1400245e6
mov rax, qword [rbp - 0x20]
mov eax, dword [rax]
mov rcx, qword [rbp - 0x28]
mov ecx, dword [rcx]
movabs rdx, 0xe043a4191d34acb2
add rdx, qword [0x140204aa8]
mov rdx, qword [rdx]
movabs r8, 0xe043a4191d34acb2
add r8, qword [0x140204ab0]
mov r8, qword [r8]
movabs r9, 0x5e078b98ef548353
imul rdx, r9
movabs r9, 0x5f7e9a9187ace04f
imul r8, r9
add rdx, r8
movabs r8, 0x9ae21155a9a213b
add rdx, r8
movabs r8, 0xe043a4191d34acb2
add r8, qword [0x140204ab8]
mov r8, qword [r8]
movabs r9, 0xe043a4191d34acb2
add r9, qword [0x140204ac0]
mov r9, qword [r9]
shl r8, 0x3f
shr r9, 1
or r8, r9
movabs r9, 0x266664a0499ce6b9
xor r8, r9
cmp eax, ecx
cmove r8, rdx
mov qword [rsi], r8
movabs rax, 0xe043a4191d34acb2
add rax, qword [0x140204ac8]
mov eax, dword [rax]
movabs rcx, 0xe043a4191d34acb2
add rcx, qword [0x140204ad0]
mov ecx, dword [rcx]
imul eax, eax, 0xe0cb7970
imul ecx, ecx, 0x7cf94b7e
add eax, ecx
add eax, 0xa76e4d7a
mov rcx, qword [rbp - 8]
mov dword [rcx], eax
jmp 0x1400245e4
mov rax, qword [rbp - 8]
movsxd r12, dword [rax]
mov rsi, r14
mov r14d, r12d
mov rax, qword [rbp - 0x18]
mov rax, qword [rax]
mov r13, rdi
mov dil, byte [rax + r12]
sub rsp, 0x20
call fcn.14004d680
add rsp, 0x20
mov rcx, qword [0x140204ad8]
cdqe
lea rax, [rcx + rax*4]
movabs r15, 0xe043a4191d34acb2
mov ecx, dword [r15 + rax]
mov eax, r14d
xor edx, edx
div ecx
mov ebx, edx
movsxd rax, ebx
mov rcx, qword [rbp - 0x50]
mov al, byte [rcx + rax]
mov r8b, dil
mov rdi, r13
mov cl, r8b
xor cl, al
mov rax, qword [0x140204ae0]
mov al, byte [rax + r15]
mov rdx, qword [0x140204ae8]
mov dl, byte [rdx + r15]
shr dl, 6
shl al, 2
or al, dl
mov dl, al
xor dl, 0xee
movzx ax, r8b
mov r13b, r8b
div dl
movzx eax, ah
movsx rax, al
mov dl, byte [rsi + rax]
mov r8, qword [rbp]
mov al, byte [r8 + rax]
sub dl, al
add cl, dl
mov rax, qword [rbp - 0x48]
mov byte [rax + r12], cl
sub rsp, 0x20
call fcn.14004d710
add rsp, 0x20
mov rcx, qword [0x140204af0]
cdqe
lea rax, [rcx + rax*4]
mov eax, dword [r15 + rax]
mov rcx, qword [0x140204b00]
mov ecx, dword [rcx + r15]
shr ecx, 3
xor cl, 0x10
mov edx, r14d
shl edx, cl
mov ecx, r14d
xor ecx, edx
mov rdx, qword [0x140204b08]
mov edx, dword [rdx + r15]
mov r8, qword [0x140204b10]
mov r8d, dword [r8 + r15]
shld edx, r8d, 5
xor edx, 0x1815d45e
and ecx, edx
movsxd rcx, ecx
mov dl, byte [rsi + rcx]
mov r8, qword [rbp]
mov cl, byte [r8 + rcx]
sub dl, cl
movzx ecx, dl
add r14d, eax
add r14d, ecx
mov r12, qword [rbp - 0x40]
mov dword [r12], r14d
mov r14, rsi
mov rsi, qword [rbp - 0x10]
sub rsp, 0x20
call fcn.14004d7a0
add rsp, 0x20
mov rcx, qword [0x140204b18]
mov ecx, dword [rcx + r15]
mov rdx, qword [0x140204b20]
mov edx, dword [rdx + r15]
imul ecx, ecx, 0xb1760597
imul edx, edx, 0x14fd70c6
add ecx, edx
add cl, 0xe6
mov edx, ebx
shl edx, cl
xor ebx, edx
mov rcx, qword [0x140204b28]
mov ecx, dword [rcx + r15]
mov rdx, qword [0x140204b30]
mov edx, dword [rdx + r15]
imul ecx, ecx, 0x43b4aaff
imul edx, edx, 0xaaf6182
lea ecx, [rcx + rdx - 0x5d95af4a]
and ebx, ecx
movsxd rcx, ebx
mov dl, byte [r14 + rcx]
mov r8, qword [rbp]
mov cl, byte [r8 + rcx]
sub dl, cl
movzx ecx, dl
add eax, ecx
mov rcx, qword [0x140204b38]
cdqe
lea rax, [rcx + rax*4]
mov eax, dword [r15 + rax]
mov ecx, dword [r12]
sub ecx, eax
sete dl
mov rcx, qword [0x140204b48]
movabs r8, 0xe043a4191d34acb5
mov cl, byte [rcx + r8]
xor cl, 0x84
mov r8d, eax
shl r8d, cl
xor eax, r8d
mov rcx, qword [0x140204b50]
mov ecx, dword [rcx + r15]
mov r8, qword [0x140204b58]
mov r8d, dword [r8 + r15]
mov r10, qword [rbp]
mov r15, qword [rbp - 0x30]
imul ecx, ecx, 0xc753012b
imul r8d, r8d, 0xabab9fef
lea ecx, [rcx + r8 - 0x126920c2]
and eax, ecx
cdqe
mov cl, byte [r14 + rax]
mov al, byte [r10 + rax]
sub cl, al
mov al, dl
add al, cl
movabs rcx, 0xe043a4191d34acb2
add rcx, qword [0x140204b60]
mov rcx, qword [rcx]
movabs rdx, 0xe043a4191d34acb2
add rdx, qword [0x140204b68]
mov rdx, qword [rdx]
movabs r8, 0x1574b921c3b4a7f2
imul rcx, r8
movabs r8, 0xb6776fcad6755909
imul rdx, r8
add rcx, rdx
movabs rdx, 0xd6d7145e085ca7a1
mov r8, rcx
add r8, rdx
movabs rcx, 0xe043a4191d34acb2
add rcx, qword [0x140204b70]
mov rcx, qword [rcx]
movabs rdx, 0xe043a4191d34acb2
add rdx, qword [0x140204b78]
mov rdx, qword [rdx]
movabs r9, 0x6585230aa0dff480
imul rcx, r9
movabs r9, 0xe49e594ac6d5b22a
imul rdx, r9
add rcx, rdx
movabs rdx, 0xf001ef8b00f692e2
add rcx, rdx
test al, 1
cmovne rcx, r8
movabs rax, 0xe043a4191d34acb2
add rax, qword [0x140204b80]
mov al, byte [rax]
movabs rdx, 0xe043a4191d34acb2
add rdx, qword [0x140204b88]
mov dl, byte [rdx]
shl al, 1
shr dl, 7
or al, dl
mov dl, al
xor dl, 0xe0
movzx ax, r13b
div dl
shr ax, 8
movsx rdx, al
mov dl, byte [r14 + rdx]
movsx rax, al
mov al, byte [r10 + rax]
sub dl, al
movzx eax, dl
add rcx, rax
mov qword [rsi], rcx
mov eax, dword [r12]
mov r12, qword [rbp - 0x38]
mov rcx, qword [rbp - 8]
mov dword [rcx], eax
jmp 0x1400245e4
sub rsp, 0x20
call fcn.14004d810
add rsp, 0x20
movabs rcx, 0xe043a4191d34acb2
add rcx, qword [0x140204b90]
cdqe
mov eax, dword [rcx + rax*4]
movabs rcx, 0xe043a4191d34acb2
add rcx, qword [0x1402049e0]
mov dword [rcx], eax
jmp 0x1400245e4
movabs rax, 0xe043a4191d34acb2
add rax, qword [0x140204b98]
mov r8d, dword [rax]
movabs rax, 0xe043a4191d34acb2
add rax, qword [0x140204ba0]
mov edx, dword [rax]
movabs rax, 0xe043a4191d34acb2
add rax, qword [0x140204ba8]
mov eax, dword [rax]
movabs rcx, 0xe043a4191d34acb2
add rcx, qword [0x140204bb0]
mov ecx, dword [rcx]
shl eax, 1
shr ecx, 0x1f
or eax, ecx
mov ecx, eax
xor ecx, 0xc2374d92
mov eax, r8d
imul eax, ecx
movabs rcx, 0xe043a4191d34acb2
add rcx, qword [0x140204bb8]
mov ecx, dword [rcx]
movabs r9, 0xe043a4191d34acb2
add r9, qword [0x140204bc0]
mov r9d, dword [r9]
shl ecx, 5
shr r9d, 0x1b
or ecx, r9d
xor ecx, 0xecbae8d2
mov r9d, r8d
shl r9d, cl
xor r8d, r9d
movabs rcx, 0xe043a4191d34acb2
add rcx, qword [0x140204bc8]
mov ecx, dword [rcx]
movabs r9, 0xe043a4191d34acb2
add r9, qword [0x140204bd0]
mov r9d, dword [r9]
imul ecx, ecx, 0xedf31a0
imul r9d, r9d, 0x9f77d725
add ecx, r9d
add ecx, 0xdf136827
and r8d, ecx
movsxd rcx, r8d
mov cl, byte [r14 + rcx]
movsxd r8, r8d
mov r9, qword [rbp]
mov r8b, byte [r9 + r8]
sub cl, r8b
movzx ecx, cl
add edx, ecx
movabs rcx, 0xe043a4191d34acb2
add rcx, qword [0x140204bd8]
mov ecx, dword [rcx]
movabs r8, 0xe043a4191d34acb2
add r8, qword [0x140204be0]
mov r8d, dword [r8]
shl ecx, 0xa
shr r8d, 0x16
or ecx, r8d
xor ecx, 0x25c9dcd4
mov r8d, edx
imul r8d, ecx
mov edx, eax
add edx, r8d
movabs rax, 0xe043a4191d34acb2
add rax, qword [0x140204be8]
mov eax, dword [rax]
movabs rcx, 0xe043a4191d34acb2
add rcx, qword [0x140204bf0]
mov ecx, dword [rcx]
shl eax, 0x16
shr ecx, 0xa
or eax, ecx
mov ecx, eax
xor ecx, 0xf5b86fde
mov eax, edx
add eax, ecx
movabs rcx, 0xe043a4191d34acb2
add rcx, qword [0x140204bf8]
mov ecx, dword [rcx]
movabs r8, 0xe043a4191d34acb2
add r8, qword [0x140204c00]
mov r8d, dword [r8]
shl ecx, 0x18
shr r8d, 8
or ecx, r8d
xor ecx, 0xd089512a
mov r8d, edx
shl r8d, cl
xor edx, r8d
movabs rcx, 0xe043a4191d34acb2
add rcx, qword [0x140204c08]
mov ecx, dword [rcx]
movabs r8, 0xe043a4191d34acb2
add r8, qword [0x140204c10]
mov r8d, dword [r8]
shl ecx, 2
shr r8d, 0x1e
or ecx, r8d
xor ecx, 0x441df2a5
and edx, ecx
movsxd rcx, edx
mov cl, byte [r14 + rcx]
movsxd rdx, edx
mov dl, byte [r9 + rdx]
sub cl, dl
movzx ecx, cl
add eax, ecx
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
jmp 0x1400245e6
jmp 0x140023ccd