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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x658
movdqa xmmword [rsp + 0x640], xmm6
mov rdi, r8
mov r13, rdx
mov rsi, rcx
lea rcx, [rsp + 0x220]
xor r9d, r9d
call fcn.1804ea640
cmp qword [rsp + 0x220], 0
mov r9, qword [rsp + 0x228]
mov r8, qword [rsp + 0x230]
mov rbx, qword [rsp + 0x238]
mov r14, qword [rsp + 0x240]
je 0x1804d613c
mov qword [rsi + 8], r9
mov qword [rsi + 0x10], r8
mov qword [rsi + 0x18], rbx
mov qword [rsi + 0x20], r14
mov qword [rsi], 3
jmp 0x1804d80a7
mov r15, qword [rsp + 0x248]
mov rcx, qword [rsp + 0x250]
mov qword [rsp + 0x360], rcx
movzx edx, word [rsp + 0x258]
mov word [rsp + 0x368], dx
movzx ebp, word [rsp + 0x25a]
mov r12d, dword [rsp + 0x25c]
mov rax, qword [rsp + 0x260]
mov qword [rsp + 0x4b0], r9
mov qword [rsp + 0x4b8], r8
mov qword [rsp + 0x4c0], rbx
mov qword [rsp + 0x4c8], r14
mov qword [rsp + 0x4d0], r15
mov qword [rsp + 0x4d8], rcx
mov word [rsp + 0x4e0], dx
mov word [rsp + 0x4e2], bp
mov dword [rsp + 0x4e4], r12d
mov qword [rsp + 0x4e8], rax
movzx edx, word [rsp + 0x4e0]
mov r10, r9
shr r10, 0x20
mov byte [rsp + 0x430], r10b
lea ecx, [r10 - 3]
cmp cl, 0xfe
jae 0x1804d62ca
lea rax, [rsp + 0x4b5]
lea rcx, [rsp + 0x430]
mov qword [rsp + 0x4f0], rcx
lea rcx, [fcn.180689df0]
mov qword [rsp + 0x4f8], rcx
mov qword [rsp + 0x500], rax
mov qword [rsp + 0x508], rcx
lea rax, str.Unknown_values_in_ELF_ident_header:_class:__endianness:
mov qword [rsp + 0x220], rax
mov qword [rsp + 0x228], 2
mov qword [rsp + 0x240], 0
lea rax, [rsp + 0x4f0]
mov qword [rsp + 0x230], rax
mov qword [rsp + 0x238], 2
lea rcx, [rsp + 0x128]
lea rdx, [rsp + 0x220]
call fcn.180686890
mov rax, qword [rsp + 0x128]
movzx ecx, byte [rsp + 0x134]
mov edx, dword [rsp + 0x13c]
mov dword [rsi + 0x24], edx
mov rdx, qword [rsp + 0x135]
mov qword [rsi + 0x1d], rdx
mov edx, dword [rsp + 0x130]
mov qword [rsi + 8], 5
mov qword [rsi + 0x10], rax
mov dword [rsi + 0x18], edx
mov byte [rsi + 0x1c], cl
mov qword [rsi], 3
jmp 0x1804d80a7
mov word [rsp + 0xae], dx
mov qword [rsp + 0x4a8], r8
movq xmm6, rax
movabs rax, 0xff0000000000
mov qword [rsp + 0x4a0], r9
and rax, r9
movabs rcx, 0x10000000000
mov qword [rsp + 0x118], rax
cmp rax, rcx
sete byte [rsp + 0x67]
setne byte [rsp + 0x44]
setne byte [rsp + 0x30]
mov qword [rsp + 0x70], r10
cmp r10b, 2
sete byte [rsp + 0x47]
sete byte [rsp + 0x28]
pextrw eax, xmm6, 0
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x220]
mov qword [rsp + 0x50], r13
mov rdx, r13
mov r8, rdi
mov r9, r14
call fcn.1804ec420
mov rax, qword [rsp + 0x220]
mov rcx, qword [rsp + 0x228]
mov r13, qword [rsp + 0x230]
mov rdx, qword [rsp + 0x238]
cmp rax, 0xa
jne 0x1804d64a2
mov dword [rsp + 0x21c], r12d
mov word [rsp + 0x86], bp
mov qword [rsp + 0x428], r15
mov qword [rsp + 0x490], r14
mov qword [rsp + 0x498], rbx
mov qword [rsp + 0x68], rcx
test rdx, rdx
mov qword [rsp + 0x1e0], rdx
je 0x1804d64be
imul r15, rdx, 0x38
xor r12d, r12d
lea rbx, [rsp + 0x220]
lea r14, [rsp + 0x4f0]
xor eax, eax
jmp 0x1804d6401
mov qword [rsp + 0x220], 1
mov qword [rsp + 0x228], rdx
mov r13, rbp
mov rcx, rbx
call fcn.1804d56c0
xor eax, eax
add r12, 0x38
cmp r15, r12
je 0x1804d64c0
cmp dword [r13 + r12 + 0x30], 3
jne 0x1804d63f4
mov r8, qword [r13 + r12 + 0x18]
test r8, r8
je 0x1804d63f4
mov rbp, r13
mov rdx, qword [r13 + r12]
mov r13, rdi
sub r13, rdx
jb 0x1804d63d3
dec r8
cmp r8, r13
jbe 0x1804d6432
mov rax, r13
xor ecx, ecx
jmp 0x1804d6459
add rdx, qword [rsp + 0x50]
mov rcx, r14
call fcn.18068ac20
cmp qword [rsp + 0x4f0], 0
je 0x1804d6482
mov ecx, 2
lea rax, str.invalid_utf8reexport:
mov r8, r13
mov qword [rsp + 0x220], rcx
mov qword [rsp + 0x228], r8
mov qword [rsp + 0x230], rax
mov qword [rsp + 0x238], 0xc
jmp 0x1804d63e7
mov rax, qword [rsp + 0x4f8]
mov rcx, qword [rsp + 0x500]
mov qword [rsp + 0x480], rcx
mov r13, rbp
jmp 0x1804d63f4
mov qword [rsi + 0x10], rcx
mov qword [rsi + 0x18], r13
mov qword [rsi + 0x20], rdx
mov qword [rsi + 8], rax
mov qword [rsi], 3
jmp 0x1804d80a7
xor eax, eax
mov r9, qword [rsp + 0x428]
test r9, r9
mov qword [rsp + 0x488], rax
je 0x1804d65fa
pextrw eax, xmm6, 2
mov r14, qword [rsp + 0x70]
cmp r14b, 2
sete byte [rsp + 0x28]
movzx ecx, byte [rsp + 0x44]
mov byte [rsp + 0x30], cl
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x220]
mov rdx, qword [rsp + 0x50]
mov r8, rdi
call fcn.1804f10f0
mov rax, qword [rsp + 0x220]
mov r12, qword [rsp + 0x228]
mov rbp, qword [rsp + 0x230]
mov r11, qword [rsp + 0x238]
cmp rax, 0xa
mov r15, qword [rsp + 0x68]
jne 0x1804d6750
pextrw eax, xmm6, 3
cmp ax, 0xffff
jne 0x1804d6555
test r11, r11
je 0x1804d7083
mov eax, dword [rbp + 0x3c]
cmp rax, r11
jae 0x1804d660f
mov qword [rsp + 0xe8], r11
lea rax, [rax + rax*8]
lea rbx, [rax*8]
add rbx, rbp
lea rcx, [rsp + 0x4f0]
mov rdx, rbx
mov r8, rdi
call fcn.1804f14e0
cmp dword [rsp + 0x4f0], 0xa
jne 0x1804d6f16
mov r9, qword [rbx + 0x18]
mov rax, qword [rbx + 0x20]
mov qword [rsp + 0x20], rax
mov byte [rsp + 0x28], 0
lea rcx, [rsp + 0x220]
mov rdx, qword [rsp + 0x50]
mov r8, rdi
call fcn.1804e7100
mov rcx, qword [rsp + 0x220]
movabs rax, 0x8000000000000000
cmp rcx, rax
je 0x1804d6f36
mov qword [rsp + 0x1d8], rcx
mov rax, qword [rsp + 0x228]
mov qword [rsp + 0x1d0], rax
mov r11, qword [rsp + 0xe8]
jmp 0x1804d666c
mov ebp, 8
xor r12d, r12d
xor r11d, r11d
mov r15, qword [rsp + 0x68]
mov r14, qword [rsp + 0x70]
mov qword [rsp + 0x220], 0
mov qword [rsp + 0x228], 8
mov qword [rsp + 0x230], 0
mov word [rsp + 0x238], 0
mov qword [rsp + 0x248], 1
mov qword [rsp + 0x250], 0
mov eax, 8
mov qword [rsp + 0x1d0], rax
xor eax, eax
mov qword [rsp + 0x1d8], rax
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0x130], rax
mov rcx, qword [rsp + 0x230]
movzx edx, word [rsp + 0x238]
mov r8d, dword [rsp + 0x23a]
movzx r9d, word [rsp + 0x23e]
mov r10, qword [rsp + 0x248]
mov qword [rsp + 0x448], r10
mov r10, qword [rsp + 0x250]
mov qword [rsp + 0x450], r10
mov qword [rsp + 0x430], rcx
mov word [rsp + 0x438], dx
mov dword [rsp + 0x43a], r8d
mov word [rsp + 0x43e], r9w
mov qword [rsp + 0x440], rax
mov qword [rsp + 0xe8], r11
lea rax, [r11*8]
mov qword [rsp + 0xe0], rax
lea rbx, [rax + rax*8]
lea rax, [rbx + rbp]
mov rcx, qword [rsp + 0x1e0]
nop
test rbx, rbx
je 0x1804d676c
add rbx, 0xffffffffffffffb8
cmp dword [rax - 0x10], 2
lea rax, [rax - 0x48]
jne 0x1804d6710
mov rcx, qword [rbp + rbx + 0x30]
test rcx, rcx
je 0x1804d6c67
mov rax, qword [rbp + rbx + 0x20]
mov rdx, rax
or rdx, rcx
shr rdx, 0x20
je 0x1804d6d0c
xor edx, edx
div rcx
jmp 0x1804d6d10
mov qword [rsi + 0x10], r12
mov qword [rsi + 0x18], rbp
mov qword [rsi + 0x20], r11
mov qword [rsi + 8], rax
mov qword [rsi], 3
jmp 0x1804d8090
mov byte [rsp + 0x46], 1
mov eax, 8
mov qword [rsp + 0x1c8], rax
mov eax, 1
mov qword [rsp + 0x3d8], rax
xor eax, eax
mov qword [rsp + 0x3d0], rax
xor eax, eax
mov qword [rsp + 0x3e0], rax
xor eax, eax
mov qword [rsp + 0x3f0], rax
xor eax, eax
mov qword [rsp + 0x3e8], rax
xor eax, eax
mov qword [rsp + 0x58], rax
xor eax, eax
mov qword [rsp + 0x410], rax
xor eax, eax
mov qword [rsp + 0x3f8], rax
xor eax, eax
mov qword [rsp + 0x420], rax
xor eax, eax
mov qword [rsp + 0x418], rax
xor eax, eax
mov qword [rsp + 0x408], rax
mov eax, 1
mov qword [rsp + 0x400], rax
mov qword [rsp + 0x1e8], 0
mov qword [rsp + 0x1f0], 8
mov qword [rsp + 0x1f8], 0
mov qword [rsp + 0x200], 0
mov qword [rsp + 0x208], 8
mov qword [rsp + 0x210], 0
mov word [rsp + 0x138], 0
mov qword [rsp + 0x148], 1
mov qword [rsp + 0x150], 0
mov qword [rsp + 0x120], 0
mov qword [rsp + 0x128], 8
mov qword [rsp + 0x130], 0
cmp r14b, 2
sete byte [rsp + 0x28]
movzx eax, byte [rsp + 0x44]
mov byte [rsp + 0x30], al
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x220]
mov rdx, qword [rsp + 0x50]
mov r8, rdi
mov r9, r13
call fcn.1804f1940
mov rbx, qword [rsp + 0x220]
movups xmm0, xmmword [rsp + 0x228]
movaps xmmword [rsp + 0xb0], xmm0
movups xmm0, xmmword [rsp + 0x238]
movaps xmmword [rsp + 0xc0], xmm0
cmp rbx, 3
jne 0x1804d6915
movaps xmm0, xmmword [rsp + 0xb0]
movaps xmm1, xmmword [rsp + 0xc0]
movups xmmword [rsi + 0x18], xmm1
movups xmmword [rsi + 8], xmm0
mov qword [rsi], 3
mov ebx, 8
xor r14d, r14d
mov rdi, qword [rsp + 0x58]
jmp 0x1804d7fa3
lea rdx, [rsp + 0x248]
lea rcx, [rsp + 0x518]
mov r8d, 0x118
call fcn.1806a7400
movaps xmm0, xmmword [rsp + 0xb0]
movaps xmm1, xmmword [rsp + 0xc0]
movups xmmword [rsp + 0x4f8], xmm0
movups xmmword [rsp + 0x508], xmm1
mov qword [rsp + 0x4f0], rbx
cmp rbx, 2
jne 0x1804d6c6e
mov qword [rsp + 0x78], r12
mov qword [rsp + 0x90], rbp
mov byte [rsp + 0x45], 1
mov eax, 1
mov qword [rsp + 0x170], rax
mov ax, 1
mov dword [rsp + 0xf4], eax
mov eax, 8
mov qword [rsp + 0x48], rax
xor eax, eax
mov qword [rsp + 0x1a8], rax
xor eax, eax
mov qword [rsp + 0x88], rax
xor eax, eax
mov qword [rsp + 0x3b8], rax
xor eax, eax
mov qword [rsp + 0x3c8], rax
xor eax, eax
mov qword [rsp + 0x158], rax
xor eax, eax
mov qword [rsp + 0x108], rax
xor eax, eax
mov qword [rsp + 0xa0], rax
xor eax, eax
mov qword [rsp + 0x3c0], rax
xor eax, eax
mov qword [rsp + 0x160], rax
xor eax, eax
mov qword [rsp + 0x188], rax
xor eax, eax
mov qword [rsp + 0x178], rax
mov eax, 1
mov qword [rsp + 0x190], rax
xor eax, eax
mov qword [rsp + 0x3b0], rax
xor eax, eax
mov qword [rsp + 0x198], rax
xor eax, eax
mov qword [rsp + 0x110], rax
xor eax, eax
mov qword [rsp + 0x1a0], rax
mov eax, 1
mov qword [rsp + 0x180], rax
xor eax, eax
mov qword [rsp + 0x388], rax
xor eax, eax
mov qword [rsp + 0x380], rax
xor eax, eax
mov qword [rsp + 0x3a8], rax
xor eax, eax
mov qword [rsp + 0x3a0], rax
xor eax, eax
mov qword [rsp + 0x398], rax
mov eax, 1
mov qword [rsp + 0x390], rax
xor eax, eax
mov qword [rsp + 0x1b0], rax
mov al, 1
mov dword [rsp + 0x9c], eax
xor eax, eax
mov qword [rsp + 0x168], rax
mov qword [rsp + 0xb0], 0
mov qword [rsp + 0xb8], 8
mov qword [rsp + 0xc0], 0
cmp qword [rsp + 0xe8], 0
je 0x1804d6f86
mov rax, qword [rsp + 0xe0]
lea r15, [rax + rax*8]
xor ebp, ebp
mov rbx, qword [rsp + 0x90]
mov qword [rsp + 0x478], r13
jmp 0x1804d6b63
mov r10, qword [rsp + 0xb8]
imul rcx, r12, 0x38
mov qword [r10 + rcx], rbp
mov qword [r10 + rcx + 8], r9
mov qword [r10 + rcx + 0x10], r14
add r14, r8
mov qword [r10 + rcx + 0x18], rax
mov qword [r10 + rcx + 0x20], r8
mov qword [r10 + rcx + 0x28], r14
mov byte [r10 + rcx + 0x30], r13b
movzx edx, byte [rsp + 0x47]
mov byte [r10 + rcx + 0x31], dl
movzx edx, byte [rsp + 0x44]
mov byte [r10 + rcx + 0x32], dl
inc r12
mov qword [rsp + 0xc0], r12
mov r13, qword [rsp + 0x478]
mov r14, qword [rsp + 0x70]
add rbx, 0x48
inc rbp
add r15, 0xffffffffffffffb8
je 0x1804d6f86
mov r12d, dword [rbx + 0x38]
cmp r12d, 4
je 0x1804d6b73
cmp r12d, 9
jne 0x1804d6b52
lea rcx, [rsp + 0x220]
mov rdx, rbx
mov r8, rdi
call fcn.1804f14e0
mov r14, qword [rsp + 0x220]
cmp r14, 0xa
jne 0x1804d731f
mov r8, qword [rbx + 0x18]
mov r14, qword [rbx + 0x20]
test r14, r14
je 0x1804d6bc5
mov rax, rdi
sub rax, r8
jb 0x1804d79a7
cmp rax, r14
jb 0x1804d79ae
mov rax, qword [rsp + 0x50]
lea r9, [rax + r8]
jmp 0x1804d6bcb
mov r9d, 1
xor eax, eax
cmp r12d, 4
sete al
cmp byte [rsp + 0x70], 2
lea rdx, [rax*4 + 8]
lea rcx, [rax*8 + 0x10]
cmovne rcx, rdx
mov rax, r14
shr rax, 0x20
je 0x1804d6c00
mov rax, r14
xor edx, edx
div rcx
jmp 0x1804d6c07
mov eax, r14d
xor edx, edx
div ecx
cmp r12d, 4
sete r13b
mov r12, qword [rsp + 0xc0]
cmp r12, qword [rsp + 0xb0]
jne 0x1804d6af5
lea rcx, [rsp + 0xb0]
mov qword [rsp + 0xd8], r8
mov qword [rsp + 0x1c0], r9
mov qword [rsp + 0x1b8], rax
call fcn.1804e4150
mov rax, qword [rsp + 0x1b8]
mov r9, qword [rsp + 0x1c0]
mov r8, qword [rsp + 0xd8]
jmp 0x1804d6af5
xor eax, eax
jmp 0x1804d6d10
mov r14d, dword [rsp + 0x600]
mov r9, qword [rsp + 0x560]
mov rax, qword [rsp + 0x568]
mov qword [rsp + 0x20], rax
mov byte [rsp + 0x28], 0
lea rcx, [rsp + 0x220]
mov rdx, qword [rsp + 0x50]
mov r8, rdi
call fcn.1804e7100
mov rbx, qword [rsp + 0x220]
movabs rax, 0x8000000000000000
movups xmm0, xmmword [rsp + 0x228]
movaps xmmword [rsp + 0xb0], xmm0
movups xmm0, xmmword [rsp + 0x238]
movaps xmmword [rsp + 0xc0], xmm0
cmp rbx, rax
jne 0x1804d6fe2
movaps xmm0, xmmword [rsp + 0xb0]
movaps xmm1, xmmword [rsp + 0xc0]
movups xmmword [rsi + 0x18], xmm1
movups xmmword [rsi + 8], xmm0
mov qword [rsi], 3
mov ebx, 8
xor r14d, r14d
jmp 0x1804d73a7
xor edx, edx
div ecx
mov r9, qword [rbp + rbx + 0x18]
cmp r14b, 2
sete byte [rsp + 0x28]
movzx ecx, byte [rsp + 0x44]
mov byte [rsp + 0x30], cl
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x220]
mov r14, qword [rsp + 0x50]
mov rdx, r14
mov r8, rdi
call fcn.1804ec7b0
movzx eax, byte [rsp + 0x248]
mov r9, qword [rsp + 0x220]
mov r8, qword [rsp + 0x228]
mov rdx, qword [rsp + 0x230]
mov rcx, qword [rsp + 0x238]
cmp al, 2
jne 0x1804d6d81
mov qword [rsi + 8], r9
mov qword [rsi + 0x10], r8
mov qword [rsi + 0x18], rdx
jmp 0x1804d6e94
mov qword [rsp + 0x400], r9
mov qword [rsp + 0x408], r8
mov qword [rsp + 0x418], rdx
mov qword [rsp + 0x420], rcx
mov byte [rsp + 0x46], al
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0x3f8], rax
movzx eax, byte [rsp + 0x249]
mov qword [rsp + 0x410], rax
mov eax, dword [rsp + 0x24a]
mov dword [rsp + 0xf8], eax
movzx eax, word [rsp + 0x24e]
mov word [rsp + 0xfc], ax
mov eax, dword [rbp + rbx + 0x3c]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x220]
mov rdx, r14
mov r8, rdi
mov r9, rbp
call fcn.1804d81a0
mov r8, qword [rsp + 0x220]
mov rdx, qword [rsp + 0x228]
movabs rax, 0x8000000000000000
mov r10, qword [rsp + 0x230]
movzx r9d, byte [rsp + 0x238]
mov rcx, qword [rsp + 0x23a]
mov qword [rsp + 0x4f0], rcx
mov rcx, qword [rsp + 0x240]
mov qword [rsp + 0x4f6], rcx
movzx r11d, byte [rsp + 0x239]
mov rcx, r8
mov qword [rsp + 0x58], r8
cmp r8, rax
jne 0x1804d6ea4
mov qword [rsi + 8], rdx
mov qword [rsi + 0x10], r10
mov byte [rsi + 0x18], r9b
mov byte [rsi + 0x19], r11b
mov rax, qword [rsp + 0x4f0]
mov rcx, qword [rsp + 0x4f6]
mov qword [rsi + 0x1a], rax
mov qword [rsi + 0x20], rcx
mov qword [rsi], 3
jmp 0x1804d804d
mov qword [rsp + 0x3e0], r11
mov qword [rsp + 0x3e8], r10
mov qword [rsp + 0x3f0], r9
mov qword [rsp + 0x1c8], rdx
mov rax, qword [rsp + 0x248]
mov qword [rsp + 0x3d8], rax
mov rax, qword [rsp + 0x250]
mov qword [rsp + 0x3d0], rax
mov rax, qword [rsp + 0x4f0]
mov rcx, qword [rsp + 0x4f6]
mov qword [rsp + 0x460], rax
mov qword [rsp + 0x466], rcx
mov rcx, qword [rsp + 0x1e0]
mov r14, qword [rsp + 0x70]
jmp 0x1804d67f9
movups xmm0, xmmword [rsp + 0x4f0]
movups xmm1, xmmword [rsp + 0x500]
movups xmmword [rsp + 0x238], xmm1
movups xmmword [rsp + 0x228], xmm0
mov rax, qword [rsp + 0x228]
movups xmm0, xmmword [rsp + 0x230]
movaps xmmword [rsp + 0x120], xmm0
mov rcx, qword [rsp + 0x240]
mov qword [rsp + 0x130], rcx
mov qword [rsi + 8], rax
movaps xmm0, xmmword [rsp + 0x120]
movups xmmword [rsi + 0x10], xmm0
mov rax, qword [rsp + 0x130]
mov qword [rsi + 0x20], rax
mov qword [rsi], 3
jmp 0x1804d8075
mov rax, qword [rsp + 0xe0]
lea rax, [rax + rax*8]
xor ecx, ecx
mov rbp, qword [rsp + 0x90]
mov rdx, rbp
mov r15, qword [rsp + 0x480]
cmp rax, rcx
je 0x1804d708b
add rcx, 0x48
cmp dword [rdx + 0x38], 0x6fffffff
lea rdx, [rdx + 0x48]
jne 0x1804d6fa7
mov r12, qword [rbp + rcx - 0x30]
mov rdx, qword [rbp + rcx - 0x28]
mov rcx, rdi
sub rcx, r12
jae 0x1804d7341
mov r14d, 1
jmp 0x1804d7350
mov dword [rsp + 0x9c], r14d
lea r14, [rsp + 0x148]
movups xmm0, xmmword [rsp + 0x248]
movaps xmmword [rsp + 0x630], xmm0
mov rax, qword [rsp + 0x120]
test rax, rax
je 0x1804d702a
mov rcx, qword [rsp + 0x128]
shl rax, 3
lea rdx, [rax + rax*2]
mov r8d, 8
call fcn.1804cafa0
mov qword [rsp + 0x120], rbx
movaps xmm0, xmmword [rsp + 0xb0]
movaps xmm1, xmmword [rsp + 0xc0]
movups xmmword [r14 - 0x10], xmm1
movups xmmword [r14 - 0x20], xmm0
movaps xmm0, xmmword [rsp + 0x630]
movups xmmword [r14], xmm0
mov rdx, qword [rsp + 0x608]
test rdx, rdx
je 0x1804d710d
lea rcx, [rsp + 0x120]
call fcn.1804e77d0
mov qword [rsp + 0x1b0], rax
jmp 0x1804d7117
xor r11d, r11d
jmp 0x1804d660f
mov ebx, 2
xor ecx, ecx
mov rdx, rbp
cmp rax, rcx
je 0x1804d70cb
add rcx, 0x48
cmp dword [rdx + 0x38], 0x6ffffffd
lea rdx, [rdx + 0x48]
jne 0x1804d7095
mov r8, qword [rbp + rcx - 0x30]
mov r14, qword [rbp + rcx - 0x28]
mov rdx, rdi
sub rdx, r8
jae 0x1804d79d6
mov eax, 1
jmp 0x1804d79e4
mov r9d, 2
xor ecx, ecx
mov rdx, rbp
cmp rax, rcx
je 0x1804d73b1
add rcx, 0x48
cmp dword [rdx + 0x38], 0x6ffffffe
lea rdx, [rdx + 0x48]
jne 0x1804d70d6
mov rdx, qword [rbp + rcx - 0x30]
mov r14, qword [rbp + rcx - 0x28]
sub rdi, rdx
jae 0x1804d7af0
mov eax, 1
jmp 0x1804d7afe
xor eax, eax
mov qword [rsp + 0x1b0], rax
cmp qword [rsp + 0x5f0], 0
mov qword [rsp + 0x90], rbp
mov qword [rsp + 0x78], r12
mov qword [rsp + 0x470], rdx
je 0x1804d7183
lea rcx, [rsp + 0x220]
lea rdx, [rsp + 0x4f0]
lea r8, [rsp + 0x120]
call fcn.1804f1ef0
mov rax, qword [rsp + 0x220]
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x228]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x230]
mov qword [rsp + 0x1a8], rax
jmp 0x1804d71a1
mov eax, 8
mov qword [rsp + 0x48], rax
xor eax, eax
mov qword [rsp + 0x1a8], rax
xor eax, eax
mov qword [rsp + 0x88], rax
mov r15, qword [rsp + 0x628]
test r15, r15
je 0x1804d72ba
mov rbp, qword [rsp + 0x620]
shl r15, 4
xor ebx, ebx
mov qword [rsp + 0xd8], r15
jmp 0x1804d7208
mov rcx, qword [rsp + 0x208]
mov rdx, r15
shl rdx, 4
lea rax, [rcx + rdx]
mov qword [rcx + rdx], r12
lea rcx, [rsp + 0x210]
mov qword [rax + 8], r14
inc r15
mov qword [rcx], r15
mov r15, qword [rsp + 0xd8]
add rbx, 0x10
cmp r15, rbx
je 0x1804d72ba
mov rax, qword [rbp + rbx]
cmp rax, 0xf
je 0x1804d725a
cmp rax, 0x1d
jne 0x1804d71fb
mov rdx, qword [rbp + rbx + 8]
lea rcx, [rsp + 0x120]
call fcn.1804e77d0
test rax, rax
je 0x1804d71fb
mov r12, rax
mov r14, rdx
mov r15, qword [rsp + 0x210]
cmp r15, qword [rsp + 0x200]
jne 0x1804d71ca
lea rcx, [rsp + 0x200]
call fcn.1804e42f0
jmp 0x1804d71ca
mov rdx, qword [rbp + rbx + 8]
lea rcx, [rsp + 0x120]
call fcn.1804e77d0
test rax, rax
je 0x1804d71fb
mov r12, rax
mov r14, rdx
mov r15, qword [rsp + 0x1f8]
cmp r15, qword [rsp + 0x1e8]
jne 0x1804d7296
lea rcx, [rsp + 0x1e8]
call fcn.1804e42f0
mov rcx, qword [rsp + 0x1f0]
mov rdx, r15
shl rdx, 4
lea rax, [rcx + rdx]
mov qword [rcx + rdx], r12
lea rcx, [rsp + 0x1f8]
jmp 0x1804d71e9
mov r9, qword [rsp + 0x520]
mov rdx, qword [rsp + 0x528]
test rdx, rdx
je 0x1804d7307
mov rax, rdi
sub rax, r9
mov r15, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x90]
mov r12, qword [rsp + 0x78]
mov r8, qword [rsp + 0x70]
mov r14, qword [rsp + 0x88]
jae 0x1804d737a
mov r8, rdx
mov ecx, 1
jmp 0x1804d738b
mov r10d, 1
mov rbp, qword [rsp + 0x90]
mov r8, qword [rsp + 0x70]
jmp 0x1804d7a37
mov rax, qword [rsp + 0x238]
mov qword [rsi + 0x20], rax
movups xmm0, xmmword [rsp + 0x228]
movups xmmword [rsi + 0x10], xmm0
mov eax, 8
jmp 0x1804d79c4
cmp rcx, rdx
jae 0x1804d79f5
xor r14d, r14d
mov r12, rdx
mov rbx, qword [rsp + 0x48]
mov qword [rsi + 0x10], r12
mov qword [rsi + 0x18], rcx
mov qword [rsi + 0x20], rdx
mov eax, 8
mov r15, qword [rsp + 0x68]
mov r12, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x58]
jmp 0x1804d7b23
cmp rax, rdx
jae 0x1804d7a2e
xor ecx, ecx
mov r8, rdx
mov r9, rdx
mov rbx, qword [rsp + 0x48]
mov qword [rsi + 8], rcx
mov qword [rsi + 0x10], r9
mov qword [rsi + 0x18], rax
mov qword [rsi + 0x20], r8
mov qword [rsi], 3
mov rdi, qword [rsp + 0x58]
jmp 0x1804d7f75
mov qword [rsp + 0xe0], r9
mov rdi, r8
mov qword [rsp + 0x90], rbp
mov ecx, 2
xor edx, edx
cmp word [rsp + 0xae], 3
mov qword [rsi + 0x3a0], r9
mov qword [rsi + 0x3a8], r14
mov qword [rsi + 0x3b0], rax
mov qword [rsi + 0x3b8], rcx
movzx ebp, byte [rsp + 0x9c]
cmovne ebp, edx
movaps xmm0, xmmword [rsp + 0x430]
movaps xmm1, xmmword [rsp + 0x440]
movups xmmword [rsi + 0x180], xmm0
movups xmmword [rsi + 0x190], xmm1
mov rax, qword [rsp + 0x450]
mov qword [rsi + 0x1a0], rax
lea rdx, [rsp + 0x4f0]
mov r8d, 0x140
mov rcx, rsi
call fcn.1806a7400
movzx eax, word [rsp + 0x104]
mov word [rsi + 0x2a6], ax
mov eax, dword [rsp + 0x100]
mov dword [rsi + 0x2a2], eax
mov rax, qword [rsp + 0x150]
mov qword [rsi + 0x1d8], rax
movups xmm0, xmmword [rsp + 0x120]
movups xmm1, xmmword [rsp + 0x130]
movups xmm2, xmmword [rsp + 0x140]
movups xmmword [rsi + 0x1c8], xmm2
movups xmmword [rsi + 0x1b8], xmm1
movups xmmword [rsi + 0x1a8], xmm0
movzx eax, word [rsp + 0xfc]
mov word [rsi + 0x2d6], ax
mov eax, dword [rsp + 0xf8]
mov dword [rsi + 0x2d2], eax
mov rax, qword [rsp + 0x466]
mov qword [rsi + 0x200], rax
mov rax, qword [rsp + 0x460]
mov qword [rsi + 0x1fa], rax
mov eax, dword [rsp + 0x371]
mov dword [rsi + 0x303], eax
movzx eax, byte [rsp + 0x375]
mov byte [rsi + 0x307], al
mov eax, dword [rsp + 0x376]
mov dword [rsi + 0x333], eax
movzx eax, byte [rsp + 0x37a]
mov byte [rsi + 0x337], al
mov eax, dword [rsp + 0x37b]
mov dword [rsi + 0x363], eax
movzx eax, byte [rsp + 0x37f]
mov byte [rsi + 0x367], al
mov rax, qword [rsp + 0xc0]
mov qword [rsi + 0x228], rax
movups xmm0, xmmword [rsp + 0xb0]
movups xmmword [rsi + 0x218], xmm0
mov rax, qword [rsp + 0x1f8]
mov qword [rsi + 0x258], rax
movups xmm0, xmmword [rsp + 0x1e8]
movups xmmword [rsi + 0x248], xmm0
mov rax, qword [rsp + 0x210]
mov qword [rsi + 0x270], rax
movups xmm0, xmmword [rsp + 0x200]
movups xmmword [rsi + 0x260], xmm0
mov rax, qword [rsp + 0x4a0]
mov qword [rsi + 0x3c0], rax
mov rax, qword [rsp + 0x4a8]
mov qword [rsi + 0x3c8], rax
mov rcx, qword [rsp + 0x498]
mov qword [rsi + 0x3d0], rcx
mov rax, qword [rsp + 0x360]
mov qword [rsi + 0x3e8], rax
movzx eax, word [rsp + 0x368]
mov word [rsi + 0x3f0], ax
mov qword [rsi + 0x368], r12
mov rax, qword [rsp + 0xd8]
mov qword [rsi + 0x370], rax
mov qword [rsi + 0x378], rbx
mov qword [rsi + 0x380], rdi
mov rax, qword [rsp + 0x1b8]
mov qword [rsi + 0x388], rax
mov rax, qword [rsp + 0x1c0]
mov qword [rsi + 0x390], rax
mov rax, qword [rsp + 0xe0]
mov qword [rsi + 0x398], rax
mov rax, qword [rsp + 0x68]
mov qword [rsi + 0x140], rax
mov qword [rsi + 0x148], r13
mov rax, qword [rsp + 0x1e0]
mov qword [rsi + 0x150], rax
mov rax, qword [rsp + 0x78]
mov qword [rsi + 0x158], rax
mov rax, qword [rsp + 0x90]
mov qword [rsi + 0x160], rax
mov rax, qword [rsp + 0xe8]
mov qword [rsi + 0x168], rax
mov rax, qword [rsp + 0x1d8]
mov qword [rsi + 0x170], rax
mov rax, qword [rsp + 0x1d0]
mov qword [rsi + 0x178], rax
mov rax, qword [rsp + 0x58]
mov qword [rsi + 0x1e0], rax
mov rax, qword [rsp + 0x1c8]
mov qword [rsi + 0x1e8], rax
mov rax, qword [rsp + 0x3e8]
mov qword [rsi + 0x1f0], rax
mov rax, qword [rsp + 0x3f0]
mov byte [rsi + 0x1f8], al
mov rax, qword [rsp + 0x3e0]
mov byte [rsi + 0x1f9], al
mov rax, qword [rsp + 0x3d8]
mov qword [rsi + 0x208], rax
mov rax, qword [rsp + 0x3d0]
mov qword [rsi + 0x210], rax
mov rax, qword [rsp + 0x88]
mov qword [rsi + 0x230], rax
mov rax, qword [rsp + 0x48]
mov qword [rsi + 0x238], rax
mov rax, qword [rsp + 0x1a8]
mov qword [rsi + 0x240], rax
mov rax, qword [rsp + 0x390]
mov qword [rsi + 0x278], rax
mov rax, qword [rsp + 0x398]
mov qword [rsi + 0x280], rax
mov rax, qword [rsp + 0x3a0]
mov qword [rsi + 0x288], rax
mov rax, qword [rsp + 0x3a8]
mov qword [rsi + 0x290], rax
mov rax, qword [rsp + 0x380]
mov qword [rsi + 0x298], rax
movzx eax, byte [rsp + 0x45]
mov byte [rsi + 0x2a0], al
mov rax, qword [rsp + 0x388]
mov byte [rsi + 0x2a1], al
mov rax, qword [rsp + 0x400]
mov qword [rsi + 0x2a8], rax
mov rax, qword [rsp + 0x408]
mov qword [rsi + 0x2b0], rax
mov rax, qword [rsp + 0x418]
mov qword [rsi + 0x2b8], rax
mov rax, qword [rsp + 0x420]
mov qword [rsi + 0x2c0], rax
mov rax, qword [rsp + 0x3f8]
mov qword [rsi + 0x2c8], rax
movzx eax, byte [rsp + 0x46]
mov byte [rsi + 0x2d0], al
mov rax, qword [rsp + 0x410]
mov byte [rsi + 0x2d1], al
mov rax, qword [rsp + 0x180]
mov qword [rsi + 0x2d8], rax
mov rax, qword [rsp + 0x1a0]
mov qword [rsi + 0x2e0], rax
mov rax, qword [rsp + 0x110]
mov qword [rsi + 0x2e8], rax
mov rax, qword [rsp + 0x198]
mov qword [rsi + 0x2f0], rax
mov rax, qword [rsp + 0x3b0]
mov qword [rsi + 0x2f8], rax
mov rax, qword [rsp + 0x3b8]
mov byte [rsi + 0x300], al
mov eax, dword [rsp + 0xf4]
mov word [rsi + 0x301], ax
mov rdx, qword [rsp + 0x190]
mov qword [rsi + 0x308], rdx
mov rdx, qword [rsp + 0x178]
mov qword [rsi + 0x310], rdx
mov rdx, qword [rsp + 0x188]
mov qword [rsi + 0x318], rdx
mov rdx, qword [rsp + 0x160]
mov qword [rsi + 0x320], rdx
mov rdx, qword [rsp + 0x3c0]
mov qword [rsi + 0x328], rdx
mov byte [rsi + 0x330], 0
mov word [rsi + 0x331], ax
mov rdx, qword [rsp + 0x170]
mov qword [rsi + 0x338], rdx
mov rdx, qword [rsp + 0xa0]
mov qword [rsi + 0x340], rdx
mov rdx, qword [rsp + 0x108]
mov qword [rsi + 0x348], rdx
mov rdx, qword [rsp + 0x158]
mov qword [rsi + 0x350], rdx
mov rdx, qword [rsp + 0x3c8]
mov qword [rsi + 0x358], rdx
mov rdx, qword [rsp + 0x168]
mov byte [rsi + 0x360], dl
mov word [rsi + 0x361], ax
mov rax, qword [rsp + 0x490]
mov qword [rsi + 0x3d8], rax
mov rax, qword [rsp + 0x428]
mov qword [rsi + 0x3e0], rax
movzx eax, word [rsp + 0x86]
mov word [rsi + 0x3f2], ax
mov eax, dword [rsp + 0x21c]
mov dword [rsi + 0x3f4], eax
movq qword [rsi + 0x3f8], xmm6
mov rax, qword [rsp + 0x1b0]
mov qword [rsi + 0x400], rax
mov rax, qword [rsp + 0x470]
mov qword [rsi + 0x408], rax
mov rax, qword [rsp + 0x488]
mov qword [rsi + 0x410], rax
mov qword [rsi + 0x418], r15
mov qword [rsi + 0x420], rcx
movzx ecx, byte [rsp + 0x47]
mov byte [rsi + 0x428], cl
movzx eax, byte [rsp + 0x44]
mov byte [rsi + 0x429], al
mov byte [rsi + 0x42a], cl
mov byte [rsi + 0x42b], bpl
movzx eax, byte [rsp + 0x67]
mov byte [rsi + 0x42c], al
jmp 0x1804d80a7
mov ecx, 1
jmp 0x1804d79b3
mov r8, r14
xor ecx, ecx
mov qword [rsi + 8], rcx
mov qword [rsi + 0x10], r8
mov qword [rsi + 0x18], rax
mov eax, 0x20
mov r15, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x90]
jmp 0x1804d7b14
cmp rdx, r14
jae 0x1804d7b5b
xor eax, eax
mov r8, r14
mov qword [rsi + 8], rax
mov qword [rsi + 0x10], r8
mov qword [rsi + 0x18], rdx
jmp 0x1804d7b0a
mov qword [rsp + 0xd8], rdx
xor ecx, ecx
cmp r14b, 2
sete cl
xor ebx, ebx
movabs rdx, 0x10000000000
cmp qword [rsp + 0x118], rdx
setne bl
add r12, qword [rsp + 0x50]
shl rbx, 8
or rbx, rcx
jmp 0x1804d7090
mov rax, qword [rsp + 0x50]
lea r10, [rax + r9]
cmp r8b, 2
mov eax, 0x18
mov ecx, 0xc
cmove rcx, rax
mov rax, rdx
shr rax, 0x20
mov qword [rsp + 0x1a0], rdx
mov qword [rsp + 0x198], r9
je 0x1804d7a6c
mov rax, rdx
xor edx, edx
div rcx
jmp 0x1804d7a72
mov eax, edx
xor edx, edx
div ecx
mov qword [rsp + 0x110], rax
xor ebx, ebx
cmp r8b, 2
sete r14b
movabs rax, 0x10000000000
cmp qword [rsp + 0x118], rax
setne r12b
mov r11, qword [rsp + 0x540]
mov r9, qword [rsp + 0x548]
mov r15d, 1
mov eax, 1
test r9, r9
je 0x1804d7bab
mov rax, rdi
sub rax, r11
jae 0x1804d7acd
mov ecx, 1
jmp 0x1804d7adb
cmp rax, r9
jae 0x1804d7ba3
xor ecx, ecx
mov r11, r9
mov qword [rsi + 8], rcx
mov qword [rsi + 0x10], r11
mov qword [rsi + 0x18], rax
mov qword [rsi + 0x20], r9
jmp 0x1804d7f52
cmp rdi, r14
jae 0x1804d7c36
xor eax, eax
mov rdx, r14
mov qword [rsi + 8], rax
mov qword [rsi + 0x10], rdx
mov qword [rsi + 0x18], rdi
mov eax, 0x20
mov r15, qword [rsp + 0x68]
mov r12, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x48]
mov qword [rsi + rax], r14
mov qword [rsi], 3
mov rax, qword [rsp + 0xb0]
test rax, rax
je 0x1804d7f6d
mov rcx, qword [rsp + 0xb8]
imul rdx, rax, 0x38
mov r8d, 8
call fcn.1804cafa0
jmp 0x1804d7f6d
mov ecx, dword [rbp + rcx - 8]
mov qword [rsp + 0x1c0], rcx
xor ecx, ecx
cmp byte [rsp + 0x70], 2
sete cl
xor r9d, r9d
movabs rdx, 0x10000000000
cmp qword [rsp + 0x118], rdx
setne r9b
add r8, qword [rsp + 0x50]
shl r9, 8
or r9, rcx
mov qword [rsp + 0x1b8], r14
jmp 0x1804d70d1
mov rax, qword [rsp + 0x50]
add rax, r11
mov qword [rsp + 0x190], rax
cmp byte [rsp + 0x70], 2
sete cl
add cl, 3
mov rax, r9
shr rax, cl
mov qword [rsp + 0x188], rax
mov rdx, qword [rsp + 0x580]
mov rcx, qword [rsp + 0x588]
mov r8, qword [rsp + 0x590]
mov rax, rdx
mov qword [rsp + 0xa0], rdx
test rdx, rdx
je 0x1804d7c8d
mov rax, rdi
sub rax, r8
jae 0x1804d7c0f
mov ecx, 1
mov rdx, qword [rsp + 0xa0]
jmp 0x1804d7c21
mov rdx, qword [rsp + 0xa0]
cmp rax, rdx
jae 0x1804d7c84
xor ecx, ecx
mov r8, rdx
mov qword [rsi + 8], rcx
mov qword [rsi + 0x10], r8
mov qword [rsi + 0x18], rax
mov qword [rsi + 0x20], rdx
jmp 0x1804d7f52
mov qword [rsp + 0xe0], r9
mov rdi, r8
mov qword [rsp + 0x90], rbp
mov eax, dword [rbp + rcx - 8]
xor r8d, r8d
cmp byte [rsp + 0x70], 2
sete r8b
xor ecx, ecx
movabs r9, 0x10000000000
cmp qword [rsp + 0x118], r9
setne cl
mov r9, qword [rsp + 0x50]
add r9, rdx
shl rcx, 8
or rcx, r8
jmp 0x1804d73c9
mov rax, qword [rsp + 0x50]
lea r15, [rax + r8]
mov qword [rsp + 0x158], r8
xor eax, eax
cmp rcx, 7
sete al
cmp byte [rsp + 0x70], 2
lea rdx, [rax*4 + 8]
lea r8, [rax*8 + 0x10]
cmovne r8, rdx
mov rax, qword [rsp + 0xa0]
mov rdx, rax
shr rdx, 0x20
je 0x1804d7ccf
xor edx, edx
div r8
jmp 0x1804d7cd4
xor edx, edx
div r8d
mov qword [rsp + 0x108], rax
cmp rcx, 7
sete al
mov qword [rsp + 0x168], rax
cmp qword [rsp + 0x4f0], 0
mov qword [rsp + 0x180], r10
mov qword [rsp + 0x178], r9
mov qword [rsp + 0x160], r11
mov qword [rsp + 0x170], r15
je 0x1804d7d48
mov r9, qword [rsp + 0x4f8]
cmp byte [rsp + 0x70], 2
movzx eax, byte [rsp + 0x44]
mov byte [rsp + 0x28], al
sete byte [rsp + 0x20]
lea rcx, [rsp + 0x220]
mov rdx, qword [rsp + 0x50]
mov r8, rdi
call fcn.1804d8280
jmp 0x1804d7d90
cmp qword [rsp + 0x500], 0
je 0x1804d7dbf
mov r9, qword [rsp + 0x508]
cmp byte [rsp + 0x70], 2
sete byte [rsp + 0x28]
movzx eax, byte [rsp + 0x44]
mov byte [rsp + 0x30], al
movzx eax, word [rsp + 0x86]
mov word [rsp + 0x20], ax
lea rcx, [rsp + 0x220]
mov rdx, qword [rsp + 0x50]
mov r8, rdi
call fcn.1804d85b0
mov rax, qword [rsp + 0x220]
mov r15, qword [rsp + 0x228]
cmp rax, 0xa
je 0x1804d7dc2
movups xmm0, xmmword [rsp + 0x230]
movups xmmword [rsi + 0x18], xmm0
mov qword [rsi + 8], rax
mov qword [rsi + 0x10], r15
jmp 0x1804d7f52
xor r15d, r15d
xor eax, eax
mov al, r12b
mov bl, r14b
shl eax, 8
or eax, ebx
mov rcx, qword [rsp + 0x180]
mov qword [rsp + 0x220], rcx
mov rbx, qword [rsp + 0x1a0]
mov qword [rsp + 0x228], rbx
xorps xmm0, xmm0
movups xmmword [rsp + 0x230], xmm0
mov rcx, qword [rsp + 0x110]
mov qword [rsp + 0x240], rcx
mov byte [rsp + 0x248], 1
mov word [rsp + 0x249], ax
mov rcx, qword [rsp + 0x190]
mov qword [rsp + 0x250], rcx
mov r12, qword [rsp + 0x178]
mov qword [rsp + 0x258], r12
movups xmmword [rsp + 0x260], xmm0
mov rcx, qword [rsp + 0x188]
mov qword [rsp + 0x270], rcx
mov byte [rsp + 0x278], 0
mov word [rsp + 0x279], ax
mov rcx, qword [rsp + 0x170]
mov qword [rsp + 0x280], rcx
mov rcx, qword [rsp + 0xa0]
mov qword [rsp + 0x288], rcx
movups xmmword [rsp + 0x290], xmm0
mov rcx, qword [rsp + 0x108]
mov qword [rsp + 0x2a0], rcx
mov rcx, qword [rsp + 0x168]
mov byte [rsp + 0x2a8], cl
mov dword [rsp + 0xf4], eax
mov word [rsp + 0x2a9], ax
lea rcx, [rsp + 0x220]
xor edx, edx
call fcn.1804db0b0
lea rcx, [rax + 1]
cmp r15, rcx
cmova rcx, r15
test rax, rax
cmove rcx, r15
mov r9, qword [rsp + 0x570]
mov r14, qword [rsp + 0x70]
cmp r14b, 2
sete byte [rsp + 0x28]
movzx eax, byte [rsp + 0x44]
mov byte [rsp + 0x30], al
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x220]
mov rdx, qword [rsp + 0x50]
mov r8, rdi
call fcn.1804ec7b0
movzx eax, byte [rsp + 0x248]
mov r9, qword [rsp + 0x220]
mov r8, qword [rsp + 0x228]
mov rdx, qword [rsp + 0x230]
mov rcx, qword [rsp + 0x238]
cmp al, 2
jne 0x1804d80c6
mov qword [rsi + 8], r9
mov qword [rsi + 0x10], r8
mov qword [rsi + 0x18], rdx
mov qword [rsi + 0x20], rcx
mov qword [rsi], 3
mov r15, qword [rsp + 0x68]
mov r12, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x48]
mov r14, qword [rsp + 0x88]
cmp dword [rsp + 0x4f0], 2
je 0x1804d7fa3
mov rdx, qword [rsp + 0x618]
test rdx, rdx
je 0x1804d7fa3
mov rcx, qword [rsp + 0x620]
shl rdx, 4
mov r8d, 8
call fcn.1804cafa0
mov rax, qword [rsp + 0x120]
test rax, rax
je 0x1804d7fcb
mov rcx, qword [rsp + 0x128]
shl rax, 3
lea rdx, [rax + rax*2]
mov r8d, 8
call fcn.1804cafa0
mov rdx, qword [rsp + 0x200]
test rdx, rdx
je 0x1804d7fef
mov rcx, qword [rsp + 0x208]
shl rdx, 4
mov r8d, 8
call fcn.1804cafa0
mov rdx, qword [rsp + 0x1e8]
test rdx, rdx
je 0x1804d8013
mov rcx, qword [rsp + 0x1f0]
shl rdx, 4
mov r8d, 8
call fcn.1804cafa0
test r14, r14
je 0x1804d802d
shl r14, 4
mov r8d, 8
mov rcx, rbx
mov rdx, r14
call fcn.1804cafa0
test rdi, rdi
je 0x1804d804d
shl rdi, 3
lea rdx, [rdi + rdi*2]
mov r8d, 8
mov rcx, qword [rsp + 0x1c8]
call fcn.1804cafa0
mov rax, qword [rsp + 0x1d8]
test rax, rax
je 0x1804d8075
shl rax, 3
lea rdx, [rax + rax*2]
mov r8d, 8
mov rcx, qword [rsp + 0x1d0]
call fcn.1804cafa0
test r12, r12
je 0x1804d8090
shl r12, 3
lea rdx, [r12 + r12*8]
mov r8d, 8
mov rcx, rbp
call fcn.1804cafa0
test r15, r15
je 0x1804d80a7
imul rdx, r15, 0x38
mov r8d, 8
mov rcx, r13
call fcn.1804cafa0
mov rax, rsi
movaps xmm6, xmmword [rsp + 0x640]
add rsp, 0x658
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov qword [rsp + 0x390], r9
mov qword [rsp + 0x398], r8
mov qword [rsp + 0x3a0], rdx
mov qword [rsp + 0x3a8], rcx
mov byte [rsp + 0x45], al
mov ecx, dword [rsp + 0x9c]
shr ecx, 0x1b
and cl, 1
mov rax, qword [rsp + 0x198]
add rax, rbx
mov qword [rsp + 0x3b0], rax
mov rax, qword [rsp + 0x160]
lea rax, [r12 + rax]
mov qword [rsp + 0x3c0], rax
mov rax, qword [rsp + 0x158]
mov rdx, qword [rsp + 0xa0]
lea rax, [rdx + rax]
mov qword [rsp + 0x3c8], rax
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0x380], rax
movzx eax, byte [rsp + 0x249]
mov qword [rsp + 0x388], rax
mov eax, dword [rsp + 0x24a]
mov dword [rsp + 0x100], eax
movzx eax, word [rsp + 0x24e]
mov word [rsp + 0x104], ax
xor cl, 1
mov dword [rsp + 0x9c], ecx
mov al, 1
mov qword [rsp + 0x3b8], rax
jmp 0x1804d6aa2