Function at 0x49b860
Capabilities:
Hash data using fnv

Disassembly:
lea r12, [rsp - 0x668]
cmp r12, qword [r14 + 0x10]
jbe 0x49debe
push rbp
mov rbp, rsp
sub rsp, 0x6e0
mov qword [rsp + 0x6f0], rax
movq qword [rsp + 0x6d8], xmm15
mov byte [rsp + 0x6f], 0
movups xmmword [rsp + 0x2d8], xmm15
xor ecx, ecx
xor edx, edx
jmp 0x49b8b9
lea rsi, [0x006770d4]
movzx edi, byte [rcx + rsi]
imul edx, edx, 0x1000193
inc rcx
xor edx, edi
cmp rcx, 8
jl 0x49b8a3
mov qword [rsp + 0x6f0], rax
mov qword [rsp + 0x6f8], rbx
mov dword [rsp + 0x158], edx
lea rax, [0x00652f80]
mov rcx, rbx
call fcn.00452e20
mov qword [rsp + 0x458], rax
movups xmmword [rsp + 0x114], xmm15
movups xmmword [rsp + 0x124], xmm15
movups xmmword [rsp + 0x134], xmm15
movups xmmword [rsp + 0x144], xmm15
movups xmmword [rsp + 0x6a8], xmm15
movups xmmword [rsp + 0x6b8], xmm15
movups xmmword [rsp + 0x6c8], xmm15
lea rdi, [rsp + 0x618]
lea rdi, [rdi - 0x30]
nop dword [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046fff9
mov rbp, qword [rbp]
lea rdx, [rsp + 0x618]
mov qword [rsp + 0x6b8], rdx
call fcn.0044e220
mov dword [rsp + 0x6b4], eax
movabs rdx, 0x7b20746375727473
mov qword [rsp + 0x114], rdx
mov rdx, qword [rsp + 0x6f0]
mov rcx, qword [rsp + 0x6f8]
mov esi, dword [rsp + 0x158]
xor eax, eax
xor ebx, ebx
xor edi, edi
xor r8d, r8d
xor r9d, r9d
xor r10d, r10d
xor r11d, r11d
mov r12d, 0x40
lea r13, [rsp + 0x114]
mov r15d, 8
mov eax, 1
mov byte [rsp + 0x6b], al
xor eax, eax
mov qword [rsp + 0x210], rax
xor eax, eax
mov byte [rsp + 0x6d], al
xor eax, eax
mov qword [rsp + 0x1d0], rax
xor eax, eax
jmp 0x49ba71
mov qword [r9 + r15*8], rdi
mov qword [r9 + r15*8 + 8], r8
mov rdi, qword [rsp + 0x450]
add rdi, 0x68
lea r8, [r10 + 1]
mov r10, qword [rsp + 0x6f8]
mov r15, qword [rsp + 0x1e0]
mov r9, qword [rsp + 0x1d8]
mov r10, qword [rsp + 0x320]
mov r15, rdx
mov byte [rsp + 0x6b], r11b
mov qword [rsp + 0x210], r13
mov byte [rsp + 0x6d], sil
mov qword [rsp + 0x1d0], r12
mov rdx, rdi
mov rdi, qword [rsp + 0x200]
mov r11, qword [rsp + 0x1e0]
mov esi, ebx
mov r12, rax
mov r13, rcx
mov rcx, qword [rsp + 0x6f8]
mov rax, r8
movzx ebx, byte [rsp + 0x6c]
mov r8, qword [rsp + 0x3d8]
mov qword [rsp + 0x3d8], r8
mov qword [rsp + 0x200], rdi
mov qword [rsp + 0x320], r10
mov qword [rsp + 0x1d8], r9
mov qword [rsp + 0x3e0], r13
mov qword [rsp + 0x220], r12
mov qword [rsp + 0x218], r15
mov dword [rsp + 0x154], esi
mov byte [rsp + 0x6c], bl
cmp rcx, rax
jle 0x49c510
mov rcx, qword [rdx]
mov qword [rsp + 0x370], rcx
lea rcx, [rdx + 8]
lea rdi, [rsp + 0x378]
mov rsi, rcx
nop word [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0047036c
mov rbp, qword [rbp]
mov rcx, qword [rsp + 0x378]
nop dword [rax + rax]
test rcx, rcx
je 0x49de59
mov qword [rsp + 0x450], rdx
mov qword [rsp + 0x1e0], r11
mov qword [rsp + 0x1f8], rax
mov rax, qword [rsp + 0x370]
mov rbx, rcx
call fcn.0049b740
test al, al
je 0x49de0b
cmp qword [rsp + 0x390], 0
je 0x49ddbf
mov rax, qword [rsp + 0x370]
mov qword [rsp], rax
lea rdi, [rsp + 8]
lea rsi, [rsp + 0x378]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0047036c
mov rbp, qword [rbp]
call fcn.0049e1e0
mov qword [rsp + 0x448], rbx
mov qword [rsp + 0x308], rax
mov qword [rsp + 0x310], rbx
mov qword [rsp + 0x318], rcx
movzx eax, byte [rbx + 0x17]
test al, 0x40
setne al
movzx ecx, byte [rsp + 0x6c]
or eax, ecx
mov byte [rsp + 0x6c], al
test rsi, rsi
je 0x49bc0f
mov rcx, qword [rsp + 0x200]
test rcx, rcx
je 0x49bc1f
mov qword [rsp + 0x2b0], rsi
mov qword [rsp + 0x440], rdi
cmp rsi, rcx
jne 0x49dd6b
mov rax, qword [rsp + 0x3d8]
mov rbx, rdi
call fcn.00406a20
test al, al
je 0x49dd6b
movzx eax, byte [rsp + 0x6c]
mov rbx, qword [rsp + 0x448]
mov rsi, qword [rsp + 0x200]
mov rdi, qword [rsp + 0x3d8]
jmp 0x49bc1f
mov rsi, qword [rsp + 0x200]
mov rdi, qword [rsp + 0x3d8]
mov qword [rsp + 0x200], rsi
mov qword [rsp + 0x3d8], rdi
mov rax, qword [rsp + 0x308]
call fcn.00401e60
nop dword [rax]
test rax, rax
je 0x49bc4a
mov rcx, rax
jmp 0x49bc54
mov rcx, rax
lea rax, [0x009c1e40]
nop
mov esi, dword [rsp + 0x154]
xor edx, edx
nop
jmp 0x49d48b
mov qword [rsp + 0x1c8], rbx
mov qword [rsp + 0x420], rcx
mov dword [rsp + 0x154], esi
lea rax, [rsp + 0xf4]
mov rdi, rcx
mov rsi, rbx
lea rbx, [0x006d6dc0]
mov ecx, 1
call fcn.00456c20
mov rdx, qword [rsp + 0x218]
lea r8, [rdx + rbx]
mov rcx, qword [rsp + 0x220]
cmp rcx, r8
jb 0x49bcbe
mov rsi, qword [rsp + 0x3e0]
jmp 0x49bd06
mov qword [rsp + 0x2a0], rbx
mov qword [rsp + 0x418], rax
mov rax, qword [rsp + 0x3e0]
mov rdi, rbx
lea rsi, [0x006224c0]
mov rbx, r8
call fcn.00452f00
mov rdx, qword [rsp + 0x218]
mov rsi, rax
mov r8, rbx
mov rax, qword [rsp + 0x418]
mov rbx, qword [rsp + 0x2a0]
mov qword [rsp + 0x3e0], rsi
mov qword [rsp + 0x220], rcx
mov qword [rsp + 0x218], r8
add rdx, rsi
mov rdi, rax
mov rax, rdx
mov r9, rbx
mov rbx, rdi
mov rcx, r9
call fcn.004706e0
mov rdx, qword [rsp + 0x308]
movzx edx, byte [rdx]
test dl, 8
je 0x49c01e
mov rsi, qword [rsp + 0x310]
movzx esi, byte [rsi + 0x17]
and esi, 0x1f
cmp rsi, 0x16
jne 0x49bdd9
mov rax, qword [rsp + 0x448]
movzx r8d, byte [rax + 0x17]
and r8d, 0x1f
cmp r8, 0x12
ja 0x49bd8e
cmp r8, 0x11
jne 0x49bd82
mov r8, qword [rax + 0x30]
nop
jmp 0x49bdbb
cmp r8, 0x12
jne 0x49bdb8
mov r8, qword [rax + 0x30]
jmp 0x49bdbb
cmp r8, 0x15
jne 0x49bda0
mov r8, qword [rax + 0x38]
jmp 0x49bdbb
cmp r8, 0x16
jne 0x49bdac
mov r8, qword [rax + 0x30]
jmp 0x49bdbb
cmp r8, 0x17
jne 0x49bdb8
mov r8, qword [rax + 0x30]
jmp 0x49bdbb
xor r8d, r8d
movzx r8d, byte [r8 + 0x17]
and r8d, 0x1f
cmp r8, 0x16
je 0x49dd38
cmp r8, 0x14
jne 0x49bde1
jmp 0x49dd38
mov rax, qword [rsp + 0x448]
cmp rsi, 0x14
je 0x49bfe7
cmp rsi, 0x16
jne 0x49bee7
movzx esi, byte [rax + 0x14]
test sil, 1
jne 0x49be03
xor esi, esi
jmp 0x49be52
movzx esi, byte [rax + 0x17]
and esi, 0x1f
add rsi, 0xffffffffffffffef
cmp rsi, 8
ja 0x49be4e
lea rcx, [0x006db2a0]
jmp qword [rcx + rsi*8]
lea rsi, [rax + 0x30]
test rsi, rsi
je 0x49beca
mov r8, qword [rsp + 0x1f8]
nop
test r8, r8
jle 0x49be70
cmp word [rsi + 4], 0
ja 0x49dd25
mov r9, qword [rsp + 0x6f8]
nop dword [rax + rax]
cmp r9, 1
jg 0x49dd0f
movzx edx, word [rsi + 4]
test dx, dx
jne 0x49be99
xor esi, esi
xor edx, edx
jmp 0x49bead
mov r10d, dword [rsi + 8]
add rsi, r10
cmp rdx, 0x10000
ja 0x49dd05
mov rcx, qword [rsp + 0x1e0]
mov rbx, qword [rsp + 0x320]
mov rdi, qword [rsp + 0x1d8]
jmp 0x49dba1
mov rcx, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x1d8]
mov rbx, qword [rsp + 0x320]
jmp 0x49d8b8
movzx esi, byte [rax + 0x14]
test sil, 1
je 0x49bf48
movzx esi, byte [rax + 0x17]
and esi, 0x1f
add rsi, 0xffffffffffffffef
nop dword [rax]
cmp rsi, 8
ja 0x49bf42
lea rcx, [0x006db300]
jmp qword [rcx + rsi*8]
lea rsi, [rax + 0x30]
jmp 0x49bf4a
xor esi, esi
test rsi, rsi
je 0x49bfca
mov r8, qword [rsp + 0x1f8]
test r8, r8
jle 0x49bf67
cmp word [rsi + 4], 0
ja 0x49d8a5
mov r9, qword [rsp + 0x6f8]
cmp r9, 1
jle 0x49bf8a
movzx r10d, byte [rax + 0x17]
nop word [rax + rax]
test r10b, 0x20
jne 0x49d891
movzx edx, word [rsi + 4]
test dx, dx
jne 0x49bf99
xor esi, esi
xor edx, edx
jmp 0x49bfad
mov r10d, dword [rsi + 8]
add rsi, r10
cmp rdx, 0x10000
ja 0x49d887
mov rcx, qword [rsp + 0x1e0]
mov rbx, qword [rsp + 0x320]
mov rdi, qword [rsp + 0x1d8]
jmp 0x49d723
mov rcx, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x1d8]
mov rbx, qword [rsp + 0x320]
jmp 0x49d6ad
mov rdx, qword [rax + 0x38]
mov qword [rsp + 0x410], rdx
mov rsi, qword [rax + 0x40]
mov qword [rsp + 0x2a0], rsi
xor ecx, ecx
mov rbx, qword [rsp + 0x1e0]
mov rdi, qword [rsp + 0x320]
mov r8, qword [rsp + 0x1d8]
jmp 0x49d583
mov rax, qword [rsp + 0x1e0]
mov rcx, qword [rsp + 0x1d8]
mov rdx, qword [rsp + 0x320]
mov qword [rsp + 0x1e0], rax
mov qword [rsp + 0x1d8], rcx
mov qword [rsp + 0x320], rdx
lea rbx, [rsp + 0x6a8]
mov rdi, qword [rsp + 0x1c8]
lea rax, [0x006355c0]
mov rcx, qword [rsp + 0x420]
call fcn.00417080
test bl, bl
je 0x49c09c
mov rdi, qword [rsp + 0x1c8]
nop
cmp rdi, 1
jne 0x49d51f
mov rcx, qword [rsp + 0x420]
cmp byte [rcx], 0x5f
je 0x49c0ac
jmp 0x49d4f2
mov rcx, qword [rsp + 0x420]
mov rdi, qword [rsp + 0x1c8]
lea rax, [0x006355c0]
lea rbx, [rsp + 0x6a8]
nop dword [rax + rax]
call fcn.00417460
test byte [rax], al
mov dword [rsp + 0xf0], 0
mov rax, qword [rsp + 0x448]
mov edx, dword [rax + 0x10]
shr edx, 0x18
mov byte [rsp + 0xf0], dl
mov edx, dword [rax + 0x10]
shr edx, 0x10
mov byte [rsp + 0xf1], dl
mov edx, dword [rax + 0x10]
shr edx, 8
mov byte [rsp + 0xf2], dl
mov edx, dword [rax + 0x10]
mov byte [rsp + 0xf3], dl
mov edx, dword [rsp + 0x154]
xor ecx, ecx
jmp 0x49d4a8
mov dword [rsp + 0x154], edx
nop
call fcn.00494ee0
mov ecx, 1
mov rdi, rax
mov rsi, rbx
lea rax, [rsp + 0xd0]
lea rbx, [0x006d6dc0]
call fcn.00456c20
mov rcx, qword [rsp + 0x218]
lea rdx, [rcx + rbx]
mov rsi, qword [rsp + 0x220]
cmp rsi, rdx
jb 0x49c168
mov rdi, qword [rsp + 0x3e0]
jmp 0x49c1b6
mov qword [rsp + 0x420], rax
mov qword [rsp + 0x2a0], rbx
mov rax, qword [rsp + 0x3e0]
mov rcx, rsi
mov rdi, rbx
lea rsi, [0x006224c0]
mov rbx, rdx
call fcn.00452f00
mov rdi, rax
mov rsi, rcx
mov rdx, rbx
mov rax, qword [rsp + 0x420]
mov rcx, qword [rsp + 0x218]
mov rbx, qword [rsp + 0x2a0]
mov qword [rsp + 0x3e0], rdi
mov qword [rsp + 0x218], rdx
mov qword [rsp + 0x220], rsi
lea r8, [rdi + rcx]
mov rcx, rbx
mov rbx, rax
mov rax, r8
nop dword [rax + rax]
call fcn.004706e0
mov rax, qword [rsp + 0x308]
movzx edx, byte [rax]
test dl, 2
jne 0x49c219
mov rax, qword [rsp + 0x220]
mov rcx, qword [rsp + 0x3e0]
mov rdx, qword [rsp + 0x218]
mov ebx, dword [rsp + 0x154]
jmp 0x49c3a4
call fcn.00401f20
nop
test rax, rax
jne 0x49c22c
lea rax, [0x009c1e40]
nop
mov edx, dword [rsp + 0x154]
xor ecx, ecx
jmp 0x49d4c2
mov dword [rsp + 0x154], edx
mov rax, qword [rsp + 0x308]
call fcn.00401f20
mov qword [rsp + 0x338], rax
mov qword [rsp + 0x1e8], rbx
lea rcx, [rbx + rbx*2]
mov rdx, rcx
shr rcx, 0x3f
add rcx, rdx
sar rcx, 1
mov qword [rsp + 0x2a0], rcx
nop
lea rax, [0x006224c0]
xor ebx, ebx
call fcn.00452e20
xor ebx, ebx
mov rcx, qword [rsp + 0x2a0]
mov rdi, qword [rsp + 0x338]
mov rsi, qword [rsp + 0x1e8]
mov r8d, 0x22
xor r9d, r9d
mov r10d, r9d
call fcn.0048a680
mov rcx, rbx
mov rbx, rax
lea rax, [rsp + 0xb0]
call fcn.00456fa0
mov ecx, 1
mov rdi, rax
mov rsi, rbx
lea rax, [rsp + 0x90]
lea rbx, [0x006d6dc0]
nop
call fcn.00456c20
mov rcx, qword [rsp + 0x218]
lea rdx, [rcx + rbx]
mov rsi, qword [rsp + 0x220]
cmp rsi, rdx
jb 0x49c308
mov rdi, qword [rsp + 0x3e0]
jmp 0x49c356
mov qword [rsp + 0x2a0], rbx
mov qword [rsp + 0x420], rax
mov rax, qword [rsp + 0x3e0]
mov rcx, rsi
mov rdi, rbx
lea rsi, [0x006224c0]
mov rbx, rdx
call fcn.00452f00
mov rdi, rax
mov rdx, rbx
mov rsi, rcx
mov rax, qword [rsp + 0x420]
mov rcx, qword [rsp + 0x218]
mov rbx, qword [rsp + 0x2a0]
mov qword [rsp + 0x218], rdx
mov qword [rsp + 0x3e0], rdi
mov qword [rsp + 0x220], rsi
lea r8, [rdi + rcx]
mov rcx, rbx
mov rbx, rax
mov rax, r8
nop dword [rax + rax]
call fcn.004706e0
mov rax, qword [rsp + 0x220]
mov rcx, qword [rsp + 0x3e0]
mov rdx, qword [rsp + 0x218]
mov ebx, dword [rsp + 0x154]
mov r8, qword [rsp + 0x6f8]
lea r9, [r8 - 1]
mov r10, qword [rsp + 0x1f8]
cmp r10, r9
jge 0x49c411
inc rdx
cmp rax, rdx
jae 0x49c40c
mov dword [rsp + 0x17c], ebx
mov rbx, rdx
mov edi, 1
lea rsi, [0x006224c0]
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call fcn.00452f00
mov r8, qword [rsp + 0x6f8]
mov r10, qword [rsp + 0x1f8]
mov rdx, rbx
mov ebx, dword [rsp + 0x17c]
mov rsi, rcx
mov rcx, rax
mov rax, rsi
mov byte [rdx + rcx - 1], 0x3b
movzx r9d, byte [rsp + 0x6b]
test r9b, r9b
je 0x49c42f
mov r9, qword [rsp + 0x448]
cmp qword [r9 + 0x18], 0
setne r11b
jmp 0x49c43a
mov r9, qword [rsp + 0x448]
xor r11d, r11d
movzx r12d, byte [r9 + 0x15]
mov r13, qword [rsp + 0x210]
lea r15, [r13 + r12]
lea r15, [r15 - 1]
mov esi, r12d
neg r12
and r12, r15
nop dword [rax]
cmp r13, r12
ja 0x49d4df
movzx r13d, byte [rsp + 0x6d]
cmp r13b, sil
jb 0x49c477
mov esi, r13d
mov r13, qword [r9]
add r13, r12
nop dword [rax]
cmp r12, r13
ja 0x49d4cc
mov qword [rsp + 0x318], r12
lea r15, [r10 + r10*2]
mov rdi, qword [rsp + 0x308]
mov r8, qword [rsp + 0x310]
cmp qword [r9], 0
mov r9, qword [rsp + 0x458]
mov qword [r9 + r15*8 + 0x10], r12
mov r12, qword [rsp + 0x1d0]
cmove r12, r13
cmp dword [0x009c2100], 0
je 0x49b9e8
mov qword [rsp + 0x288], rax
mov byte [rsp + 0x6e], r11b
nop dword [rax]
call fcn.0046f9c0
mov qword [r11], rdi
mov rax, qword [r9 + r15*8]
mov qword [r11 + 8], rax
mov qword [r11 + 0x10], r8
mov rax, qword [r9 + r15*8 + 8]
mov qword [r11 + 0x18], rax
mov rax, qword [rsp + 0x288]
movzx r11d, byte [rsp + 0x6e]
jmp 0x49b9e8
mov rdx, qword [rsp + 0x210]
test rdx, rdx
jbe 0x49c537
mov r11, qword [rsp + 0x1d0]
cmp r11, rdx
jne 0x49c537
cmp rdx, 0xffffffffffffffff
je 0x49d467
inc rdx
mov qword [rsp + 0x210], rdx
nop
test r9, r9
je 0x49c82f
mov rax, rdi
lea rdi, [rsp + 0x5c8]
lea rdi, [rdi - 0x30]
nop dword [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00470010
mov rbp, qword [rbp]
lea r11, [0x0063fcc0]
mov qword [rsp + 0x360], r11
lea r11, [rsp + 0x5c8]
mov qword [rsp + 0x368], r11
mov r11, qword [rsp + 0x360]
test r11, r11
je 0x49c5a8
lea rdi, [0x006dde00]
jmp 0x49c5ad
xor edi, edi
xor r11d, r11d
movups xmmword [rsp + 0x198], xmm15
lea r8, [0x0065eaa0]
mov qword [rsp + 0x350], r8
lea r8, [rsp + 0x198]
mov qword [rsp + 0x358], r8
mov r8, qword [rsp + 0x350]
nop dword [rax]
test r8, r8
je 0x49c5fe
mov qword [rsp + 0x230], rax
lea rax, [0x006dde00]
mov qword [rsp + 0x1a8], rax
jmp 0x49c60c
xor r8d, r8d
mov qword [rsp + 0x1a8], r8
xor r8d, r8d
mov qword [rsp + 0x2c8], r8
mov qword [rsp + 0x2d0], r11
mov qword [rsp + 0x1b0], rdi
mov rbx, qword [r10 + 8]
mov rax, qword [r10]
mov qword [rsp + 0x188], rax
mov qword [rsp + 0x190], rbx
lea rdx, [0x0065b440]
mov qword [rsp + 0x340], rdx
lea rdx, [rsp + 0x188]
mov qword [rsp + 0x348], rdx
mov rdx, qword [rsp + 0x340]
test rdx, rdx
je 0x49c670
lea rbx, [0x006dde00]
jmp 0x49c674
xor ebx, ebx
xor edx, edx
mov rax, r9
mov rcx, rdx
call fcn.0049e500
mov rdx, qword [0x006de038]
mov qword [rsp + 0x490], rdx
lea rdi, [rsp + 0x498]
lea rsi, [0x006de040]
nop dword [rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004702b6
mov rbp, qword [rbp]
mov rdx, qword [rsp + 0x1b0]
mov qword [rsp + 0x4b0], rdx
mov rdx, qword [rsp + 0x2d0]
mov qword [rsp + 0x4b8], rdx
mov rdx, qword [rsp + 0x1a8]
mov qword [rsp + 0x518], rdx
mov rdx, qword [rsp + 0x2c8]
mov qword [rsp + 0x520], rdx
mov qword [rsp + 0x580], rax
mov qword [rsp + 0x588], rbx
lea rax, [rsp + 0x490]
mov ebx, 3
mov rcx, rbx
call fcn.0049b860
call fcn.004aac80
mov qword [rsp + 0x448], rax
mov qword [rsp + 0x450], rbx
mov qword [rsp + 0x2a8], rcx
call fcn.004a42c0
xor edi, edi
nop dword [rax]
call fcn.004a4480
call fcn.004a0560
call fcn.004aa4c0
mov qword [rsp + 0x438], rax
mov rbx, qword [rsp + 0x450]
mov rcx, qword [rsp + 0x2a8]
mov rax, qword [rsp + 0x448]
call fcn.004a42c0
mov edi, 1
call fcn.004a4480
nop
call fcn.004a0560
call fcn.004aa4c0
mov qword [rsp + 0x430], rax
mov rbx, qword [rsp + 0x450]
mov rcx, qword [rsp + 0x2a8]
mov rax, qword [rsp + 0x448]
call fcn.004a42c0
mov edi, 2
call fcn.004a4480
xor edi, edi
mov rsi, qword [rsp + 0x1d8]
call fcn.004a9840
mov edi, 1
call fcn.004a5340
lea rdx, [0x0061f940]
nop dword [rax]
cmp rax, rdx
jne 0x49d458
mov rax, qword [rbx]
mov rcx, qword [rbx + 8]
mov rdx, qword [rsp + 0x1d8]
cmp rdx, rcx
cmovl rcx, rdx
mov rbx, qword [rsp + 0x320]
cmp rbx, rax
je 0x49c81d
shl rcx, 4
call fcn.004706e0
mov rdx, qword [rsp + 0x1d8]
mov rcx, qword [rsp + 0x430]
mov rax, qword [rsp + 0x438]
jmp 0x49c83f
lea rax, [0x00648460]
call fcn.00412000
lea rcx, [rax + 0x50]
mov qword [rsp + 0x3e8], rax
mov rdx, qword [rsp + 0x1d8]
mov word [rcx + 4], dx
mov word [rcx + 6], dx
mov dword [rcx + 8], 0x10
mov r8, qword [rsp + 0x6f8]
test r8, r8
je 0x49c8ca
mov rbx, qword [rsp + 0x218]
inc rbx
mov rcx, qword [rsp + 0x220]
nop
cmp rcx, rbx
jb 0x49c88f
mov rsi, qword [rsp + 0x3e0]
jmp 0x49c8c3
mov rax, qword [rsp + 0x3e0]
mov edi, 1
lea rsi, [0x006224c0]
call fcn.00452f00
mov rdx, qword [rsp + 0x1d8]
mov r8, qword [rsp + 0x6f8]
mov rsi, rax
mov rax, qword [rsp + 0x3e8]
mov byte [rbx + rsi - 1], 0x20
jmp 0x49c8e2
mov rcx, qword [rsp + 0x220]
mov rbx, qword [rsp + 0x218]
mov rsi, qword [rsp + 0x3e0]
inc rbx
cmp rcx, rbx
jae 0x49c919
mov rax, rsi
mov edi, 1
lea rsi, [0x006224c0]
call fcn.00452f00
mov rdx, qword [rsp + 0x1d8]
mov r8, qword [rsp + 0x6f8]
mov rsi, rax
mov rax, qword [rsp + 0x3e8]
mov byte [rbx + rsi - 1], 0x7d
nop
mov edi, dword [rsp + 0x154]
xor ecx, ecx
jmp 0x49c938
imul edi, edi, 0x1000193
xor edi, 0x7d
mov ecx, 1
test rcx, rcx
jle 0x49c92a
mov dword [rsp + 0x154], edi
lea rax, [rsp + 0x70]
mov rcx, rbx
mov rbx, rsi
call fcn.00456fa0
movzx edx, byte [rsp + 0x6d]
movzx esi, dl
mov rdi, qword [rsp + 0x210]
lea r8, [rdi + rsi]
lea r8, [r8 - 1]
neg rsi
and rsi, r8
nop
cmp rdi, rsi
ja 0x49d445
mov qword [rsp + 0x1c0], rbx
mov qword [rsp + 0x2e8], rax
mov qword [rsp + 0x210], rsi
lea r9, [0x0062efe0]
mov qword [rsp + 0x328], r9
lea r9, [0x009c1e40]
mov qword [rsp + 0x330], r9
mov rdi, qword [rsp + 0x3e8]
test byte [rdi], al
mov rcx, qword [rsp + 0x328]
test byte [rcx], al
cmp dword [0x009c2100], 0
je 0x49ca2b
mov qword [rsp + 0x2f0], rcx
call fcn.0046f980
mov rdx, qword [rsp + 0x458]
mov qword [r11], rdx
mov rsi, qword [rdi + 0x38]
mov qword [r11 + 8], rsi
lea rax, [0x0063fcc0]
mov rbx, rdi
call fcn.00418120
mov rax, qword [rsp + 0x2e8]
mov rcx, qword [rsp + 0x2f0]
movzx edx, byte [rsp + 0x6d]
mov rbx, qword [rsp + 0x1c0]
mov rsi, qword [rsp + 0x210]
mov rdi, qword [rsp + 0x3e8]
mov rsi, rcx
nop word [rax + rax]
nop word [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0047037a
mov rbp, qword [rbp]
mov r9, qword [rsp + 0x6f8]
mov r10, qword [rsp + 0x3e8]
mov qword [r10 + 0x40], r9
mov qword [r10 + 0x48], r9
mov r11, qword [rsp + 0x458]
mov qword [r10 + 0x38], r11
mov r12, qword [rsp + 0x200]
nop
test r12, r12
je 0x49cace
nop
mov rax, qword [rsp + 0x3d8]
mov rbx, r12
xor ecx, ecx
xor edi, edi
xor esi, esi
mov r8d, esi
call fcn.00402040
cmp dword [0x009c2100], 0
jne 0x49cab2
mov rdx, qword [rsp + 0x3e8]
jmp 0x49caca
call fcn.0046f980
mov qword [r11], rax
mov rdx, qword [rsp + 0x3e8]
mov rsi, qword [rdx + 0x30]
mov qword [r11 + 8], rsi
mov qword [rdx + 0x30], rax
mov edx, dword [rsp + 0x154]
mov dword [rsp + 0x184], edx
lea rax, [0x0093c908]
lea rbx, [0x006225c0]
lea rcx, [rsp + 0x184]
call fcn.0048c540
test cl, cl
je 0x49cb17
lea rdx, [0x0061fbc0]
cmp rax, rdx
jne 0x49d431
mov rsi, qword [rbx]
mov rdi, qword [rbx + 8]
jmp 0x49d3b1
nop
xor eax, eax
lea rdx, [0x0093c900]
mov esi, 1
lock cmpxchg dword [rdx], esi
sete dl
test dl, dl
jne 0x49cb3d
lea rax, [0x0093c900]
call fcn.0048d5c0
movups xmmword [rsp + 0x480], xmm15
lea rdx, [0x0049e140]
mov qword [rsp + 0x480], rdx
lea rdx, [0x0093c900]
mov qword [rsp + 0x488], rdx
lea rdx, [rsp + 0x480]
mov qword [rsp + 0x6d8], rdx
mov byte [rsp + 0x6f], 1
mov edx, dword [rsp + 0x154]
mov dword [rsp + 0x180], edx
lea rax, [0x0093c908]
lea rbx, [0x006225c0]
lea rcx, [rsp + 0x180]
nop dword [rax]
call fcn.0048c540
test cl, cl
je 0x49cbc5
lea rdx, [0x0061fbc0]
cmp rax, rdx
jne 0x49d384
mov rcx, qword [rbx]
mov rdx, qword [rbx + 8]
jmp 0x49d2e5
mov qword [rsp + 0x2b8], 0
mov dword [rsp + 0x2c0], 0
lea rcx, [0x0049dfc0]
mov qword [rsp + 0x2b8], rcx
mov ecx, dword [rsp + 0x154]
mov dword [rsp + 0x2c0], ecx
mov rax, qword [rsp + 0x2e8]
mov rbx, qword [rsp + 0x1c0]
call fcn.00499420
mov qword [rsp + 0x428], rax
mov qword [rsp + 0x2b0], rbx
xor ecx, ecx
jmp 0x49cc40
mov rcx, qword [rsp + 0x2a0]
inc rcx
mov rax, qword [rsp + 0x428]
mov rbx, qword [rsp + 0x2b0]
nop dword [rax]
cmp rbx, rcx
jle 0x49cce2
mov qword [rsp + 0x2a0], rcx
mov rbx, qword [rax + rcx*8]
mov qword [rsp + 0x2f8], rbx
mov rax, qword [rsp + 0x3e8]
mov ecx, 1
call fcn.00498cc0
test al, al
je 0x49cc22
mov rcx, qword [rsp + 0x2f8]
nop dword [rax + rax]
test rcx, rcx
je 0x49cc8e
lea rax, [0x006dde00]
jmp 0x49cc92
xor eax, eax
xor ecx, ecx
mov rsi, qword [rsp + 0x2b8]
mov rbx, rcx
lea rdx, [rsp + 0x2b8]
call rsi
mov qword [rsp + 0x2d8], rax
mov qword [rsp + 0x2e0], rbx
mov byte [rsp + 0x6f], 0
mov rdx, qword [rsp + 0x6d8]
mov rcx, qword [rdx]
call rcx
mov rax, qword [rsp + 0x2d8]
mov rbx, qword [rsp + 0x2e0]
add rsp, 0x6e0
pop rbp
ret
nop
mov rax, qword [rsp + 0x2e8]
mov rbx, qword [rsp + 0x1c0]
xor ecx, ecx
xor edi, edi
xor esi, esi
mov r8d, esi
nop dword [rax]
call fcn.00402040
nop
call fcn.0046b200
mov rdx, qword [rsp + 0x3e8]
mov dword [rdx + 0x28], eax
mov byte [rdx + 0x14], 0
mov r9d, dword [rsp + 0x154]
mov dword [rdx + 0x10], r9d
mov r9, qword [rsp + 0x210]
mov qword [rdx], r9
mov rax, rdx
call fcn.0049e400
mov rcx, qword [rsp + 0x3e8]
mov qword [rcx + 8], rax
movzx edx, byte [rsp + 0x6d]
mov byte [rcx + 0x15], dl
mov byte [rcx + 0x16], dl
mov dword [rcx + 0x2c], 0
mov rdx, qword [rsp + 0x1d8]
nop
test rdx, rdx
je 0x49cd6f
movzx edx, byte [rcx + 0x14]
or edx, 1
mov byte [rcx + 0x14], dl
movzx edx, byte [rsp + 0x6c]
test dl, dl
je 0x49cd94
mov rdx, qword [rsp + 0x458]
mov rbx, rdx
mov rsi, qword [rsp + 0x6f8]
xor eax, eax
xor edi, edi
jmp 0x49cf37
movzx edx, byte [rcx + 0x17]
and edx, 0xffffffbf
mov byte [rcx + 0x17], dl
mov dword [rsp + 0x460], 0
mov qword [rsp + 0x468], 0
movups xmmword [rsp + 0x470], xmm15
lea rax, [rsp + 0x460]
xor ebx, ebx
call fcn.0049f940
cmp qword [rsp + 0x470], 0
je 0x49ce11
mov rcx, qword [rsp + 0x468]
cmp dword [0x009c2100], 0
jne 0x49cdf3
mov rbx, qword [rsp + 0x3e8]
jmp 0x49ce0b
call fcn.0046f980
mov qword [r11], rcx
mov rbx, qword [rsp + 0x3e8]
mov rsi, qword [rbx + 0x20]
mov qword [r11 + 8], rsi
mov qword [rbx + 0x20], rcx
jmp 0x49ce19
mov rbx, qword [rsp + 0x3e8]
cmp dword [0x009c2100], 0
je 0x49ce2e
mov rcx, qword [rbx + 0x18]
call fcn.0046f960
mov qword [r11], rcx
mov qword [rbx + 0x18], 0
movzx ecx, byte [rsp + 0x6b]
test cl, cl
je 0x49ce8c
lea rax, [0x006451c0]
call fcn.00412000
lea rcx, [0x0049df00]
mov qword [rax], rcx
cmp dword [0x009c2100], 0
jne 0x49ce68
mov rbx, qword [rsp + 0x3e8]
jmp 0x49ce84
call fcn.0046f9a0
mov rbx, qword [rsp + 0x3e8]
mov qword [r11], rbx
mov qword [r11 + 8], rax
mov rcx, qword [rbx + 0x18]
mov qword [r11 + 0x10], rcx
mov qword [rax + 8], rbx
mov qword [rbx + 0x18], rax
mov rcx, qword [rsp + 0x6f8]
cmp rcx, 1
jne 0x49cebb
mov rcx, qword [rsp + 0x458]
mov rcx, qword [rcx + 8]
movzx ecx, byte [rcx + 0x17]
test cl, 0x20
je 0x49cebb
movzx ecx, byte [rbx + 0x17]
or ecx, 0x20
mov byte [rbx + 0x17], cl
jmp 0x49cec5
movzx ecx, byte [rbx + 0x17]
and ecx, 0xffffffdf
mov byte [rbx + 0x17], cl
mov rcx, qword [rsp + 0x2b8]
lea rax, [0x006dde00]
lea rdx, [rsp + 0x2b8]
call rcx
mov qword [rsp + 0x2d8], rax
mov qword [rsp + 0x2e0], rbx
mov byte [rsp + 0x6f], 0
mov rdx, qword [rsp + 0x6d8]
mov rcx, qword [rdx]
nop
call rcx
mov rax, qword [rsp + 0x2d8]
mov rbx, qword [rsp + 0x2e0]
add rsp, 0x6e0
pop rbp
ret
mov r8, rdx
mov r8, qword [r8 + 8]
add rdx, 0x18
lea r9, [rax + 1]
nop
cmp qword [r8 + 8], 0
cmovne rdi, rax
mov rax, r9
cmp rsi, rax
jg 0x49cf1b
mov qword [rsp + 0x208], rdi
lea rax, [0x00626d80]
call fcn.00412000
mov rcx, qword [rsp + 0x458]
mov rdx, rcx
mov rbx, qword [rsp + 0x6f8]
mov rsi, qword [rsp + 0x208]
xor edi, edi
mov r8d, 4
mov r9d, 4
xor r10d, r10d
jmp 0x49cf85
add rcx, 0x18
inc rdi
cmp rbx, rdi
jle 0x49d0e7
cmp rdi, rsi
jg 0x49d0e7
mov r11, qword [rcx + 8]
cmp qword [r11 + 8], 0
je 0x49cf7e
mov qword [rsp + 0x448], r11
mov qword [rsp + 0x450], rcx
mov qword [rsp + 0x1f0], rdi
mov r12, qword [rcx + 0x10]
nop
cmp r10, r12
jae 0x49d16f
mov qword [rsp + 0x298], r12
add r9, 2
mov r13, r12
sub r12, r10
nop dword [rax + rax]
cmp r8, r9
jae 0x49d04b
mov qword [rsp + 0x290], r12
mov rbx, r9
mov rcx, r8
mov edi, 2
lea rsi, [0x006224c0]
nop
call fcn.00452f00
mov rdx, qword [rsp + 0x458]
mov rsi, qword [rsp + 0x208]
mov rdi, qword [rsp + 0x1f0]
mov r11, qword [rsp + 0x448]
mov r12, qword [rsp + 0x290]
mov r13, qword [rsp + 0x298]
mov r9, rbx
mov r8, rcx
mov rcx, qword [rsp + 0x450]
mov rbx, qword [rsp + 0x6f8]
mov word [r9 + rax - 2], 1
shr r12, 3
nop word [rax + rax]
cmp r12, 1
jbe 0x49d1cc
inc r9
cmp r8, r9
jae 0x49d0d7
mov qword [rsp + 0x290], r12
mov rbx, r9
mov rcx, r8
mov edi, 1
lea rsi, [0x006224c0]
call fcn.00452f00
mov rdx, qword [rsp + 0x458]
mov rsi, qword [rsp + 0x208]
mov rdi, qword [rsp + 0x1f0]
mov r11, qword [rsp + 0x448]
mov r12, qword [rsp + 0x290]
mov r13, qword [rsp + 0x298]
mov r9, rbx
mov r8, rcx
mov rcx, qword [rsp + 0x450]
mov rbx, qword [rsp + 0x6f8]
mov byte [r9 + rax - 1], 0x81
lea r10, [r12 - 1]
jmp 0x49d1e4
inc r9
cmp r8, r9
jae 0x49d119
mov rbx, r9
mov rcx, r8
mov edi, 1
lea rsi, [0x006224c0]
call fcn.00452f00
mov rdx, qword [rsp + 0x458]
mov r9, rbx
mov rbx, qword [rsp + 0x6f8]
mov byte [r9 + rax - 1], 0
nop
test r9, r9
jbe 0x49d165
lea rcx, [r9 - 4]
mov dword [rax], ecx
mov rcx, qword [rsp + 0x3e8]
movzx esi, byte [rcx + 0x17]
or esi, 0x40
mov byte [rcx + 0x17], sil
cmp dword [0x009c2100], 0
je 0x49d157
call fcn.0046f980
mov qword [r11], rax
mov rsi, qword [rcx + 0x20]
mov qword [r11 + 8], rsi
mov qword [rcx + 0x20], rax
mov rbx, rcx
nop
jmp 0x49ce19
xor eax, eax
mov rcx, rax
call fcn.0046fd20
mov qword [rsp + 0x228], r10
mov rbx, r9
mov rcx, r8
mov rdi, r11
call fcn.0049af40
mov r10, qword [rsp + 0x228]
mov rdx, qword [rsp + 0x448]
add r10, qword [rdx + 8]
mov rdx, qword [rsp + 0x458]
mov rsi, qword [rsp + 0x208]
mov rdi, qword [rsp + 0x1f0]
mov r8, rcx
mov r9, rbx
mov rcx, qword [rsp + 0x450]
mov rbx, qword [rsp + 0x6f8]
jmp 0x49cf7e
mov r10, r13
jmp 0x49d16f
mov r12, r10
or r12, 0x80
mov byte [r9 + rax - 1], r12b
shr r10, 7
mov qword [rsp + 0x1b8], r10
cmp r10, 0x80
jb 0x49d25f
inc r9
cmp r8, r9
jae 0x49d1d1
mov rbx, r9
mov rcx, r8
mov edi, 1
lea rsi, [0x006224c0]
call fcn.00452f00
mov rdx, qword [rsp + 0x458]
mov rsi, qword [rsp + 0x208]
mov rdi, qword [rsp + 0x1f0]
mov r10, qword [rsp + 0x1b8]
mov r11, qword [rsp + 0x448]
mov r13, qword [rsp + 0x298]
mov r9, rbx
mov r8, rcx
mov rcx, qword [rsp + 0x450]
mov rbx, qword [rsp + 0x6f8]
jmp 0x49d1d1
inc r9
cmp r8, r9
jae 0x49d2c4
mov rbx, r9
mov rcx, r8
mov edi, 1
lea rsi, [0x006224c0]
call fcn.00452f00
mov rdx, qword [rsp + 0x458]
mov rsi, qword [rsp + 0x208]
mov rdi, qword [rsp + 0x1f0]
mov r10, qword [rsp + 0x1b8]
mov r11, qword [rsp + 0x448]
mov r13, qword [rsp + 0x298]
mov r9, rbx
mov r8, rcx
mov rcx, qword [rsp + 0x450]
mov rbx, qword [rsp + 0x6f8]
mov byte [r9 + rax - 1], r10b
jmp 0x49d1cc
mov rcx, qword [rsp + 0x450]
add rcx, 0x10
mov rdx, qword [rsp + 0x2b0]
dec rdx
test rdx, rdx
jle 0x49cbc5
mov qword [rsp + 0x2b0], rdx
mov qword [rsp + 0x450], rcx
mov rdx, qword [rcx]
mov rax, qword [rcx + 8]
mov rdx, qword [rdx + 0x100]
call rdx
mov qword [rsp + 0x448], rax
mov rbx, rax
mov ecx, 1
mov rax, qword [rsp + 0x3e8]
call fcn.00498cc0
test al, al
je 0x49d2ce
mov rax, qword [rsp + 0x448]
test rax, rax
je 0x49d345
lea rcx, [0x006dde00]
jmp 0x49d349
xor ecx, ecx
xor eax, eax
mov qword [rsp + 0x2d8], rcx
mov qword [rsp + 0x2e0], rax
mov byte [rsp + 0x6f], 0
mov rdx, qword [rsp + 0x6d8]
mov rax, qword [rdx]
call rax
mov rax, qword [rsp + 0x2d8]
mov rbx, qword [rsp + 0x2e0]
add rsp, 0x6e0
pop rbp
ret
mov rbx, rdx
lea rcx, [0x0062ffa0]
call fcn.0040ec80
mov rsi, qword [rsp + 0x450]
add rsi, 0x10
mov rdi, qword [rsp + 0x2b0]
dec rdi
lea rdx, [0x0061fbc0]
test rdi, rdi
jle 0x49cb17
mov qword [rsp + 0x2b0], rdi
mov qword [rsp + 0x450], rsi
mov rcx, qword [rsi]
mov rax, qword [rsi + 8]
mov rcx, qword [rcx + 0x100]
call rcx
mov qword [rsp + 0x300], rax
mov rbx, rax
mov ecx, 1
mov rax, qword [rsp + 0x3e8]
call fcn.00498cc0
test al, al
je 0x49d393
mov rcx, qword [rsp + 0x300]
test rcx, rcx
je 0x49d411
lea rax, [0x006dde00]
jmp 0x49d415
xor eax, eax
xor ecx, ecx
mov qword [rsp + 0x2d8], rax
mov qword [rsp + 0x2e0], rcx
mov rbx, rcx
add rsp, 0x6e0
pop rbp
ret
mov rbx, rdx
lea rcx, [0x0062ffa0]
nop dword [rax + rax]
call fcn.0040ec80
lea rax, [0x00622440]
lea rbx, [0x006d7870]
call fcn.0043c160
mov rbx, rdx
lea rcx, [0x0062ffa0]
call fcn.0040ec80
lea rax, [0x00622440]
lea rbx, [0x006d7870]
call fcn.0043c160
movzx r8d, byte [rdx + rax]
imul esi, esi, 0x1000193
inc rdx
xor esi, r8d
cmp rbx, rdx
jg 0x49d47a
jmp 0x49bc65
movzx ebx, byte [rsp + rcx + 0xf0]
imul edx, edx, 0x1000193
inc rcx
xor edx, ebx
cmp rcx, 4
jl 0x49d495
jmp 0x49c119
movzx esi, byte [rcx + rax]
imul edx, edx, 0x1000193
inc rcx
xor edx, esi
cmp rbx, rcx
jg 0x49d4b3
jmp 0x49c23b
lea rax, [0x00622440]
lea rbx, [0x006d7870]
call fcn.0043c160
lea rax, [0x00622440]
lea rbx, [0x006d7870]
call fcn.0043c160
xor eax, eax
lea rbx, [0x006827ad]
mov rsi, rdi
mov rdi, rcx
mov ecx, 0x22
call fcn.00456c20
call fcn.0040f0e0
mov rbx, rax
lea rax, [0x00622440]
call fcn.0043c160
mov rcx, qword [rsp + 0x420]
jmp 0x49d4f2
lea r9, [rbx - 1]
shl r9, 4
mov r10d, dword [rsp + 0x16c]
mov dword [rdx + r9], r10d
mov dword [rdx + r9 + 4], eax
mov r10d, dword [rsp + 0x170]
mov dword [rdx + r9 + 8], r10d
mov dword [rdx + r9 + 0xc], r10d
mov r9, qword [rsp + 0x270]
inc r9
mov rax, qword [rsp + 0x448]
mov rsi, qword [rsp + 0x2a0]
mov rdi, rdx
mov r8, rbx
mov rdx, qword [rsp + 0x410]
mov rbx, rcx
mov rcx, r9
cmp rcx, rsi
jge 0x49d68c
mov qword [rsp + 0x280], rbx
mov qword [rsp + 0x278], r8
mov qword [rsp + 0x408], rdi
mov qword [rsp + 0x270], rcx
mov ebx, dword [rdx + rcx*8]
mov dword [rsp + 0x178], ebx
mov esi, dword [rdx + rcx*8 + 4]
mov dword [rsp + 0x174], esi
nop
call fcn.0046b0c0
call fcn.00494d00
test rbx, rbx
jne 0x49d69a
mov rcx, qword [rsp + 0x278]
inc rcx
mov qword [rsp + 0x268], rcx
nop
lea rax, [0x0049e1a0]
call fcn.0046b200
mov dword [rsp + 0x170], eax
nop
nop
mov ebx, dword [rsp + 0x178]
mov rax, qword [rsp + 0x448]
call fcn.0046b0c0
nop
call fcn.0046b200
mov dword [rsp + 0x16c], eax
nop
nop
mov ebx, dword [rsp + 0x174]
mov rax, qword [rsp + 0x448]
call fcn.0046b100
nop
call fcn.0046b200
mov rcx, qword [rsp + 0x280]
mov rbx, qword [rsp + 0x268]
cmp rcx, rbx
jb 0x49d65d
mov rdx, qword [rsp + 0x408]
jmp 0x49d529
mov dword [rsp + 0x168], eax
mov rax, qword [rsp + 0x408]
mov edi, 1
lea rsi, [0x0065b440]
call fcn.00452f00
mov rdx, rax
mov eax, dword [rsp + 0x168]
jmp 0x49d529
mov rax, rbx
mov rcx, r8
mov rdx, rdi
jmp 0x49c036
lea rax, [0x00622440]
lea rbx, [0x006d7830]
call fcn.0043c160
mov r8, rdx
mov rdi, rbx
mov rbx, rcx
jmp 0x49d68c
lea r10, [rbx - 1]
shl r10, 4
mov r11d, dword [rsp + 0x170]
mov dword [rdx + r10], r11d
mov r11d, dword [rsp + 0x16c]
mov dword [rdx + r10 + 4], r11d
mov r11d, dword [rsp + 0x168]
mov dword [rdx + r10 + 8], r11d
mov dword [rdx + r10 + 0xc], eax
mov rsi, qword [rsp + 0x438]
add rsi, 0x10
mov r10, qword [rsp + 0x2a0]
dec r10
mov rax, qword [rsp + 0x448]
mov r8, qword [rsp + 0x1f8]
mov r9, qword [rsp + 0x6f8]
mov rdi, rbx
mov rbx, rdx
mov rdx, r10
test rdx, rdx
jle 0x49d86c
mov qword [rsp + 0x400], rbx
mov qword [rsp + 0x2a0], rdx
mov qword [rsp + 0x260], rdi
mov qword [rsp + 0x258], rcx
mov qword [rsp + 0x438], rsi
mov ebx, dword [rsi]
mov ecx, dword [rsi + 4]
mov dword [rsp + 0x174], ecx
mov edx, dword [rsi + 8]
mov dword [rsp + 0x164], edx
mov edi, dword [rsi + 0xc]
mov dword [rsp + 0x160], edi
nop
nop
call fcn.0046b0c0
mov qword [rsp + 0x430], rax
call fcn.00494d00
test rbx, rbx
jne 0x49d874
mov rcx, qword [rsp + 0x260]
inc rcx
mov qword [rsp + 0x270], rcx
nop
mov rax, qword [rsp + 0x430]
call fcn.0046b200
mov dword [rsp + 0x170], eax
nop
nop
mov ebx, dword [rsp + 0x174]
mov rax, qword [rsp + 0x448]
call fcn.0046b100
nop
call fcn.0046b200
mov dword [rsp + 0x16c], eax
nop
nop
mov ebx, dword [rsp + 0x164]
mov rax, qword [rsp + 0x448]
call fcn.0046b140
nop
call fcn.0046b200
mov dword [rsp + 0x168], eax
nop
nop
mov ebx, dword [rsp + 0x160]
mov rax, qword [rsp + 0x448]
call fcn.0046b140
nop
call fcn.0046b200
mov rcx, qword [rsp + 0x258]
mov rbx, qword [rsp + 0x270]
cmp rcx, rbx
jb 0x49d83d
mov rdx, qword [rsp + 0x400]
jmp 0x49d6b8
mov dword [rsp + 0x15c], eax
mov rax, qword [rsp + 0x400]
mov edi, 1
lea rsi, [0x0065b440]
call fcn.00452f00
mov rdx, rax
mov eax, dword [rsp + 0x15c]
jmp 0x49d6b8
mov rdx, rdi
jmp 0x49d6ad
lea rax, [0x00622440]
lea rbx, [0x006d7830]
call fcn.0043c160
mov ebx, 0x10000
call fcn.0046fe20
lea rax, [0x00622440]
lea rbx, [0x006d7860]
nop
call fcn.0043c160
lea rax, [0x00622440]
lea rbx, [0x006d7840]
call fcn.0043c160
mov rsi, qword [rax + 0x30]
movzx r8d, byte [rsi + 0x14]
test r8b, 1
je 0x49d91b
movzx r8d, byte [rsi + 0x17]
and r8d, 0x1f
add r8, 0xffffffffffffffef
cmp r8, 8
ja 0x49d915
lea rdi, [0x006db360]
jmp qword [rdi + r8*8]
add rsi, 0x30
jmp 0x49d920
xor esi, esi
nop dword [rax]
test rsi, rsi
je 0x49d950
movzx r8d, word [rsi + 4]
test r8w, r8w
jne 0x49d93a
xor esi, esi
xor r8d, r8d
jmp 0x49d9b9
mov r9d, dword [rsi + 8]
add rsi, r9
cmp r8, 0x10000
ja 0x49db29
jmp 0x49d9b9
mov r8, rdx
mov rdi, rbx
mov rbx, rcx
jmp 0x49d68c
lea r9, [rbx - 1]
shl r9, 4
mov r10d, dword [rsp + 0x170]
mov dword [rdx + r9], r10d
mov r10d, dword [rsp + 0x16c]
mov dword [rdx + r9 + 4], r10d
mov r10d, dword [rsp + 0x168]
mov dword [rdx + r9 + 8], r10d
mov dword [rdx + r9 + 0xc], eax
mov rsi, qword [rsp + 0x438]
add rsi, 0x10
mov r8, qword [rsp + 0x2a0]
dec r8
mov rax, qword [rsp + 0x448]
mov rdi, rbx
mov rbx, rdx
mov rdx, rdi
test r8, r8
jle 0x49d950
mov qword [rsp + 0x3f8], rbx
mov qword [rsp + 0x250], rdx
mov qword [rsp + 0x248], rcx
mov qword [rsp + 0x2a0], r8
mov qword [rsp + 0x438], rsi
mov ebx, dword [rsi]
mov ecx, dword [rsi + 4]
mov dword [rsp + 0x174], ecx
mov edx, dword [rsi + 8]
mov dword [rsp + 0x164], edx
mov edi, dword [rsi + 0xc]
mov dword [rsp + 0x160], edi
nop
nop
call fcn.0046b0c0
mov qword [rsp + 0x430], rax
call fcn.00494d00
nop word [rax + rax]
test rbx, rbx
jne 0x49db16
mov rcx, qword [rsp + 0x250]
inc rcx
mov qword [rsp + 0x270], rcx
nop
mov rax, qword [rsp + 0x430]
call fcn.0046b200
mov dword [rsp + 0x170], eax
mov rcx, qword [rsp + 0x448]
mov rdx, qword [rcx + 0x30]
nop
mov ebx, dword [rsp + 0x174]
mov rax, rdx
call fcn.0046b100
nop
call fcn.0046b200
mov dword [rsp + 0x16c], eax
mov rcx, qword [rsp + 0x448]
mov rdx, qword [rcx + 0x30]
nop
mov ebx, dword [rsp + 0x164]
mov rax, rdx
call fcn.0046b140
nop
call fcn.0046b200
mov dword [rsp + 0x168], eax
mov rcx, qword [rsp + 0x448]
mov rdx, qword [rcx + 0x30]
nop
mov ebx, dword [rsp + 0x160]
mov rax, rdx
call fcn.0046b140
nop
call fcn.0046b200
mov rcx, qword [rsp + 0x248]
mov rbx, qword [rsp + 0x270]
cmp rcx, rbx
jb 0x49dae7
mov rdx, qword [rsp + 0x3f8]
jmp 0x49d95e
mov dword [rsp + 0x15c], eax
mov rax, qword [rsp + 0x3f8]
mov edi, 1
lea rsi, [0x0065b440]
call fcn.00452f00
mov rdx, rax
mov eax, dword [rsp + 0x15c]
jmp 0x49d95e
lea rax, [0x00622440]
lea rbx, [0x006d7830]
call fcn.0043c160
mov edx, r8d
mov ebx, 0x10000
call fcn.0046fe20
lea r10, [rbx - 1]
shl r10, 4
mov r11d, dword [rsp + 0x170]
mov dword [rdx + r10], r11d
mov r11d, dword [rsp + 0x16c]
mov dword [rdx + r10 + 4], r11d
mov r11d, dword [rsp + 0x168]
mov dword [rdx + r10 + 8], r11d
mov dword [rdx + r10 + 0xc], eax
mov rsi, qword [rsp + 0x438]
add rsi, 0x10
mov r10, qword [rsp + 0x2a0]
dec r10
mov rax, qword [rsp + 0x448]
mov r8, qword [rsp + 0x1f8]
mov r9, qword [rsp + 0x6f8]
mov rdi, rbx
mov rbx, rdx
mov rdx, r10
test rdx, rdx
jle 0x49dcea
mov qword [rsp + 0x3f0], rbx
mov qword [rsp + 0x240], rdi
mov qword [rsp + 0x238], rcx
mov qword [rsp + 0x2a0], rdx
mov qword [rsp + 0x438], rsi
mov ebx, dword [rsi]
mov ecx, dword [rsi + 4]
mov dword [rsp + 0x174], ecx
mov edx, dword [rsi + 8]
mov dword [rsp + 0x164], edx
mov edi, dword [rsi + 0xc]
mov dword [rsp + 0x160], edi
nop
nop
call fcn.0046b0c0
mov qword [rsp + 0x430], rax
call fcn.00494d00
test rbx, rbx
jne 0x49dcf2
mov rcx, qword [rsp + 0x240]
inc rcx
mov qword [rsp + 0x270], rcx
nop
mov rax, qword [rsp + 0x430]
call fcn.0046b200
mov dword [rsp + 0x170], eax
nop
nop
mov ebx, dword [rsp + 0x174]
mov rax, qword [rsp + 0x448]
call fcn.0046b100
nop
call fcn.0046b200
mov dword [rsp + 0x16c], eax
nop
nop
mov ebx, dword [rsp + 0x164]
mov rax, qword [rsp + 0x448]
call fcn.0046b140
nop
call fcn.0046b200
mov dword [rsp + 0x168], eax
nop
nop
mov ebx, dword [rsp + 0x160]
mov rax, qword [rsp + 0x448]
call fcn.0046b140
nop
call fcn.0046b200
mov rcx, qword [rsp + 0x238]
mov rbx, qword [rsp + 0x270]
cmp rcx, rbx
jb 0x49dcbb
mov rdx, qword [rsp + 0x3f0]
jmp 0x49db36
mov dword [rsp + 0x15c], eax
mov rax, qword [rsp + 0x3f0]
mov edi, 1
lea rsi, [0x0065b440]
call fcn.00452f00
mov rdx, rax
mov eax, dword [rsp + 0x15c]
jmp 0x49db36
mov rdx, rdi
jmp 0x49d8b8
lea rax, [0x00622440]
lea rbx, [0x006d7830]
call fcn.0043c160
mov ebx, 0x10000
call fcn.0046fe20
lea rax, [0x00622440]
lea rbx, [0x006d7850]
nop dword [rax]
call fcn.0043c160
lea rax, [0x00622440]
lea rbx, [0x006d7840]
call fcn.0043c160
nop
call fcn.00494ee0
mov ecx, 0x2e
mov rdi, rax
mov rsi, rbx
xor eax, eax
lea rbx, [0x00686285]
call fcn.00456c20
call fcn.0040f0e0
mov rbx, rax
lea rax, [0x00622440]
call fcn.0043c160
xor eax, eax
lea rbx, [0x00686257]
mov ecx, 0x2e
mov rdi, qword [rsp + 0x3d8]
mov rsi, qword [rsp + 0x200]
lea r8, [0x00675d89]
mov r9d, 5
mov r10, qword [rsp + 0x440]
mov r11, qword [rsp + 0x2b0]
call fcn.00456d80
call fcn.0040f0e0
mov rbx, rax
lea rax, [0x00622440]
call fcn.0043c160
mov rax, qword [rsp + 0x1f8]
mov ebx, 0xa
call fcn.00489d80
mov ecx, 0x18
mov rdi, rax
mov rsi, rbx
lea r8, [0x00678766]
mov r9d, 0xc
xor eax, eax
lea rbx, [0x0067db1d]
call fcn.00456cc0
call fcn.0040f0e0
mov rbx, rax
lea rax, [0x00622440]
call fcn.0043c160
mov rax, qword [rsp + 0x1f8]
mov ebx, 0xa
call fcn.00489d80
mov ecx, 0x18
mov rdi, rax
mov rsi, rbx
lea r8, [0x0067a518]
mov r9d, 0x11
xor eax, eax
lea rbx, [0x0067db1d]
nop
call fcn.00456cc0
call fcn.0040f0e0
mov rbx, rax
lea rax, [0x00622440]
call fcn.0043c160
mov ebx, 0xa
nop
call fcn.00489d80
mov ecx, 0x18
mov rdi, rax
mov rsi, rbx
lea r8, [0x0067875a]
mov r9d, 0xc
xor eax, eax
lea rbx, [0x0067db1d]
call fcn.00456cc0
call fcn.0040f0e0
mov rbx, rax
lea rax, [0x00622440]
call fcn.0043c160
nop
call fcn.0043be20
mov rax, qword [rsp + 0x2d8]
mov rbx, qword [rsp + 0x2e0]
add rsp, 0x6e0
pop rbp
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call fcn.0046da40
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.0049b860