Function at 0x14031b920
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
push rbp
push rsi
mov eax, 0x78
call fcn.14038d7d0
sub rsp, rax
lea eax, [rdx + 0x100]
mov ebp, edx
cdq
mov rsi, rcx
and edx, 0x1f
add eax, edx
sar eax, 5
test rcx, rcx
je 0x14031c5cd
test r8, r8
je 0x14031c5cd
lea edx, [rbp - 0x80]
test edx, 0xffffff3f
jne 0x14031c5c1
cmp ebp, 0x140
je 0x14031c5c1
mov dword [r8 + 0x110], eax
lea r11, [0x140000000]
mov qword [rsp + 0x70], rbx
lea eax, [rbp - 0x80]
cdq
mov qword [rsp + 0x68], rdi
mov qword [rsp + 0x60], r12
and edx, 0x3f
movzx r12d, byte [rsi + 8]
add eax, edx
sar eax, 6
movsxd rcx, eax
lea rax, [0x1404280d0]
mov qword [rsp + 0x58], r13
movzx r13d, byte [rsi + 0xc]
mov qword [rsp + 0x50], r14
movzx r14d, byte [rsi]
mov qword [rsp + 0x48], r15
movzx r15d, byte [rsi + 4]
shl r14d, 8
shl r15d, 8
shl r12d, 8
shl r13d, 8
shl rcx, 4
add rcx, rax
movzx eax, byte [rsi + 1]
xor r14d, eax
mov qword [rsp + 0x18], rcx
movzx eax, byte [rsi + 2]
shl r14d, 8
xor r14d, eax
movzx eax, byte [rsi + 3]
shl r14d, 8
xor r14d, eax
movzx eax, byte [rsi + 5]
xor r15d, eax
mov dword [rsp + 0x24], r14d
movzx eax, byte [rsi + 6]
mov edi, r14d
xor edi, dword [rcx]
shl r15d, 8
xor r15d, eax
movzx eax, byte [rsi + 7]
shl r15d, 8
xor r15d, eax
movzx eax, byte [rsi + 9]
xor r12d, eax
mov dword [rsp + 0x28], r15d
movzx eax, byte [rsi + 0xa]
mov r10d, r15d
xor r10d, dword [rcx + 4]
shl r12d, 8
xor r12d, eax
movzx eax, byte [rsi + 0xb]
shl r12d, 8
xor r12d, eax
movzx eax, byte [rsi + 0xd]
xor r13d, eax
mov dword [rsp + 0x2c], r12d
movzx eax, byte [rsi + 0xe]
mov r8d, r12d
xor r8d, dword [rcx + 8]
shl r13d, 8
xor r13d, eax
mov edx, r8d
movzx eax, byte [rsi + 0xf]
shl r13d, 8
xor r13d, eax
shr rdx, 0x18
mov eax, r8d
mov dword [rsp + 0x30], r13d
shr eax, 0x10
mov r9d, r13d
xor r9d, dword [rcx + 0xc]
mov ebx, dword [r11 + rdx*4 + 0x428120]
movzx ecx, al
mov eax, r8d
shr eax, 8
xor ebx, dword [r11 + rcx*4 + 0x428520]
movzx ecx, al
xor ebx, dword [r11 + rcx*4 + 0x428920]
movzx eax, r8b
mov edx, r9d
shr rdx, 0x18
xor ebx, dword [r11 + rax*4 + 0x428d20]
mov eax, r9d
shr eax, 0x10
mov r11d, dword [r11 + rdx*4 + 0x428120]
lea rdx, [0x140000000]
movzx ecx, al
mov eax, r9d
shr eax, 8
xor r11d, dword [rdx + rcx*4 + 0x428520]
movzx ecx, al
movzx eax, r9b
lea r9, [0x140000000]
xor r11d, dword [rdx + rcx*4 + 0x428920]
xor r11d, dword [r9 + rax*4 + 0x428d20]
mov eax, r10d
shr eax, 0x10
movzx ecx, al
mov eax, r10d
shr eax, 8
mov edx, r10d
shr rdx, 0x18
mov r8d, dword [r9 + rdx*4 + 0x428120]
xor r8d, dword [r9 + rcx*4 + 0x428520]
movzx ecx, al
movzx eax, r10b
mov edx, edi
shr rdx, 0x18
xor r8d, dword [r9 + rcx*4 + 0x428920]
xor r8d, dword [r9 + rax*4 + 0x428d20]
mov eax, edi
xor r8d, ebx
shr eax, 0x10
mov r9d, dword [r9 + rdx*4 + 0x428120]
lea rdx, [0x140000000]
movzx ecx, al
mov eax, edi
shr eax, 8
xor r9d, dword [rdx + rcx*4 + 0x428520]
movzx ecx, al
movzx eax, dil
xor r9d, dword [rdx + rcx*4 + 0x428920]
mov ecx, r11d
xor r9d, dword [rdx + rax*4 + 0x428d20]
xor ecx, r8d
xor r9d, r8d
xor r11d, ebx
xor r11d, r9d
xor r8d, r11d
mov edi, r11d
shr edi, 0x10
mov r10d, r8d
and r10d, 0xffff00ff
shr r8d, 8
shl r10d, 8
and r8d, 0xff00ff
xor r10d, r8d
shl r11d, 0x10
or edi, r11d
xor r10d, edi
xor r9d, r10d
bswap ecx
xor edi, ecx
xor ecx, r10d
xor edi, r9d
mov dword [rsp + 0x90], ecx
xor r10d, edi
cmp ebp, 0x80
jle 0x14031bc87
movzx eax, byte [rsi + 0x11]
movzx ebx, byte [rsi + 0x10]
movzx r8d, byte [rsi + 0x14]
shl ebx, 8
xor ebx, eax
shl r8d, 8
movzx eax, byte [rsi + 0x12]
shl ebx, 8
xor ebx, eax
movzx eax, byte [rsi + 0x13]
shl ebx, 8
xor ebx, eax
movzx eax, byte [rsi + 0x15]
xor r8d, eax
movzx eax, byte [rsi + 0x16]
shl r8d, 8
xor r8d, eax
movzx eax, byte [rsi + 0x17]
shl r8d, 8
xor r8d, eax
cmp ebp, 0xc0
jle 0x14031bc83
movzx eax, byte [rsi + 0x19]
movzx ecx, byte [rsi + 0x18]
movzx edx, byte [rsi + 0x1c]
shl ecx, 8
xor ecx, eax
shl edx, 8
movzx eax, byte [rsi + 0x1a]
shl ecx, 8
xor ecx, eax
movzx eax, byte [rsi + 0x1b]
shl ecx, 8
xor ecx, eax
movzx eax, byte [rsi + 0x1d]
xor edx, eax
movzx eax, byte [rsi + 0x1e]
shl edx, 8
xor edx, eax
movzx eax, byte [rsi + 0x1f]
shl edx, 8
xor edx, eax
jmp 0x14031bc90
xor ecx, ecx
jmp 0x14031bc8e
xor ecx, ecx
mov r8d, ecx
mov ebx, ecx
mov edx, ecx
xor edx, dword [rsp + 0x90]
xor ecx, edi
mov rax, qword [rsp + 0x18]
lea rdi, [0x140000000]
xor r8d, r10d
mov dword [rsp + 0x10], edx
mov r10d, r8d
mov dword [rsp + 0x20], ecx
xor ebx, r9d
mov dword [rsp + 0xc], r8d
xor r10d, dword [rax + 0x14]
mov r8d, ecx
xor r8d, dword [rax + 0x18]
mov r9d, edx
xor r9d, dword [rax + 0x1c]
mov edx, r8d
shr rdx, 0x18
mov dword [rsp + 8], ebx
xor ebx, dword [rax + 0x10]
mov eax, r8d
shr eax, 0x10
mov ebp, dword [rdi + rdx*4 + 0x428920]
movzx ecx, al
mov eax, r8d
shr eax, 8
mov edx, r9d
shr rdx, 0x18
xor ebp, dword [rdi + rcx*4 + 0x428d20]
movzx ecx, al
movzx eax, r8b
mov r11d, dword [rdi + rdx*4 + 0x428920]
mov edx, r10d
xor ebp, dword [rdi + rcx*4 + 0x428120]
xor ebp, dword [rdi + rax*4 + 0x428520]
mov eax, r9d
shr eax, 0x10
movzx ecx, al
mov eax, r9d
shr eax, 8
shr rdx, 0x18
xor r11d, dword [rdi + rcx*4 + 0x428d20]
movzx ecx, al
mov r8d, dword [rdi + rdx*4 + 0x428920]
movzx eax, r9b
mov edx, ebx
xor r11d, dword [rdi + rcx*4 + 0x428120]
shr rdx, 0x18
xor r11d, dword [rdi + rax*4 + 0x428520]
mov eax, r10d
shr eax, 0x10
movzx ecx, al
mov eax, r10d
mov esi, dword [rdi + rdx*4 + 0x428920]
shr eax, 8
xor r8d, dword [rdi + rcx*4 + 0x428d20]
movzx ecx, al
movzx eax, r10b
xor r8d, dword [rdi + rcx*4 + 0x428120]
xor r8d, dword [rdi + rax*4 + 0x428520]
mov eax, ebx
shr eax, 0x10
xor r8d, ebp
movzx ecx, al
xor ebp, r11d
xor r11d, r8d
mov eax, ebx
shr eax, 8
mov r9d, r11d
shr r9d, 8
and r11d, 0xffff00ff
xor esi, dword [rdi + rcx*4 + 0x428d20]
and r9d, 0xff00ff
movzx ecx, al
movzx eax, bl
shl r11d, 8
xor esi, dword [rdi + rcx*4 + 0x428120]
xor esi, dword [rdi + rax*4 + 0x428520]
xor esi, r8d
xor ebp, esi
xor r9d, r11d
mov edi, ebp
xor edi, r8d
ror esi, 0x10
lea r8, [0x140000000]
mov eax, r15d
bswap edi
xor edi, ebp
xor ebp, r9d
xor r9d, edi
xor esi, edi
xor r9d, r13d
xor ebp, esi
xor eax, ebp
mov dword [rsp], r9d
xor edi, eax
xor ebp, r12d
mov rax, qword [rsp + 0x18]
xor esi, r14d
mov r14d, r9d
mov dword [rsp + 0xa8], ebp
mov r13d, ebp
mov dword [rsp + 4], esi
mov r15d, esi
mov dword [rsp + 0x90], edi
xor r9d, dword [rax + 0x2c]
mov r12d, edi
xor ebp, dword [rax + 0x28]
xor esi, dword [rax + 0x20]
xor edi, dword [rax + 0x24]
mov eax, ebp
shr eax, 0x10
movzx ecx, al
mov eax, ebp
shr eax, 8
mov edx, ebp
shr rdx, 0x18
mov ebx, dword [r8 + rdx*4 + 0x428120]
xor ebx, dword [r8 + rcx*4 + 0x428520]
movzx ecx, al
mov edx, r9d
shr rdx, 0x18
movzx eax, bpl
xor ebx, dword [r8 + rcx*4 + 0x428920]
mov r11d, dword [r8 + rdx*4 + 0x428120]
xor ebx, dword [r8 + rax*4 + 0x428d20]
mov eax, r9d
shr eax, 0x10
movzx ecx, al
mov eax, r9d
shr eax, 8
mov edx, edi
shr rdx, 0x18
xor r11d, dword [r8 + rcx*4 + 0x428520]
movzx ecx, al
movzx eax, r9b
mov r10d, dword [r8 + rdx*4 + 0x428120]
mov edx, esi
xor r11d, dword [r8 + rcx*4 + 0x428920]
xor r11d, dword [r8 + rax*4 + 0x428d20]
mov eax, edi
shr eax, 0x10
movzx ecx, al
mov eax, edi
shr eax, 8
shr rdx, 0x18
xor r10d, dword [r8 + rcx*4 + 0x428520]
movzx ecx, al
mov r9d, dword [r8 + rdx*4 + 0x428120]
movzx eax, dil
xor r10d, dword [r8 + rcx*4 + 0x428920]
xor r10d, dword [r8 + rax*4 + 0x428d20]
mov eax, esi
shr eax, 0x10
xor r10d, ebx
movzx ecx, al
mov eax, esi
shr eax, 8
xor r9d, dword [r8 + rcx*4 + 0x428520]
movzx ecx, al
movzx eax, sil
xor r9d, dword [r8 + rcx*4 + 0x428920]
xor r9d, dword [r8 + rax*4 + 0x428d20]
mov edi, dword [rsp + 0x28]
xor r9d, r10d
mov esi, dword [rsp + 0x2c]
mov r8d, r11d
mov ebp, dword [rsp + 0x30]
xor r8d, r10d
xor r11d, ebx
shr r15d, 0x13
mov ebx, dword [rsp + 0xc]
xor r11d, r9d
xor r10d, r11d
shl r14d, 0xd
mov edx, r10d
mov ecx, r11d
shr ecx, 0x10
and edx, 0xffff00ff
shl edx, 8
xor r15d, r14d
shr r10d, 8
shl r11d, 0x10
and r10d, 0xff00ff
or ecx, r11d
xor edx, r10d
mov r10d, dword [rsp + 8]
xor edx, ecx
mov r11d, dword [rsp + 0x10]
xor r9d, edx
bswap r8d
mov eax, r8d
xor r15d, r10d
xor eax, ecx
mov ecx, r10d
xor ecx, r9d
xor eax, r9d
mov r9d, dword [rsp + 0x20]
mov dword [rsp + 0x18], ecx
mov ecx, ebx
xor ecx, eax
xor ecx, edx
mov dword [rsp + 0xc], ecx
mov ecx, r9d
xor ecx, eax
mov eax, r11d
mov dword [rsp + 8], ecx
xor eax, r8d
mov r8d, dword [rsp + 0x24]
xor eax, edx
mov rdx, qword [rsp + 0xa0]
mov ecx, r10d
shr ecx, 0x13
mov dword [rsp + 0x10], eax
mov eax, r11d
shl eax, 0xd
xor ecx, eax
mov dword [rdx + 0x10], r15d
xor ecx, r8d
mov eax, ebx
mov dword [rdx], ecx
mov ecx, r10d
shl ecx, 0xd
shr eax, 0x13
xor ecx, eax
mov eax, ebx
xor ecx, edi
shl eax, 0xd
mov dword [rdx + 4], ecx
mov ecx, r9d
shr ecx, 0x13
xor ecx, eax
mov eax, r11d
xor ecx, esi
shr eax, 0x13
mov dword [rdx + 8], ecx
mov ecx, r9d
shl ecx, 0xd
xor ecx, eax
mov eax, dword [rsp + 4]
xor ecx, ebp
shl eax, 0xd
shr r12d, 0x13
mov dword [rdx + 0xc], ecx
mov r15d, dword [rsp + 0xc]
xor eax, r12d
mov r12d, dword [rsp + 0x10]
xor eax, ebx
mov r14d, dword [rsp + 8]
mov ecx, dword [rsp]
shr ecx, 0x13
mov dword [rdx + 0x14], eax
mov eax, dword [rsp + 0x90]
shl eax, 0xd
shr r13d, 0x13
xor eax, r13d
mov r13d, dword [rsp + 0x18]
xor eax, r9d
mov dword [rdx + 0x18], eax
mov eax, dword [rsp + 0xa8]
shl eax, 0xd
xor ecx, eax
mov eax, r12d
xor ecx, r11d
shl eax, 0xd
mov dword [rdx + 0x1c], ecx
mov ecx, r13d
shr ecx, 0x13
xor ecx, eax
mov eax, r15d
xor ecx, dword [rsp + 4]
mov dword [rdx + 0x20], ecx
mov ecx, r13d
shl ecx, 0xd
shr eax, 0x13
xor ecx, eax
mov eax, r15d
xor ecx, dword [rsp + 0x90]
mov dword [rdx + 0x24], ecx
mov ecx, r14d
shr ecx, 0x13
shl eax, 0xd
xor ecx, eax
mov eax, r12d
xor ecx, dword [rsp + 0xa8]
mov dword [rdx + 0x28], ecx
mov ecx, r14d
shl ecx, 0xd
shr eax, 0x13
xor ecx, eax
mov eax, ebp
xor ecx, dword [rsp]
mov dword [rdx + 0x2c], ecx
mov ecx, r8d
shr ecx, 0x13
shl eax, 0xd
xor ecx, eax
mov eax, edi
xor ecx, r13d
shr eax, 0x13
mov dword [rdx + 0x30], ecx
mov ecx, r8d
shl ecx, 0xd
xor ecx, eax
mov eax, edi
xor ecx, r15d
shl eax, 0xd
mov dword [rdx + 0x34], ecx
mov ecx, esi
shr ecx, 0x13
xor ecx, eax
mov eax, ebp
xor ecx, r14d
shr eax, 0x13
mov dword [rdx + 0x38], ecx
mov ecx, esi
shl ecx, 0xd
xor ecx, eax
lea eax, [r11 + r11]
xor ecx, r12d
mov dword [rdx + 0x3c], ecx
mov ecx, r10d
shr ecx, 0x1f
xor ecx, eax
xor ecx, r8d
mov dword [rdx + 0x40], ecx
mov eax, ebx
shr eax, 0x1f
lea ecx, [r10 + r10]
xor ecx, eax
lea eax, [rbx + rbx]
xor ecx, edi
mov dword [rdx + 0x44], ecx
mov ecx, r9d
shr ecx, 0x1f
xor ecx, eax
mov eax, r11d
xor ecx, esi
shr eax, 0x1f
mov dword [rdx + 0x48], ecx
lea ecx, [r9 + r9]
xor ecx, eax
mov eax, dword [rsp]
xor ecx, ebp
add eax, eax
mov dword [rdx + 0x4c], ecx
mov ecx, dword [rsp + 4]
shr ecx, 0x1f
xor ecx, eax
mov eax, dword [rsp + 4]
xor ecx, r10d
mov dword [rdx + 0x50], ecx
lea ecx, [rax + rax]
mov eax, dword [rsp + 0x90]
shr eax, 0x1f
xor ecx, eax
mov eax, dword [rsp + 0x90]
xor ecx, ebx
mov dword [rdx + 0x54], ecx
lea ecx, [rax + rax]
mov eax, dword [rsp + 0xa8]
shr eax, 0x1f
xor ecx, eax
mov eax, dword [rsp + 0xa8]
xor ecx, r9d
add eax, eax
mov dword [rdx + 0x58], ecx
mov ecx, dword [rsp]
shr ecx, 0x1f
xor ecx, eax
lea eax, [r12 + r12]
xor ecx, r11d
mov dword [rdx + 0x5c], ecx
mov ecx, r13d
shr ecx, 0x1f
xor ecx, eax
mov eax, r15d
xor ecx, dword [rsp + 4]
mov dword [rdx + 0x60], ecx
lea ecx, [r13*2]
shr eax, 0x1f
xor ecx, eax
lea eax, [r15 + r15]
xor ecx, dword [rsp + 0x90]
mov dword [rdx + 0x64], ecx
mov ecx, r14d
shr ecx, 0x1f
xor ecx, eax
mov eax, r12d
xor ecx, dword [rsp + 0xa8]
mov dword [rdx + 0x68], ecx
lea ecx, [r14 + r14]
shr eax, 0x1f
xor ecx, eax
lea eax, [rbp*2]
xor ecx, dword [rsp]
mov dword [rdx + 0x6c], ecx
mov ecx, r8d
shr ecx, 0x1f
xor ecx, eax
mov eax, edi
xor ecx, r13d
shr eax, 0x1f
mov dword [rdx + 0x70], ecx
lea ecx, [r8 + r8]
xor ecx, eax
xor ecx, r15d
lea eax, [rdi + rdi]
mov dword [rdx + 0x74], ecx
mov ecx, esi
shr ecx, 0x1f
xor ecx, eax
mov eax, ebp
xor ecx, r14d
shr eax, 0x1f
mov dword [rdx + 0x78], ecx
lea ecx, [rsi + rsi]
xor ecx, eax
mov eax, ebx
xor ecx, r12d
shl eax, 0x1d
mov dword [rdx + 0x7c], ecx
mov ecx, r9d
shr ecx, 3
xor ecx, eax
mov eax, r11d
xor ecx, r8d
shr eax, 3
mov dword [rdx + 0x80], ecx
mov ecx, r9d
shl ecx, 0x1d
xor ecx, eax
mov eax, r11d
xor ecx, edi
shl eax, 0x1d
mov dword [rdx + 0x84], ecx
mov ecx, r10d
shr ecx, 3
xor ecx, eax
mov eax, ebx
xor ecx, esi
shr eax, 3
mov dword [rdx + 0x88], ecx
mov ecx, r10d
shl ecx, 0x1d
xor ecx, eax
mov eax, dword [rsp + 0xa8]
xor ecx, ebp
shr eax, 3
mov dword [rdx + 0x8c], ecx
mov ecx, dword [rsp + 0x90]
shl ecx, 0x1d
xor ecx, eax
mov eax, dword [rsp + 0xa8]
xor ecx, r10d
shl eax, 0x1d
mov dword [rdx + 0x90], ecx
mov ecx, dword [rsp]
shr ecx, 3
xor ecx, eax
mov eax, dword [rsp]
xor ecx, ebx
shl eax, 0x1d
mov dword [rdx + 0x94], ecx
mov ecx, dword [rsp + 4]
shr ecx, 3
xor ecx, eax
mov eax, dword [rsp + 0x90]
xor ecx, r9d
shr eax, 3
mov dword [rdx + 0x98], ecx
mov ecx, dword [rsp + 4]
shl ecx, 0x1d
xor ecx, eax
mov eax, r15d
xor ecx, r11d
shl eax, 0x1d
mov dword [rdx + 0x9c], ecx
mov ecx, r14d
shr ecx, 3
xor ecx, eax
mov eax, r12d
xor ecx, dword [rsp + 4]
mov dword [rdx + 0xa0], ecx
mov ecx, r14d
shl ecx, 0x1d
shr eax, 3
xor ecx, eax
mov eax, r12d
xor ecx, dword [rsp + 0x90]
mov dword [rdx + 0xa4], ecx
mov ecx, r13d
shr ecx, 3
shl eax, 0x1d
xor ecx, eax
mov eax, r15d
xor ecx, dword [rsp + 0xa8]
mov dword [rdx + 0xa8], ecx
mov ecx, r13d
shl ecx, 0x1d
shr eax, 3
xor ecx, eax
mov eax, edi
xor ecx, dword [rsp]
mov dword [rdx + 0xac], ecx
mov ecx, esi
shr ecx, 3
shl eax, 0x1d
xor ecx, eax
mov eax, ebp
xor ecx, r13d
shr eax, 3
mov dword [rdx + 0xb0], ecx
mov ecx, esi
shl ecx, 0x1d
xor ecx, eax
mov eax, ebp
xor ecx, r15d
shl eax, 0x1d
mov dword [rdx + 0xb4], ecx
mov ecx, r8d
shr ecx, 3
xor ecx, eax
mov eax, edi
xor ecx, r14d
shr eax, 3
mov r14d, dword [rsp + 0x98]
mov dword [rdx + 0xb8], ecx
mov ecx, r8d
shl ecx, 0x1d
xor ecx, eax
mov eax, ebx
xor ecx, r12d
shr eax, 1
mov dword [rdx + 0xbc], ecx
add rdx, 0xc0
mov ecx, r10d
shl ecx, 0x1f
xor ecx, eax
mov eax, ebx
xor ecx, r8d
shl eax, 0x1f
mov dword [rdx], ecx
mov ecx, r9d
shr ecx, 1
xor ecx, eax
mov eax, r11d
xor ecx, edi
shr eax, 1
mov dword [rdx + 4], ecx
mov ecx, r9d
shl ecx, 0x1f
xor ecx, eax
mov eax, r11d
xor ecx, esi
shl eax, 0x1f
mov dword [rdx + 8], ecx
mov ecx, r10d
shr ecx, 1
xor ecx, eax
xor ecx, ebp
mov dword [rdx + 0xc], ecx
cmp r14d, 0x80
jle 0x14031c4fd
mov ecx, dword [rsp + 4]
mov eax, dword [rsp + 0x90]
shl ecx, 0x1f
shr eax, 1
xor ecx, eax
mov eax, dword [rsp + 0xa8]
xor ecx, r10d
shr eax, 1
mov dword [rdx + 0x10], ecx
mov ecx, dword [rsp + 0x90]
shl ecx, 0x1f
xor ecx, eax
mov eax, dword [rsp + 0xa8]
xor ecx, ebx
shl eax, 0x1f
mov dword [rdx + 0x14], ecx
mov ecx, dword [rsp]
shr ecx, 1
xor ecx, eax
mov eax, dword [rsp]
xor ecx, r9d
shl eax, 0x1f
mov dword [rdx + 0x18], ecx
mov ecx, dword [rsp + 4]
shr ecx, 1
xor ecx, eax
mov eax, r15d
xor ecx, r11d
shr eax, 1
mov dword [rdx + 0x1c], ecx
add rdx, 0x20
mov ecx, r13d
shl ecx, 0x1f
xor ecx, eax
mov eax, r15d
xor ecx, dword [rsp + 4]
mov dword [rdx], ecx
mov ecx, dword [rsp + 8]
shr ecx, 1
shl eax, 0x1f
xor ecx, eax
mov eax, r12d
xor ecx, dword [rsp + 0x90]
mov dword [rdx + 4], ecx
mov ecx, dword [rsp + 8]
shl ecx, 0x1f
shr eax, 1
xor ecx, eax
mov eax, r12d
xor ecx, dword [rsp + 0xa8]
mov dword [rdx + 8], ecx
mov ecx, r13d
shr ecx, 1
shl eax, 0x1f
xor ecx, eax
xor ecx, dword [rsp]
mov dword [rdx + 0xc], ecx
cmp r14d, 0xc0
mov r14, qword [rsp + 0x50]
jle 0x14031c59f
mov ecx, edi
mov eax, r8d
shr ecx, 1
shl eax, 0x1f
xor ecx, eax
mov eax, edi
xor ecx, r13d
shl eax, 0x1f
mov dword [rdx + 0x10], ecx
mov ecx, esi
shr ecx, 1
xor ecx, eax
mov eax, ebp
xor ecx, r15d
shr eax, 1
mov dword [rdx + 0x14], ecx
mov ecx, esi
shl ecx, 0x1f
xor ecx, eax
mov eax, r8d
xor ecx, dword [rsp + 8]
shr eax, 1
mov dword [rdx + 0x18], ecx
mov ecx, ebp
shl ecx, 0x1f
xor ecx, eax
mov eax, ebx
shr eax, 0xd
xor ecx, r12d
mov dword [rdx + 0x1c], ecx
mov ecx, r10d
shl ecx, 0x13
xor ecx, eax
shl ebx, 0x13
mov eax, r9d
shr r10d, 0xd
shr eax, 0xd
xor ecx, r8d
xor eax, ebx
shl r9d, 0x13
xor eax, edi
mov dword [rdx + 0x20], ecx
mov dword [rdx + 0x24], eax
mov eax, r11d
shr eax, 0xd
xor r9d, eax
shl r11d, 0x13
xor r9d, esi
xor r10d, r11d
xor r10d, ebp
mov dword [rdx + 0x28], r9d
mov dword [rdx + 0x2c], r10d
mov r15, qword [rsp + 0x48]
xor eax, eax
mov r13, qword [rsp + 0x58]
mov r12, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x70]
add rsp, 0x78
pop rsi
pop rbp
ret
mov eax, 0xfffffffe
add rsp, 0x78
pop rsi
pop rbp
ret
mov eax, 0xffffffff
add rsp, 0x78
pop rsi
pop rbp
ret