Function at 0x180001000
Capabilities:
Encode data using xor
Execute anti-debugging instructions

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x480
mov r11, rdx
rdtsc
mov r9, rdx
shl r9, 0x20
or r9, rax
rdtsc
shl rdx, 0x20
or rdx, rax
cmp r9, rdx
mov eax, 0x80752575
mov r10d, 0x2922521e
cmove r10d, eax
test rcx, rcx
je 0x18000289d
mov qword [rsp + 0x448], r8
mov rbp, qword [rcx + 8]
mov r14d, dword [rbp]
mov eax, dword [rbp + 4]
xor r14d, dword [r11]
xor eax, dword [r11 + 4]
mov dword [rsp + 0x18], eax
mov ebx, dword [rbp + 8]
xor ebx, dword [r11 + 8]
mov edi, dword [rbp + 0xc]
xor edi, dword [r11 + 0xc]
mov qword [rsp + 0x348], rcx
mov r15d, dword [rcx]
mov eax, r10d
xor eax, 0x60d09550
mov edx, dword [rsp + 0x24c]
mov ecx, dword [rsp + 0x24c]
mov r9d, r10d
xor r9d, 0xd6ddade0
mov r8d, r10d
xor r8d, 0x2922521d
not ecx
mov dword [rsp], r9d
imul ecx, r9d
mov qword [rsp + 0x260], r8
add r8d, eax
add ecx, r8d
mov r8d, r10d
xor r8d, 0x2922521c
or edx, eax
not edx
mov r12d, r8d
imul edx, r8d
add ecx, edx
mov edx, r10d
xor edx, 0x9f2f6aaf
or edx, dword [rsp + 0x24c]
sub ecx, edx
mov esi, r10d
xor esi, 0x2922521f
and eax, dword [rsp + 0x24c]
not eax
imul eax, esi
add ecx, eax
add rbp, 0x10
cmp r15d, ecx
mov dword [rsp + 8], r10d
mov dword [rsp + 4], r8d
mov dword [rsp + 0x10], ebx
jbe 0x1800028a7
mov eax, r10d
xor eax, 0xff121f40
mov edx, dword [rsp + 0x248]
xor edx, eax
imul edx, esi
mov ecx, r10d
xor ecx, 0x7abd375a
mov r8d, dword [rsp + 0x248]
not r8d
imul r8d, dword [rsp]
mov r11d, dword [rsp + 0x248]
not r11d
or r11d, eax
imul r11d, dword [rsp + 0x260]
mov eax, r10d
xor eax, 0xbf
or eax, dword [rsp + 0x248]
add ecx, esi
add ecx, r8d
add ecx, r11d
add ecx, edx
sub ecx, eax
shr r15d, cl
mov dword [rsp + 0x50], r15d
mov eax, r10d
xor eax, 0x457cd67d
mov dword [rsp + 0x350], eax
mov eax, r10d
xor eax, 0xd6ddade3
mov dword [rsp + 0x14], eax
mov eax, r10d
xor eax, 0x457cd67a
mov ecx, r10d
xor ecx, 0x29225206
add eax, ecx
mov r8, rcx
mov dword [rsp + 0x368], eax
mov eax, r10d
xor eax, 0x60dc4c13
mov dword [rsp + 0x134], eax
mov eax, r10d
xor eax, 0x9f23b3ed
mov ecx, r10d
xor ecx, 0x9f23b3ec
mov dword [rsp + 0x130], ecx
mov ecx, r10d
xor ecx, 0x2922520e
add eax, ecx
inc eax
mov r11, rcx
mov dword [rsp + 0x12c], eax
mov eax, r10d
xor eax, 0x40dbdbb8
mov dword [rsp + 0x128], eax
mov eax, r10d
xor eax, 0xbf242444
mov ecx, r10d
xor ecx, 0x62d030e0
mov edx, r10d
xor edx, 0x292252e3
add ecx, edx
inc ecx
mov dword [rsp + 0x124], ecx
mov ecx, r10d
xor ecx, 0xfca7131a
mov ebx, r10d
xor ebx, 0x3c1f0d63
add ebx, ecx
mov r13d, r10d
xor r13d, 0x292252e1
mov ecx, r10d
xor ecx, 0xea95856
mov edx, r10d
xor edx, 0xc51828c5
add ecx, r13d
inc ecx
add ecx, edx
mov dword [rsp + 0x11c], ecx
mov edx, r10d
xor edx, 0x2922531e
add eax, edx
inc eax
mov dword [rsp + 0x30], eax
mov eax, r10d
xor eax, 0x55592944
mov dword [rsp + 0x118], eax
mov eax, r10d
xor eax, 0xaaa6d6b8
mov ecx, r10d
xor ecx, 0xaaa6d6bb
mov dword [rsp + 0x110], ecx
mov ecx, r10d
xor ecx, 0x29225216
add eax, ecx
mov dword [rsp + 0x114], eax
mov eax, r10d
xor eax, 0x62d030e3
mov dword [rsp + 0x10c], eax
mov eax, r10d
xor eax, 0x8d77592a
mov dword [rsp + 0x108], eax
mov eax, r10d
xor eax, 0x8d77592b
mov dword [rsp + 0xc], r14d
mov r15d, r10d
xor r15d, 0x292252e0
add eax, r15d
mov dword [rsp + 0x104], eax
mov eax, r10d
xor eax, 0xc3e0f29c
mov dword [rsp + 0xfc], eax
add ebx, r8d
mov dword [rsp + 0x120], ebx
mov eax, r10d
xor eax, 0x6cb8f29d
mov dword [rsp + 0xf8], eax
mov eax, r10d
xor eax, 0x93470d62
mov qword [rsp + 0x258], rax
mov eax, r10d
xor eax, 0x17cc4e9a
mov dword [rsp + 0xf4], eax
mov eax, r10d
xor eax, 0xe833b165
mov dword [rsp + 0xf0], eax
mov eax, r10d
xor eax, 0xe833b162
mov qword [rsp + 0x358], rdx
add eax, edx
mov dword [rsp + 0xec], eax
mov eax, r10d
xor eax, 0xd08e478c
mov qword [rsp + 0x60], rax
mov eax, r10d
xor eax, 0x2f71b873
mov dword [rsp + 0xe8], eax
mov eax, r10d
xor eax, 0xe1dae577
mov dword [rsp + 0x2c], eax
mov eax, r10d
xor eax, 0x1e251a88
mov dword [rsp + 0xe4], eax
mov eax, r10d
xor eax, 0xb8d33ccc
add eax, r13d
inc eax
mov dword [rsp + 0xe0], eax
mov eax, r10d
xor eax, 0x11263d8c
mov dword [rsp + 0xdc], eax
mov eax, r10d
xor eax, 0xeed9c270
add eax, r13d
inc eax
mov dword [rsp + 0xd8], eax
mov eax, r10d
xor eax, 0xdca982fd
mov qword [rsp + 0x290], rax
mov eax, r10d
xor eax, 0x61e3cd84
mov dword [rsp + 0xd4], eax
mov eax, r10d
xor eax, 0x9e1c327b
mov dword [rsp + 0xd0], eax
mov eax, r10d
xor eax, 0x9e1c3278
add eax, r11d
mov dword [rsp + 0xcc], eax
mov eax, r10d
xor eax, 0x753e1316
mov qword [rsp + 0x288], rax
mov eax, r10d
xor eax, 0xe228a122
mov qword [rsp + 0x78], rax
mov eax, r10d
xor eax, 0x1dd75edd
mov dword [rsp + 0xc8], eax
mov eax, r10d
xor eax, 0xca4a705c
mov dword [rsp + 0xc4], eax
add r15d, eax
mov dword [rsp + 0x100], r15d
mov eax, r10d
xor eax, 0x6d188c4b
mov dword [rsp + 0xc0], eax
mov eax, r10d
xor eax, 0x6d188c48
add eax, r13d
inc eax
mov dword [rsp + 0xbc], eax
mov eax, r10d
xor eax, 0x8df2f6af
mov dword [rsp + 0xb8], eax
mov eax, r10d
xor eax, 0x720d0951
mov edx, r10d
xor edx, 0x720d0950
mov dword [rsp + 0xb0], edx
mov r14, r8
add eax, r14d
mov dword [rsp + 0xb4], eax
mov eax, r10d
xor eax, 0x2f65f987
mov qword [rsp + 0x280], rax
mov eax, r10d
xor eax, 0xd09a0678
mov dword [rsp + 0xac], eax
mov eax, r10d
xor eax, 0x590f145c
mov qword [rsp + 0x70], rax
mov eax, r10d
xor eax, 0xa6f0eba3
mov dword [rsp + 0xa8], eax
mov eax, r10d
xor eax, 0x3bf16801
mov dword [rsp + 0x28], eax
mov eax, r10d
xor eax, 0xc40e97ff
add eax, ecx
inc eax
mov dword [rsp + 0xa4], eax
mov eax, r10d
xor eax, 0xd1a2f1bb
mov dword [rsp + 0xa0], eax
mov eax, r10d
xor eax, 0x2e5d0e45
mov edx, r10d
xor edx, 0x2e5d0e44
mov dword [rsp + 0x98], edx
add eax, r13d
mov dword [rsp + 0x9c], eax
mov eax, r10d
xor eax, 0xfcf1500b
mov dword [rsp + 0x94], eax
mov eax, r10d
xor eax, 0x30eaff4
mov qword [rsp + 0x68], rax
mov eax, r10d
xor eax, 0x1cd6796e
mov dword [rsp + 0x90], eax
mov eax, r10d
xor eax, 0xe329868e
mov edx, r10d
xor edx, 0xe3298691
mov dword [rsp + 0x8c], edx
mov edx, r10d
xor edx, 0x29225209
mov qword [rsp + 0x360], rdx
add eax, edx
inc eax
mov dword [rsp + 0x434], eax
mov eax, r10d
xor eax, 0x5d4b5a97
mov dword [rsp + 0x430], eax
mov r8d, r10d
xor r8d, 0xa2b4a568
mov eax, r10d
xor eax, 0x3ae7d73a
mov dword [rsp + 0x42c], eax
mov eax, r10d
xor eax, 0xc166dbf5
mov ebx, r10d
xor ebx, 0x3e99240b
mov dword [rsp + 0x428], ebx
add eax, ecx
inc eax
mov dword [rsp + 0x424], eax
mov ebx, r10d
xor ebx, 0x3671ab4a
mov eax, r10d
xor eax, 0xc98e54b5
mov dword [rsp + 0x420], eax
mov eax, r10d
xor eax, 0x3825aaf9
mov dword [rsp + 0x41c], eax
mov eax, r10d
xor eax, 0xc7da5506
add eax, r14d
mov qword [rsp + 0x48], r14
mov dword [rsp + 0x418], eax
mov edx, r10d
xor edx, 0xe512e19f
mov eax, r10d
xor eax, 0x1aed1e60
mov dword [rsp + 0x414], eax
mov eax, r10d
xor eax, 0x409bbbf
mov dword [rsp + 0x410], eax
mov eax, r10d
xor eax, 0xfbf64440
add eax, r13d
mov dword [rsp + 0x40c], eax
mov r9d, r10d
xor r9d, 0x655cca42
mov eax, r10d
xor eax, 0x29225217
mov qword [rsp + 0x460], r9
add eax, r9d
inc eax
mov dword [rsp + 0x408], eax
mov eax, r10d
xor eax, 0xff4a55b9
mov dword [rsp + 0x404], eax
mov eax, r10d
xor eax, 0xaa1a44eb
mov r9d, r10d
xor r9d, 0xb5aa46
mov dword [rsp + 0x3fc], r9d
add eax, r13d
mov dword [rsp + 0x400], eax
mov eax, r10d
xor eax, 0xf33d56dc
mov dword [rsp + 0x3f8], eax
mov eax, r10d
xor eax, 0xcc2a923
add eax, r14d
mov dword [rsp + 0x3f4], eax
mov eax, r10d
xor eax, 0xa53e7f06
mov dword [rsp + 0x3f0], eax
mov eax, r10d
xor eax, 0xcee5f7ce
mov r14, r11
add eax, r11d
inc eax
mov dword [rsp + 0x3ec], eax
mov eax, r10d
xor eax, 0x4a9040db
mov dword [rsp + 0x3e8], eax
mov eax, r10d
xor eax, 0xb56fbf24
mov dword [rsp + 0x3e4], eax
mov eax, r10d
xor eax, 0x4a9040d8
add eax, r13d
mov dword [rsp + 0x3e0], eax
mov eax, r10d
xor eax, 0x6eb3d912
mov dword [rsp + 0x3dc], eax
mov eax, r10d
xor eax, 0x914c26ea
mov r9d, r10d
xor r9d, 0x914c26ed
mov dword [rsp + 0x3d4], r9d
add eax, ecx
mov dword [rsp + 0x3d8], eax
mov eax, r10d
xor eax, 0x56963a72
mov dword [rsp + 0x3d0], eax
mov eax, r10d
xor eax, 0xd64a82c4
add eax, r13d
mov dword [rsp + 0x3cc], eax
mov r9d, r10d
xor r9d, 0xcf6e18b3
mov eax, r10d
xor eax, 0x82b78ac8
mov r15d, r10d
xor r15d, 0x82b78acb
mov dword [rsp + 0x3c4], r15d
add eax, r14d
mov dword [rsp + 0x3c8], eax
mov eax, r10d
xor eax, 0xf0316766
mov dword [rsp + 0x3c0], eax
mov eax, r10d
xor eax, 0xfce9896
add eax, r13d
mov dword [rsp + 0x3bc], eax
mov eax, r10d
xor eax, 0x2f5653bf
mov r15d, r10d
xor r15d, 0xda35aea2
mov dword [rsp + 0x3b8], eax
add r15d, eax
add r15d, ecx
mov dword [rsp + 0x3b4], r15d
mov r15d, r10d
xor r15d, 0x64129a4a
mov eax, r10d
xor eax, 0xd9d86977
mov dword [rsp + 0x3b0], eax
mov eax, r10d
xor eax, 0xc8d624cc
mov r11d, r10d
xor r11d, 0x26279688
mov dword [rsp + 0x3a8], r11d
add eax, r12d
mov dword [rsp + 0x3ac], eax
inc dword [rsp + 0x50]
lea eax, [r14 + 1]
mov dword [rsp + 0x24], eax
mov rax, qword [rsp + 0x258]
add eax, r14d
inc eax
mov r11, r14
mov dword [rsp + 0x3a4], eax
lea eax, [rcx + 1]
mov qword [rsp + 0x268], rax
mov rax, qword [rsp + 0x60]
lea eax, [rcx + rax + 1]
mov dword [rsp + 0x3a0], eax
lea eax, [r13 + 1]
mov qword [rsp + 0x278], rax
mov r14, qword [rsp + 0x48]
mov rax, qword [rsp + 0x290]
lea eax, [r14 + rax]
mov dword [rsp + 0x39c], eax
mov rax, qword [rsp + 0x288]
lea eax, [r13 + rax]
mov dword [rsp + 0x398], eax
mov qword [rsp + 0x58], rcx
mov rax, qword [rsp + 0x78]
lea eax, [rcx + rax + 1]
mov dword [rsp + 0x394], eax
mov rax, qword [rsp + 0x280]
lea eax, [r11 + rax]
mov dword [rsp + 0x390], eax
mov rax, qword [rsp + 0x70]
lea eax, [r13 + rax + 1]
mov dword [rsp + 0x38c], eax
mov rax, qword [rsp + 0x68]
lea eax, [r13 + rax + 1]
mov dword [rsp + 0x388], eax
mov qword [rsp + 0x478], r8
lea eax, [r11 + r8]
mov dword [rsp + 0x384], eax
mov qword [rsp + 0x470], rbx
lea eax, [r13 + rbx]
mov dword [rsp + 0x380], eax
mov qword [rsp + 0x270], r11
mov qword [rsp + 0x468], rdx
lea eax, [r11 + rdx]
mov dword [rsp + 0x37c], eax
mov rax, r14
mov qword [rsp + 0x458], r9
lea eax, [r14 + r9]
mov dword [rsp + 0x378], eax
mov qword [rsp + 0x250], r13
mov qword [rsp + 0x450], r15
lea eax, [r15 + r13]
mov dword [rsp + 0x374], eax
mov r13, qword [rsp + 0x348]
mov r15d, dword [rsp + 0x18]
nop
mov ebx, dword [rbp]
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x80], rbp
mov eax, dword [rsp + 0x244]
mov r9d, dword [rsp + 0x350]
or eax, r9d
imul eax, esi
mov edx, dword [rsp + 0x244]
xor edx, r10d
xor edx, 0x82
mov ecx, dword [rsp + 0x244]
not ecx
mov r8d, dword [rsp + 0x244]
add ecx, edx
not r8d
or r8d, r9d
imul r8d, dword [rsp + 0x14]
add eax, dword [rsp + 0x368]
add r8d, eax
imul ecx, r12d
add ecx, r8d
mov r8d, dword [rsp + 0xc]
mov eax, r8d
shr rax, cl
movzx r14d, byte [r13 + rax + 0x248]
mov eax, dword [rsp + 0x240]
not eax
mov edx, dword [rsp + 0x240]
mov ecx, dword [rsp + 0x134]
xor edx, ecx
and eax, ecx
mov r11d, dword [rsp + 0x240]
or r11d, ecx
mov ecx, dword [rsp + 0x240]
imul eax, r12d
or ecx, dword [rsp + 0x130]
imul ecx, esi
add ecx, r11d
add eax, dword [rsp + 0x12c]
mov r11d, r15d
mov r10d, esi
mov esi, dword [rsp + 0x344]
mov r9d, dword [rsp + 0x128]
xor esi, r9d
sub eax, edx
imul esi, r10d
mov edx, dword [rsp + 0x344]
add edx, dword [rsp + 0x30]
add ecx, eax
mov eax, dword [rsp + 0x344]
not eax
or eax, r9d
add edx, esi
shr r11d, cl
imul eax, dword [rsp + 4]
add eax, edx
and eax, r11d
xor r14b, bl
xor r14b, byte [r13 + rax + 0x24c]
mov ebx, r14d
mov eax, dword [rsp + 0x23c]
mov r9d, dword [rsp + 0x118]
xor eax, r9d
mov edx, dword [rsp + 0x114]
mov r11d, dword [rsp + 0x23c]
or r11d, r9d
sub edx, eax
imul r11d, dword [rsp + 4]
mov ecx, dword [rsp + 0x23c]
or ecx, r9d
not ecx
imul ecx, r10d
mov eax, dword [rsp + 0x23c]
or eax, dword [rsp + 0x110]
add r11d, edx
mov r9d, dword [rsp + 0x10]
mov edx, r9d
mov r12d, r9d
mov esi, dword [rsp + 0x340]
mov r9d, dword [rsp + 0x10c]
xor esi, r9d
add ecx, r11d
imul esi, r10d
mov r11d, dword [rsp + 0x340]
or r11d, r9d
sub ecx, eax
shr edx, cl
mov r14d, dword [rsp]
imul r11d, r14d
mov eax, dword [rsp + 0x340]
add eax, dword [rsp + 0x124]
add eax, esi
add eax, r11d
and eax, edx
mov r11d, ebx
xor r11b, byte [r13 + rax + 0x250]
mov eax, dword [rsp + 0x444]
mov r9d, dword [rsp + 0x108]
or eax, r9d
not eax
imul eax, r10d
mov ecx, dword [rsp + 0x444]
not ecx
mov edx, dword [rsp + 0x104]
or ecx, r9d
sub edx, ecx
add edx, eax
and edx, edi
mov ebx, dword [rbp + 4]
mov qword [rsp + 0x40], rbx
xor r11b, byte [r13 + rdx + 0x254]
mov byte [rsp + 0x38], r11b
mov eax, dword [rsp + 0x33c]
mov r9d, dword [rsp + 0xfc]
xor eax, r9d
mov edx, dword [rsp + 0x120]
mov r11d, dword [rsp + 0x33c]
not r11d
sub edx, eax
imul r11d, r10d
mov ecx, dword [rsp + 0x33c]
not ecx
add r11d, edx
or ecx, r9d
imul ecx, r14d
add ecx, r11d
mov eax, r15d
shr rax, cl
movzx r9d, byte [r13 + rax + 0x248]
mov ecx, dword [rsp + 0x238]
and ecx, dword [rsp + 0xf8]
mov esi, dword [rsp + 0x3a4]
mov eax, dword [rsp + 0x238]
not eax
sub esi, ecx
mov rdx, qword [rsp + 0x258]
and eax, edx
mov r11d, dword [rsp + 0x238]
xor r11d, edx
imul eax, r14d
mov ecx, dword [rsp + 0x238]
and ecx, edx
not ecx
add r11d, esi
mov esi, r12d
mov r14d, r12d
mov ebp, dword [rsp + 0x338]
and ebp, dword [rsp + 0xf4]
imul ecx, r10d
mov r12d, dword [rsp + 0x338]
xor r12d, dword [rsp + 8]
xor r12d, 0x17cc4e9a
add r11d, eax
add r12d, ebp
mov eax, dword [rsp + 0x338]
and eax, dword [rsp + 0xf0]
add ecx, r11d
shr esi, cl
not eax
add eax, r12d
imul eax, r10d
xor r9b, bl
add eax, dword [rsp + 0xec]
and eax, esi
xor r9b, byte [r13 + rax + 0x24c]
mov edx, r9d
mov eax, dword [rsp + 0x234]
mov r9, qword [rsp + 0x60]
or eax, r9d
not eax
imul eax, dword [rsp + 4]
mov esi, dword [rsp + 0x234]
xor esi, dword [rsp + 8]
xor esi, 0x73
imul esi, dword [rsp]
mov r11d, dword [rsp + 0x234]
or r11d, dword [rsp + 0xe8]
imul r11d, r10d
add eax, dword [rsp + 0x3a0]
mov ecx, dword [rsp + 0x234]
and ecx, r9d
mov ebp, edi
add r11d, esi
mov esi, dword [rsp + 0x230]
mov r9d, dword [rsp + 0x2c]
and esi, r9d
imul esi, dword [rsp]
add r11d, eax
mov eax, dword [rsp + 0x230]
or eax, dword [rsp + 0xe4]
mov r12d, dword [rsp + 0x230]
imul eax, r10d
add r12d, dword [rsp + 0xe0]
add r12d, esi
add r12d, eax
add ecx, r11d
shr ebp, cl
mov eax, dword [rsp + 0x230]
or eax, r9d
sub r12d, eax
and r12d, ebp
xor dl, byte [r13 + r12 + 0x250]
mov eax, dword [rsp + 0x334]
mov r9d, dword [rsp + 0xdc]
and eax, r9d
mov ecx, dword [rsp + 0x334]
mov r11d, dword [rsp + 0x334]
not r11d
xor ecx, r9d
or r11d, r9d
add r11d, eax
imul r11d, r10d
add ecx, dword [rsp + 0xd8]
add r11d, ecx
and r11d, r8d
xor dl, byte [r13 + r11 + 0x254]
mov byte [rsp + 0x3c], dl
mov rdx, qword [rsp + 0x80]
mov r11d, dword [rdx + 8]
mov eax, dword [rsp + 0x330]
mov ecx, dword [rsp + 0x330]
mov r9, qword [rsp + 0x290]
xor ecx, r9d
add ecx, eax
mov eax, dword [rsp + 0x330]
or eax, r9d
imul eax, dword [rsp]
add eax, dword [rsp + 0x39c]
imul ecx, r10d
add ecx, eax
mov eax, r14d
mov ebx, r14d
shr rax, cl
movzx ebp, byte [r13 + rax + 0x248]
mov esi, dword [rsp + 0x32c]
and esi, dword [rsp + 0xd4]
mov ecx, dword [rsp + 0x32c]
mov r9d, dword [rsp + 0xd0]
xor ecx, r9d
mov eax, dword [rsp + 0xcc]
sub eax, ecx
mov ecx, dword [rsp + 0x32c]
and ecx, r9d
not ecx
add ecx, esi
mov esi, dword [rsp + 0x22c]
imul esi, r10d
mov r12d, dword [rsp + 0x22c]
add esi, dword [rsp + 0x398]
mov r9, qword [rsp + 0x288]
xor r12d, r9d
sub esi, r12d
mov r14d, dword [rsp + 0x22c]
mov r12d, edi
or r14d, r9d
not r14d
imul r14d, dword [rsp + 4]
imul ecx, r10d
add r14d, esi
mov esi, dword [rsp + 0x22c]
xor esi, dword [rsp + 8]
add ecx, eax
shr edi, cl
xor esi, 0x8ac1ece9
imul esi, dword [rsp]
add esi, r14d
xor bpl, r11b
and esi, edi
xor bpl, byte [r13 + rsi + 0x24c]
mov eax, dword [rsp + 0x228]
and eax, dword [rsp + 0x78]
add eax, dword [rsp + 0x228]
mov ecx, dword [rsp + 0x394]
sub ecx, eax
mov eax, dword [rsp + 0x228]
or eax, dword [rsp + 0xc8]
imul eax, r10d
add ecx, dword [rsp + 0x228]
mov esi, r8d
add ecx, eax
mov eax, dword [rsp + 0x440]
mov r9d, dword [rsp + 0xc4]
or eax, r9d
mov edi, dword [rsp + 0x440]
not edi
shr esi, cl
or edi, r9d
add edi, eax
mov eax, dword [rsp + 0x100]
sub eax, edi
and eax, esi
xor bpl, byte [r13 + rax + 0x250]
mov eax, dword [rsp + 0x224]
and eax, dword [rsp + 0xc0]
mov ecx, dword [rsp + 0x224]
imul ecx, dword [rsp + 4]
imul eax, dword [rsp]
mov esi, dword [rsp + 0x224]
xor esi, dword [rsp + 8]
xor esi, 0x92e773b4
add esi, ecx
mov ecx, dword [rsp + 0x224]
not ecx
imul ecx, r10d
add eax, dword [rsp + 0xbc]
add ecx, esi
add ecx, eax
and ecx, r15d
mov edi, dword [rdx + 0xc]
mov qword [rsp + 0x298], rdi
xor bpl, byte [r13 + rcx + 0x254]
mov byte [rsp + 0x34], bpl
mov eax, dword [rsp + 0x220]
mov r9d, dword [rsp + 0xb8]
or eax, r9d
not eax
imul eax, dword [rsp]
mov esi, dword [rsp + 0x220]
add eax, dword [rsp + 0xb4]
xor esi, dword [rsp + 8]
xor esi, 0x50
imul esi, dword [rsp + 4]
add esi, eax
mov eax, dword [rsp + 0x220]
or eax, dword [rsp + 0xb0]
mov ecx, dword [rsp + 0x220]
sub esi, eax
and ecx, r9d
not ecx
imul ecx, r10d
add ecx, esi
shr r12, cl
movzx r12d, byte [r13 + r12 + 0x248]
mov eax, dword [rsp + 0x21c]
not eax
mov esi, dword [rsp + 0x21c]
mov r9d, dword [rsp + 0xac]
and esi, r9d
mov ecx, dword [rsp + 0x21c]
and eax, dword [rsp + 0x280]
not ecx
add ecx, esi
mov esi, dword [rsp + 0x21c]
imul eax, dword [rsp]
or esi, r9d
imul ecx, r10d
mov r14d, dword [rsp + 0x218]
add eax, dword [rsp + 0x390]
mov r9, qword [rsp + 0x70]
or r14d, r9d
not r14d
imul r14d, dword [rsp + 4]
sub eax, esi
mov esi, dword [rsp + 0x218]
xor esi, dword [rsp + 8]
xor esi, 0xa6f0eba3
add ecx, eax
imul esi, dword [rsp]
mov eax, dword [rsp + 0x218]
or eax, dword [rsp + 0xa8]
add r14d, dword [rsp + 0x38c]
shr r8d, cl
imul eax, r10d
add eax, esi
mov ecx, dword [rsp + 0x218]
add eax, r14d
and ecx, r9d
add ecx, eax
and ecx, r8d
xor r12b, dil
xor r12b, byte [r13 + rcx + 0x24c]
mov eax, dword [rsp + 0x328]
mov r9d, dword [rsp + 0x28]
and eax, r9d
mov esi, dword [rsp + 0x328]
xor esi, r9d
mov ecx, dword [rsp + 0x328]
add esi, dword [rsp + 0xa4]
not ecx
or ecx, r9d
add ecx, eax
imul ecx, r10d
mov eax, dword [rsp + 0x214]
not eax
and eax, dword [rsp + 0xa0]
add ecx, esi
add eax, dword [rsp + 0x214]
mov esi, dword [rsp + 0x214]
xor esi, dword [rsp + 8]
xor esi, 0x2e5d0e44
add esi, eax
mov eax, dword [rsp + 0x214]
or eax, dword [rsp + 0x98]
shr r15d, cl
mov ecx, dword [rsp + 0x9c]
sub ecx, eax
imul esi, r10d
add esi, ecx
and esi, r15d
xor r12b, byte [r13 + rsi + 0x250]
mov eax, dword [rsp + 0x210]
mov r9d, dword [rsp + 0x94]
and eax, r9d
mov ecx, dword [rsp + 0x388]
mov esi, dword [rsp + 0x210]
sub ecx, eax
and esi, dword [rsp + 0x68]
mov eax, dword [rsp + 0x210]
or eax, r9d
imul esi, dword [rsp]
imul eax, r10d
add ecx, dword [rsp + 0x210]
add eax, esi
add ecx, eax
and ecx, ebx
xor r12b, byte [r13 + rcx + 0x254]
mov eax, dword [rsp + 0x324]
or eax, dword [rsp + 0x90]
mov ecx, dword [rsp + 0x324]
add eax, dword [rsp + 0x434]
xor ecx, dword [rsp + 8]
xor ecx, 0x91
imul ecx, r10d
add ecx, eax
mov eax, dword [rsp + 0x324]
or eax, dword [rsp + 0x8c]
sub ecx, eax
mov rax, qword [rsp + 0x18]
shr rax, cl
movzx r14d, byte [r13 + rax + 0x248]
mov rbp, rdx
xor r14d, dword [rdx + 0x10]
mov eax, dword [rsp + 0x20c]
mov r9d, dword [rsp + 0x430]
and eax, r9d
mov esi, dword [rsp + 0x20c]
and esi, dword [rsp + 0x478]
mov ecx, dword [rsp + 0x20c]
not ecx
and ecx, r9d
add ecx, eax
mov eax, dword [rsp + 0x20c]
not eax
or eax, r9d
add eax, esi
mov esi, dword [rsp + 0x384]
mov rdx, qword [rsp + 0x40]
mov rbx, rdx
mov r15d, dword [rsp + 0x320]
imul ecx, r10d
not r15d
mov edi, dword [rsp + 0x42c]
and r15d, edi
mov r9d, dword [rsp + 0x320]
sub esi, eax
or r9d, edi
add r9d, r15d
mov eax, dword [rsp + 0x11c]
add ecx, esi
shr rbx, cl
sub eax, r9d
mov ecx, dword [rsp + 0x320]
xor ecx, edi
add ecx, eax
and ebx, ecx
movzx eax, byte [r13 + rbx + 0x24c]
mov esi, dword [rsp + 0x208]
imul esi, dword [rsp]
mov r9d, dword [rsp + 0x208]
xor r9d, dword [rsp + 8]
xor r9d, 0xf4
add esi, dword [rsp + 0x424]
add esi, dword [rsp + 0x208]
mov ecx, dword [rsp + 0x208]
imul r9d, r10d
or ecx, dword [rsp + 0x428]
imul ecx, dword [rsp + 4]
mov rbx, r11
add ecx, r9d
mov r9d, dword [rsp + 0x31c]
mov r15d, dword [rsp + 0x31c]
not r15d
or r15d, dword [rsp + 0x470]
add r15d, r9d
mov r9d, dword [rsp + 0x380]
sub r9d, r15d
add ecx, esi
shr rbx, cl
mov ecx, dword [rsp + 0x31c]
or ecx, dword [rsp + 0x420]
imul ecx, r10d
xor eax, r14d
add ecx, r9d
and ebx, ecx
movzx r15d, byte [r13 + rbx + 0x250]
xor r15d, eax
movzx eax, r12b
movzx r8d, byte [r13 + rax + 0x254]
mov eax, dword [rsp + 0x204]
imul eax, dword [rsp + 0x14]
mov r9d, dword [rsp + 0x204]
or r9d, dword [rsp + 0x41c]
imul r9d, dword [rsp + 4]
add eax, dword [rsp + 0x418]
mov esi, dword [rsp + 0x204]
xor esi, dword [rsp + 8]
xor esi, 6
add r9d, eax
imul esi, r10d
mov ecx, dword [rsp + 0x204]
not ecx
add esi, r9d
imul ecx, dword [rsp]
add ecx, esi
shr rdx, cl
movzx r12d, byte [r13 + rdx + 0x248]
xor r12d, dword [rbp + 0x14]
mov rdx, rbp
mov eax, dword [rsp + 0x200]
mov rdi, qword [rsp + 0x468]
xor eax, edi
mov ecx, dword [rsp + 0x200]
not ecx
mov r9d, dword [rsp + 0x200]
add ecx, eax
or r9d, dword [rsp + 0x414]
mov eax, dword [rsp + 0x37c]
mov esi, dword [rsp + 0x200]
sub eax, r9d
mov r9d, dword [rsp + 0x40c]
sub r9d, dword [rsp + 0x1fc]
mov r14d, dword [rsp + 0x1fc]
mov ebx, dword [rsp + 0x410]
xor r14d, ebx
imul r14d, dword [rsp + 4]
add r14d, r9d
and esi, edi
not esi
mov rdi, qword [rsp + 0x260]
imul esi, edi
imul ecx, dword [rsp]
add ecx, eax
mov eax, dword [rsp + 0x1fc]
xor eax, dword [rsp + 8]
xor eax, 0xfbf64440
add ecx, esi
imul eax, r10d
add eax, r14d
mov r9d, dword [rsp + 0x1fc]
mov rsi, r11
shr rsi, cl
and r9d, ebx
not r9d
imul r9d, dword [rsp]
xor r8d, r15d
mov dword [rsp + 0xc], r8d
add r9d, eax
and esi, r9d
movzx esi, byte [r13 + rsi + 0x24c]
mov eax, dword [rsp + 0x318]
mov rcx, qword [rsp + 0x460]
xor eax, ecx
mov r9d, dword [rsp + 0x318]
or r9d, ecx
imul eax, r10d
not r9d
mov ecx, dword [rsp + 0x318]
add ecx, dword [rsp + 0x408]
add ecx, eax
mov eax, dword [rsp + 0x1f8]
mov ebx, dword [rsp + 0x404]
or eax, ebx
mov r14d, dword [rsp + 0x1f8]
imul r9d, dword [rsp + 4]
not r14d
or r14d, ebx
add r14d, eax
add ecx, r9d
mov eax, dword [rsp + 0x1f8]
mov r9d, dword [rsp + 0x1f8]
and r9d, ebx
or eax, dword [rsp + 0x3fc]
not r9d
add r9d, eax
mov rbp, qword [rsp + 0x298]
mov rax, rbp
imul r9d, r10d
shr rax, cl
imul r14d, dword [rsp]
add r14d, dword [rsp + 0x400]
add r14d, r9d
and eax, r14d
movzx eax, byte [r13 + rax + 0x250]
movzx ecx, byte [rsp + 0x38]
movzx r15d, byte [r13 + rcx + 0x254]
mov ecx, dword [rsp + 0x1f4]
mov ebx, dword [rsp + 0x3f8]
and ecx, ebx
mov r8d, dword [rsp + 0x3f4]
mov r9d, dword [rsp + 0x1f4]
sub r8d, ecx
or r9d, ebx
mov ecx, dword [rsp + 0x1f4]
not ecx
add ecx, r9d
imul ecx, r10d
add ecx, r8d
mov r8d, dword [rsp + 0x1f4]
and r8d, ebx
not r8d
imul r8d, dword [rsp]
add ecx, r8d
shr r11, cl
xor esi, r12d
mov r14d, dword [rsp]
xor eax, esi
movzx r8d, byte [r13 + r11 + 0x248]
mov rbx, rdx
xor r8d, dword [rdx + 0x18]
mov r9d, dword [rsp + 0x1f0]
not r9d
mov r11d, dword [rsp + 0x1f0]
mov edx, dword [rsp + 0x3f0]
and r9d, edx
mov ecx, dword [rsp + 0x1f0]
xor ecx, dword [rsp + 8]
xor ecx, 0xf9
imul r9d, edi
add ecx, r11d
mov r11d, dword [rsp + 0x1f0]
and r11d, edx
add r9d, dword [rsp + 0x3ec]
add r11d, r9d
imul ecx, r10d
mov r9d, dword [rsp + 0x1ec]
add ecx, r11d
mov edx, dword [rsp + 0x3e8]
and r9d, edx
mov r11d, dword [rsp + 0x1ec]
mov esi, dword [rsp + 0x1ec]
and r11d, dword [rsp + 0x3e4]
xor esi, edx
add esi, r9d
mov r9d, dword [rsp + 0x3e0]
imul r11d, dword [rsp + 4]
sub r9d, esi
add r9d, r11d
mov r11d, dword [rsp + 0x1ec]
mov rsi, rbp
shr rsi, cl
not r11d
or r11d, edx
imul r11d, r10d
xor r15d, eax
add r11d, r9d
and esi, r11d
movzx eax, byte [r13 + rsi + 0x24c]
mov ecx, dword [rsp + 0x1e8]
mov edx, dword [rsp + 0x3dc]
and ecx, edx
mov r9d, dword [rsp + 0x1e8]
or r9d, edx
add r9d, ecx
mov ecx, dword [rsp + 0x1e8]
or ecx, edx
mov r11d, dword [rsp + 0x1e8]
not ecx
or r11d, dword [rsp + 0x3d4]
mov esi, dword [rsp + 0x3d8]
sub esi, r11d
add ecx, r9d
mov r9d, dword [rsp + 0x1e4]
mov r11d, dword [rsp + 0x1e4]
mov edx, dword [rsp + 0x3d0]
xor r11d, edx
imul ecx, r10d
add r11d, r9d
mov r12, qword [rsp + 0x18]
mov r9, r12
imul r11d, r10d
add ecx, esi
mov esi, dword [rsp + 0x1e4]
or esi, edx
not esi
imul esi, edi
add esi, dword [rsp + 0x3cc]
add esi, r11d
mov r11d, dword [rsp + 0x1e4]
not r11d
shr r9, cl
or r11d, edx
sub esi, r11d
and r9d, esi
mov esi, r10d
mov edi, dword [rsp + 4]
mov r10d, dword [rsp + 8]
movzx r11d, byte [r13 + r9 + 0x250]
xor r11d, r8d
movzx ecx, byte [rsp + 0x3c]
movzx r9d, byte [r13 + rcx + 0x254]
xor r11d, eax
mov eax, dword [rsp + 0x1e0]
mov ecx, dword [rsp + 0x1e0]
mov r8, qword [rsp + 0x458]
xor ecx, r8d
add ecx, eax
mov eax, dword [rsp + 0x378]
sub eax, ecx
mov edx, dword [rsp + 0x1e0]
not edx
imul edx, r14d
add edx, eax
mov ecx, dword [rsp + 0x1e0]
and ecx, r8d
not ecx
imul ecx, edi
add ecx, edx
shr rbp, cl
xor r9d, r11d
mov dword [rsp + 0x10], r9d
movzx edx, byte [r13 + rbp + 0x248]
xor edx, dword [rbx + 0x1c]
mov eax, dword [rsp + 0x1dc]
imul eax, edi
mov r8d, dword [rsp + 0x1dc]
xor r8d, r10d
xor r8d, 0xcb
mov ecx, dword [rsp + 0x1dc]
not ecx
add ecx, r8d
add eax, dword [rsp + 0x3c8]
mov r8d, dword [rsp + 0x1dc]
or r8d, dword [rsp + 0x3c4]
imul r8d, r14d
add r8d, eax
imul ecx, esi
mov eax, dword [rsp + 0x314]
and eax, dword [rsp + 0x3c0]
add ecx, r8d
mov r8d, dword [rsp + 0x3bc]
sub r8d, dword [rsp + 0x314]
imul eax, edi
add r8d, eax
mov eax, dword [rsp + 0x314]
xor eax, r10d
xor eax, 0xf0316766
shr r12, cl
imul eax, esi
add eax, r8d
and r12d, eax
movzx eax, byte [r13 + r12 + 0x24c]
mov ecx, dword [rsp + 0x310]
mov r8d, dword [rsp + 0x310]
mov r11d, dword [rsp + 0x3b8]
xor r8d, r11d
add r8d, ecx
mov r9d, dword [rsp + 0x3b4]
mov ecx, dword [rsp + 0x310]
or ecx, r11d
sub r9d, r8d
not ecx
imul ecx, r14d
mov r8d, dword [rsp + 0x374]
add ecx, r9d
sub r8d, dword [rsp + 0x1d8]
mov r9d, dword [rsp + 0x1d8]
mov r11, qword [rsp + 0x450]
xor r9d, r11d
imul r9d, esi
add r9d, r8d
mov r8d, dword [rsp + 0x1d8]
or r8d, r11d
not r8d
mov r12d, edi
imul r8d, edi
add r8d, r9d
mov r9d, dword [rsp + 0x1d8]
not r9d
imul r9d, r14d
add r9d, r8d
mov r8, qword [rsp + 0x40]
shr r8, cl
and r8d, r9d
movzx ecx, byte [r13 + r8 + 0x250]
xor ecx, edx
movzx edx, byte [rsp + 0x34]
xor ecx, eax
movzx edi, byte [r13 + rdx + 0x254]
mov eax, dword [rsp + 0x1d4]
mov edx, dword [rsp + 0x3b0]
and eax, edx
xor edi, ecx
mov ecx, dword [rsp + 0x1d4]
or ecx, edx
add ecx, eax
mov eax, dword [rsp + 0x1d4]
not eax
or eax, edx
add eax, ecx
mov ecx, dword [rsp + 0x3ac]
sub ecx, eax
mov eax, dword [rsp + 0x1d4]
or eax, dword [rsp + 0x3a8]
imul eax, esi
add eax, ecx
lea rbp, [rbx + 0x20]
mov ecx, dword [rsp + 0x50]
dec ecx
mov dword [rsp + 0x50], ecx
cmp ecx, eax
ja 0x180001970
mov dword [rsp + 0x18], r15d
mov r9d, dword [rsp + 0xc]
mov rbx, qword [rsp + 0x48]
jmp 0x18000292a
mov eax, 0xffffffff
jmp 0x1800044c8
mov r9d, r14d
mov ebx, r10d
xor ebx, 0x29225206
mov edx, r10d
xor edx, 0x2922520e
mov eax, r10d
xor eax, 0x292252e1
mov qword [rsp + 0x250], rax
inc eax
mov qword [rsp + 0x278], rax
mov eax, r10d
xor eax, 0x29225216
mov ecx, r10d
xor ecx, 0x29225209
mov qword [rsp + 0x360], rcx
mov ecx, r10d
xor ecx, 0x2922531e
mov qword [rsp + 0x358], rcx
mov qword [rsp + 0x58], rax
inc eax
mov qword [rsp + 0x268], rax
mov eax, r10d
xor eax, 0xd6ddade3
mov dword [rsp + 0x14], eax
mov qword [rsp + 0x270], rdx
lea eax, [rdx + 1]
mov dword [rsp + 0x24], eax
mov qword [rsp + 0x48], rbx
mov eax, r10d
xor eax, 0xfd6bcac2
mov r13d, dword [rbp]
mov qword [rsp + 0x290], r13
mov edx, dword [rsp + 0x30c]
or edx, eax
mov r8d, dword [rsp + 0x30c]
or r8d, eax
mov r11d, dword [rsp + 0x30c]
not r11d
or r11d, eax
imul edx, esi
mov ecx, r10d
xor ecx, 0xc3
add ecx, ebx
add ecx, edx
not r8d
mov ebx, r12d
imul r8d, r12d
add ecx, r8d
sub ecx, r11d
mov dword [rsp + 0xc], r9d
mov eax, r9d
shr rax, cl
mov r12, qword [rsp + 0x348]
movzx eax, byte [r12 + rax + 0x248]
mov byte [rsp + 0x40], al
mov eax, r10d
xor eax, 0x3481ed70
mov ecx, dword [rsp + 0x1d0]
or ecx, eax
not ecx
mov edx, r10d
xor edx, 0xcb7e128f
or edx, dword [rsp + 0x1d0]
add edx, ecx
mov r8d, dword [rsp + 0x1d0]
not r8d
or r8d, eax
and eax, dword [rsp + 0x1d0]
not eax
add eax, edx
mov ecx, r10d
xor ecx, 0xc0
add ecx, dword [rsp + 0x270]
sub ecx, r8d
imul eax, esi
add ecx, eax
mov eax, r10d
xor eax, 0xcf9ff21b
mov edx, dword [rsp + 0x1cc]
or edx, eax
mov r8d, r10d
xor r8d, 0x30600de4
mov r11d, dword [rsp + 0x1cc]
xor r11d, r8d
or r8d, dword [rsp + 0x1cc]
imul r8d, esi
mov r14d, r10d
mov r10d, ebx
mov r9d, esi
mov rsi, qword [rsp + 0x278]
lea r15d, [rsi + rax]
and eax, dword [rsp + 0x1cc]
add eax, r8d
mov r8d, dword [rsp]
imul r11d, r8d
mov ebx, r8d
add r11d, r15d
not edx
imul edx, r10d
mov r15d, r10d
add r11d, edx
add r11d, eax
mov esi, dword [rsp + 0x18]
mov eax, esi
mov dword [rsp + 0x18], esi
shr eax, cl
and r11d, eax
movzx eax, byte [rsp + 0x40]
xor al, r13b
xor al, byte [r12 + r11 + 0x24c]
mov r11d, eax
mov eax, r14d
xor eax, 0x33f70ef2
mov ecx, dword [rsp + 0x1c8]
and ecx, eax
mov edx, dword [rsp + 0x1c8]
not edx
and edx, eax
add edx, ecx
mov ecx, dword [rsp + 0x1c8]
or ecx, eax
mov r8d, dword [rsp + 0x1c8]
not r8d
or r8d, eax
add r8d, ecx
imul edx, ebx
mov ecx, r14d
xor ecx, 0xf3
add ecx, dword [rsp + 0x58]
add ecx, edx
imul r8d, r9d
add ecx, r8d
mov eax, r14d
xor eax, 0x79b4b7ae
mov edx, dword [rsp + 0x43c]
and edx, eax
mov r8d, dword [rsp + 0x43c]
not r8d
and r8d, eax
add r8d, edx
mov edx, dword [rsp + 0x10]
shr edx, cl
mov rcx, qword [rsp + 0x250]
add eax, ecx
mov r10, rcx
mov qword [rsp + 0x250], rcx
sub eax, r8d
and eax, edx
xor r11b, byte [r12 + rax + 0x250]
mov eax, dword [rsp + 0x1c4]
not eax
mov ecx, r14d
xor ecx, 0xae735e05
and eax, ecx
mov edx, dword [rsp + 0x1c4]
or edx, ecx
add edx, eax
mov eax, dword [rsp + 0x1c4]
not eax
or eax, ecx
add eax, edx
mov edx, r14d
xor edx, 0x27804a28
add edx, r10d
sub edx, eax
and ecx, dword [rsp + 0x1c4]
not ecx
imul ecx, r9d
add edx, ecx
and edx, edi
xor r11b, byte [r12 + rdx + 0x254]
mov byte [rsp + 0x40], r11b
mov eax, r14d
xor eax, 0x55c3edbc
mov r10d, dword [rbp + 4]
mov qword [rsp + 0x50], r10
mov ecx, dword [rsp + 0x308]
xor ecx, eax
mov edx, r14d
xor edx, 0x43
mov qword [rsp + 0x368], rdx
mov r8, qword [rsp + 0x360]
add edx, r8d
add ecx, edx
mov edx, dword [rsp + 0x308]
not edx
imul edx, r9d
add ecx, edx
and eax, dword [rsp + 0x308]
not eax
mov r13d, ebx
imul eax, ebx
add ecx, eax
inc cl
mov eax, esi
shr rax, cl
movzx ebx, byte [r12 + rax + 0x248]
mov eax, dword [rsp + 0x304]
not eax
mov ecx, r14d
xor ecx, 0xea1b7e81
and eax, ecx
add eax, dword [rsp + 0x304]
mov r8d, dword [rsp + 0x304]
not r8d
or r8d, ecx
add r8d, eax
mov eax, r14d
xor eax, 0x7e
mov ecx, r14d
xor ecx, 0xc
add ecx, eax
imul r8d, r9d
add ecx, r8d
mov r8d, r14d
xor r8d, 0x7015ab40
mov eax, dword [rsp + 0x1c0]
xor eax, r8d
mov rdx, qword [rsp + 0x278]
lea r11d, [rdx + r8]
or r8d, dword [rsp + 0x1c0]
imul r8d, r13d
mov esi, dword [rsp + 0x1c0]
xor esi, r14d
xor esi, 0x8fea54bf
imul esi, r9d
add esi, r8d
imul eax, r15d
add eax, r11d
add eax, dword [rsp + 0x1c0]
add eax, esi
mov r13d, dword [rsp + 0x10]
mov r8d, r13d
shr r8d, cl
and eax, r8d
xor bl, r10b
xor bl, byte [r12 + rax + 0x24c]
mov eax, r14d
xor eax, 0xbcec9f61
mov ecx, dword [rsp + 0x300]
xor ecx, eax
mov r8d, dword [rsp + 0x300]
not r8d
or r8d, eax
add r8d, ecx
mov rcx, qword [rsp + 0x58]
add ecx, eax
and eax, dword [rsp + 0x300]
sub ecx, r8d
not eax
imul eax, r9d
mov r8d, r14d
xor r8d, 0x99715163
mov r11d, dword [rsp + 0x1bc]
and r8d, dword [rsp + 0x1bc]
add ecx, eax
mov eax, r14d
xor eax, 0x99715160
add eax, edx
sub eax, r8d
mov r8d, r14d
xor r8d, 0x668eae9c
mov esi, dword [rsp + 0x1bc]
xor esi, r8d
add eax, esi
and r11d, r8d
imul r11d, r15d
add eax, r11d
and r8d, dword [rsp + 0x1bc]
not r8d
imul r8d, r9d
add eax, r8d
mov r8d, edi
shr r8d, cl
and eax, r8d
xor bl, byte [r12 + rax + 0x250]
mov eax, dword [rsp + 0x1b8]
not eax
mov ecx, r14d
xor ecx, 0x2eba7805
and eax, ecx
mov r8d, r14d
xor r8d, 0xd14587fa
mov r11d, dword [rsp + 0x1b8]
or ecx, dword [rsp + 0x1b8]
and r11d, r8d
xor r8d, dword [rsp + 0x1b8]
add r8d, eax
imul r11d, r15d
mov eax, r14d
xor eax, 0x2eba7802
mov rdx, qword [rsp + 0x250]
add eax, edx
add eax, r11d
sub eax, ecx
imul r8d, r9d
add eax, r8d
mov r10d, dword [rsp + 0xc]
and eax, r10d
xor bl, byte [r12 + rax + 0x254]
mov byte [rsp + 0x80], bl
mov eax, r14d
xor eax, 0x13
mov ebx, dword [rbp + 8]
mov qword [rsp + 0x280], rbx
mov r8d, dword [rsp + 0x1b4]
mov r11d, dword [rsp + 0x1b4]
xor r11d, eax
or eax, dword [rsp + 0x1b4]
mov ecx, r14d
xor ecx, 0xa16c2aec
mov esi, ecx
and esi, dword [rsp + 0x1b4]
imul eax, r9d
add esi, eax
or r8d, ecx
mov rax, qword [rsp + 0x48]
add ecx, eax
inc ecx
imul r11d, dword [rsp]
add ecx, r11d
not r8d
imul r8d, r15d
add ecx, r8d
add ecx, esi
mov eax, r13d
shr rax, cl
movzx esi, byte [r12 + rax + 0x248]
mov eax, r14d
xor eax, 0x4f
mov ecx, r14d
xor ecx, 0x2922520f
mov dword [rsp + 0x134], ecx
add eax, ecx
sub eax, dword [rsp + 0x2fc]
mov r8d, r14d
xor r8d, 0xb1
or r8d, dword [rsp + 0x2fc]
imul r8d, r15d
add r8d, eax
mov ecx, dword [rsp + 0x2fc]
xor ecx, r14d
xor ecx, 0x4e
imul ecx, r9d
add ecx, r8d
mov eax, r14d
xor eax, 0x9af9624a
mov r8d, dword [rsp + 0x2f8]
and r8d, eax
or eax, dword [rsp + 0x2f8]
mov r11d, dword [rsp + 0x2f8]
not r11d
add r11d, r8d
mov r8d, r14d
xor r8d, 0x65069db5
add r8d, dword [rsp + 0x358]
add r8d, eax
mov r13d, edi
shr edi, cl
imul r11d, r9d
lea ecx, [r11 + r8]
inc ecx
and ecx, edi
xor sil, bl
xor sil, byte [r12 + rcx + 0x24c]
mov edi, esi
mov r8d, dword [rsp + 0x1b0]
not r8d
mov ecx, r14d
xor ecx, 0xeada3bf6
and r8d, ecx
mov r11d, dword [rsp + 0x1b0]
or r11d, ecx
add r11d, r8d
mov r8d, dword [rsp + 0x1b0]
or r8d, ecx
not r8d
add r8d, r11d
and ecx, dword [rsp + 0x1b0]
mov esi, r14d
xor esi, 6
mov qword [rsp + 0x68], rsi
mov r11, qword [rsp + 0x268]
add r11d, esi
add ecx, r11d
imul r8d, r9d
add ecx, r8d
mov r8d, r14d
xor r8d, 0xa75d4ab
mov r11d, dword [rsp + 0x2f4]
mov esi, dword [rsp + 0x2f4]
xor esi, r8d
add esi, r11d
lea r11d, [rdx + r8]
or r8d, dword [rsp + 0x2f4]
mov eax, dword [rsp]
imul r8d, eax
add r8d, r11d
imul esi, r9d
add r8d, esi
mov r11d, r10d
shr r11d, cl
and r8d, r11d
xor dil, byte [r12 + r8 + 0x250]
mov ecx, r14d
xor ecx, 0xc36d9452
mov r8d, dword [rsp + 0x1ac]
and r8d, ecx
mov r11d, r14d
xor r11d, 0x3c926bad
mov esi, dword [rsp + 0x1ac]
xor ecx, dword [rsp + 0x1ac]
xor esi, r11d
imul ecx, r9d
and r11d, dword [rsp + 0x1ac]
add r11d, ecx
mov ecx, r14d
xor ecx, 0xc36d9453
mov rbx, qword [rsp + 0x278]
add ecx, ebx
sub ecx, r8d
imul esi, r15d
add ecx, esi
add ecx, r11d
and ecx, dword [rsp + 0x18]
xor dil, byte [r12 + rcx + 0x254]
mov byte [rsp + 0x130], dil
mov r10d, dword [rbp + 0xc]
mov qword [rsp + 0x350], r10
mov r8d, dword [rsp + 0x2f0]
imul r8d, r9d
mov ecx, r14d
xor ecx, 0x55ea92df
mov r11d, dword [rsp + 0x2f0]
xor r11d, ecx
mov esi, dword [rsp + 0x2f0]
and esi, ecx
mov edx, r14d
xor edx, 0x29225204
mov dword [rsp + 0x30], edx
add ecx, edx
add ecx, r8d
sub ecx, r11d
not esi
imul esi, r15d
add ecx, esi
shr r13, cl
movzx edx, byte [r12 + r13 + 0x248]
mov ecx, r14d
xor ecx, 0xc2
mov r13, qword [rsp + 0x270]
add ecx, r13d
mov r8d, dword [rsp + 0x1a8]
sub ecx, dword [rsp + 0x1a8]
mov r11d, dword [rsp + 0x1a8]
not r11d
imul r11d, eax
add r11d, ecx
not r8d
mov esi, r14d
xor esi, 0x737e2c3d
and r8d, esi
mov ecx, dword [rsp + 0x1a8]
not ecx
or ecx, esi
add ecx, r8d
imul ecx, r9d
add ecx, r11d
mov r8d, r14d
xor r8d, 0x7308002e
mov r11d, dword [rsp + 0x1a4]
or r11d, r8d
mov esi, r14d
xor esi, 0x9d76f67c
add esi, ebx
sub esi, r11d
mov r11d, dword [rsp + 0x1a4]
xor r11d, r8d
mov edi, r14d
xor edi, 0x8cf7ffd1
or edi, dword [rsp + 0x1a4]
add esi, r11d
imul edi, r15d
and r8d, dword [rsp + 0x1a4]
add esi, edi
not r8d
imul r8d, r9d
add esi, r8d
mov eax, dword [rsp + 0xc]
shr eax, cl
and esi, eax
xor dl, r10b
xor dl, byte [r12 + rsi + 0x24c]
mov r8d, r14d
xor r8d, 0xbf
and r8d, dword [rsp + 0x2ec]
mov r11d, r14d
xor r11d, 0xac5cb140
mov ecx, dword [rsp + 0x2ec]
xor ecx, r11d
mov esi, dword [rsp + 0x2ec]
and esi, r11d
add esi, ecx
mov ecx, r14d
xor ecx, 0xdc206b5c
add ecx, r11d
add ecx, dword [rsp + 0x58]
sub ecx, r8d
add ecx, esi
mov r8d, dword [rsp + 0x1a0]
not r8d
mov r11d, r14d
xor r11d, 0x8187320d
and r8d, r11d
mov esi, r14d
xor esi, 0x7e78cdf2
mov edi, dword [rsp + 0x1a0]
or r11d, dword [rsp + 0x1a0]
and edi, esi
xor esi, dword [rsp + 0x1a0]
add esi, r8d
imul edi, r15d
mov r8d, r14d
xor r8d, 0x8187320a
mov rax, qword [rsp + 0x250]
add r8d, eax
add r8d, edi
sub r8d, r11d
add cl, 2
mov r10d, dword [rsp + 0x18]
shr r10d, cl
imul esi, r9d
add r8d, esi
and r8d, r10d
xor dl, byte [r12 + r8 + 0x250]
mov ecx, r14d
xor ecx, 0xd970a0b7
mov r8d, dword [rsp + 0x19c]
mov r11d, dword [rsp + 0x19c]
or r11d, ecx
mov esi, dword [rsp + 0x19c]
not esi
or esi, ecx
and ecx, dword [rsp + 0x19c]
not ecx
add ecx, r8d
mov r8d, r14d
xor r8d, 0xc987b74c
mov edi, dword [rsp]
imul r11d, edi
add r8d, eax
mov r10, rax
add r8d, r11d
sub r8d, esi
imul ecx, r9d
add r8d, ecx
and r8d, dword [rsp + 0x10]
xor dl, byte [r12 + r8 + 0x254]
mov r8d, r14d
xor r8d, 0x4a4b57d1
mov eax, dword [rbp + 0x10]
mov dword [rsp + 0x12c], eax
mov eax, dword [rsp + 0x198]
mov dword [rsp + 0x11c], eax
mov eax, dword [rsp + 0x198]
mov dword [rsp + 0x120], eax
mov eax, dword [rsp + 0x198]
mov dword [rsp + 0x128], eax
mov eax, dword [rsp + 0x198]
mov dword [rsp + 0x124], eax
mov r11d, dword [rsp + 0x194]
and r11d, r8d
mov esi, r14d
xor esi, 0xb5b4a82e
mov ecx, dword [rsp + 0x194]
not ecx
or ecx, esi
or r8d, dword [rsp + 0x194]
add ecx, r11d
lea r11d, [rsi + r13]
and esi, dword [rsp + 0x194]
not esi
add esi, r8d
imul ecx, edi
mov r13d, edi
add ecx, r11d
imul esi, r9d
add ecx, esi
mov r8d, dword [rsp + 0x190]
not r8d
mov r11d, r14d
xor r11d, 0x54aebe42
and r8d, r11d
mov esi, dword [rsp + 0x190]
mov edi, dword [rsp + 0x190]
mov ebx, dword [rsp + 0x190]
not ebx
or ebx, r11d
mov r11d, r14d
xor r11d, 0x54aebe43
add r11d, r10d
sub r11d, r8d
imul esi, r9d
add r11d, esi
not edi
imul edi, r15d
add r11d, edi
sub r11d, ebx
mov r8, qword [rsp + 0x50]
shr r8, cl
and r8d, r11d
movzx eax, byte [r12 + r8 + 0x148]
mov r15, r12
mov dword [rsp + 0x118], eax
mov eax, r14d
xor eax, 0xcecaa0fb
mov ecx, dword [rsp + 0x2e8]
xor ecx, eax
mov dword [rsp + 0x60], ecx
or eax, dword [rsp + 0x2e8]
mov dword [rsp + 0x114], eax
mov eax, dword [rsp + 0x2e8]
mov dword [rsp + 0x258], eax
mov r8d, dword [rsp + 0x2e4]
not r8d
mov r11d, r14d
xor r11d, 0x2a7f3078
and r8d, r11d
mov ecx, r14d
xor ecx, 0x79
mov eax, r14d
xor eax, 0x29225219
mov qword [rsp + 0x288], rax
add ecx, eax
inc ecx
sub ecx, r8d
mov r8d, dword [rsp + 0x2e4]
or r8d, r11d
xor r11d, dword [rsp + 0x2e4]
add ecx, r11d
not r8d
mov r12d, r9d
imul r8d, r9d
add ecx, r8d
mov r8d, r14d
xor r8d, 0xf7196006
mov r11d, dword [rsp + 0x2e0]
mov esi, dword [rsp + 0x2e0]
xor esi, r8d
mov edi, r14d
xor edi, 0x6aabc9d0
add edi, r8d
imul r11d, r9d
mov rbx, r10
add edi, ebx
add edi, r11d
sub edi, esi
mov r10, qword [rsp + 0x280]
mov r8, r10
shr r8, cl
mov ecx, r14d
xor ecx, 0x8e69ff9
or ecx, dword [rsp + 0x2e0]
mov esi, r13d
imul ecx, r13d
add edi, ecx
and r8d, edi
mov r13, r15
movzx eax, byte [r15 + r8 + 0x148]
mov dword [rsp + 0x110], eax
movzx eax, dl
mov ecx, dword [rsp + 0x18c]
mov dword [rsp + 0x100], ecx
mov ecx, dword [rsp + 0x18c]
mov dword [rsp + 0xf8], ecx
mov ecx, dword [rsp + 0x18c]
mov dword [rsp + 0x104], ecx
mov ecx, dword [rsp + 0x18c]
mov dword [rsp + 0xfc], ecx
movzx eax, byte [r15 + rax + 0x148]
mov dword [rsp + 0x18], eax
mov edx, r14d
xor edx, 0xe477ad39
mov eax, dword [rsp + 0x188]
mov dword [rsp + 0xf0], eax
mov eax, dword [rsp + 0x188]
mov dword [rsp + 0xec], eax
mov eax, dword [rsp + 0x188]
mov dword [rsp + 0xf4], eax
mov eax, dword [rsp + 0x188]
mov dword [rsp + 0xe8], eax
mov eax, dword [rbp + 0x14]
mov dword [rsp + 0x10c], eax
mov eax, dword [rsp + 0x184]
and eax, edx
mov dword [rsp + 0x78], eax
mov eax, r14d
xor eax, 0x1b8852c6
mov ecx, dword [rsp + 0x184]
or edx, dword [rsp + 0x184]
mov dword [rsp + 0x70], edx
or ecx, eax
mov dword [rsp + 0x2c], ecx
and eax, dword [rsp + 0x184]
mov dword [rsp + 0xe4], eax
mov eax, r14d
xor eax, 0x1c1bbb17
mov r8d, dword [rsp + 0x180]
or r8d, eax
mov ecx, r14d
xor ecx, 0xe8
mov r11d, dword [rsp + 0x180]
or ecx, dword [rsp + 0x180]
imul ecx, r9d
and eax, dword [rsp + 0x180]
add eax, ecx
mov ecx, r14d
xor ecx, 0xe3e444e9
not r11d
mov r15d, dword [rsp + 4]
imul r11d, r15d
add ecx, dword [rsp + 0x24]
add ecx, r11d
not r8d
imul r8d, esi
mov r9d, esi
add ecx, r8d
add ecx, eax
mov eax, r14d
xor eax, 0x6697c39c
mov r8d, dword [rsp + 0x17c]
and r8d, eax
mov r11d, dword [rsp + 0x17c]
mov esi, dword [rsp + 0x17c]
xor esi, eax
mov edi, dword [rsp + 0x17c]
not edi
or edi, eax
imul r11d, r15d
mov eax, r14d
xor eax, 0x6697c39d
add eax, ebx
add eax, r11d
imul r8d, dword [rsp + 0x14]
add eax, r8d
sub eax, esi
imul edi, r12d
add eax, edi
mov r8, r10
shr r8, cl
and r8d, eax
movzx eax, byte [r13 + r8 + 0x148]
mov dword [rsp + 0x10], eax
mov eax, r14d
xor eax, 0x3f097a9
mov ecx, r14d
xor ecx, 0x5eade44d
mov edx, r14d
xor edx, 0xb2
mov r8d, dword [rsp + 0x178]
mov r10d, dword [rsp + 0x178]
xor r10d, edx
mov dword [rsp + 0xd4], r10d
or edx, dword [rsp + 0x178]
mov dword [rsp + 0xe0], edx
or r8d, ecx
mov dword [rsp + 0xd8], r8d
and ecx, dword [rsp + 0x178]
mov dword [rsp + 0xdc], ecx
mov rcx, qword [rsp + 0x268]
add ecx, eax
and eax, dword [rsp + 0x174]
add eax, dword [rsp + 0x174]
sub ecx, eax
mov eax, r14d
xor eax, 0x56
or eax, dword [rsp + 0x174]
add ecx, dword [rsp + 0x174]
imul eax, r12d
add ecx, eax
mov eax, r14d
xor eax, 0x64358897
or eax, dword [rsp + 0x2dc]
mov r8d, r14d
xor r8d, 0x9bca7768
mov rdx, qword [rsp + 0x358]
add edx, r8d
xor r8d, dword [rsp + 0x2dc]
mov r11d, dword [rsp + 0x2dc]
not r11d
add r11d, r8d
not eax
mov esi, r9d
imul eax, r9d
add edx, eax
imul r11d, r12d
add edx, r11d
mov r10, qword [rsp + 0x350]
mov rax, r10
shr rax, cl
and eax, edx
mov r9, r13
movzx eax, byte [r13 + rax + 0x148]
mov dword [rsp + 0xc], eax
mov eax, dword [rsp + 0x170]
mov ecx, dword [rsp + 0x170]
imul ecx, esi
mov edx, r14d
xor edx, 0x1ac92ed7
mov r13d, dword [rsp + 0x24]
add edx, r13d
add edx, ecx
mov ecx, r14d
xor ecx, 0xe536d128
and eax, ecx
imul eax, r15d
add edx, eax
xor ecx, dword [rsp + 0x170]
mov dword [rsp + 0x298], ecx
add edx, dword [rsp + 0x170]
mov dword [rsp + 0xd0], edx
movzx eax, byte [rsp + 0x40]
movzx eax, byte [r9 + rax + 0x148]
mov rdx, r9
mov dword [rsp + 0x3c], eax
mov ecx, r14d
xor ecx, 0x675527f5
mov eax, dword [rsp + 0x16c]
mov dword [rsp + 0xc4], eax
mov eax, dword [rsp + 0x16c]
mov dword [rsp + 0xcc], eax
mov eax, dword [rsp + 0x16c]
mov dword [rsp + 0xc8], eax
mov eax, dword [rsp + 0x16c]
mov dword [rsp + 0xc0], eax
mov eax, dword [rbp + 0x18]
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x2d8]
and eax, ecx
mov dword [rsp + 0xbc], eax
mov eax, r14d
xor eax, 0xb
add eax, dword [rsp + 0x48]
sub eax, dword [rsp + 0x2d8]
mov dword [rsp + 0xb8], eax
xor ecx, dword [rsp + 0x2d8]
mov dword [rsp + 0x260], ecx
mov ecx, r14d
xor ecx, 0x16
mov eax, r14d
xor eax, 0x19
mov r8d, dword [rsp + 0x2d4]
or eax, dword [rsp + 0x2d4]
mov r9d, r12d
imul eax, r12d
add ecx, r13d
add ecx, eax
not r8d
mov eax, r14d
xor eax, 0x1179e2e6
and r8d, eax
imul r8d, r15d
add ecx, r8d
and eax, dword [rsp + 0x2d4]
add ecx, eax
mov eax, r14d
xor eax, 0x52d58a7f
and eax, dword [rsp + 0x438]
mov r8d, r14d
xor r8d, 0x52d58a7c
add r8d, ebx
sub r8d, eax
mov eax, r14d
xor eax, 0xad2a7580
or eax, dword [rsp + 0x438]
imul eax, r12d
add r8d, eax
mov rax, r10
shr rax, cl
and eax, r8d
movzx eax, byte [rdx + rax + 0x148]
mov dword [rsp + 0x38], eax
mov eax, r14d
xor eax, 0x3c078188
mov ecx, r14d
xor ecx, 0xcc
mov r8d, dword [rsp + 0x168]
mov dword [rsp + 0xb4], r8d
mov r8d, dword [rsp + 0x168]
mov dword [rsp + 0xb0], r8d
mov r8d, dword [rsp + 0x168]
mov dword [rsp + 0xa8], r8d
or ecx, dword [rsp + 0x168]
mov dword [rsp + 0xac], ecx
mov r8d, dword [rsp + 0x164]
or r8d, eax
mov ecx, dword [rsp + 0x164]
xor ecx, r14d
xor ecx, 0x77
mov r11d, dword [rsp + 0x164]
not r11d
or r11d, eax
and eax, dword [rsp + 0x164]
not eax
add eax, ecx
mov ecx, r14d
xor ecx, 0x32
add ecx, dword [rsp + 0x58]
sub ecx, r8d
mov r8d, esi
imul r11d, esi
add ecx, r11d
imul eax, r12d
add ecx, eax
mov eax, dword [rsp + 0x160]
imul eax, esi
mov r8d, r14d
xor r8d, 0x52d0f0d6
mov r13, qword [rsp + 0x278]
add r8d, r13d
add r8d, eax
mov eax, r14d
xor eax, 0xad2f0f29
mov r11d, dword [rsp + 0x160]
xor r11d, eax
sub r8d, r11d
or eax, dword [rsp + 0x160]
imul eax, r15d
add r8d, dword [rsp + 0x160]
add r8d, eax
mov r10, qword [rsp + 0x290]
mov rax, r10
shr rax, cl
and eax, r8d
mov ecx, r14d
xor ecx, 4
mov dword [rsp + 0x28], ecx
mov r8d, dword [rsp + 0x258]
or r8d, ecx
mov rcx, rdx
movzx eax, byte [rdx + rax + 0x148]
mov dword [rsp + 0x34], eax
mov eax, r14d
xor eax, 0xf7ba9c7c
mov r12d, dword [rsp + 0x15c]
not r12d
and r12d, eax
add r12d, dword [rsp + 0x15c]
mov edx, dword [rsp + 0x15c]
mov dword [rsp + 0x94], edx
and eax, dword [rsp + 0x15c]
mov dword [rsp + 0xa0], eax
movzx eax, byte [rsp + 0x80]
movzx eax, byte [rcx + rax + 0x148]
mov dword [rsp + 0x80], eax
mov ebx, r14d
xor ebx, 0x6acd21b7
mov edi, dword [rsp + 0x158]
and edi, ebx
mov eax, dword [rsp + 0x158]
mov dword [rsp + 0x98], eax
or ebx, dword [rsp + 0x158]
add r8d, dword [rsp + 0x60]
mov dword [rsp + 0x258], r8d
mov eax, dword [rsp + 0x158]
mov dword [rsp + 0x9c], eax
mov eax, dword [rbp + 0x1c]
mov dword [rsp + 0x108], eax
mov ecx, r14d
xor ecx, 0x7aa5bd5f
mov eax, dword [rsp + 0x2d0]
mov dword [rsp + 0x90], eax
mov eax, dword [rsp + 0x2d0]
mov dword [rsp + 0x8c], eax
mov r11d, dword [rsp + 0x2d0]
mov eax, dword [rsp + 0x154]
and eax, ecx
mov edx, r14d
xor edx, 0x7aa5bd5c
add edx, dword [rsp + 0x24]
mov esi, dword [rsp + 0x154]
add edx, dword [rsp + 0x154]
imul eax, dword [rsp + 0x14]
add edx, eax
mov eax, r14d
xor eax, 0xa0
mov dword [rsp + 0x60], eax
xor esi, eax
imul esi, r15d
or ecx, dword [rsp + 0x154]
imul ecx, r9d
add ecx, esi
add ecx, edx
mov rax, r10
shr rax, cl
mov ecx, r14d
xor ecx, 0x3e676cea
and ecx, dword [rsp + 0x150]
mov edx, dword [rsp + 0x78]
add dword [rsp + 0x70], edx
mov edx, r14d
xor edx, 0xc1989315
mov r8, r13
add r8d, edx
sub r8d, ecx
mov ecx, dword [rsp + 0x150]
mov esi, dword [rsp + 0x150]
xor esi, edx
add r8d, esi
not ecx
and ecx, edx
mov r13d, dword [rsp]
imul ecx, r13d
add r8d, ecx
and edx, dword [rsp + 0x150]
not edx
imul edx, r9d
mov ebp, r9d
add r8d, edx
and eax, r8d
mov r10, qword [rsp + 0x348]
movzx eax, byte [r10 + rax + 0x148]
mov dword [rsp + 0x78], eax
mov esi, r14d
xor esi, 9
mov r9d, r14d
xor r9d, 0x2836c66b
mov edx, r14d
xor edx, 0xd4f4850a
add edx, r9d
add edx, dword [rsp + 0x58]
sub edx, dword [rsp + 0x2cc]
mov r8d, dword [rsp + 0x2cc]
xor r8d, r9d
and r9d, dword [rsp + 0x2cc]
and esi, dword [rsp + 0x2c8]
add ebx, edi
imul esi, r13d
mov rax, qword [rsp + 0x288]
mov rcx, qword [rsp + 0x68]
add ecx, eax
inc ecx
mov edi, dword [rsp + 0x2c8]
add ecx, dword [rsp + 0x2c8]
add ecx, esi
xor edi, r14d
xor edi, 0xf6
imul edi, ebp
add ecx, edi
mov esi, r14d
xor esi, 0x66cf5dcc
mov edi, r14d
xor edi, 0x4907b244
add edi, esi
add edi, dword [rsp + 0x250]
sub edi, dword [rsp + 0x2c4]
mov eax, dword [rsp + 0x2c4]
xor eax, esi
imul eax, ebp
add eax, edi
mov rdi, qword [rsp + 0x50]
shr rdi, cl
and esi, dword [rsp + 0x2c4]
not esi
imul esi, r13d
add esi, eax
and edi, esi
movzx eax, byte [r10 + rdi + 0x148]
mov dword [rsp + 0x68], eax
mov eax, r14d
xor eax, 0xfb
or eax, dword [rsp + 0x2c0]
mov ecx, dword [rsp + 0x2c0]
mov edi, dword [rsp + 0x28]
xor ecx, edi
mov esi, dword [rsp + 0x2c0]
not esi
add esi, ecx
mov r10d, r14d
xor r10d, 0xd
add r10d, edi
imul eax, r15d
add r10d, eax
imul esi, ebp
add r10d, esi
mov dword [rsp + 0x28], r10d
imul r8d, ebp
add r8d, edx
not r9d
imul r9d, r13d
mov r10d, r13d
add r9d, r8d
mov dword [rsp + 0xa4], r9d
mov edi, r14d
xor edi, 0x7991773f
mov edx, dword [rsp + 0x8c]
xor edx, edi
and r11d, edi
add edi, dword [rsp + 0x30]
mov eax, dword [rsp + 0x90]
imul eax, ebp
add edi, eax
sub edi, edx
not r11d
imul r11d, r15d
add edi, r11d
mov ecx, dword [rsp + 0x98]
imul ecx, r15d
mov r9d, r15d
mov r13d, r14d
xor r13d, 0xb4
mov r8, qword [rsp + 0x48]
add r13d, r8d
add r13d, ecx
sub r13d, ebx
mov eax, dword [rsp + 0x9c]
not eax
imul eax, ebp
add r13d, eax
mov ecx, dword [rsp + 0x94]
not ecx
add ecx, r12d
mov eax, r14d
xor eax, 0x80
add eax, dword [rsp + 0x24]
add eax, dword [rsp + 0xa0]
imul ecx, ebp
add eax, ecx
mov dword [rsp + 0x30], eax
mov ebx, r14d
xor ebx, 0x55ef2533
mov ecx, dword [rsp + 0xa8]
or ecx, ebx
mov eax, dword [rsp + 0xac]
imul eax, ebp
add eax, ecx
mov edx, dword [rsp + 0xb4]
and edx, ebx
mov ecx, dword [rsp + 0xb0]
xor ecx, ebx
imul edx, r10d
add ebx, dword [rsp + 0x268]
add ebx, edx
sub ebx, ecx
add ebx, eax
mov eax, dword [rsp + 0xbc]
imul eax, r15d
add eax, dword [rsp + 0xb8]
mov ecx, eax
mov eax, dword [rsp + 0x260]
imul eax, ebp
add eax, ecx
mov dword [rsp + 0x260], eax
mov eax, r14d
xor eax, 0x10948c1b
mov r11d, dword [rsp + 0xc4]
or r11d, eax
mov esi, dword [rsp + 0xc0]
and esi, eax
mov ecx, dword [rsp + 0xc8]
not ecx
or ecx, eax
mov edx, ecx
mov eax, dword [rsp + 0xcc]
xor eax, r14d
xor eax, 0xe4
mov ecx, eax
mov eax, esi
not eax
add eax, ecx
mov ecx, eax
mov r15d, r14d
xor r15d, 0x14
add r15d, r8d
sub r15d, r11d
imul edx, r10d
add r15d, edx
imul ecx, ebp
add r15d, ecx
mov ecx, dword [rsp + 0x298]
imul ecx, ebp
add ecx, dword [rsp + 0xd0]
mov dword [rsp + 0x298], ecx
mov r12d, r14d
xor r12d, 0xa1521bb3
mov ecx, dword [rsp + 0xd4]
imul ecx, r9d
mov rsi, qword [rsp + 0x58]
add r12d, esi
add r12d, ecx
mov ecx, dword [rsp + 0xd8]
not ecx
imul ecx, r10d
add r12d, ecx
sub r12d, dword [rsp + 0xe0]
mov ecx, dword [rsp + 0xdc]
not ecx
imul ecx, ebp
add r12d, ecx
mov ecx, dword [rsp + 0xe4]
not ecx
add ecx, dword [rsp + 0x70]
mov edx, r14d
xor edx, 0xac
mov qword [rsp + 0x70], rdx
add edx, r8d
sub edx, dword [rsp + 0x2c]
imul ecx, ebp
add edx, ecx
mov dword [rsp + 0x2c], edx
mov edx, dword [rsp + 0xec]
xor edx, r14d
mov eax, r14d
xor eax, 0xbba73792
mov ecx, dword [rsp + 0xe8]
or ecx, eax
xor edx, 0x92
lea r11d, [r8 + rax]
inc r11d
add r11d, edx
mov eax, dword [rsp + 0xf0]
imul eax, r9d
add r11d, eax
mov eax, dword [rsp + 0xf4]
not eax
imul eax, ebp
add r11d, eax
mov eax, ecx
imul eax, r10d
add r11d, eax
mov edx, r14d
xor edx, 0x76fe7355
mov eax, dword [rsp + 0xf8]
xor eax, edx
imul eax, dword [rsp + 0x14]
mov ecx, eax
mov eax, dword [rsp + 0x100]
imul eax, ebp
mov r8d, dword [rsp + 0xfc]
and r8d, edx
add edx, dword [rsp + 0x270]
add edx, eax
add edx, ecx
mov eax, dword [rsp + 0x104]
xor eax, r14d
xor eax, 0xaa
imul eax, r10d
add edx, eax
mov eax, r8d
not eax
imul eax, r9d
add edx, eax
mov eax, dword [rsp + 0x114]
not eax
add eax, dword [rsp + 0x258]
mov r8d, r14d
xor r8d, 0xd2
imul eax, ebp
mov dword [rsp + 0x370], ebp
mov ecx, r14d
xor ecx, 5
mov dword [rsp + 0x14], ecx
add r8d, ecx
add r8d, esi
add r8d, eax
xor r14d, 0x57cfaaa3
mov ecx, dword [rsp + 0x11c]
and ecx, r14d
mov r9d, dword [rsp + 0x120]
or r9d, r14d
not r9d
add r9d, ecx
mov ecx, dword [rsp + 0x124]
and ecx, r14d
mov r10d, dword [rsp + 0x128]
not r10d
or r10d, r14d
not ecx
add ecx, r9d
mov eax, dword [rsp + 0x60]
add eax, dword [rsp + 0x48]
sub eax, r10d
imul ecx, ebp
add eax, ecx
mov dword [rsp + 0x60], eax
mov ecx, dword [rsp + 0x28]
shl dword [rsp + 0x68], cl
mov ecx, dword [rsp + 0xa4]
shl dword [rsp + 0x78], cl
mov ecx, edi
mov r14, qword [rsp + 0x350]
shr r14, cl
mov ecx, r13d
shl dword [rsp + 0x80], cl
mov ecx, dword [rsp + 0x30]
shl dword [rsp + 0x34], cl
mov ecx, ebx
mov r9d, dword [rsp + 0x38]
shl r9d, cl
mov ecx, dword [rsp + 0x260]
mov rdi, qword [rsp + 0x280]
shr rdi, cl
mov ecx, r15d
mov r13d, dword [rsp + 0x3c]
shl r13d, cl
mov ecx, dword [rsp + 0x298]
mov eax, dword [rsp + 0xc]
shl eax, cl
mov ecx, r12d
mov r15d, dword [rsp + 0x10]
shl r15d, cl
mov ecx, dword [rsp + 0x2c]
mov rsi, qword [rsp + 0x50]
shr rsi, cl
mov ecx, r11d
mov r10d, dword [rsp + 0x18]
shl r10d, cl
mov r11d, dword [rsp + 0x12c]
xor r10d, r11d
mov dword [rsp + 0x18], r10d
mov ecx, edx
mov ebp, dword [rsp + 0x110]
shl ebp, cl
mov ecx, r8d
mov r10d, dword [rsp + 0x118]
shl r10d, cl
mov ecx, dword [rsp + 0x60]
mov rdx, qword [rsp + 0x290]
shr rdx, cl
xor ebp, r11d
xor r10d, r11d
mov rcx, qword [rsp + 0x348]
xor r11b, byte [rcx + rdx + 0x148]
mov r12d, dword [rsp + 0x10c]
xor r13d, r12d
mov dword [rsp + 0x3c], r13d
xor eax, r12d
mov dword [rsp + 0xc], eax
xor r15d, r12d
mov dword [rsp + 0x10], r15d
xor r12b, byte [rcx + rsi + 0x148]
mov eax, dword [rsp + 0x40]
xor dword [rsp + 0x80], eax
xor dword [rsp + 0x34], eax
xor r9d, eax
mov dword [rsp + 0x38], r9d
xor al, byte [rcx + rdi + 0x148]
mov dword [rsp + 0x40], eax
movzx eax, byte [rcx + r14 + 0x148]
mov byte [rsp + 0x50], al
movzx eax, byte [rsp + 0x130]
movzx r14d, byte [rcx + rax + 0x148]
mov ebx, dword [rsp + 8]
mov eax, ebx
xor eax, 0x4fce802d
mov r9d, dword [rsp + 0x14c]
mov ecx, dword [rsp + 0x14c]
or ecx, eax
mov esi, dword [rsp + 0x14c]
xor esi, eax
add esi, ecx
xor r9d, eax
mov edi, dword [rsp + 0x14c]
not edi
or edi, eax
mov ecx, ebx
xor ecx, 0xb0317fd2
add ecx, dword [rsp + 0x48]
sub ecx, r9d
add ecx, esi
mov edx, dword [rsp + 0x370]
imul edi, edx
add ecx, edi
mov rdi, qword [rsp + 0x448]
mov byte [rdi], r11b
mov eax, ebx
xor eax, 0x707dae08
add eax, dword [rsp + 0x268]
mov r9d, dword [rsp + 0x148]
mov esi, dword [rsp + 0x148]
imul esi, edx
add eax, esi
not r9d
mov esi, ebx
xor esi, 0x707dae0b
and r9d, esi
xor esi, dword [rsp + 0x148]
add eax, esi
mov r8d, dword [rsp]
imul r9d, r8d
add eax, r9d
mov r9d, dword [rsp + 0x148]
not r9d
mov r13d, dword [rsp + 4]
imul r9d, r13d
add eax, r9d
add cl, 2
shl r14d, cl
mov ecx, eax
shr r10d, cl
mov byte [rdi + 1], r10b
mov eax, ebx
xor eax, 0x6a3d679d
mov r9d, dword [rsp + 0x144]
mov ecx, dword [rsp + 0x144]
and ecx, eax
mov esi, dword [rsp + 0x144]
not esi
add esi, ecx
not r9d
mov ecx, ebx
xor ecx, 0x95c29862
and r9d, ecx
imul r9d, r8d
or eax, dword [rsp + 0x144]
mov r15, qword [rsp + 0x270]
add ecx, r15d
add ecx, r9d
sub ecx, eax
imul esi, edx
add ecx, esi
shr ebp, cl
mov byte [rdi + 2], bpl
mov eax, ebx
xor eax, 0x4e46dbe2
mov ecx, dword [rsp + 0x2bc]
and ecx, eax
mov r9d, dword [rsp + 0x2bc]
mov esi, dword [rsp + 0x2bc]
not esi
or esi, eax
add esi, ecx
mov ecx, ebx
xor ecx, 0xe3
add ecx, dword [rsp + 0x360]
xor r9d, ebx
xor r9d, 0x1d
imul r9d, edx
add ecx, r9d
sub ecx, esi
mov eax, dword [rsp + 0x18]
shr eax, cl
mov byte [rdi + 3], al
mov byte [rdi + 4], r12b
mov r9d, ebx
xor r9d, 0x92c011b1
mov r11, qword [rsp + 0x288]
mov ecx, r11d
add ecx, r9d
sub ecx, dword [rsp + 0x2b8]
mov eax, ebx
xor eax, 0xad
add eax, r11d
inc eax
mov esi, dword [rsp + 0x2b8]
xor esi, ebx
xor esi, 0x4e
imul esi, edx
add esi, ecx
mov ecx, dword [rsp + 0x2b8]
not ecx
or ecx, r9d
imul ecx, r8d
add ecx, esi
mov r9d, dword [rsp + 0x10]
shr r9d, cl
mov byte [rdi + 5], r9b
mov r9d, ebx
xor r9d, 0xecc42862
mov ecx, dword [rsp + 0x2b4]
mov esi, dword [rsp + 0x2b4]
or esi, r9d
not esi
and r9d, dword [rsp + 0x2b4]
add esi, ecx
not r9d
add r9d, esi
mov ecx, ebx
xor ecx, 0x63
add ecx, dword [rsp + 0x134]
imul r9d, edx
add ecx, r9d
mov r9d, dword [rsp + 0xc]
shr r9d, cl
mov byte [rdi + 6], r9b
mov ecx, ebx
xor ecx, 8
add ecx, dword [rsp + 0x14]
mov r9d, ebx
xor r9d, 0xbb9346fb
mov esi, dword [rsp + 0x2b0]
xor esi, r9d
add ecx, esi
mov esi, dword [rsp + 0x2b0]
not esi
imul esi, edx
add ecx, esi
and r9d, dword [rsp + 0x2b0]
not r9d
imul r9d, r8d
add ecx, r9d
inc cl
mov r9d, dword [rsp + 0x3c]
shr r9d, cl
mov byte [rdi + 7], r9b
mov ecx, dword [rsp + 0x40]
mov byte [rdi + 8], cl
mov rcx, qword [rsp + 0x70]
and ecx, dword [rsp + 0x2ac]
imul ecx, r8d
mov r9, rcx
mov r10d, r8d
mov ecx, dword [rsp + 0x2ac]
add eax, dword [rsp + 0x2ac]
add eax, r9d
xor ecx, ebx
xor ecx, 0x53
imul ecx, edx
add eax, ecx
mov ecx, eax
mov eax, dword [rsp + 0x38]
shr eax, cl
mov byte [rdi + 9], al
mov eax, ebx
xor eax, 0xfdbb3b32
mov ecx, dword [rsp + 0x140]
mov r9d, dword [rsp + 0x140]
xor r9d, eax
add r9d, ecx
mov ecx, ebx
xor ecx, 0xca
add ecx, r15d
mov r11d, dword [rsp + 0x140]
not r11d
imul r11d, r13d
add ecx, r11d
imul r9d, edx
mov esi, edx
add ecx, r9d
and eax, dword [rsp + 0x140]
not eax
imul eax, r8d
add ecx, eax
mov eax, dword [rsp + 0x34]
shr eax, cl
mov byte [rdi + 0xa], al
mov eax, ebx
xor eax, 0x153d434c
mov rcx, qword [rsp + 0x48]
add eax, ecx
inc eax
mov ecx, ebx
xor ecx, 0xeac2bcb3
sub eax, dword [rsp + 0x13c]
mov r9d, dword [rsp + 0x13c]
xor r9d, ecx
imul r9d, r8d
add r9d, eax
mov eax, dword [rsp + 0x13c]
or eax, ecx
imul eax, r13d
xor ecx, dword [rsp + 0x13c]
add ecx, eax
mov r11d, dword [rsp + 0x108]
movzx edx, byte [rsp + 0x50]
xor dl, r11b
add ecx, r9d
mov eax, dword [rsp + 0x80]
shr eax, cl
mov byte [rdi + 0xb], al
mov byte [rdi + 0xc], dl
mov eax, ebx
xor eax, 0xbeace506
mov r8d, dword [rsp + 0x138]
or r8d, eax
mov ecx, dword [rsp + 0x138]
xor ecx, ebx
mov r9d, dword [rsp + 0x138]
not r9d
or r9d, eax
and eax, dword [rsp + 0x138]
xor ecx, 0xf9
not eax
add eax, ecx
mov ecx, ebx
xor ecx, 0x2e
add ecx, dword [rsp + 0x58]
sub ecx, r8d
imul r9d, r10d
add ecx, r9d
imul eax, esi
add ecx, eax
mov eax, dword [rsp + 0x78]
xor eax, r11d
mov r9d, r11d
shr eax, cl
mov byte [rdi + 0xd], al
mov eax, ebx
xor eax, 0x863f91bd
mov r8d, dword [rsp + 0x2a8]
xor r8d, eax
or eax, dword [rsp + 0x2a8]
not eax
imul eax, r10d
mov ecx, ebx
xor ecx, 0x11
add ecx, dword [rsp + 0x368]
sub ecx, r8d
mov r8d, dword [rsp + 0x2a8]
not r8d
imul r8d, esi
add ecx, r8d
mov r8d, r11d
mov r9d, dword [rsp + 0x68]
xor r9d, r11d
add ecx, eax
shr r9d, cl
xor r14d, r11d
mov byte [rdi + 0xe], r9b
mov eax, ebx
xor eax, 0x5e82f162
mov ecx, dword [rsp + 0x2a4]
xor ecx, ebx
xor ecx, 0x9d
mov r8d, dword [rsp + 0x2a4]
mov r9d, dword [rsp + 0x2a4]
and r9d, eax
not r9d
add r9d, ecx
imul r9d, esi
not r8d
or r8d, eax
xor ebx, 7
add ebx, eax
sub ebx, r8d
add ebx, r9d
mov ecx, ebx
shr r14d, cl
mov byte [rdi + 0xf], r14b
xor eax, eax
add rsp, 0x480
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret