Function at 0x140029ed0
Capabilities:
Encrypt data using chaskey

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 - 0x40], rcx
mov rax, qword [0x14020b960]
movabs rbx, 0xd2114944cc112c6b
mov eax, dword [rax + rbx]
mov rcx, qword [0x14020b968]
mov ecx, dword [rcx + rbx]
imul eax, eax, 0x588cec56
imul ecx, ecx, 0x10d8a5b2
lea eax, [rax + rcx + 0x132efa8f]
shl rax, 8
call fcn.140053000
sub rsp, rax
mov rcx, rsp
mov r12, rcx
mov rax, qword [0x14020b970]
mov eax, dword [rax + rbx]
mov rdx, qword [0x14020b978]
mov edx, dword [rdx + rbx]
imul eax, eax, 0x936ea8db
imul edx, edx, 0x5baad63e
lea eax, [rax + rdx - 0x5b168c1]
shl rax, 8
call fcn.140053000
sub rsp, rax
mov rax, rsp
mov r15, rax
mov rdx, qword [0x14020b980]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020b988]
mov r8, qword [r8 + rbx]
movabs r9, 0xaef7971c15f2a8ef
imul rdx, r9
movabs r9, 0x15e88512b1b7bbe
imul r8, r9
add rdx, r8
movabs r8, 0x6624d6ca16ab0117
add rdx, r8
mov qword [rcx], rdx
mov rdx, qword [0x14020b990]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020b998]
mov r8, qword [r8 + rbx]
movabs r9, 0xe2cb00d04af548a2
imul rdx, r9
movabs r9, 0xa3d3c1610b09963c
imul r8, r9
add rdx, r8
movabs r8, 0xbde9ccae30b9cdf8
add rdx, r8
mov qword [rax], rdx
mov rdx, qword [0x14020b9a0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020b9a8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x35
movabs r8, 0xdae20048c8978a7d
xor rdx, r8
mov qword [rcx + 8], rdx
mov rdx, qword [0x14020b9b0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020b9b8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x31
movabs r8, 0xa008adcf45a15249
xor rdx, r8
mov qword [rax + 8], rdx
mov rdx, qword [0x14020b9c0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020b9c8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x16
movabs r8, 0x1c4964b7b965fb85
xor rdx, r8
mov qword [rcx + 0x10], rdx
mov rdx, qword [0x14020b9d0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020b9d8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x14
movabs r8, 0x3c09f578c059b51c
xor rdx, r8
mov qword [rax + 0x10], rdx
mov rdx, qword [0x14020b9e0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020b9e8]
mov r8, qword [r8 + rbx]
movabs r9, 0x6528f51ff877f885
imul rdx, r9
movabs r9, 0xe301b61ab99f2cd6
imul r8, r9
add rdx, r8
movabs r8, 0xfd7fa18642f2aaba
add rdx, r8
mov qword [rcx + 0x18], rdx
mov rdx, qword [0x14020b9f0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020b9f8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0xf
movabs r8, 0x49e68ae31fd8da15
xor rdx, r8
mov qword [rax + 0x18], rdx
mov rdx, qword [0x14020ba00]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020ba08]
mov r8, qword [r8 + rbx]
movabs r9, 0xad76830963c1eb5c
imul rdx, r9
movabs r9, 0x8aebc5440d437b8d
imul r8, r9
add rdx, r8
movabs r8, 0x70690952de4d3431
add rdx, r8
mov qword [rcx + 0x20], rdx
mov rdx, qword [0x14020ba10]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020ba18]
mov r8, qword [r8 + rbx]
movabs r9, 0x39fbd1a9b4e5051
imul rdx, r9
movabs r9, 0xb2b5f7f589819f1d
imul r8, r9
add rdx, r8
movabs r8, 0x85fbf91a6f58beab
add rdx, r8
mov qword [rax + 0x20], rdx
mov rdx, qword [0x14020ba20]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020ba28]
mov r8, qword [r8 + rbx]
shld rdx, r8, 2
movabs r8, 0x6f66701719137276
xor rdx, r8
mov qword [rcx + 0x28], rdx
mov rdx, qword [0x14020ba30]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020ba38]
mov r8, qword [r8 + rbx]
movabs r9, 0x107481eda9f0e48a
imul rdx, r9
movabs r9, 0x4b175a5ef307895a
imul r8, r9
add rdx, r8
movabs r8, 0x1bd5abc73c8bb79a
add rdx, r8
mov qword [rax + 0x28], rdx
mov rdx, qword [0x14020ba40]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020ba48]
mov r8, qword [r8 + rbx]
movabs r9, 0xf331e36a086ebd1c
imul rdx, r9
movabs r9, 0xe64b260816419713
imul r8, r9
add rdx, r8
movabs r8, 0x3b742d0743a801d9
add rdx, r8
mov qword [rcx + 0x30], rdx
mov rdx, qword [0x14020ba50]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020ba58]
mov r8, qword [r8 + rbx]
movabs r9, 0xd0ff1245a649eeb
imul rdx, r9
movabs r9, 0x874a2ce8366b9625
imul r8, r9
add rdx, r8
movabs r8, 0x7033b4180963145b
add rdx, r8
mov qword [rax + 0x30], rdx
mov rdx, qword [0x14020ba60]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020ba68]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x3b
movabs r8, 0xaed6c36741605996
xor rdx, r8
mov qword [rcx + 0x38], rdx
mov rdx, qword [0x14020ba70]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020ba78]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x37
movabs r8, 0xbf0596514bc83e71
xor rdx, r8
mov qword [rax + 0x38], rdx
mov rdx, qword [0x14020ba80]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020ba88]
mov r8, qword [r8 + rbx]
movabs r9, 0xf3260bdcbdf90e2b
imul rdx, r9
movabs r9, 0x8622bdaf907374d0
imul r8, r9
add rdx, r8
movabs r8, 0x67eb8b55c4570493
add rdx, r8
mov qword [rcx + 0x40], rdx
mov rdx, qword [0x14020ba90]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020ba98]
mov r8, qword [r8 + rbx]
movabs r9, 0xc62704b66d7484bf
imul rdx, r9
movabs r9, 0x9207de93c53b02bb
imul r8, r9
add rdx, r8
movabs r8, 0xb3f138260bb3a288
add rdx, r8
mov qword [rax + 0x40], rdx
mov rdx, qword [0x14020baa0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020baa8]
mov r8, qword [r8 + rbx]
movabs r9, 0xffd5f03416a25269
imul rdx, r9
movabs r9, 0x575ee331f1a79163
imul r8, r9
add rdx, r8
movabs r8, 0xcea61e66ffefd217
add rdx, r8
mov qword [rcx + 0x48], rdx
mov rdx, qword [0x14020bab0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bab8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x14
movabs r8, 0xceef54115bae9431
xor rdx, r8
mov qword [rax + 0x48], rdx
mov rdx, qword [0x14020bac0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bac8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 6
movabs r8, 0x29b252e27dbef9c9
xor rdx, r8
mov qword [rcx + 0x50], rdx
mov rdx, qword [0x14020bad0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bad8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 1
movabs r8, 0x9495b3c790ea2601
xor rdx, r8
mov qword [rax + 0x50], rdx
mov rdx, qword [0x14020bae0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bae8]
mov r8, qword [r8 + rbx]
movabs r9, 0x27b5d291059f04c0
imul rdx, r9
movabs r9, 0x8bb070223d5a175
imul r8, r9
add rdx, r8
movabs r8, 0xd270439784c477b0
add rdx, r8
mov qword [rcx + 0x58], rdx
mov rdx, qword [0x14020baf0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020baf8]
mov r8, qword [r8 + rbx]
movabs r9, 0x71092db0d51bda8e
imul rdx, r9
movabs r9, 0xa74cc6fdda2b7991
imul r8, r9
add rdx, r8
movabs r8, 0x37c839b966c3829f
add rdx, r8
mov qword [rax + 0x58], rdx
mov rdx, qword [0x14020bb00]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bb08]
mov r8, qword [r8 + rbx]
movabs r9, 0x1bfdbacae9233e0a
imul rdx, r9
movabs r9, 0x5aed05307971b59a
imul r8, r9
add rdx, r8
movabs r8, 0xa594e9aa62ccb06c
add rdx, r8
mov qword [rcx + 0x60], rdx
mov rdx, qword [0x14020bb10]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bb18]
mov r8, qword [r8 + rbx]
movabs r9, 0xdc9ed3a4caed2770
imul rdx, r9
movabs r9, 0x2ae435aa2c99bccb
imul r8, r9
add rdx, r8
movabs r8, 0xde3cb474237496d5
add rdx, r8
mov qword [rax + 0x60], rdx
mov rdx, qword [0x14020bb20]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bb28]
mov r8, qword [r8 + rbx]
shld rdx, r8, 6
movabs r8, 0x83cc75ba87572df9
xor rdx, r8
mov qword [rcx + 0x68], rdx
mov rdx, qword [0x14020bb30]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bb38]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x20
movabs r8, 0xf1d75beeb52d2f4e
xor rdx, r8
mov qword [rax + 0x68], rdx
mov rdx, qword [0x14020bb40]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bb48]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x16
movabs r8, 0x6c0d8245f6f2c4a4
xor rdx, r8
mov qword [rcx + 0x70], rdx
mov rdx, qword [0x14020bb50]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bb58]
mov r8, qword [r8 + rbx]
movabs r9, 0xc6e006de63b82b7b
imul rdx, r9
movabs r9, 0x91d1c8a60f11e788
imul r8, r9
add rdx, r8
movabs r8, 0xffb4cf6c7021a69e
add rdx, r8
mov qword [rax + 0x70], rdx
mov rdx, qword [0x14020bb60]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bb68]
mov r8, qword [r8 + rbx]
movabs r9, 0x9192e0494d7de1ca
imul rdx, r9
movabs r9, 0x2e0e99ef7fa607d0
imul r8, r9
add rdx, r8
movabs r8, 0xfdc185d080e17f30
add rdx, r8
mov qword [rcx + 0x78], rdx
mov rdx, qword [0x14020bb70]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bb78]
mov r8, qword [r8 + rbx]
movabs r9, 0x9d72223747b56e27
imul rdx, r9
movabs r9, 0x9d9cee80196bb51a
imul r8, r9
add rdx, r8
movabs r8, 0x129ef678e3a822fd
add rdx, r8
mov qword [rax + 0x78], rdx
mov rdx, qword [0x14020bb80]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bb88]
mov r8, qword [r8 + rbx]
movabs r9, 0xf1effdca774e6aeb
imul rdx, r9
movabs r9, 0xa7eed4915ba076d3
imul r8, r9
add rdx, r8
movabs r8, 0xa69282ff3d534f6f
add rdx, r8
mov qword [rcx + 0x80], rdx
mov rdx, qword [0x14020bb90]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bb98]
mov r8, qword [r8 + rbx]
shld rdx, r8, 8
movabs r8, 0x8461947df7557dc3
xor rdx, r8
mov qword [rax + 0x80], rdx
mov rdx, qword [0x14020bba0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bba8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x2f
movabs r8, 0x18e76fddf0793e5f
xor rdx, r8
mov qword [rcx + 0x88], rdx
mov rdx, qword [0x14020bbb0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bbb8]
mov r8, qword [r8 + rbx]
movabs r9, 0xc7666db49bfd722d
imul rdx, r9
movabs r9, 0xd082e0297384b5c4
imul r8, r9
add rdx, r8
movabs r8, 0xb25c09873bf805c5
add rdx, r8
mov qword [rax + 0x88], rdx
mov rdx, qword [0x14020bbc0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bbc8]
mov r8, qword [r8 + rbx]
movabs r9, 0x77ca886dd4f6196a
imul rdx, r9
movabs r9, 0xf9991af65fdf8313
imul r8, r9
add rdx, r8
movabs r8, 0x4122e78b1abb6cf5
add rdx, r8
mov qword [rcx + 0x90], rdx
mov rdx, qword [0x14020bbd0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bbd8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x19
movabs r8, 0x605366695dd30bdf
xor rdx, r8
mov qword [rax + 0x90], rdx
mov rdx, qword [0x14020bbe0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bbe8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 1
movabs r8, 0xc15015467f2cf04f
xor rdx, r8
mov qword [rcx + 0x98], rdx
mov rdx, qword [0x14020bbf0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bbf8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x2c
movabs r8, 0x72da233951a9b30e
xor rdx, r8
mov qword [rax + 0x98], rdx
mov rdx, qword [0x14020bc00]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bc08]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x14
movabs r8, 0x20ba8173a10adf9b
xor rdx, r8
mov qword [rcx + 0xa0], rdx
mov rdx, qword [0x14020bc10]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bc18]
mov r8, qword [r8 + rbx]
movabs r9, 0xb555a71b0b0ca9ca
imul rdx, r9
movabs r9, 0x37f3cb2e0589f6bd
imul r8, r9
add rdx, r8
movabs r8, 0x8861a913091286
add rdx, r8
mov qword [rax + 0xa0], rdx
mov rdx, qword [0x14020bc20]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bc28]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x1f
movabs r8, 0x51c7265502285f62
xor rdx, r8
mov qword [rcx + 0xa8], rdx
mov rdx, qword [0x14020bc30]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bc38]
mov r8, qword [r8 + rbx]
movabs r9, 0x9c380618df1bb8e0
imul rdx, r9
movabs r9, 0x2f1bfb319c55632
imul r8, r9
add rdx, r8
movabs r8, 0x72dd8a763354140a
add rdx, r8
mov qword [rax + 0xa8], rdx
mov rdx, qword [0x14020bc40]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bc48]
mov r8, qword [r8 + rbx]
shld rdx, r8, 7
movabs r8, 0x69acd1f702c3a164
xor rdx, r8
mov qword [rcx + 0xb0], rdx
mov rdx, qword [0x14020bc50]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bc58]
mov r8, qword [r8 + rbx]
shld rdx, r8, 9
movabs r8, 0x5f5a54d5e1a827ac
xor rdx, r8
mov qword [rax + 0xb0], rdx
mov rdx, qword [0x14020bc60]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bc68]
mov r8, qword [r8 + rbx]
movabs r9, 0xcef3e3ae26cf506
imul rdx, r9
movabs r9, 0x1696959747b9aed6
imul r8, r9
add rdx, r8
movabs r8, 0x70412fc1d31283b2
add rdx, r8
mov qword [rcx + 0xb8], rdx
mov rdx, qword [0x14020bc70]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bc78]
mov r8, qword [r8 + rbx]
movabs r9, 0xb7d14d8f680e10e1
imul rdx, r9
movabs r9, 0xecd4659323eb21e4
imul r8, r9
add rdx, r8
movabs r8, 0x8ddd8ccf1fbf3608
add rdx, r8
mov qword [rax + 0xb8], rdx
mov rdx, qword [0x14020bc80]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bc88]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x3e
movabs r8, 0xe75e66fac53ca84
xor rdx, r8
mov qword [rcx + 0xc0], rdx
mov rdx, qword [0x14020bc90]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bc98]
mov r8, qword [r8 + rbx]
movabs r9, 0xf1e8cd1409eaf134
imul rdx, r9
movabs r9, 0xa74e9e6f1a3d9ce7
imul r8, r9
add rdx, r8
movabs r8, 0x87ef95fbcf2da42f
add rdx, r8
mov qword [rax + 0xc0], rdx
mov rdx, qword [0x14020bca0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bca8]
mov r8, qword [r8 + rbx]
movabs r9, 0x15319846129b964d
imul rdx, r9
movabs r9, 0x6a01992afb44c6ca
imul r8, r9
add rdx, r8
movabs r8, 0x7b265b93b4122abf
add rdx, r8
mov qword [rcx + 0xc8], rdx
mov rdx, qword [0x14020bcb0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bcb8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x1e
movabs r8, 0x7e4f8808e5a1683a
xor rdx, r8
mov qword [rax + 0xc8], rdx
mov rdx, qword [0x14020bcc0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bcc8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x38
movabs r8, 0xdb43fef24f5a1608
xor rdx, r8
mov qword [rcx + 0xd0], rdx
mov rdx, qword [0x14020bcd0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bcd8]
mov r8, qword [r8 + rbx]
movabs r9, 0xf91ce73fc1e000f5
imul rdx, r9
movabs r9, 0x51377427c5c19f38
imul r8, r9
add rdx, r8
movabs r8, 0x382084d9e86ab63a
add rdx, r8
mov qword [rax + 0xd0], rdx
mov rdx, qword [0x14020bce0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bce8]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x30
movabs r8, 0xf2aac41abaea951d
xor rdx, r8
mov qword [rcx + 0xd8], rdx
mov rdx, qword [0x14020bcf0]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bcf8]
mov r8, qword [r8 + rbx]
movabs r9, 0x814c30a813212e6e
imul rdx, r9
movabs r9, 0xf4879ad50daf67ee
imul r8, r9
add rdx, r8
movabs r8, 0xe356ea89a64874c4
add rdx, r8
mov qword [rax + 0xd8], rdx
mov rdx, qword [0x14020bd00]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bd08]
mov r8, qword [r8 + rbx]
movabs r9, 0x1f8a9fba8dc41695
imul rdx, r9
movabs r9, 0x461d5b1af52b1928
imul r8, r9
add rdx, r8
movabs r8, 0x6a5bd234566ea13b
add rdx, r8
mov qword [rcx + 0xe0], rdx
mov rdx, qword [0x14020bd10]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bd18]
mov r8, qword [r8 + rbx]
shld rdx, r8, 8
movabs r8, 0x64bad3c5155d2209
xor rdx, r8
mov qword [rax + 0xe0], rdx
mov rdx, qword [0x14020bd20]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bd28]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x17
movabs r8, 0x4e8c84ec08c90967
xor rdx, r8
mov qword [rcx + 0xe8], rdx
mov rdx, qword [0x14020bd30]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bd38]
mov r8, qword [r8 + rbx]
movabs r9, 0x3b4fd433fab37442
imul rdx, r9
movabs r9, 0x903fca117db07c45
imul r8, r9
add rdx, r8
movabs r8, 0x3f21224988ecd6c1
add rdx, r8
mov qword [rax + 0xe8], rdx
mov rdx, qword [0x14020bd40]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bd48]
mov r8, qword [r8 + rbx]
shld rdx, r8, 0x22
movabs r8, 0x71f031e173036a7d
xor rdx, r8
mov qword [rcx + 0xf0], rdx
mov rdx, qword [0x14020bd50]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bd58]
mov r8, qword [r8 + rbx]
movabs r9, 0xfb2174775c2f7832
imul rdx, r9
movabs r9, 0xdfacf197473fe284
imul r8, r9
add rdx, r8
movabs r8, 0x302028b64b63c238
add rdx, r8
mov qword [rax + 0xf0], rdx
mov rdx, qword [0x14020bd60]
mov rdx, qword [rdx + rbx]
mov r8, qword [0x14020bd68]
mov r8, qword [r8 + rbx]
movabs r9, 0x42bf101ae2ddf4d9
imul rdx, r9
movabs r9, 0xa485352f1d775785
imul r8, r9
add rdx, r8
movabs r8, 0x1fd63a253177f61b
add rdx, r8
mov qword [rcx + 0xf8], rdx
mov rcx, qword [0x14020bd70]
mov rcx, qword [rcx + rbx]
mov rdx, qword [0x14020bd78]
mov rdx, qword [rdx + rbx]
shld rcx, rdx, 5
movabs rdx, 0x28a1c3ec565aaec1
xor rcx, rdx
mov qword [rax + 0xf8], rcx
mov rax, qword [0x14020bd80]
mov eax, dword [rax + rbx]
mov rcx, qword [0x14020bd88]
mov ecx, dword [rcx + rbx]
imul eax, eax, 0xd49c1fa7
imul ecx, ecx, 0xb8022727
lea eax, [rax + rcx + 0x25a8296f]
lea rax, [rax*4 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.140053000
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x18], rax
mov rax, qword [0x14020bd90]
mov eax, dword [rax + rbx]
mov rcx, qword [0x14020bd98]
mov ecx, dword [rcx + rbx]
imul eax, eax, 0xeb7c3dda
imul ecx, ecx, 0x1004d0c3
lea eax, [rax + rcx + 0x3fd3aad3]
lea rax, [rax*4 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.140053000
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x38], rax
mov rax, qword [0x14020bda0]
mov eax, dword [rax + rbx]
mov rcx, qword [0x14020bda8]
mov ecx, dword [rcx + rbx]
shld eax, ecx, 0x12
xor eax, 0x2bd99c47
lea rax, [rax*8 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.140053000
sub rsp, rax
mov rdi, rsp
mov rax, qword [0x14020bdb0]
mov eax, dword [rax + rbx]
mov rcx, qword [0x14020bdb8]
mov ecx, dword [rcx + rbx]
imul eax, eax, 0x7269157f
imul ecx, ecx, 0x576b9252
lea eax, [rax + rcx + 0x37a81eed]
lea rax, [rax*8 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.140053000
sub rsp, rax
mov rsi, rsp
mov rax, qword [0x14020bdc0]
mov eax, dword [rax + rbx]
mov rcx, qword [0x14020bdc8]
mov ecx, dword [rcx + rbx]
shld eax, ecx, 0x17
xor eax, 0x6ae7d5f
lea rax, [rax*4 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.140053000
sub rsp, rax
mov r14, rsp
mov qword [rbp - 0x30], r14
mov rax, qword [0x14020bdd0]
mov eax, dword [rax + rbx]
mov rcx, qword [0x14020bdd8]
mov ecx, dword [rcx + rbx]
shld eax, ecx, 1
xor eax, 0x1f7b382a
lea rax, [rax*4 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.140053000
sub rsp, rax
mov rcx, rsp
mov qword [rbp - 0x28], rcx
mov rax, qword [0x14020bde0]
mov eax, dword [rax + rbx]
mov rdx, qword [0x14020bde8]
mov edx, dword [rdx + rbx]
shld eax, edx, 1
xor eax, 0x72b4cb10
lea rax, [rax*8 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.140053000
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x48], r10
add r10, 0x15
mov qword [rax], r10
mov rax, qword [0x14020bdf0]
mov eax, dword [rax + rbx]
mov dword [rcx], eax
sub rsp, 0x20
call fcn.140051140
add rsp, 0x20
mov rcx, qword [0x14020bdf8]
cdqe
lea rax, [rcx + rax*4]
mov eax, dword [rbx + rax]
mov dword [r14], eax
mov rax, qword [0x14020be00]
mov eax, dword [rax + rbx]
mov rcx, qword [0x14020be08]
mov ecx, dword [rcx + rbx]
shld eax, ecx, 6
xor eax, 0x7f3dc0f3
lea rax, [rax*8 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.140053000
sub rsp, rax
mov rax, rsp
mov r13, rax
mov rcx, qword [0x14020be10]
mov rcx, qword [rcx + rbx]
mov rdx, qword [0x14020be18]
mov rdx, qword [rdx + rbx]
movabs r8, 0x768e91c31e92de73
imul rcx, r8
movabs r8, 0x7d5c92a3580d6ba6
imul rdx, r8
add rcx, rdx
movabs rdx, 0x4d7129df05a79da1
add rcx, rdx
mov qword [rax], rcx
mov rax, qword [0x14020be20]
mov eax, dword [rax + rbx]
mov rcx, qword [0x14020be28]
mov ecx, dword [rcx + rbx]
imul eax, eax, 0x472bf6b5
imul ecx, ecx, 0x46cd5432
lea eax, [rax + rcx + 0x3ee2e302]
lea rax, [rax*8 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.140053000
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x10], rax
mov r8, qword [r13]
mov rax, qword [0x14020be30]
movabs rdx, 0xd2114944cc112c6b
mov rax, qword [rax + rdx]
mov rcx, qword [0x14020be38]
mov rcx, qword [rcx + rdx]
movabs r9, 0x7c7c99ad146a75b3
imul rax, r9
movabs r9, 0xd363da1f5768b13b
imul rcx, r9
add rax, rcx
mov r10, rax
add r10, r8
mov rax, qword [0x14020be40]
mov r11, qword [rax + rdx]
mov rax, qword [0x14020be48]
mov r9, qword [rax + rdx]
mov rax, qword [0x14020be50]
lea rax, [rax + r8*8]
mov rax, qword [rdx + rax]
mov rcx, qword [0x14020be58]
mov ecx, dword [rcx + rdx]
mov rbx, qword [0x14020be60]
mov ebx, dword [rbx + rdx]
imul ecx, ecx, 0x2f7eb07c
imul ebx, ebx, 0x6e342c44
add ecx, ebx
add cl, 0xb4
mov rbx, r8
shr rbx, cl
mov rcx, r8
xor rcx, rbx
mov rbx, qword [0x14020be68]
mov rbx, qword [rbx + rdx]
mov r14, qword [0x14020be70]
mov r14, qword [r14 + rdx]
shld rbx, r14, 0xc
movabs r14, 0x2575f491616b3c39
xor rbx, r14
and rcx, rbx
mov bl, byte [r12 + rcx]
mov cl, byte [r15 + rcx]
sub bl, cl
movzx ecx, bl
add r10, rcx
movabs rcx, 0xc237d653a3d6b1
imul r11, rcx
movabs rcx, 0x5c79d7ed493fca1b
imul r9, rcx
add r11, r9
add r11, r8
mov rcx, qword [0x14020be50]
lea rcx, [rcx + r10*8]
movabs r8, 0x52bce8dfe4cce89b
mov rcx, qword [r8 + rcx]
mov qword [rsi], rcx
mov rcx, qword [0x14020be50]
lea rcx, [rcx + r11*8]
movabs r8, 0x5a2052837ca0db7b
mov rcx, qword [r8 + rcx]
mov qword [rdi], rcx
mov rcx, qword [r13]
mov r8, qword [0x14020be78]
mov r8, qword [r8 + rdx]
mov r9, qword [0x14020be80]
mov rdx, qword [r9 + rdx]
movabs r9, 0x7bb0fa8a86f0f7f1
imul r8, r9
movabs r9, 0xcc8b5a9b7e51a5a9
imul rdx, r9
add r8, rdx
movabs rdx, 0xc327094f185666a
add rcx, rdx
add r8, rcx
mov qword [r13], r8
mov rcx, rax
sub rcx, 0x66bc8274
je 0x14002b25d
jmp 0x14002b242
mov rcx, rax
sub rcx, 0x66bc8275
je 0x14002b2a9
jmp 0x14002b250
sub rax, 0x66bc8276
je 0x14002b2b5
jmp 0x14002ba77
mov rax, qword [rsi]
mov rcx, rax
sub rcx, 0x422bdb0f
je 0x14002b8b4
jmp 0x14002b272
mov rcx, rax
sub rcx, 0x6c98e7da
je 0x14002b319
jmp 0x14002b284
mov rcx, rax
sub rcx, 0x74f28f95
je 0x14002b8ef
jmp 0x14002b296
mov ecx, 0xff8b8230
sub rax, rcx
je 0x14002b3f0
jmp 0x14002ba77
mov rax, qword [rsi]
mov qword [r13], rax
jmp 0x14002ba79
mov rax, qword [rbp - 0x10]
mov rax, qword [rax]
movabs rcx, 0xd2114944cc112c6b
add rcx, qword [0x14020be88]
mov rcx, qword [rcx]
movabs rdx, 0xd2114944cc112c6b
add rdx, qword [0x14020be90]
mov rdx, qword [rdx]
shl rcx, 5
shr rdx, 0x3b
or rcx, rdx
movabs rdx, 0xfc1b751f769ef660
xor rcx, rdx
cmp rax, rcx
jne 0x14002b30d
mov rax, qword [rsi]
mov qword [r13], rax
jmp 0x14002ba79
mov rax, qword [rdi]
mov qword [r13], rax
jmp 0x14002ba79
mov rax, qword [rbp - 0x28]
mov eax, dword [rax]
mov rcx, qword [rbp - 0x30]
mov ecx, dword [rcx]
movabs rdx, 0xd2114944cc112c6b
add rdx, qword [0x14020be98]
mov rdx, qword [rdx]
movabs r8, 0xd2114944cc112c6b
add r8, qword [0x14020bea0]
mov r8, qword [r8]
shl rdx, 0x23
shr r8, 0x1d
or rdx, r8
movabs r8, 0x552fa2c2751fc4a6
xor rdx, r8
movabs r8, 0xd2114944cc112c6b
add r8, qword [0x14020bea8]
mov r8, qword [r8]
movabs r9, 0xd2114944cc112c6b
add r9, qword [0x14020beb0]
mov r9, qword [r9]
shl r8, 0x36
shr r9, 0xa
or r8, r9
movabs r9, 0xdb883cad61ba94e2
xor r8, r9
cmp eax, ecx
cmove r8, rdx
mov rax, qword [rbp - 0x10]
mov qword [rax], r8
movabs rax, 0xd2114944cc112c6b
add rax, qword [0x14020beb8]
mov eax, dword [rax]
movabs rcx, 0xd2114944cc112c6b
add rcx, qword [0x14020bec0]
mov ecx, dword [rcx]
shl eax, 0xd
shr ecx, 0x13
or eax, ecx
xor eax, 0xc36683e7
mov rcx, qword [rbp - 0x18]
mov dword [rcx], eax
jmp 0x14002ba77
mov rax, qword [rbp - 0x18]
mov ebx, dword [rax]
mov rax, qword [rbp - 0x20]
mov rax, qword [rax]
movsxd rcx, ebx
mov al, byte [rax + rcx]
mov byte [rbp + 7], al
sub rsp, 0x20
call fcn.1400511c0
add rsp, 0x20
movabs rcx, 0xd2114944cc112c6b
add rcx, qword [0x14020bec8]
mov ecx, dword [rcx]
movabs rdx, 0xd2114944cc112c6b
add rdx, qword [0x14020bed0]
mov edx, dword [rdx]
imul ecx, ecx, 0x7f0bf0c4
imul edx, edx, 0x37a553b2
add ecx, edx
add ecx, 0xb9c82bcb
mov edx, ebx
shl edx, cl
mov ecx, ebx
xor ecx, edx
movabs rdx, 0xd2114944cc112c6b
add rdx, qword [0x14020bed8]
mov edx, dword [rdx]
movabs r8, 0xd2114944cc112c6b
add r8, qword [0x14020bee0]
mov r8d, dword [r8]
shl edx, 8
shr r8d, 0x18
or edx, r8d
xor edx, 0x6b82f0fe
and ecx, edx
movsxd rdx, ecx
mov dl, byte [r12 + rdx]
movsxd rcx, ecx
mov cl, byte [r15 + rcx]
sub dl, cl
movzx ecx, dl
mov qword [rbp - 8], r15
mov r15, r12
mov r12d, eax
add r12d, ecx
movabs rax, 0xd2114944cc112c6b
add rax, qword [0x14020bee8]
movsxd rcx, r12d
mov r8d, dword [rax + rcx*4]
mov eax, ebx
xor edx, edx
div r8d
movsxd rax, edx
mov rcx, qword [rbp - 0x48]
mov r14b, byte [rcx + rax]
movabs rax, 0xd2114944cc112c6b
add rax, qword [0x14020bef0]
mov eax, dword [rax]
movabs rcx, 0xd2114944cc112c6b
add rcx, qword [0x14020bef8]
mov ecx, dword [rcx]
imul eax, eax, 0x274d4db7
imul ecx, ecx, 0xd5c112ad
add eax, ecx
mov ecx, eax
add ecx, 0x6baf85ac
mov eax, r8d
shl eax, cl
xor r8d, eax
movabs rax, 0xd2114944cc112c6b
add rax, qword [0x14020bf00]
mov eax, dword [rax]
movabs rcx, 0xd2114944cc112c6b
add rcx, qword [0x14020bf08]
mov ecx, dword [rcx]
imul eax, eax, 0x5ef82429
imul ecx, ecx, 0x464b981c
add eax, ecx
add eax, 0xbe353e13
and r8d, eax
movsxd rax, r8d
mov al, byte [r15 + rax]
movsxd rcx, r8d
mov rdx, qword [rbp - 8]
mov cl, byte [rdx + rcx]
sub al, cl
mov cl, byte [rbp + 7]
add cl, al
xor cl, r14b
movsxd rax, ebx
mov rdx, qword [rbp - 0x40]
mov byte [rdx + rax], cl
sub rsp, 0x20
call fcn.140051240
add rsp, 0x20
mov ecx, eax
movabs rax, 0xd2114944cc112c6b
add rax, qword [0x14020bf10]
mov al, byte [rax]
movabs rdx, 0xd2114944cc112c6b
add rdx, qword [0x14020bf18]
mov dl, byte [rdx]
mov r8b, 0x46
mul r8b
mov r8b, al
mov r9b, 0xc9
mov al, dl
mul r9b
add r8b, al
add r8b, 0x79
movzx ax, r14b
div r8b
shr ax, 8
movsx rdx, al
mov dl, byte [r15 + rdx]
movsx rax, al
mov r8, qword [rbp - 8]
mov al, byte [r8 + rax]
sub dl, al
movzx eax, dl
add ecx, eax
movabs rax, 0xd2114944cc112c6b
add rax, qword [0x14020bf20]
movsxd rcx, ecx
mov edx, ebx
add edx, dword [rax + rcx*4]
mov r14, qword [rbp - 0x38]
mov dword [r14], edx
sub rsp, 0x20
call fcn.1400512d0
add rsp, 0x20
movabs rcx, 0xd2114944cc112c6b
add rcx, qword [0x14020bf28]
mov ecx, dword [rcx]
movabs rdx, 0xd2114944cc112c6b
add rdx, qword [0x14020bf30]
mov edx, dword [rdx]
shl ecx, 0x1a
shr edx, 6
or ecx, edx
xor ecx, 0x1956737c
mov edx, ebx
shl edx, cl
mov ecx, ebx
xor ecx, edx
movabs rdx, 0xd2114944cc112c6b
add rdx, qword [0x14020bf38]
mov edx, dword [rdx]
movabs r8, 0xd2114944cc112c6b
add r8, qword [0x14020bf40]
mov r8d, dword [r8]
shl edx, 0x12
shr r8d, 0xe
or edx, r8d
xor edx, 0xa32bcf80
and ecx, edx
movsxd rdx, ecx
mov dl, byte [r15 + rdx]
movsxd rcx, ecx
mov r8, qword [rbp - 8]
mov cl, byte [r8 + rcx]
sub dl, cl
movzx ecx, dl
add eax, ecx
movabs rcx, 0xd2114944cc112c6b
add rcx, qword [0x14020bf48]
cdqe
mov eax, dword [rcx + rax*4]
mov edx, dword [r14]
movabs rcx, 0xd2114944cc112c6b
add rcx, qword [0x14020bf50]
mov ecx, dword [rcx]
movabs r8, 0xd2114944cc112c6b
add r8, qword [0x14020bf58]
mov r8d, dword [r8]
imul ecx, ecx, 0xf8d446ef
imul r8d, r8d, 0x1628c942
add ecx, r8d
add ecx, 0x256d419
mov r8d, r12d
shl r8d, cl
xor r12d, r8d
movabs rcx, 0xd2114944cc112c6b
add rcx, qword [0x14020bf60]
mov ecx, dword [rcx]
movabs r8, 0xd2114944cc112c6b
add r8, qword [0x14020bf68]
mov r8d, dword [r8]
shl ecx, 7
shr r8d, 0x19
or ecx, r8d
xor ecx, 0x6ada5895
and r12d, ecx
movsxd rcx, r12d
mov cl, byte [r15 + rcx]
movsxd r8, r12d
mov r12, r15
mov r15, qword [rbp - 8]
mov r8b, byte [r15 + r8]
sub cl, r8b
movzx ecx, cl
add edx, ecx
movabs rcx, 0xd2114944cc112c6b
add rcx, qword [0x14020bf70]
mov rcx, qword [rcx]
movabs r8, 0xd2114944cc112c6b
add r8, qword [0x14020bf78]
mov r8, qword [r8]
movabs r9, 0xf29d02786d440260
imul rcx, r9
movabs r9, 0x10fd51e38a2e62f3
imul r8, r9
add rcx, r8
movabs r8, 0x7e79eeb6c9861b03
add rcx, r8
movabs r8, 0xd2114944cc112c6b
add r8, qword [0x14020bf80]
mov r8, qword [r8]
movabs r9, 0xd2114944cc112c6b
add r9, qword [0x14020bf88]
mov r9, qword [r9]
movabs r10, 0x5988828a0af34fbe
imul r8, r10
movabs r10, 0x61ca5ae8f497ef0
imul r9, r10
add r8, r9
movabs r9, 0xb49480222dff3aac
add r8, r9
cmp edx, eax
mov rax, r8
cmove rax, rcx
movabs rcx, 0xd2114944cc112c6b
add rcx, qword [0x14020bf90]
mov ecx, dword [rcx]
movabs rdx, 0xd2114944cc112c6b
add rdx, qword [0x14020bf98]
mov edx, dword [rdx]
imul ecx, ecx, 0xb14db020
imul edx, edx, 0x77327f64
add ecx, edx
add ecx, 0x5768792e
mov edx, ebx
shl edx, cl
xor ebx, edx
movabs rcx, 0xd2114944cc112c6b
add rcx, qword [0x14020bfa0]
mov ecx, dword [rcx]
movabs rdx, 0xd2114944cc112c6b
add rdx, qword [0x14020bfa8]
mov edx, dword [rdx]
shl ecx, 3
shr edx, 0x1d
or ecx, edx
xor ecx, 0x108e438c
and ebx, ecx
movsxd rcx, ebx
mov cl, byte [r12 + rcx]
movsxd rdx, ebx
mov dl, byte [r15 + rdx]
sub cl, dl
movzx ecx, cl
add rax, rcx
mov rcx, qword [rbp - 0x10]
mov qword [rcx], rax
mov eax, dword [r14]
mov rcx, qword [rbp - 0x18]
mov dword [rcx], eax
jmp 0x14002ba77
sub rsp, 0x20
call fcn.140051350
add rsp, 0x20
movabs rcx, 0xd2114944cc112c6b
add rcx, qword [0x14020bfb0]
cdqe
mov eax, dword [rcx + rax*4]
movabs rcx, 0xd2114944cc112c6b
add rcx, qword [0x14020bdf0]
mov dword [rcx], eax
jmp 0x14002ba77
movabs rax, 0xd2114944cc112c6b
add rax, qword [0x14020bfb8]
mov edx, dword [rax]
movabs rax, 0xd2114944cc112c6b
add rax, qword [0x14020bfc0]
mov eax, dword [rax]
movabs rcx, 0xd2114944cc112c6b
add rcx, qword [0x14020bfc8]
mov ecx, dword [rcx]
movabs r8, 0xd2114944cc112c6b
add r8, qword [0x14020bfd0]
mov r8d, dword [r8]
imul ecx, ecx, 0x5b1a6d18
imul r8d, r8d, 0x8daac56a
add ecx, r8d
add ecx, 0x2f842419
shl edx, cl
movabs rcx, 0xd2114944cc112c6b
add rcx, qword [0x14020bfd8]
mov ecx, dword [rcx]
movabs r8, 0xd2114944cc112c6b
add r8, qword [0x14020bfe0]
mov r8d, dword [r8]
imul ecx, ecx, 0x3a4279ba
imul r8d, r8d, 0x1600e331
add ecx, r8d
add ecx, 0x781dec97
mov r8d, eax
shr r8d, cl
mov eax, edx
or eax, r8d
movabs rcx, 0xd2114944cc112c6b
add rcx, qword [0x14020bfe8]
mov ecx, dword [rcx]
movabs rdx, 0xd2114944cc112c6b
add rdx, qword [0x14020bff0]
mov edx, dword [rdx]
imul ecx, ecx, 0x243cd751
imul edx, edx, 0x81e95692
add ecx, edx
add ecx, 0x8521b78a
mov edx, r8d
shl edx, cl
xor r8d, edx
movabs rcx, 0xd2114944cc112c6b
add rcx, qword [0x14020bff8]
mov ecx, dword [rcx]
movabs rdx, 0xd2114944cc112c6b
add rdx, qword [0x14020c000]
mov edx, dword [rdx]
shl ecx, 0x19
shr edx, 7
or ecx, edx
xor ecx, 0x77f75e2f
and r8d, ecx
movsxd rcx, r8d
mov cl, byte [r12 + rcx]
movsxd rdx, r8d
mov dl, byte [r15 + rdx]
sub cl, dl
movzx ecx, cl
add eax, ecx
movabs rcx, 0xd2114944cc112c6b
add rcx, qword [0x14020c008]
mov ecx, dword [rcx]
movabs rdx, 0xd2114944cc112c6b
add rdx, qword [0x14020c010]
mov edx, dword [rdx]
imul ecx, ecx, 0xb001770
imul edx, edx, 0x134f06af
add ecx, edx
add ecx, 0x254d9dde
xor eax, ecx
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
jmp 0x14002ba79
jmp 0x14002b0b3