Function at 0x508660
Capabilities:
Reference http user-agent string

Disassembly:
lea r12, [rsp - 0xb78]
cmp r12, qword [r14 + 0x10]
jbe 0x509ef3
push rbp
mov rbp, rsp
sub rsp, 0xbf0
mov qword [rsp + 0xd00], rax
mov qword [rsp + 0xd38], r10
mov qword [rsp + 0xd40], r11
mov qword [rsp + 0xd30], r9
mov qword [rsp + 0xd28], r8
mov qword [rsp + 0xd20], rsi
mov qword [rsp + 0xd18], rdi
mov qword [rsp + 0xd10], rcx
mov qword [rsp + 0xd08], rbx
lea rdi, [rsp + 0xc00]
nop word [rax + rax]
nop word [rax + rax]
nop
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00460494
mov rbp, qword [rbp]
cmp r10, 1
je 0x508709
cmp r10, 3
je 0x508709
xor edi, edi
xor r12d, r12d
xor r13d, r13d
jmp 0x508748
mov rax, r8
mov rbx, r9
call fcn.00508320
test rbx, rbx
jne 0x508c0d
mov rdx, qword [rsp + 0xd38]
cmp rdx, 3
je 0x508b4d
mov r8, qword [rsp + 0xd28]
mov r9, qword [rsp + 0xd30]
mov rdi, rcx
mov r12, rbx
mov r13, rax
mov qword [rsp + 0xa20], rdi
mov qword [rsp + 0xa18], r12
mov qword [rsp + 0xb20], r13
mov rax, r8
mov rbx, r9
call fcn.00504c20
test al, al
je 0x508a8b
mov rdx, qword [rsp + 0xd40]
nop dword [rax + rax]
test rdx, rdx
jne 0x5087a9
nop
lea rax, [0x008a7420]
lea rbx, [0x006c777d]
mov ecx, 0x10
call fcn.00507b40
nop
mov r11, qword [0x008a7450]
mov rdx, r11
mov qword [rsp + 0xb18], rdx
lea rax, [0x0066e980]
mov ebx, 1
nop dword [rax]
call fcn.00405fe0
mov dword [rsp + 0x75c], 0
mov dword [rsp + 0x75c], 0x1c0001
mov rcx, qword [rsp + 0xd20]
cmp rcx, 5
jne 0x508874
mov rdx, qword [rsp + 0xd18]
cmp dword [rdx], 0x4d414e43
jne 0x508865
cmp byte [rdx + 4], 0x45
je 0x508812
mov ebx, 2
lea rsi, [rsp + 0x75c]
jmp 0x508889
mov qword [rsp + 0xa30], rax
lea rax, [rsp + 0x75c]
mov ebx, 3
mov ecx, 2
mov edi, 1
lea rsi, [0x0067ebc0]
call fcn.00447aa0
mov word [rax + 4], 5
mov rcx, qword [rsp + 0xd20]
mov rdx, qword [rsp + 0xd18]
mov ebx, 3
mov rsi, rax
mov rax, qword [rsp + 0xa30]
jmp 0x508889
mov ebx, 2
lea rsi, [rsp + 0x75c]
jmp 0x508889
mov rdx, qword [rsp + 0xd18]
mov ebx, 2
lea rsi, [rsp + 0x75c]
test rcx, rcx
jne 0x508892
xor edi, edi
jmp 0x5088a8
movzx edi, byte [rcx + rdx - 1]
cmp dil, 0x34
je 0x5088a8
nop dword [rax]
cmp dil, 0x36
je 0x5088a8
xor edi, edi
cmp dil, 0x34
jne 0x5088d1
mov word [rsp + 0x75a], 0
mov word [rsp + 0x75a], 1
mov ebx, 1
lea rsi, [rsp + 0x75a]
jmp 0x5088f8
cmp dil, 0x36
jne 0x5088f8
mov word [rsp + 0x758], 0
mov word [rsp + 0x758], 0x1c
mov ebx, 1
lea rsi, [rsp + 0x758]
mov qword [rsp + 0x980], rbx
mov qword [rsp + 0xa28], rsi
mov rdi, qword [rsp + 0xb18]
cmp byte [rdi + 0x94], 0
je 0x50898f
movups xmmword [rsp + 0xbb8], xmm15
movups xmmword [rsp + 0xbc0], xmm15
movups xmmword [rsp + 0xbd0], xmm15
lea r8, [0x0050a3c0]
mov qword [rsp + 0xbb8], r8
mov r8, qword [rsp + 0xd00]
mov qword [rsp + 0xbc0], r8
mov r9, qword [rsp + 0xd08]
mov qword [rsp + 0xbc8], r9
mov r9, qword [rsp + 0xd10]
mov qword [rsp + 0xbd0], r9
mov qword [rsp + 0xbd8], rdi
lea rax, [0x006f4988]
lea r9, [rsp + 0xbb8]
jmp 0x508a29
movups xmmword [rsp + 0xb88], xmm15
movups xmmword [rsp + 0xb98], xmm15
movups xmmword [rsp + 0xba8], xmm15
lea r8, [0x0050a040]
mov qword [rsp + 0xb88], r8
mov r8, qword [rsp + 0xd00]
mov qword [rsp + 0xb90], r8
mov r9, qword [rsp + 0xd08]
mov qword [rsp + 0xb98], r9
mov r9, qword [rsp + 0xd10]
mov qword [rsp + 0xba0], r9
mov qword [rsp + 0xba8], rdi
mov qword [rsp + 0xbb0], rax
movups xmmword [rsp + 0xb78], xmm15
lea r9, [0x00509fa0]
mov qword [rsp + 0xb78], r9
mov qword [rsp + 0xb80], rax
lea rax, [rsp + 0xb88]
lea r9, [rsp + 0xb78]
mov qword [rsp + 0xa48], r9
mov qword [rsp + 0xa38], rax
mov rbx, qword [rsp + 0xd28]
mov rcx, qword [rsp + 0xd30]
mov rax, rdi
call fcn.00507e80
mov rdx, qword [rsp + 0xa38]
mov rsi, qword [rsp + 0xa28]
mov rdi, qword [rsp + 0x980]
mov r8, qword [rsp + 0xb20]
mov r9, qword [rsp + 0xa20]
mov r10, qword [rsp + 0xa18]
xor ecx, ecx
xor r11d, r11d
jmp 0x508dc0
mov rcx, qword [0x0089a100]
mov rax, qword [0x0089a108]
mov rcx, qword [rcx + 0x18]
call rcx
mov qword [rsp + 0xa20], rbx
mov qword [rsp + 0xb10], rax
lea rax, [0x006abee0]
call fcn.0040d480
mov rcx, qword [rsp + 0xa20]
mov qword [rax + 8], rcx
cmp dword [0x0092d940], 0
jne 0x508ae2
mov rdx, qword [rsp + 0xb10]
mov r8, qword [rsp + 0xd28]
jmp 0x508afe
call fcn.0045fe40
mov rdx, qword [rsp + 0xb10]
mov qword [r11], rdx
mov r8, qword [rsp + 0xd28]
mov qword [r11 + 8], r8
mov qword [rax], rdx
mov rdx, qword [rsp + 0xd30]
mov qword [rax + 0x18], rdx
mov qword [rax + 0x10], r8
mov byte [rax + 0x32], 1
lea rdi, [rsp + 0xc00]
nop dword [rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00460494
mov rbp, qword [rbp]
xor ebx, ebx
mov rcx, rbx
lea rdi, [0x007422c0]
mov rsi, rax
xor eax, eax
add rsp, 0xbf0
pop rbp
ret
mov rcx, qword [0x0089a100]
mov rax, qword [0x0089a108]
mov rcx, qword [rcx + 0x18]
nop
call rcx
mov qword [rsp + 0xa20], rbx
mov qword [rsp + 0xb10], rax
lea rax, [0x006abee0]
call fcn.0040d480
mov rcx, qword [rsp + 0xa20]
mov qword [rax + 8], rcx
cmp dword [0x0092d940], 0
jne 0x508ba5
mov rdx, qword [rsp + 0xb10]
mov r8, qword [rsp + 0xd28]
jmp 0x508bc1
call fcn.0045fe40
mov rdx, qword [rsp + 0xb10]
mov qword [r11], rdx
mov r8, qword [rsp + 0xd28]
mov qword [r11 + 8], r8
mov qword [rax], rdx
mov rdx, qword [rsp + 0xd30]
mov qword [rax + 0x18], rdx
mov qword [rax + 0x10], r8
mov byte [rax + 0x32], 1
lea rdi, [rsp + 0xc00]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00460494
mov rbp, qword [rbp]
xor ebx, ebx
mov rcx, rbx
lea rdi, [0x007422c0]
mov rsi, rax
xor eax, eax
add rsp, 0xbf0
pop rbp
ret
mov rdx, rdi
lea rdi, [rsp + 0x227]
nop dword [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00460494
mov rbp, qword [rbp]
lea rdi, [rsp + 0x528]
nop dword [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00460494
mov rbp, qword [rbp]
mov byte [rsp + 0x627], sil
nop dword [rax + rax]
cmp rsi, 0xff
jle 0x508ca6
lea rdi, [rsp + 0x227]
nop word [rax + rax]
nop word [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00460494
mov rbp, qword [rbp]
mov rdx, qword [0x0089a7b0]
mov r8, qword [0x0089a7b8]
jmp 0x508d38
mov r8d, 0xff
cmovl r8, rsi
lea r9, [rsp + 0x528]
cmp rdx, r9
je 0x508cfd
mov qword [rsp + 0xa20], rcx
mov qword [rsp + 0xa18], rbx
mov qword [rsp + 0xb20], rax
mov rax, r9
mov rbx, rdx
mov rcx, r8
nop
call fcn.00460ba0
mov rax, qword [rsp + 0xb20]
mov rcx, qword [rsp + 0xa20]
mov rbx, qword [rsp + 0xa18]
lea rdi, [rsp + 0x227]
lea rsi, [rsp + 0x528]
nop word [rax + rax]
nop word [rax + rax]
nop
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004607a0
mov rbp, qword [rbp]
xor edx, edx
xor r8d, r8d
lea rdi, [rsp + 0xc00]
lea rsi, [rsp + 0x227]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004607a0
mov rbp, qword [rbp]
nop dword [rax + rax]
test rdx, rdx
je 0x508da9
lea rdi, [rsp + 0xc00]
nop word [rax + rax]
nop word [rax + rax]
nop
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00460494
mov rbp, qword [rbp]
xor eax, eax
xor ebx, ebx
mov rcx, rbx
mov rdi, rdx
mov rsi, r8
add rsp, 0xbf0
pop rbp
ret
xor edi, edi
xor esi, esi
add rsp, 0xbf0
pop rbp
ret
add rax, 0x10
dec rbx
nop dword [rax]
test rbx, rbx
jle 0x508ea5
mov qword [rsp + 0xa40], r11
mov qword [rsp + 0x988], rcx
mov qword [rsp + 0xb08], r8
mov qword [rsp + 0xa20], rbx
mov qword [rsp + 0xa10], r10
mov qword [rsp + 0xa08], r9
mov qword [rsp + 0xb00], rax
mov r12, qword [rax + 8]
mov qword [rsp + 0x990], r12
mov r13, qword [rax]
mov qword [rsp + 0xac0], r13
xor r15d, r15d
nop dword [rax + rax]
jmp 0x509271
xor r15d, r15d
xor r15d, r15d
mov byte [rsp + 0x427], r15b
xor r15d, r15d
jmp 0x5092e0
movzx r12d, byte [rsp + 0x427]
test r12b, r12b
jne 0x5096e5
test r10, r10
jne 0x5096d0
mov r12, qword [rsp + 0xd20]
nop
cmp r12, 5
jne 0x508e97
mov r13, qword [rsp + 0xd18]
cmp dword [r13], 0x4d414e43
jne 0x508db6
cmp byte [r13 + 4], 0x45
jne 0x508db6
cmp byte [rsp + 0xcff], 0
jbe 0x508db6
jmp 0x508ea5
mov r13, qword [rsp + 0xd18]
nop
jmp 0x508db6
mov qword [rsp + 0xa40], r11
mov qword [rsp + 0x988], rcx
lea rdx, [0x007422c0]
nop dword [rax]
cmp rcx, rdx
jne 0x508f06
mov rdx, qword [rsp + 0xd30]
mov qword [r11 + 0x18], rdx
cmp dword [0x0092d940], 0
jne 0x508ee7
mov rax, r11
mov rsi, qword [rsp + 0xd28]
jmp 0x508f02
mov rax, r11
call fcn.0045fe40
mov rsi, qword [rsp + 0xd28]
mov qword [r11], rsi
mov rdi, qword [rax + 0x10]
mov qword [r11 + 8], rdi
mov qword [rax + 0x10], rsi
mov qword [rsp + 0xa20], r9
mov qword [rsp + 0xa18], r10
mov qword [rsp + 0xb20], r8
mov rax, r8
mov rbx, r10
mov rcx, r9
call fcn.004fede0
mov rdx, qword [rsp + 0xa18]
test rdx, rdx
jne 0x5091ce
mov r8, qword [rsp + 0xd20]
cmp r8, 5
jne 0x508f85
mov r8, qword [rsp + 0xd18]
cmp dword [r8], 0x4d414e43
jne 0x508f85
cmp byte [r8 + 4], 0x45
jne 0x508f85
cmp byte [rsp + 0xcff], 0
jbe 0x508f85
mov rcx, qword [rsp + 0xa20]
mov rbx, rdx
mov rax, qword [rsp + 0xb20]
jmp 0x5091e1
mov r8, qword [rsp + 0xd38]
cmp r8, 2
je 0x508fab
mov rcx, qword [rsp + 0xa20]
mov rbx, rdx
mov rax, qword [rsp + 0xb20]
jmp 0x509176
mov rax, qword [rsp + 0xd28]
mov rbx, qword [rsp + 0xd30]
nop dword [rax + rax]
call fcn.00508320
test rbx, rbx
je 0x509176
mov rdx, rdi
lea rdi, [rsp + 0x127]
nop dword [rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00460494
mov rbp, qword [rbp]
lea rdi, [rsp + 0x428]
nop dword [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00460494
mov rbp, qword [rbp]
mov byte [rsp + 0x527], sil
nop dword [rax + rax]
cmp rsi, 0xff
jle 0x509066
lea rdi, [rsp + 0x127]
nop word [rax + rax]
nop word [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00460494
mov rbp, qword [rbp]
mov rdx, qword [0x0089a7b0]
mov r8, qword [0x0089a7b8]
jmp 0x5090f8
mov r8d, 0xff
cmovl r8, rsi
lea r9, [rsp + 0x428]
cmp rdx, r9
je 0x5090bd
mov qword [rsp + 0xa00], rcx
mov qword [rsp + 0x9f8], rbx
mov qword [rsp + 0xaf8], rax
mov rax, r9
mov rbx, rdx
mov rcx, r8
nop
call fcn.00460ba0
mov rax, qword [rsp + 0xaf8]
mov rcx, qword [rsp + 0xa00]
mov rbx, qword [rsp + 0x9f8]
lea rdi, [rsp + 0x127]
lea rsi, [rsp + 0x428]
nop word [rax + rax]
nop word [rax + rax]
nop
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004607a0
mov rbp, qword [rbp]
xor edx, edx
xor r8d, r8d
lea rdi, [rsp + 0xc00]
lea rsi, [rsp + 0x127]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004607a0
mov rbp, qword [rbp]
nop dword [rax + rax]
test rdx, rdx
je 0x509169
lea rdi, [rsp + 0xc00]
nop word [rax + rax]
nop word [rax + rax]
nop
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00460494
mov rbp, qword [rbp]
xor eax, eax
xor ebx, ebx
mov rcx, rbx
mov rdi, rdx
mov rsi, r8
add rsp, 0xbf0
pop rbp
ret
xor edi, edi
xor esi, esi
add rsp, 0xbf0
pop rbp
ret
mov rdx, qword [rsp + 0x988]
nop
test rdx, rdx
je 0x5091e1
lea rdi, [rsp + 0xc00]
nop word [rax + rax]
nop word [rax + rax]
nop
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00460494
mov rbp, qword [rbp]
xor eax, eax
xor ebx, ebx
mov rcx, rbx
mov rdi, rdx
mov rsi, qword [rsp + 0xa40]
add rsp, 0xbf0
pop rbp
ret
mov rcx, qword [rsp + 0xa20]
mov rbx, rdx
mov rax, qword [rsp + 0xb20]
xor edi, edi
xor esi, esi
add rsp, 0xbf0
pop rbp
ret
mov qword [rsp + 0xa18], r15
movzx ecx, word [rsi + r15*2]
mov rdi, qword [rdx]
mov rax, r13
mov rbx, r12
call rdi
mov r15, qword [rsp + 0xa18]
inc r15
mov rax, qword [rsp + 0xb00]
mov rcx, qword [rsp + 0x988]
mov rdx, qword [rsp + 0xa38]
mov rbx, qword [rsp + 0xa20]
mov rsi, qword [rsp + 0xa28]
mov rdi, qword [rsp + 0x980]
mov r8, qword [rsp + 0xb08]
mov r9, qword [rsp + 0xa08]
mov r10, qword [rsp + 0xa10]
mov r11, qword [rsp + 0xa40]
mov r12, qword [rsp + 0x990]
mov r13, qword [rsp + 0xac0]
cmp rdi, r15
jg 0x5091ee
jmp 0x508e25
mov r15, qword [rsp + 0xa18]
inc r15
mov rsi, qword [rsp + 0xa28]
mov rdi, qword [rsp + 0x980]
mov r12, qword [rsp + 0x990]
mov r13, qword [rsp + 0xac0]
mov r11, rax
mov byte [rsp + 0x427], dl
mov r10, rbx
mov rax, qword [rsp + 0xb00]
mov rdx, qword [rsp + 0xa38]
mov rbx, qword [rsp + 0xa20]
mov rax, r9
mov r9, r8
mov r8, rax
mov rax, qword [rsp + 0xb00]
cmp r15, rdi
jge 0x508e3b
mov qword [rsp + 0x9f0], r9
mov qword [rsp + 0x9e8], r10
mov qword [rsp + 0xaf0], r8
mov qword [rsp + 0xa18], r15
mov qword [rsp + 0xb10], r11
mov qword [rsp + 0x9e0], rcx
movzx ecx, word [rsi + r15*2]
mov rdx, qword [rsp + 0xa48]
mov rdi, qword [rdx]
mov rax, r13
mov rbx, r12
call rdi
lea rdi, [rsp + 0xa50]
mov rsi, rsp
nop dword [rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046081e
mov rbp, qword [rbp]
mov rsi, qword [rsp + 0xab0]
mov rax, qword [rsp + 0xab8]
test rsi, rsi
je 0x509385
je 0x509d85
mov rbx, qword [rsi + 8]
mov r8, qword [0x0089c4b0]
mov r9, qword [r8]
mov r10d, dword [rsi + 0x10]
jmp 0x509ea7
mov rax, qword [rsp + 0x9e0]
mov rcx, qword [rsp + 0xb10]
mov rdx, qword [rsp + 0x9f0]
mov rbx, qword [rsp + 0xaf0]
mov rsi, qword [rsp + 0x9e8]
jmp 0x50970c
mov rcx, qword [0x0089a070]
mov rax, qword [0x0089a078]
mov rcx, qword [rcx + 0x18]
call rcx
mov qword [rsp + 0x9c0], rbx
mov qword [rsp + 0xae8], rax
lea rax, [0x006abee0]
nop dword [rax]
call fcn.0040d480
mov rcx, qword [rsp + 0x9c0]
mov qword [rax + 8], rcx
cmp dword [0x0092d940], 0
jne 0x50940c
mov rsi, qword [rsp + 0xae8]
mov rdi, qword [rsp + 0xd28]
jmp 0x509428
call fcn.0045fe40
mov rsi, qword [rsp + 0xae8]
mov qword [r11], rsi
mov rdi, qword [rsp + 0xd28]
mov qword [r11 + 8], rdi
mov qword [rax], rsi
mov rsi, qword [rsp + 0xd30]
mov qword [rax + 0x18], rsi
mov qword [rax + 0x10], rdi
mov r8, qword [rsp + 0xaa8]
mov r9, qword [rsp + 0xaa0]
mov qword [rax + 0x28], r8
cmp dword [0x0092d940], 0
je 0x509460
call fcn.0045fe20
mov qword [r11], r9
mov qword [rax + 0x20], r9
lea rcx, [0x007422c0]
jmp 0x5096ab
mov rcx, qword [0x0089a070]
mov rax, qword [0x0089a078]
mov rcx, qword [rcx + 0x18]
call rcx
mov qword [rsp + 0x9c0], rbx
mov qword [rsp + 0xae8], rax
lea rax, [0x006abee0]
nop dword [rax + rax]
call fcn.0040d480
mov rcx, qword [rsp + 0x9c0]
mov qword [rax + 8], rcx
cmp dword [0x0092d940], 0
jne 0x5094cc
mov rsi, qword [rsp + 0xae8]
mov rdi, qword [rsp + 0xd28]
jmp 0x5094e8
call fcn.0045fe40
mov rsi, qword [rsp + 0xae8]
mov qword [r11], rsi
mov rdi, qword [rsp + 0xd28]
mov qword [r11 + 8], rdi
mov qword [rax], rsi
mov rsi, qword [rsp + 0xd30]
mov qword [rax + 0x18], rsi
mov qword [rax + 0x10], rdi
mov r8, qword [rsp + 0xaa8]
mov r9, qword [rsp + 0xaa0]
mov qword [rax + 0x28], r8
cmp dword [0x0092d940], 0
je 0x509520
call fcn.0045fe20
mov qword [r11], r9
mov qword [rax + 0x20], r9
lea rcx, [0x007422c0]
jmp 0x5096ab
mov rcx, qword [0x0089a070]
mov rax, qword [0x0089a078]
mov rcx, qword [rcx + 0x18]
call rcx
mov qword [rsp + 0x9c0], rbx
mov qword [rsp + 0xae8], rax
lea rax, [0x006abee0]
nop dword [rax + rax]
call fcn.0040d480
mov rcx, qword [rsp + 0x9c0]
mov qword [rax + 8], rcx
cmp dword [0x0092d940], 0
jne 0x50958c
mov rsi, qword [rsp + 0xae8]
mov rdi, qword [rsp + 0xd28]
jmp 0x5095a8
call fcn.0045fe40
mov rsi, qword [rsp + 0xae8]
mov qword [r11], rsi
mov rdi, qword [rsp + 0xd28]
mov qword [r11 + 8], rdi
mov qword [rax], rsi
mov rsi, qword [rsp + 0xd30]
mov qword [rax + 0x18], rsi
mov qword [rax + 0x10], rdi
mov r8, qword [rsp + 0xaa8]
mov r9, qword [rsp + 0xaa0]
mov qword [rax + 0x28], r8
cmp dword [0x0092d940], 0
je 0x5095e0
call fcn.0045fe20
mov qword [r11], r9
mov qword [rax + 0x20], r9
lea rcx, [0x007422c0]
jmp 0x5096ab
mov rcx, qword [0x0089a070]
mov rax, qword [0x0089a078]
mov rcx, qword [rcx + 0x18]
call rcx
mov qword [rsp + 0x9c0], rbx
mov qword [rsp + 0xae8], rax
lea rax, [0x006abee0]
nop dword [rax + rax]
call fcn.0040d480
mov rcx, qword [rsp + 0x9c0]
mov qword [rax + 8], rcx
cmp dword [0x0092d940], 0
jne 0x50964c
mov rsi, qword [rsp + 0xae8]
mov rdi, qword [rsp + 0xd28]
jmp 0x509668
call fcn.0045fe40
mov rsi, qword [rsp + 0xae8]
mov qword [r11], rsi
mov rdi, qword [rsp + 0xd28]
mov qword [r11 + 8], rdi
mov qword [rax], rsi
mov rsi, qword [rsp + 0xd30]
mov qword [rax + 0x18], rsi
mov qword [rax + 0x10], rdi
mov r8, qword [rsp + 0xaa8]
mov r9, qword [rsp + 0xaa0]
mov qword [rax + 0x28], r8
cmp dword [0x0092d940], 0
je 0x5096a0
call fcn.0045fe20
mov qword [r11], r9
mov qword [rax + 0x20], r9
lea rcx, [0x007422c0]
movzx edx, byte [rsp + 0x427]
mov rbx, qword [rsp + 0x9c8]
mov r8, qword [rsp + 0x9d0]
mov r9, qword [rsp + 0xb20]
jmp 0x50927f
mov r12, qword [rsp + 0xd20]
mov r13, qword [rsp + 0xd18]
jmp 0x508ea5
xor r10d, r10d
xor r9d, r9d
xor r8d, r8d
jmp 0x508ea5
mov rdx, rcx
mov rsi, rbx
mov rcx, qword [rsp + 0xae0]
mov rbx, rax
mov rax, qword [rsp + 0x9b8]
mov qword [rsp + 0xb20], rbx
mov qword [rsp + 0xae8], rcx
mov qword [rsp + 0x9d8], rax
mov qword [rsp + 0x9d0], rdx
mov qword [rsp + 0x9c8], rsi
lea rax, [rsp + 0xa50]
mov ebx, 3
call fcn.004f9f40
movups xmm0, xmmword [rsp]
movups xmmword [rsp + 0x86c], xmm0
lea rdi, [rsp + 0x878]
lea rsi, [rsp + 0xc]
nop
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004607a0
mov rbp, qword [rbp]
movups xmm0, xmmword [rsp + 0x86c]
movups xmmword [rsp + 0x760], xmm0
lea rdi, [rsp + 0x76c]
lea rsi, [rsp + 0x878]
nop word [rax + rax]
nop dword [rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004607a0
mov rbp, qword [rbp]
test rax, rax
je 0x5098ef
mov qword [rsp + 0x978], rax
cmp qword [0x0089a790], rax
je 0x5097d4
mov ecx, 1
jmp 0x5097f2
mov rcx, qword [0x0089a798]
nop dword [rax + rax]
call fcn.00405280
xor eax, 1
mov ecx, eax
mov rax, qword [rsp + 0x978]
test cl, cl
jne 0x50981e
test rax, rax
mov rsi, qword [rsp + 0xd30]
mov rdi, qword [rsp + 0xd28]
mov rcx, qword [rsp + 0x9d8]
mov rax, qword [rsp + 0xae8]
jmp 0x50990f
mov rcx, qword [0x0089a070]
mov rax, qword [0x0089a078]
mov rcx, qword [rcx + 0x18]
call rcx
mov qword [rsp + 0x9c0], rbx
mov qword [rsp + 0xae8], rax
lea rax, [0x006abee0]
call fcn.0040d480
mov rcx, qword [rsp + 0x9c0]
mov qword [rax + 8], rcx
cmp dword [0x0092d940], 0
jne 0x509875
mov rsi, qword [rsp + 0xae8]
mov rdi, qword [rsp + 0xd28]
jmp 0x509891
call fcn.0045fe40
mov rsi, qword [rsp + 0xae8]
mov qword [r11], rsi
mov rdi, qword [rsp + 0xd28]
mov qword [r11 + 8], rdi
mov qword [rax], rsi
mov rsi, qword [rsp + 0xd30]
mov qword [rax + 0x18], rsi
mov qword [rax + 0x10], rdi
mov r8, qword [rsp + 0xaa8]
mov r9, qword [rsp + 0xaa0]
mov qword [rax + 0x28], r8
cmp dword [0x0092d940], 0
nop
jne 0x5098cf
mov r8, qword [rsp + 0x978]
test r8, r8
jmp 0x5098e2
call fcn.0045fe20
mov qword [r11], r9
mov r8, qword [rsp + 0x978]
test r8, r8
mov qword [rax + 0x20], r9
lea rcx, [0x007422c0]
jmp 0x50990f
mov rsi, qword [rsp + 0xd30]
mov rdi, qword [rsp + 0xd28]
mov rcx, qword [rsp + 0x9d8]
mov rax, qword [rsp + 0xae8]
jne 0x5096ab
mov qword [rsp + 0x9b8], rcx
mov qword [rsp + 0xae0], rax
movzx edx, word [rsp + 0x860]
cmp dx, 1
je 0x509bf3
nop word [rax + rax]
cmp dx, 5
je 0x509b35
cmp dx, 0x1c
jne 0x509afd
lea rax, [0x006897a0]
nop dword [rax + rax]
call fcn.0040d480
mov qword [rsp + 0xbe0], rax
lea rax, [rsp + 0xa50]
call fcn.004fade0
movups xmm0, xmmword [rsp]
movups xmmword [rsp + 0x728], xmm0
movups xmm0, xmmword [rsp + 0x728]
mov rcx, qword [rsp + 0xbe0]
movups xmmword [rcx], xmm0
nop dword [rax]
test rax, rax
jne 0x5093b2
movups xmmword [rsp + 0xb28], xmm15
movups xmmword [rsp + 0xb30], xmm15
movups xmmword [rsp + 0xb40], xmm15
mov rbx, qword [rsp + 0x9c8]
inc rbx
mov qword [rsp + 0xb28], rcx
mov qword [rsp + 0xb30], 0x10
mov qword [rsp + 0xb38], 0x10
mov rcx, qword [rsp + 0x9d0]
cmp rcx, rbx
jb 0x509a06
mov rax, qword [rsp + 0xb20]
jmp 0x509a1f
mov rax, qword [rsp + 0xb20]
mov edi, 1
lea rsi, [0x00691740]
call fcn.00447aa0
lea rdx, [rbx + rbx*4]
lea r8, [rax + rdx*8]
lea r8, [r8 - 0x28]
cmp dword [0x0092d940], 0
je 0x509a8b
mov qword [rsp + 0x9d0], rdx
mov qword [rsp + 0xad8], rax
mov qword [rsp + 0x9b0], rbx
mov qword [rsp + 0x9a8], rcx
lea rax, [0x00691740]
mov rbx, r8
lea rcx, [rsp + 0xb28]
call fcn.00413600
mov rax, qword [rsp + 0xad8]
mov rcx, qword [rsp + 0x9a8]
mov rdx, qword [rsp + 0x9d0]
mov rbx, qword [rsp + 0x9b0]
lea r8, [rax + rdx*8]
lea r8, [r8 - 0x20]
mov r9, qword [rsp + 0xb28]
mov qword [rax + rdx*8 - 0x28], r9
movups xmm0, xmmword [rsp + 0xb30]
movups xmmword [r8], xmm0
movups xmm0, xmmword [rsp + 0xb40]
movups xmmword [r8 + 0x10], xmm0
cmp byte [rsp + 0xcff], 0
jne 0x5096f3
cmp byte [rsp + 0x85f], 0
je 0x5096f3
lea rdi, [rsp + 0xc00]
lea rsi, [rsp + 0x760]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004607a0
mov rbp, qword [rbp]
jmp 0x5096f3
lea rax, [rsp + 0xa50]
mov ebx, 3
call fcn.004fa1c0
test rax, rax
jne 0x509470
mov rcx, qword [rsp + 0x9d0]
mov rbx, qword [rsp + 0x9c8]
mov rax, qword [rsp + 0xb20]
jmp 0x5096f3
lea rax, [rsp + 0xa50]
nop dword [rax]
call fcn.004fab40
lea rdi, [rsp + 0x628]
mov rsi, rsp
nop word [rax + rax]
nop dword [rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004607a0
mov rbp, qword [rbp]
lea rdi, [rsp + 0x327]
lea rsi, [rsp + 0x628]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004607a0
mov rbp, qword [rbp]
test rax, rax
jne 0x509530
cmp byte [rsp + 0xcff], 0
jne 0x509bd6
cmp byte [rsp + 0x426], 0
jbe 0x509bd6
lea rdi, [rsp + 0xc00]
lea rsi, [rsp + 0x327]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004607a0
mov rbp, qword [rbp]
mov rcx, qword [rsp + 0x9d0]
mov rbx, qword [rsp + 0x9c8]
mov rax, qword [rsp + 0xb20]
jmp 0x5096f3
lea rax, [0x006896a0]
call fcn.0040d480
mov qword [rsp + 0xbe8], rax
lea rax, [rsp + 0xa50]
call fcn.004faca0
mov ecx, dword [rsp]
mov rdx, qword [rsp + 0xbe8]
mov dword [rdx], ecx
test rax, rax
jne 0x5095f0
movups xmmword [rsp + 0xb50], xmm15
movups xmmword [rsp + 0xb58], xmm15
movups xmmword [rsp + 0xb68], xmm15
mov rbx, qword [rsp + 0x9c8]
inc rbx
mov qword [rsp + 0xb50], rdx
mov qword [rsp + 0xb58], 4
mov qword [rsp + 0xb60], 4
mov rcx, qword [rsp + 0x9d0]
cmp rcx, rbx
jb 0x509c87
mov rax, qword [rsp + 0xb20]
jmp 0x509ca5
mov rax, qword [rsp + 0xb20]
mov edi, 1
lea rsi, [0x00691740]
nop dword [rax + rax]
call fcn.00447aa0
lea rdx, [rbx + rbx*4]
lea r8, [rax + rdx*8]
lea r8, [r8 - 0x28]
cmp dword [0x0092d940], 0
je 0x509d11
mov qword [rsp + 0x9d0], rdx
mov qword [rsp + 0xad0], rax
mov qword [rsp + 0x9a0], rbx
mov qword [rsp + 0x998], rcx
lea rax, [0x00691740]
mov rbx, r8
lea rcx, [rsp + 0xb50]
call fcn.00413600
mov rax, qword [rsp + 0xad0]
mov rcx, qword [rsp + 0x998]
mov rdx, qword [rsp + 0x9d0]
mov rbx, qword [rsp + 0x9a0]
lea r8, [rax + rdx*8]
lea r8, [r8 - 0x20]
mov r9, qword [rsp + 0xb50]
mov qword [rax + rdx*8 - 0x28], r9
movups xmm0, xmmword [rsp + 0xb58]
movups xmmword [r8], xmm0
movups xmm0, xmmword [rsp + 0xb68]
movups xmmword [r8 + 0x10], xmm0
cmp byte [rsp + 0xcff], 0
jne 0x5096f3
cmp byte [rsp + 0x85f], 0
je 0x5096f3
lea rdi, [rsp + 0xc00]
lea rsi, [rsp + 0x760]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004607a0
mov rbp, qword [rbp]
nop
jmp 0x5096f3
test rsi, rsi
jne 0x509d8e
xor eax, eax
jmp 0x509d94
mov rcx, qword [rsi + 0x20]
call rcx
test al, al
je 0x509dc6
mov r8, qword [rsp + 0xd00]
test r8, r8
je 0x509dce
cmp byte [r8 + 1], 0
je 0x509dce
mov rsi, qword [rsp + 0xab0]
mov rdi, qword [rsp + 0xab8]
mov eax, 1
jmp 0x509e72
mov r8, qword [rsp + 0xd00]
mov r9, qword [rsp + 0x9e0]
test r9, r9
je 0x509e3a
lea rax, [rsp + 0x738]
mov rbx, qword [rsp + 0xd28]
mov rcx, qword [rsp + 0xd30]
lea rdi, [0x0073e478]
mov esi, 1
nop
call fcn.0044abe0
mov rcx, qword [rsp + 0x990]
cmp rbx, rcx
je 0x509e16
xor eax, eax
jmp 0x509e2e
mov rbx, rax
mov rax, qword [rsp + 0xac0]
call fcn.004035a0
mov rcx, qword [rsp + 0x990]
test al, al
je 0x509e4c
mov r8, qword [rsp + 0xd00]
mov rcx, qword [rsp + 0xab0]
mov r11, qword [rsp + 0xab8]
jmp 0x509e64
mov r8, qword [rsp + 0xd00]
mov rcx, qword [rsp + 0x9e0]
mov r11, qword [rsp + 0xb10]
mov rsi, rcx
mov rdi, r11
movzx eax, byte [rsp + 0x427]
mov rcx, rsi
mov edx, eax
mov rbx, qword [rsp + 0x9e8]
mov r8, qword [rsp + 0x9f0]
mov r9, qword [rsp + 0xaf0]
mov rsi, qword [rsp + 0xd30]
mov rax, rdi
mov rdi, qword [rsp + 0xd28]
jmp 0x50927f
mov r11, r10
and r10, r9
shl r10, 4
mov r12, qword [r10 + r8 + 8]
cmp r12, rbx
je 0x509ee9
lea r10, [r11 + 1]
nop
test r12, r12
jne 0x509ea7
mov qword [rsp + 0xac8], rax
lea rax, [0x0089c4b0]
call fcn.0040aaa0
mov rsi, rax
mov rax, qword [rsp + 0xac8]
jmp 0x509d85
mov rsi, qword [r10 + r8 + 0x10]
jmp 0x509d85
mov qword [rsp + 0x108], rax
mov qword [rsp + 0x110], rbx
mov qword [rsp + 0x118], rcx
mov qword [rsp + 0x120], rdi
mov qword [rsp + 0x128], rsi
mov qword [rsp + 0x130], r8
mov qword [rsp + 0x138], r9
mov qword [rsp + 0x140], r10
mov qword [rsp + 0x148], r11
nop dword [rax + rax]
call fcn.0045df00
mov rax, qword [rsp + 0x108]
mov rbx, qword [rsp + 0x110]
mov rcx, qword [rsp + 0x118]
mov rdi, qword [rsp + 0x120]
mov rsi, qword [rsp + 0x128]
mov r8, qword [rsp + 0x130]
mov r9, qword [rsp + 0x138]
mov r10, qword [rsp + 0x140]
mov r11, qword [rsp + 0x148]
jmp fcn.00508660