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

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x38
movzx r10d, byte [rcx + 0x60]
mov r14, rcx
movzx ebp, byte [rcx]
movzx eax, byte [rcx + 0x40]
mov esi, ebp
movzx r11d, byte [rcx + 0x20]
sub esi, eax
mov edi, eax
shl edi, 4
lea ebx, [rax + rbp]
add edi, ebp
shl eax, 4
lea r9d, [r10 + r11]
sub ebp, eax
lea r15d, [r9 + rbx]
mov eax, r10d
sub ebx, r9d
shl eax, 4
add eax, r11d
mov dword [rsp + 8], ebx
shl eax, 2
movzx r8d, al
sar eax, 8
sub r8d, eax
shl r11d, 4
mov eax, r10d
mov edx, r11d
shl eax, 4
sub edx, eax
lea r12d, [r8 + rdi]
sub edi, r8d
lea eax, [r11 + r10]
mov dword [rsp + 0x98], edi
movzx edi, byte [r14 + 0x10]
movzx r10d, byte [r14 + 0x30]
lea r13d, [rdx + rsi]
shl eax, 2
sub esi, edx
movzx ecx, al
sar eax, 8
sub ecx, eax
mov dword [rsp + 0x18], esi
lea eax, [rcx + rbp]
sub ebp, ecx
movzx ecx, byte [r14 + 0x70]
mov dword [rsp + 0x88], eax
movzx eax, byte [r14 + 0x50]
mov r14d, edi
sub r14d, eax
mov dword [rsp], ebp
mov ebp, eax
lea r9d, [rcx + r10]
shl ebp, 4
lea esi, [rax + rdi]
add ebp, edi
shl eax, 4
sub edi, eax
mov eax, ecx
shl eax, 4
add eax, r10d
mov dword [rsp + 4], edi
shl eax, 2
movzx r8d, al
sar eax, 8
sub r8d, eax
shl r10d, 4
mov eax, ecx
mov edx, r10d
shl eax, 4
sub edx, eax
lea eax, [r10 + rcx]
shl eax, 2
lea r10d, [r9 + rsi]
movzx ecx, al
lea r11d, [r8 + rbp]
sar eax, 8
lea ebx, [rdx + r14]
sub ecx, eax
sub esi, r9d
add edi, ecx
sub ebp, r8d
mov r9d, dword [rsp + 8]
lea eax, [r10 + r15]
mov r8d, dword [rsp + 4]
sub r14d, edx
mov edx, dword [rsp + 0x88]
sub r8d, ecx
mov rcx, qword [rsp + 0x90]
sub r15d, r10d
mov dword [rsp + 0x24], eax
mov dword [rcx], eax
lea eax, [r12 + r11*2]
mov dword [rcx + 4], eax
mov dword [rsp + 0xc], eax
lea eax, [rbx*4]
add eax, r13d
mov dword [rcx + 8], eax
mov dword [rsp + 0x10], eax
lea eax, [rdx + rdi*8]
mov rdx, qword [rsp + 0x90]
mov dword [rcx + 0xc], eax
mov r10, rdx
mov dword [rsp + 0x14], eax
mov eax, esi
shl eax, 4
mov dword [rdx + 0x20], r15d
add eax, r9d
mov dword [rcx + 0x10], eax
lea rax, [rcx + 0x14]
mov ecx, ebp
shl esi, 4
shl ecx, 5
sub r9d, esi
add ecx, dword [rsp + 0x98]
mov dword [rax], ecx
mov ecx, r14d
shl ecx, 6
add ecx, dword [rsp + 0x18]
mov dword [rdx + 0x18], ecx
mov ecx, r8d
shl ecx, 7
add ecx, dword [rsp]
mov dword [rdx + 0x1c], ecx
lea ecx, [r11 + r11]
sub r12d, ecx
mov dword [r10 + 0x30], r9d
mov dword [rdx + 0x24], r12d
lea ecx, [rbx*4]
sub r13d, ecx
shl ebp, 5
mov dword [rdx + 0x28], r13d
lea ecx, [rdi*8]
mov edx, dword [rsp + 0x88]
sub edx, ecx
shl r14d, 6
mov ecx, dword [rsp + 0x98]
sub ecx, ebp
mov dword [r10 + 0x2c], edx
mov dword [r10 + 0x34], ecx
mov ecx, dword [rsp + 0x18]
sub ecx, r14d
shl r8d, 7
mov r14, qword [rsp + 0x80]
mov dword [r10 + 0x38], ecx
mov ecx, dword [rsp]
sub ecx, r8d
mov dword [r10 + 0x3c], ecx
movzx ebp, byte [r14 + 8]
movzx ecx, byte [r14 + 0x48]
mov esi, ebp
movzx edx, byte [r14 + 0x68]
mov edi, ecx
movzx r11d, byte [r14 + 0x28]
sub esi, ecx
shl edi, 4
lea ebx, [rcx + rbp]
add edi, ebp
shl ecx, 4
sub ebp, ecx
lea r10d, [rdx + r11]
mov ecx, edx
shl ecx, 4
movzx r12d, byte [r14 + 0x18]
lea r13d, [r10 + rbx]
add ecx, r11d
sub ebx, r10d
shl ecx, 2
movzx r9d, cl
sar ecx, 8
sub r9d, ecx
shl r11d, 4
mov ecx, edx
mov dword [rsp + 8], ebx
shl ecx, 4
mov r8d, r11d
sub r8d, ecx
lea ecx, [r11 + rdx]
movzx r11d, byte [r14 + 0x38]
shl ecx, 2
movzx edx, cl
sar ecx, 8
sub edx, ecx
lea ecx, [r9 + rdi]
mov dword [rsp + 4], ecx
sub edi, r9d
lea ecx, [r8 + rsi]
mov dword [rsp + 0x88], edi
mov dword [rsp + 0x20], ecx
sub esi, r8d
lea ecx, [rdx + rbp]
mov dword [rsp + 0x98], esi
mov dword [rsp + 0x18], ecx
sub ebp, edx
movzx edx, byte [r14 + 0x78]
movzx ecx, byte [r14 + 0x58]
mov r14d, r12d
sub r14d, ecx
mov dword [rsp], ebp
mov ebp, ecx
lea r10d, [rdx + r11]
shl ebp, 4
lea esi, [rcx + r12]
add ebp, r12d
shl ecx, 4
sub r12d, ecx
mov ecx, edx
shl ecx, 4
add ecx, r11d
shl r11d, 4
shl ecx, 2
mov r8d, r11d
movzx r9d, cl
sar ecx, 8
sub r9d, ecx
mov ecx, edx
shl ecx, 4
sub r8d, ecx
lea ecx, [r11 + rdx]
shl ecx, 2
lea r11d, [r10 + rsi]
movzx edx, cl
lea ebx, [r9 + rbp]
sar ecx, 8
sub esi, r10d
mov r10d, dword [rsp + 8]
lea edi, [r8 + r14]
sub edx, ecx
sub ebp, r9d
mov r9, qword [rsp + 0x90]
sub r14d, r8d
mov ecx, esi
shl ecx, 4
add ecx, r10d
lea r15d, [rdx + r12]
mov dword [r9 + 0x50], ecx
sub r12d, edx
mov ecx, ebp
shl ecx, 5
add ecx, dword [rsp + 0x88]
mov dword [r9 + 0x54], ecx
mov ecx, r14d
shl ecx, 6
add ecx, dword [rsp + 0x98]
mov r8d, dword [rsp + 4]
mov edx, r8d
mov dword [r9 + 0x58], ecx
mov ecx, r12d
shl ecx, 7
add ecx, dword [rsp]
mov dword [r9 + 0x5c], ecx
mov ecx, r13d
sub ecx, r11d
shl esi, 4
mov dword [r9 + 0x60], ecx
sub r10d, esi
lea ecx, [rbx + rbx]
shl ebp, 5
sub edx, ecx
shl r14d, 6
mov dword [r9 + 0x64], edx
lea ecx, [rdi*4]
mov r9d, dword [rsp + 0x20]
mov edx, r9d
sub edx, ecx
shl r12d, 7
mov rcx, qword [rsp + 0x90]
mov dword [rcx + 0x68], edx
lea ecx, [r15*8]
mov edx, dword [rsp + 0x18]
sub edx, ecx
mov rcx, qword [rsp + 0x90]
mov rsi, rcx
mov dword [rcx + 0x6c], edx
lea edx, [r11 + r13]
mov dword [rcx + 0x70], r10d
mov r10d, dword [rsp + 0x24]
mov ecx, dword [rsp + 0x88]
sub ecx, ebp
mov dword [rsi + 0x74], ecx
mov ecx, dword [rsp + 0x98]
sub ecx, r14d
mov dword [rsi + 0x78], ecx
mov ecx, dword [rsp]
sub ecx, r12d
mov dword [rsi + 0x7c], ecx
lea ecx, [rdx + r10]
mov dword [rsi], ecx
sub r10d, edx
lea ecx, [r8 + rbx*2]
mov dword [rsi + 0x40], r10d
imul edx, ecx, 0x3c
lea r10, [0x1804776e0]
movzx ecx, dx
mov r8d, edx
mov edx, dword [rsp + 0xc]
sar r8d, 0x10
add r8d, ecx
lea ecx, [r8 + rdx]
sub edx, r8d
mov r8d, dword [rsp + 0x10]
mov dword [rsi + 4], ecx
lea ecx, [r9 + rdi*4]
add ecx, ecx
mov dword [rsi + 0x44], edx
mov edx, ecx
movzx ecx, cx
sar edx, 0x10
add edx, ecx
lea ecx, [rdx + r8]
sub r8d, edx
mov dword [rsi + 8], ecx
mov ecx, dword [rsp + 0x18]
mov dword [rsi + 0x48], r8d
lea ecx, [rcx + r15*8]
imul edx, ecx, 0x78
movzx ecx, dx
mov r8d, edx
mov edx, dword [rsp + 0x14]
sar r8d, 0x10
add r8d, ecx
lea ecx, [r8 + rdx]
sub edx, r8d
mov dword [rsi + 0x4c], edx
mov dword [rsi + 0xc], ecx
mov r9, rax
mov r11d, 3
nop word [rax + rax]
mov r8d, dword [r9 - 4]
lea r9, [r9 + 0x10]
mov ecx, dword [r10 - 0x20]
lea r10, [r10 + 0x80]
imul ecx, dword [r9 + 0x2c]
mov edx, ecx
movzx ecx, cx
sar edx, 0x10
add edx, ecx
lea ecx, [rdx + r8]
sub r8d, edx
mov dword [r9 - 0x14], ecx
mov ecx, dword [r10 - 0x80]
mov dword [r9 + 0x2c], r8d
imul ecx, dword [r9 + 0x30]
mov r8d, dword [r9 - 0x10]
mov edx, ecx
movzx ecx, cx
sar edx, 0x10
add edx, ecx
lea ecx, [rdx + r8]
sub r8d, edx
mov dword [r9 - 0x10], ecx
mov ecx, dword [r10 - 0x60]
mov dword [r9 + 0x30], r8d
imul ecx, dword [r9 + 0x34]
mov r8d, dword [r9 - 0xc]
mov edx, ecx
movzx ecx, cx
sar edx, 0x10
add edx, ecx
lea ecx, [rdx + r8]
sub r8d, edx
mov dword [r9 - 0xc], ecx
mov ecx, dword [r10 - 0x40]
mov dword [r9 + 0x34], r8d
imul ecx, dword [r9 + 0x38]
mov r8d, dword [r9 - 8]
mov edx, ecx
movzx ecx, cx
sar edx, 0x10
add edx, ecx
lea ecx, [rdx + r8]
sub r8d, edx
mov dword [r9 - 8], ecx
mov dword [r9 + 0x38], r8d
sub r11, 1
jne 0x18018fdf0
mov r15, qword [rsp + 0x80]
movzx edx, byte [r15 + 0x64]
movzx ebp, byte [r15 + 4]
movzx ecx, byte [r15 + 0x44]
mov esi, ebp
movzx r11d, byte [r15 + 0x24]
sub esi, ecx
mov edi, ecx
shl edi, 4
lea ebx, [rcx + rbp]
add edi, ebp
shl ecx, 4
lea r10d, [rdx + r11]
sub ebp, ecx
lea r14d, [r10 + rbx]
mov ecx, edx
sub ebx, r10d
shl ecx, 4
add ecx, r11d
mov dword [rsp + 0xc], ebx
shl ecx, 2
movzx r9d, cl
sar ecx, 8
sub r9d, ecx
shl r11d, 4
mov ecx, edx
mov r8d, r11d
shl ecx, 4
sub r8d, ecx
lea ecx, [rdx + r11]
shl ecx, 2
lea r13d, [r9 + rdi]
movzx edx, cl
sub edi, r9d
sar ecx, 8
sub edx, ecx
mov dword [rsp + 0x98], edi
lea ecx, [r8 + rsi]
sub esi, r8d
mov dword [rsp + 0x10], ecx
movzx ecx, byte [r15 + 0x54]
lea r11d, [rdx + rbp]
mov dword [rsp], esi
movzx esi, byte [r15 + 0x14]
sub ebp, edx
movzx edx, byte [r15 + 0x74]
mov r12d, esi
sub r12d, ecx
mov dword [rsp + 0x88], r11d
movzx r11d, byte [r15 + 0x34]
mov r15d, ecx
mov dword [rsp + 0x18], ebp
lea ebp, [rcx + rsi]
shl ecx, 4
shl r15d, 4
lea r10d, [rdx + r11]
add r15d, esi
sub esi, ecx
mov ecx, edx
shl ecx, 4
add ecx, r11d
mov dword [rsp + 0x14], esi
shl ecx, 2
movzx r9d, cl
sar ecx, 8
sub r9d, ecx
shl r11d, 4
mov ecx, edx
mov r8d, r11d
shl ecx, 4
sub r8d, ecx
lea ecx, [rdx + r11]
shl ecx, 2
lea r11d, [r10 + rbp]
movzx edx, cl
lea ebx, [r9 + r15]
sar ecx, 8
lea edi, [r8 + r12]
sub edx, ecx
add esi, edx
sub ebp, r10d
mov r10, qword [rsp + 0x90]
lea ecx, [r11 + r14]
mov dword [rsp + 0x24], ecx
sub r12d, r8d
mov r8d, dword [rsp + 0x88]
sub r15d, r9d
mov r9d, dword [rsp + 0x14]
sub r14d, r11d
mov dword [r10 + 0x80], ecx
sub r9d, edx
mov edx, dword [rsp + 0x10]
lea ecx, [rbx*2]
add ecx, r13d
mov dword [r10 + 0x84], ecx
mov dword [rsp + 0x20], ecx
lea ecx, [rdx + rdi*4]
mov dword [r10 + 0x88], ecx
mov dword [rsp + 8], ecx
lea ecx, [r8 + rsi*8]
mov r8, qword [rsp + 0x90]
mov dword [r10 + 0x8c], ecx
mov r11, r8
mov r10d, dword [rsp + 0xc]
mov dword [rsp + 4], ecx
mov ecx, ebp
shl ecx, 4
add ecx, r10d
mov dword [r8 + 0xa0], r14d
mov r14, qword [rsp + 0x80]
mov dword [r8 + 0x90], ecx
mov ecx, r15d
shl ecx, 5
add ecx, dword [rsp + 0x98]
mov dword [r8 + 0x94], ecx
mov ecx, r12d
shl ecx, 6
add ecx, dword [rsp]
mov dword [r8 + 0x98], ecx
mov ecx, r9d
shl ecx, 7
add ecx, dword [rsp + 0x18]
mov dword [r8 + 0x9c], ecx
lea ecx, [rbx + rbx]
sub r13d, ecx
shl ebp, 4
mov dword [r8 + 0xa4], r13d
lea ecx, [rdi*4]
sub edx, ecx
shl r15d, 5
mov dword [r8 + 0xa8], edx
lea ecx, [rsi*8]
mov r8d, dword [rsp + 0x88]
sub r10d, ebp
sub r8d, ecx
mov dword [r11 + 0xb0], r10d
mov ecx, dword [rsp + 0x98]
sub ecx, r15d
mov dword [r11 + 0xac], r8d
mov dword [r11 + 0xb4], ecx
mov ecx, dword [rsp]
shl r12d, 6
sub ecx, r12d
shl r9d, 7
mov dword [r11 + 0xb8], ecx
mov ecx, dword [rsp + 0x18]
sub ecx, r9d
mov dword [r11 + 0xbc], ecx
movzx ebp, byte [r14 + 0xc]
movzx ecx, byte [r14 + 0x4c]
mov esi, ebp
movzx edx, byte [r14 + 0x6c]
mov edi, ecx
movzx r11d, byte [r14 + 0x2c]
sub esi, ecx
shl edi, 4
lea ebx, [rcx + rbp]
add edi, ebp
shl ecx, 4
sub ebp, ecx
lea r10d, [rdx + r11]
mov ecx, edx
movzx r12d, byte [r14 + 0x1c]
lea r13d, [r10 + rbx]
shl ecx, 4
sub ebx, r10d
add ecx, r11d
mov dword [rsp + 0x14], ebx
shl ecx, 2
movzx r9d, cl
sar ecx, 8
sub r9d, ecx
shl r11d, 4
mov ecx, edx
mov r8d, r11d
shl ecx, 4
sub r8d, ecx
lea ecx, [rdx + r11]
movzx r11d, byte [r14 + 0x3c]
shl ecx, 2
movzx edx, cl
sar ecx, 8
sub edx, ecx
lea ecx, [r9 + rdi]
mov dword [rsp + 0x10], ecx
sub edi, r9d
lea ecx, [r8 + rsi]
mov dword [rsp + 0x80], edi
mov dword [rsp + 0xc], ecx
sub esi, r8d
lea ecx, [rdx + rbp]
mov dword [rsp + 0x88], esi
mov dword [rsp], ecx
sub ebp, edx
movzx edx, byte [r14 + 0x7c]
movzx ecx, byte [r14 + 0x5c]
mov r14d, r12d
sub r14d, ecx
mov dword [rsp + 0x98], ebp
mov ebp, ecx
lea r10d, [rdx + r11]
shl ebp, 4
lea esi, [rcx + r12]
add ebp, r12d
shl ecx, 4
sub r12d, ecx
mov ecx, edx
shl ecx, 4
add ecx, r11d
shl r11d, 4
shl ecx, 2
mov r8d, r11d
movzx r9d, cl
sar ecx, 8
sub r9d, ecx
mov ecx, edx
shl ecx, 4
sub r8d, ecx
lea ecx, [rdx + r11]
shl ecx, 2
lea r11d, [r10 + rsi]
movzx edx, cl
lea ebx, [r9 + rbp]
sar ecx, 8
sub esi, r10d
mov r10d, dword [rsp + 0x14]
lea edi, [r8 + r14]
sub edx, ecx
sub ebp, r9d
mov r9, qword [rsp + 0x90]
mov ecx, esi
shl ecx, 4
sub r14d, r8d
add ecx, r10d
lea r15d, [rdx + r12]
sub r12d, edx
lea rdx, [r9 + 0xd0]
mov dword [rdx], ecx
mov ecx, ebp
shl ecx, 5
add ecx, dword [rsp + 0x80]
mov dword [r9 + 0xd4], ecx
mov qword [rsp + 0x18], rdx
mov r8d, dword [rsp + 0x10]
mov ecx, r14d
shl ecx, 6
mov edx, r8d
add ecx, dword [rsp + 0x88]
mov dword [r9 + 0xd8], ecx
mov ecx, r12d
shl ecx, 7
add ecx, dword [rsp + 0x98]
mov dword [r9 + 0xdc], ecx
mov ecx, r13d
sub ecx, r11d
shl esi, 4
mov dword [r9 + 0xe0], ecx
sub r10d, esi
lea ecx, [rbx + rbx]
shl ebp, 5
sub edx, ecx
shl r14d, 6
mov dword [r9 + 0xe4], edx
lea ecx, [rdi*4]
mov r9d, dword [rsp + 0xc]
mov edx, r9d
sub edx, ecx
shl r12d, 7
mov rcx, qword [rsp + 0x90]
mov dword [rcx + 0xe8], edx
lea ecx, [r15*8]
mov edx, dword [rsp]
sub edx, ecx
mov rcx, qword [rsp + 0x90]
mov rsi, rcx
mov dword [rcx + 0xec], edx
lea edx, [r11 + r13]
mov dword [rcx + 0xf0], r10d
mov r10d, dword [rsp + 0x24]
mov ecx, dword [rsp + 0x80]
sub ecx, ebp
mov dword [rsi + 0xf4], ecx
mov ecx, dword [rsp + 0x88]
sub ecx, r14d
mov dword [rsi + 0xf8], ecx
mov ecx, dword [rsp + 0x98]
sub ecx, r12d
mov dword [rsi + 0xfc], ecx
lea ecx, [rdx + r10]
mov dword [rsi + 0x80], ecx
sub r10d, edx
lea ecx, [r8 + rbx*2]
mov dword [rsi + 0xc0], r10d
imul edx, ecx, 0x3c
movzx ecx, dx
mov r8d, edx
mov edx, dword [rsp + 0x20]
sar r8d, 0x10
add r8d, ecx
lea ecx, [r8 + rdx]
sub edx, r8d
mov r8d, dword [rsp + 8]
mov dword [rsi + 0x84], ecx
lea ecx, [r9 + rdi*4]
add ecx, ecx
mov dword [rsi + 0xc4], edx
mov edx, ecx
movzx ecx, cx
sar edx, 0x10
add edx, ecx
lea ecx, [rdx + r8]
sub r8d, edx
mov dword [rsi + 0x88], ecx
mov ecx, dword [rsp]
mov dword [rsi + 0xc8], r8d
lea ecx, [rcx + r15*8]
imul edx, ecx, 0x78
movzx ecx, dx
mov r8d, edx
mov edx, dword [rsp + 4]
sar r8d, 0x10
add r8d, ecx
lea ecx, [r8 + rdx]
mov dword [rsi + 0x8c], ecx
mov r9, qword [rsp + 0x18]
lea r10, [0x1804776e0]
sub edx, r8d
mov dword [rsi + 0xcc], edx
mov esi, 3
nop word [rax + rax]
mov r8d, dword [r9 - 0x40]
lea r9, [r9 + 0x10]
mov ecx, dword [r10 - 0x20]
lea r10, [r10 + 0x80]
imul ecx, dword [r9 - 0x10]
mov edx, ecx
movzx ecx, cx
sar edx, 0x10
add edx, ecx
lea ecx, [rdx + r8]
sub r8d, edx
mov dword [r9 - 0x50], ecx
mov ecx, dword [r10 - 0x80]
mov dword [r9 - 0x10], r8d
imul ecx, dword [r9 - 0xc]
mov r8d, dword [r9 - 0x4c]
mov edx, ecx
movzx ecx, cx
sar edx, 0x10
add edx, ecx
lea ecx, [rdx + r8]
sub r8d, edx
mov dword [r9 - 0x4c], ecx
mov ecx, dword [r10 - 0x60]
mov dword [r9 - 0xc], r8d
imul ecx, dword [r9 - 8]
mov r8d, dword [r9 - 0x48]
mov edx, ecx
movzx ecx, cx
sar edx, 0x10
add edx, ecx
lea ecx, [rdx + r8]
sub r8d, edx
mov dword [r9 - 0x48], ecx
mov ecx, dword [r10 - 0x40]
mov dword [r9 - 8], r8d
imul ecx, dword [r9 - 4]
mov r8d, dword [r9 - 0x44]
mov edx, ecx
movzx ecx, cx
sar edx, 0x10
add edx, ecx
lea ecx, [rdx + r8]
sub r8d, edx
mov dword [r9 - 0x44], ecx
mov dword [r9 - 4], r8d
sub rsi, 1
jne 0x1801903d0
mov rsi, qword [rsp + 0x90]
lea r9, [0x180477690]
mov r10d, 7
mov edx, dword [rsi + 0x80]
mov r8d, dword [rsi]
lea ecx, [rdx + r8]
sub r8d, edx
mov dword [rsi], ecx
mov dword [rsi + 0x80], r8d
imul ecx, dword [rsi + 0x84], 0x2e
mov r8d, dword [rsi + 4]
mov edx, ecx
movzx ecx, cx
sar edx, 0x10
add edx, ecx
lea ecx, [rdx + r8]
sub r8d, edx
mov dword [rsi + 4], ecx
imul ecx, dword [rsi + 0x88], 0x3c
mov dword [rsi + 0x84], r8d
mov r8d, dword [rsi + 8]
mov edx, ecx
movzx ecx, cx
sar edx, 0x10
add edx, ecx
lea ecx, [rdx + r8]
sub r8d, edx
mov dword [rsi + 8], ecx
imul ecx, dword [rsi + 0x8c], 0xbe
mov dword [rsi + 0x88], r8d
mov r8d, dword [rsi + 0xc]
mov edx, ecx
movzx ecx, cx
sar edx, 0x10
add edx, ecx
lea ecx, [rdx + r8]
sub r8d, edx
mov dword [rsi + 0x8c], r8d
mov dword [rsi + 0xc], ecx
mov r8d, dword [rax - 4]
lea rax, [rax + 0x10]
mov ecx, dword [r9 - 0x10]
lea r9, [r9 + 0x40]
imul ecx, dword [rax + 0x6c]
mov edx, ecx
movzx ecx, cx
sar edx, 0x10
add edx, ecx
lea ecx, [rdx + r8]
sub r8d, edx
mov dword [rax - 0x14], ecx
mov dword [rax + 0x6c], r8d
mov r8d, dword [rax - 0x10]
mov ecx, dword [rax + 0x70]
imul ecx, dword [r9 - 0x40]
mov edx, ecx
movzx ecx, cx
sar edx, 0x10
add edx, ecx
lea ecx, [rdx + r8]
sub r8d, edx
mov dword [rax - 0x10], ecx
mov ecx, dword [r9 - 0x30]
mov dword [rax + 0x70], r8d
imul ecx, dword [rax + 0x74]
mov r8d, dword [rax - 0xc]
mov edx, ecx
movzx ecx, cx
sar edx, 0x10
add edx, ecx
lea ecx, [rdx + r8]
sub r8d, edx
mov dword [rax - 0xc], ecx
mov ecx, dword [r9 - 0x20]
mov dword [rax + 0x74], r8d
imul ecx, dword [rax + 0x78]
mov r8d, dword [rax - 8]
mov edx, ecx
movzx ecx, cx
sar edx, 0x10
add edx, ecx
lea ecx, [rdx + r8]
sub r8d, edx
mov dword [rax - 8], ecx
mov dword [rax + 0x78], r8d
sub r10, 1
jne 0x180190520
add rsp, 0x38
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret