Function at 0x495520
Capabilities:
Gather firefox profile information
Reference http user-agent string

Disassembly:
lea r12, [rsp - 0x568]
cmp r12, qword [r14 + 0x10]
jbe 0x4970cc
sub rsp, 0x5e8
mov qword [rsp + 0x5e0], rbp
lea rbp, [rsp + 0x5e0]
mov qword [rsp + 0x5f0], rax
mov qword [rsp + 0x5f8], rbx
mov qword [rsp + 0x618], r8
mov qword [rsp + 0x610], rsi
mov qword [rsp + 0x620], r9
mov qword [rsp + 0x608], rdi
bt ecx, 9
jb 0x495597
bt ecx, 7
jae 0x495588
mov rbx, qword [rbx]
xor ecx, ecx
xor edx, edx
xor r10d, r10d
xor r11d, r11d
jmp 0x495620
mov qword [rsp + 0x170], rcx
mov qword [rsp + 0x2f8], rbx
mov qword [rsp + 0x2f0], rax
mov r8, rcx
sar r8, 0xa
mov rdx, rax
mov rax, rdi
mov r9, rbx
mov rbx, rsi
mov r10, rcx
mov rcx, rdx
mov rdi, r9
mov rsi, r10
call fcn.00497140
mov rsi, qword [rsp + 0x610]
mov rdi, qword [rsp + 0x608]
mov r8, qword [rsp + 0x618]
mov r9, qword [rsp + 0x620]
mov rdx, qword [rsp + 0x2f8]
mov r10, qword [rsp + 0x2f0]
mov r11, qword [rsp + 0x170]
mov r12, rbx
mov rbx, rcx
mov rcx, rax
mov rax, r12
nop word [rax + rax]
test rbx, rbx
je 0x4970b8
mov qword [rsp + 0x2b0], rbx
mov qword [rsp + 0xf0], r11
mov qword [rsp + 0x258], rdx
mov qword [rsp + 0x250], r10
mov qword [rsp + 0x290], rcx
cmp rsi, 9
jne 0x495670
movabs r12, 0x63696c536c6c6143
cmp qword [rdi], r12
jne 0x495670
cmp byte [rdi + 8], 0x65
sete r12b
jmp 0x495673
xor r12d, r12d
mov byte [rsp + 0xcf], r12b
mov qword [rsp + 0x278], rax
test byte [rax], al
call fcn.0048f420
mov qword [rsp + 0x108], rax
mov rax, qword [rsp + 0x278]
call fcn.0048e940
movzx ecx, byte [rsp + 0xcf]
test cl, cl
je 0x4956d3
test al, al
je 0x4970a5
mov rdx, qword [rsp + 0x108]
mov r10, qword [rsp + 0x620]
cmp rdx, r10
jg 0x49708d
jge 0x49570d
jmp 0x49707a
test al, al
je 0x4956e4
mov rdx, qword [rsp + 0x108]
dec rdx
jmp 0x4956ec
mov rdx, qword [rsp + 0x108]
mov r10, qword [rsp + 0x620]
cmp r10, rdx
jl 0x497067
nop dword [rax]
test al, al
jne 0x49570d
cmp r10, rdx
jg 0x497054
test r10, r10
je 0x495725
mov r8, qword [rsp + 0x618]
mov rbx, r8
xor esi, esi
nop
jmp 0x496ff1
mov byte [rsp + 0xce], al
mov qword [rsp + 0x108], rdx
mov rsi, qword [rsp + 0x278]
mov rdi, qword [rsp + 0x618]
xor ebx, ebx
jmp 0x495783
mov rbx, qword [rsp + 0x138]
inc rbx
mov rsi, qword [rsp + 0x278]
mov rdi, qword [rsp + 0x618]
mov r10, qword [rsp + 0x620]
mov rdx, qword [rsp + 0x108]
movzx eax, byte [rsp + 0xce]
movzx ecx, byte [rsp + 0xcf]
cmp rdx, rbx
jle 0x495845
cmp r10, rbx
jbe 0x496fdf
mov qword [rsp + 0x138], rbx
lea r8, [rbx + rbx*2]
mov r9, qword [rdi + r8*8 + 0x10]
mov r11, qword [rdi + r8*8]
mov r8, qword [rdi + r8*8 + 8]
test r9, r9
je 0x4957c4
bt r9d, 9
jb 0x4957c4
lea r8, [0x00975860]
jmp 0x4957e8
mov rax, r11
mov rbx, r8
mov rcx, r9
call fcn.0049e220
mov rsi, qword [rsp + 0x278]
mov r8, rax
mov r11, rbx
mov rbx, qword [rsp + 0x138]
mov qword [rsp + 0x248], r11
mov qword [rsp + 0xe8], r8
mov rax, rsi
nop dword [rax + rax]
call fcn.0048f180
mov qword [rsp + 0x2e8], rax
mov qword [rsp + 0x268], rbx
mov rcx, qword [rsp + 0xe8]
mov rdx, qword [rcx + 0x20]
mov rsi, rax
mov rax, qword [rsp + 0x248]
mov rdi, rbx
mov rbx, rsi
mov rcx, rdi
call rdx
test al, al
jne 0x495748
nop
jmp 0x496eaa
test cl, cl
jne 0x4958f6
test al, al
je 0x4958f6
mov rax, rsi
mov rbx, rdx
nop dword [rax + rax]
call fcn.0048f180
mov rdi, qword [rsp + 0x620]
mov rcx, qword [rsp + 0x108]
sub rdi, rcx
mov qword [rsp + 0x110], rdi
mov rcx, rdi
call fcn.0049ed00
mov qword [rsp + 0x2f0], rax
mov qword [rsp + 0x2f8], rbx
mov qword [rsp + 0x170], rcx
mov rax, qword [rsp + 0x278]
mov rbx, qword [rsp + 0x108]
call fcn.0048f180
mov rcx, qword [rax + 0x48]
mov rax, rbx
call rcx
mov qword [rsp + 0x2e8], rax
mov qword [rsp + 0x2b8], rbx
mov rcx, qword [rsp + 0x110]
mov rdx, qword [rsp + 0x618]
mov rsi, qword [rsp + 0x620]
mov rdi, qword [rsp + 0x108]
xor r8d, r8d
jmp 0x496bc0
mov qword [rsp + 0x168], r10
mov qword [rsp + 0x2e0], rdi
mov rax, rsi
call fcn.0048f420
mov rcx, qword [rsp + 0x168]
cmp rax, rcx
jne 0x496b1e
mov rax, qword [rsp + 0x278]
call fcn.0048f4a0
mov qword [rsp + 0x100], rax
lea rdi, [rsp + 0x4d0]
lea rdi, [rdi - 0x30]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004675eb
mov rbp, qword [rbp]
movups xmmword [rsp + 0x418], xmm15
lea rdi, [rsp + 0x420]
lea rdi, [rdi - 0x10]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046760f
mov rbp, qword [rbp]
mov rbx, qword [rsp + 0x290]
mov rax, qword [rsp + 0x278]
call fcn.00493a80
mov qword [rsp + 0x2a0], rax
mov qword [rsp + 0x2a8], rbx
mov rcx, qword [rsp]
mov qword [rsp + 0x418], rcx
lea rdi, [rsp + 0x420]
lea rsi, [rsp + 8]
nop dword [rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00467946
mov rbp, qword [rbp]
mov rcx, qword [rsp + 0x418]
mov qword [rsp + 0x360], rcx
lea rdi, [rsp + 0x368]
lea rsi, [rsp + 0x420]
nop word [rax + rax]
nop dword [rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00467946
mov rbp, qword [rbp]
cmp qword [rax], 0
je 0x495a64
mov rcx, qword [rsp + 0x100]
test rcx, rcx
jne 0x495a40
mov rax, rbx
call fcn.00471f40
lea rcx, [0x00869060]
cmp rax, rcx
je 0x495a4f
jmp 0x496b0f
call fcn.0045ffe0
lea rcx, [0x00869060]
mov rbx, rax
mov rax, qword [rsp + 0x2a0]
mov rcx, rbx
mov rbx, qword [rsp + 0x2a8]
jmp 0x495a66
xor ecx, ecx
mov r8, qword [rax]
mov rdx, qword [rsp + 0x290]
test rdx, rdx
je 0x495d3d
mov rdx, qword [rsp + 0x360]
cmp qword [rsp + 0x368], 0
jbe 0x496b05
movups xmm0, xmmword [rdx]
movups xmmword [rsp + 0x208], xmm0
movups xmm0, xmmword [rdx + 0x10]
movups xmmword [rsp + 0x218], xmm0
movups xmm0, xmmword [rdx + 0x20]
movups xmmword [rsp + 0x228], xmm0
mov rdx, qword [rsp + 0x208]
nop dword [rax]
cmp rdx, 2
jg 0x495bb1
cmp rdx, 1
jne 0x495b8a
nop
mov rdx, qword [rsp + 0x250]
movzx edx, byte [rdx + 0x17]
mov r10d, edx
and edx, 0x1f
cmp rdx, 0x14
jne 0x495b19
test byte [rcx], al
mov rdx, qword [rsp + 0x258]
mov rdx, qword [rdx + 8]
cmp dword [0x00bc2240], 0
jne 0x495b0c
mov qword [rcx], rdx
jmp 0x495d36
mov rdi, rcx
call fcn.00466fe0
jmp 0x495d36
mov rdx, qword [rsp + 0xf0]
bt edx, 7
jae 0x495b58
test r10b, 0x20
je 0x495b58
test byte [rcx], al
mov rdx, qword [rsp + 0x258]
mov rdx, qword [rdx]
cmp dword [0x00bc2240], 0
jne 0x495b4b
mov qword [rcx], rdx
jmp 0x495d36
mov rdi, rcx
call fcn.00466fe0
jmp 0x495d36
test byte [rcx], al
cmp dword [0x00bc2240], 0
jne 0x495b73
mov rdx, qword [rsp + 0x258]
mov qword [rcx], rdx
jmp 0x495d36
mov rdi, rcx
mov rdx, qword [rsp + 0x258]
nop
call fcn.00466fe0
jmp 0x495d36
cmp rdx, 2
jne 0x496ad5
mov r10, qword [rsp + 0x250]
mov r11, qword [rsp + 0xf0]
mov r12, qword [rsp + 0x258]
jmp 0x495c43
cmp rdx, 3
jne 0x495ca6
mov rdx, qword [rsp + 0x228]
cmp rdx, 9
jae 0x496af5
mov r10, qword [rsp + 0x250]
movzx r11d, byte [r10 + 0x17]
mov r12d, r11d
and r11d, 0x1f
cmp r11, 0x14
jne 0x495c08
mov r11, qword [rsp + 0x258]
mov r12, qword [r11 + 8]
mov qword [rsp + rdx*8 + 0x590], r12
mov r12, r11
mov r11, qword [rsp + 0xf0]
jmp 0x495c43
mov r11, qword [rsp + 0xf0]
bt r11d, 7
jae 0x495c33
test r12b, 0x20
je 0x495c33
mov r12, qword [rsp + 0x258]
mov r13, qword [r12]
mov qword [rsp + rdx*8 + 0x590], r13
jmp 0x495c43
mov r12, qword [rsp + 0x258]
mov qword [rsp + rdx*8 + 0x590], r12
mov rdx, qword [rsp + 0x228]
cmp rdx, 9
jae 0x496ae8
movzx r10d, byte [r10 + 0x17]
mov r13d, r10d
and r10d, 0x1f
cmp r10, 0x14
jne 0x495c79
mov r10, qword [r12 + 8]
mov qword [rsp + rdx*8 + 0x4d0], r10
jmp 0x495d36
bt r11d, 7
nop
jae 0x495c99
test r13b, 0x20
je 0x495c99
mov r10, qword [r12]
mov qword [rsp + rdx*8 + 0x4d0], r10
jmp 0x495d36
mov qword [rsp + rdx*8 + 0x4d0], r12
jmp 0x495d36
cmp rdx, 4
jne 0x496ad5
mov rdx, qword [rsp + 0x230]
nop dword [rax + rax]
cmp rdx, 0xf
jae 0x496ac8
mov r10, qword [rsp + 0x250]
movzx r10d, byte [r10 + 0x17]
mov r11d, r10d
and r10d, 0x1f
nop
cmp r10, 0x14
jne 0x495cfc
mov r10, qword [rsp + 0x258]
mov r10, qword [r10 + 8]
mov qword [rsp + rdx*8 + 0x518], r10
jmp 0x495d36
mov r10, qword [rsp + 0xf0]
bt r10d, 7
jae 0x495d26
test r11b, 0x20
je 0x495d26
mov r10, qword [rsp + 0x258]
mov r10, qword [r10]
mov qword [rsp + rdx*8 + 0x518], r10
jmp 0x495d36
mov r10, qword [rsp + 0x258]
mov qword [rsp + rdx*8 + 0x518], r10
mov edx, 1
jmp 0x495d3f
xor edx, edx
mov qword [rsp + 0x280], rcx
mov r10, qword [rsp + 0x168]
test r10, r10
je 0x495d73
mov qword [rsp + 0x140], r8
mov qword [rsp + 0x118], rdx
xor esi, esi
mov rdi, qword [rsp + 0x2e0]
jmp 0x49662c
nop
add r8, 7
and r8, 0xfffffffffffffff8
add r8, qword [rsp + 0x400]
movzx edx, word [rsp + 0x412]
mov word [rsp + 0x5d8], dx
cmp byte [0x00bc1c5a], 0
je 0x495dc2
mov qword [rsp + 0x140], r8
call fcn.0041b2a0
mov rax, qword [rsp + 0x2a0]
mov rcx, qword [rsp + 0x280]
mov r8, qword [rsp + 0x140]
mov rdi, qword [rax]
mov rsi, qword [rsp + 0x3f8]
mov rbx, qword [rsp + 0x2b0]
lea r9, [rsp + 0x4d0]
nop dword [rax]
call fcn.00469480
cmp byte [0x00bc1c5a], 0
je 0x495df3
call fcn.0041b2a0
mov rcx, qword [rsp + 0x100]
nop dword [rax + rax]
test rcx, rcx
je 0x495e51
mov rbx, qword [rsp + 0x280]
test rbx, rbx
je 0x495e31
mov rdi, qword [rsp + 0x3f8]
mov rax, qword [rsp + 0x2a0]
xor ecx, ecx
call fcn.004608a0
mov rcx, qword [rsp + 0x100]
lea rax, [0x008d2ee0]
mov rbx, rcx
nop dword [rax + rax]
call fcn.0044cf20
mov qword [rsp + 0x2f8], rax
xor ecx, ecx
jmp 0x495eab
mov rbx, qword [rsp + 0x280]
test rbx, rbx
je 0x495e87
mov rax, qword [rsp + 0x2a0]
call fcn.00460860
mov rax, qword [rsp + 0x2a8]
lea rbx, [0x00869060]
mov rcx, qword [rsp + 0x280]
call fcn.00471e60
xor eax, eax
xor ecx, ecx
mov rbx, rax
mov rax, rcx
mov rcx, rbx
mov rbp, qword [rsp + 0x5e0]
add rsp, 0x5e8
ret
lea rcx, [rdx + 1]
mov rax, rdi
mov rdx, qword [rsp + 0x100]
cmp rdx, rcx
jle 0x49626b
mov qword [rsp + 0x120], rcx
mov rax, qword [rsp + 0x278]
mov rbx, rcx
call fcn.0048f560
mov qword [rsp + 0xf8], rax
mov qword [rsp + 0x260], rbx
mov rcx, qword [rax + 0xf0]
mov rax, rbx
call rcx
test rax, rax
je 0x4961fa
nop
mov rcx, qword [rsp + 0x3c8]
mov rbx, qword [rsp + 0x3c0]
mov rax, qword [rsp + 0x120]
cmp rax, rcx
jae 0x4965ed
mov rsi, qword [rbx + rax*8]
lea rdi, [rcx - 1]
cmp rax, rdi
jne 0x495f32
mov rbx, qword [rsp + 0x3b0]
jmp 0x495f44
lea rdi, [rax + 1]
cmp rcx, rdi
jbe 0x4965e5
mov rbx, qword [rbx + rax*8 + 8]
mov rdi, qword [rsp + 0x3a8]
mov rdx, qword [rsp + 0x3b8]
cmp rbx, rdx
ja 0x4965da
nop dword [rax]
cmp rbx, rsi
jb 0x4965cf
mov r8, rsi
sub rsi, rdx
lea rdx, [r8 + r8*2]
shl rdx, 4
sar rsi, 0x3f
and rsi, rdx
sub rbx, r8
lea rdx, [rdi + rsi]
test rbx, rbx
jbe 0x4965c5
movups xmm0, xmmword [rdx]
movups xmmword [rsp + 0x1a8], xmm0
lea rcx, [rdi + rsi]
lea rcx, [rcx + 0x10]
movups xmm0, xmmword [rcx]
movups xmmword [rsp + 0x1b8], xmm0
lea rcx, [rdi + rsi]
lea rcx, [rcx + 0x20]
movups xmm0, xmmword [rcx]
movups xmmword [rsp + 0x1c8], xmm0
cmp qword [rsp + 0x1a8], 1
jne 0x496085
mov rcx, qword [rsp + 0xf8]
mov rdx, qword [rcx + 0x98]
mov rax, qword [rsp + 0x260]
call rdx
mov qword [rsp + 0x160], rax
mov rcx, qword [rsp + 0xf8]
mov rcx, qword [rcx + 0x100]
mov rax, qword [rsp + 0x260]
call rcx
mov rcx, qword [rsp + 0x160]
bts rcx, 7
mov rdx, qword [rsp + 0x120]
lea rbx, [rdx + rdx*2]
mov rsi, qword [rsp + 0x1c0]
mov rdi, qword [rsp + 0x2f8]
mov qword [rdi + rbx*8 + 0x10], rcx
lea rcx, [rdi + rbx*8]
lea rcx, [rcx + 8]
lea r8, [rdi + rbx*8]
mov r9, qword [rsp + 0x280]
add rsi, r9
cmp dword [0x00bc2240], 0
jne 0x496065
mov qword [rdi + rbx*8], rax
mov qword [rdi + rbx*8 + 8], rsi
nop
jmp 0x495ea4
mov rbx, rdi
mov rdi, r8
call fcn.00466ec0
mov rdi, rcx
call fcn.00467020
mov rdi, rbx
nop dword [rax + rax]
jmp 0x495ea4
mov qword [rsp + 0x2d8], rdi
mov qword [rsp + 0xd0], rbx
mov qword [rsp + 0x168], rsi
mov qword [rsp + 0x238], rdx
mov rcx, qword [rsp + 0xf8]
mov rdx, qword [rcx + 0x100]
mov rax, qword [rsp + 0x260]
call rdx
movzx ecx, byte [rax + 0x17]
test cl, 0x20
je 0x4961bd
mov rcx, qword [rsp + 0x168]
mov rdx, qword [rsp + 0x2d8]
mov rbx, qword [rdx + rcx]
nop
cmp rbx, 3
jne 0x496512
mov rcx, qword [rsp + 0xf8]
mov rdx, qword [rcx + 0x100]
mov rax, qword [rsp + 0x260]
call rdx
mov qword [rsp + 0x2f0], rax
mov rcx, qword [rsp + 0xf8]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rsp + 0x260]
call rcx
mov rcx, qword [rsp + 0x168]
mov rdx, qword [rsp + 0x2d8]
mov rcx, qword [rdx + rcx + 0x20]
nop dword [rax]
cmp rcx, 9
jae 0x496505
mov rdx, qword [rsp + 0x120]
lea rsi, [rdx + rdx*2]
mov r8, qword [rsp + rcx*8 + 0x590]
mov r9, qword [rsp + 0x2f8]
mov qword [r9 + rsi*8 + 0x10], rax
lea rdi, [r9 + rsi*8]
lea r10, [r9 + rsi*8]
lea r10, [r10 + 8]
cmp dword [0x00bc2240], 0
nop
jne 0x496195
mov rdi, qword [rsp + 0x2f0]
mov qword [r9 + rsi*8], rdi
mov qword [r9 + rsi*8 + 8], r8
jmp 0x4961ad
mov rsi, qword [rsp + 0x2f0]
nop dword [rax]
call fcn.00467020
mov rdi, r10
call fcn.00467040
mov rdi, r9
mov r9, qword [rsp + 0x280]
jmp 0x495ea4
mov rcx, qword [rsp + 0xf8]
mov rdx, qword [rcx + 0x100]
mov rax, qword [rsp + 0x260]
call rdx
call fcn.0045ffe0
mov qword [rsp + 0x288], rax
mov rcx, qword [rsp + 0xd0]
mov rdx, qword [rsp + 0x238]
xor ebx, ebx
jmp 0x496282
mov rax, qword [rsp + 0xf8]
mov rbx, qword [rsp + 0x260]
call fcn.0049efa0
mov rdx, qword [rsp + 0x120]
lea rsi, [rdx + rdx*2]
mov rdi, qword [rsp + 0x2f8]
mov qword [rdi + rsi*8 + 0x10], rcx
lea rcx, [rdi + rsi*8]
lea r8, [rdi + rsi*8]
lea r8, [r8 + 8]
cmp dword [0x00bc2240], 0
jne 0x496248
mov qword [rdi + rsi*8], rax
mov qword [rdi + rsi*8 + 8], rbx
jmp 0x49625e
mov rsi, rdi
mov rdi, rcx
call fcn.00466ec0
mov rdi, r8
call fcn.00467000
mov rdi, rsi
mov r9, qword [rsp + 0x280]
jmp 0x495ea4
mov rax, rdx
mov rcx, qword [rsp + 0x2f8]
jmp 0x495e8b
add rdx, 0x30
mov rbx, rsi
movups xmm0, xmmword [rdx]
movups xmmword [rsp + 0x178], xmm0
movups xmm0, xmmword [rdx + 0x10]
movups xmmword [rsp + 0x188], xmm0
movups xmm0, xmmword [rdx + 0x20]
movups xmmword [rsp + 0x198], xmm0
mov rsi, qword [rsp + 0x178]
cmp rsi, 2
jle 0x49636a
cmp rsi, 3
jne 0x4962ff
mov rsi, qword [rsp + 0x180]
mov r8, qword [rsp + 0x198]
lea rdi, [rax + rsi]
cmp r8, 9
jae 0x4964f8
mov r8, qword [rsp + r8*8 + 0x590]
cmp dword [0x00bc2240], 0
jne 0x4962f5
mov qword [rax + rsi], r8
jmp 0x4963d7
call fcn.00467040
jmp 0x4963d7
nop
cmp rsi, 4
jne 0x4964a5
mov rsi, qword [rsp + 0x180]
mov r8, qword [rsp + 0x1a0]
mov r9, qword [rsp + 0x188]
cmp r9, 4
jne 0x496345
cmp r8, 0xf
jae 0x4964eb
mov r8, qword [rsp + r8*8 + 0x518]
mov dword [rax + rsi], r8d
nop
jmp 0x4963d7
cmp r9, 8
jne 0x4964d8
cmp r8, 0xf
jae 0x4964cb
movsd xmm0, qword [rsp + r8*8 + 0x518]
movsd qword [rax + rsi], xmm0
jmp 0x4963d7
cmp rsi, 1
je 0x4964b8
cmp rsi, 2
jne 0x4964a5
mov qword [rsp + 0x168], rbx
mov qword [rsp + 0x2d8], rdx
mov rdx, qword [rsp + 0x180]
mov rbx, qword [rsp + 0x198]
mov rcx, qword [rsp + 0x188]
lea rdi, [rax + rdx]
lea rax, [rsp + 0x4d0]
call fcn.0048af40
mov rax, qword [rsp + 0x288]
mov rcx, qword [rsp + 0xd0]
mov rdx, qword [rsp + 0x2d8]
mov rbx, qword [rsp + 0x168]
lea rsi, [rbx + 1]
nop dword [rax + rax]
cmp rcx, rsi
jg 0x49627b
mov rcx, qword [rsp + 0xf8]
mov rdx, qword [rcx + 0x100]
mov rax, qword [rsp + 0x260]
call rdx
mov qword [rsp + 0x2f0], rax
mov rcx, qword [rsp + 0xf8]
mov rcx, qword [rcx + 0x98]
mov rax, qword [rsp + 0x260]
call rcx
mov rcx, qword [rsp + 0x120]
lea rdx, [rcx + rcx*2]
bts rax, 7
mov rbx, qword [rsp + 0x2f8]
mov qword [rbx + rdx*8 + 0x10], rax
lea rdi, [rbx + rdx*8]
lea rsi, [rbx + rdx*8]
lea rsi, [rsi + 8]
cmp dword [0x00bc2240], 0
jne 0x496471
mov rsi, qword [rsp + 0x2f0]
mov qword [rbx + rdx*8], rsi
mov rsi, qword [rsp + 0x288]
mov qword [rbx + rdx*8 + 8], rsi
jmp 0x49648e
mov rdx, qword [rsp + 0x2f0]
call fcn.00466fe0
mov rdi, rsi
mov rdx, qword [rsp + 0x288]
call fcn.00466fe0
mov rdx, rcx
mov rdi, rbx
mov r9, qword [rsp + 0x280]
nop dword [rax]
jmp 0x495ea4
lea rax, [0x00868e20]
lea rbx, [0x0096ecd0]
call fcn.00438e60
lea rax, [0x00868e20]
lea rbx, [0x0096ed00]
call fcn.00438e60
mov rax, r8
mov ecx, 0xf
call fcn.00467360
lea rax, [0x00868e20]
lea rbx, [0x0096e9d0]
call fcn.00438e60
mov rax, r8
mov ecx, 0xf
call fcn.00467360
mov rax, r8
mov ecx, 9
call fcn.00467360
mov rax, rcx
mov ecx, 9
call fcn.00467360
mov rcx, qword [rsp + 0xf8]
mov rcx, qword [rcx + 0xf8]
mov rax, qword [rsp + 0x260]
call rcx
mov qword [rsp + 0x2e8], rax
mov qword [rsp + 0x158], rbx
mov rcx, qword [rsp + 0x168]
mov rdx, qword [rsp + 0x2d8]
mov rcx, qword [rdx + rcx]
mov qword [rsp + 0x150], rcx
call fcn.0043aec0
lea rax, [0x008d3d85]
mov ebx, 5
call fcn.0043b7c0
mov rax, qword [rsp + 0x150]
call fcn.0043b5c0
lea rax, [0x008d4229]
mov ebx, 7
call fcn.0043b7c0
mov rax, qword [rsp + 0x2e8]
mov rbx, qword [rsp + 0x158]
nop dword [rax + rax]
call fcn.0043b7c0
call fcn.0043b120
call fcn.0043af40
lea rax, [0x00868e20]
lea rbx, [0x0096ecf0]
nop dword [rax]
call fcn.00438e60
xor eax, eax
mov rcx, rax
call fcn.00467360
mov rax, rsi
mov rcx, rbx
call fcn.00467420
mov rcx, rbx
nop dword [rax]
call fcn.004673e0
mov rax, rdi
call fcn.00467360
call fcn.00467360
mov rdi, qword [rsp + 0x2e0]
add rdi, 0x18
mov rax, qword [rsp + 0x2a0]
mov rcx, qword [rsp + 0x280]
mov rbx, qword [rsp + 0x2a8]
mov r8, qword [rsp + 0x140]
mov r10, r11
mov rsi, rdx
mov rdx, qword [rsp + 0x118]
mov qword [rsp + 0x128], rsi
mov qword [rsp + 0x2e0], rdi
mov r9, qword [rdi + 0x10]
mov qword [rsp + 0x170], r9
mov r11, qword [rdi + 8]
mov qword [rsp + 0x2f8], r11
mov r12, qword [rdi]
mov qword [rsp + 0x2f0], r12
nop
test r9, r9
je 0x49666e
test r9, 0x60
je 0x49667e
mov rax, r9
call fcn.00494a80
mov rsi, qword [rsp + 0x128]
mov rax, qword [rsp + 0x278]
mov rbx, rsi
call fcn.0048f180
lea rcx, [0x00975860]
cmp rax, rcx
jne 0x496ab5
mov qword [rsp + 0x270], rbx
mov rax, qword [rsp + 0x2f0]
mov rcx, qword [rsp + 0x170]
lea rdi, [0x008d8757]
mov esi, 0x12
mov r8, rbx
xor r9d, r9d
mov rbx, qword [rsp + 0x2f8]
call fcn.0049f180
mov rdx, qword [rsp + 0x128]
mov r10, qword [rsp + 0x118]
lea rax, [r10 + rdx]
mov r11, qword [rsp + 0x380]
mov r12, qword [rsp + 0x378]
nop dword [rax]
cmp r11, rax
jbe 0x496aad
mov r13, qword [r12 + rax*8]
lea r15, [r11 - 1]
cmp r15, rax
jne 0x496722
mov r11, qword [rsp + 0x368]
nop
jmp 0x496737
lea rax, [r10 + rdx]
lea rax, [rax + 1]
cmp r11, rax
jbe 0x496aa5
mov r11, qword [r12 + rax*8]
mov r12, qword [rsp + 0x370]
mov r15, qword [rsp + 0x360]
cmp r11, r12
ja 0x496a97
cmp r11, r13
jb 0x496a8c
sub r11, r13
mov rax, r13
sub r13, r12
lea r12, [rax + rax*2]
shl r12, 4
sar r13, 0x3f
and r13, r12
lea r12, [r13 + r15]
test r11, r11
je 0x496797
mov qword [rsp + 0x170], rcx
mov qword [rsp + 0x298], rbx
mov qword [rsp + 0xd8], r11
xor eax, eax
jmp 0x4967da
inc rdx
mov r11, qword [rsp + 0x168]
cmp r11, rdx
jg 0x4965f2
mov rax, qword [rsp + 0x2a0]
mov rcx, qword [rsp + 0x280]
mov rbx, qword [rsp + 0x2a8]
mov r8, qword [rsp + 0x140]
jmp 0x495d73
add r12, 0x30
mov rbx, r15
mov rax, r13
movups xmm0, xmmword [r12]
movups xmmword [rsp + 0x1d8], xmm0
movups xmm0, xmmword [r12 + 0x10]
movups xmmword [rsp + 0x1e8], xmm0
movups xmm0, xmmword [r12 + 0x20]
movups xmmword [rsp + 0x1f8], xmm0
mov r13, qword [rsp + 0x1d8]
cmp r13, 1
je 0x4969a7
lea r15, [r13 - 2]
nop dword [rax]
cmp r15, 1
ja 0x49690e
bt ecx, 7
jb 0x496877
cmp r13, 3
jne 0x496852
mov r13, qword [rsp + 0x1f8]
nop
cmp r13, 9
jae 0x496a7f
mov qword [rsp + r13*8 + 0x590], rbx
mov r13, qword [rsp + 0x1f8]
mov r15, rbx
nop dword [rax]
cmp r13, 9
jae 0x496a72
mov qword [rsp + r13*8 + 0x4d0], rbx
jmp 0x49698d
mov qword [rsp + 0x158], rax
mov qword [rsp + 0x2d8], r12
mov rsi, qword [rsp + 0x1e0]
lea rdi, [rsi + rbx]
cmp r13, 3
jne 0x4968b7
mov r8, qword [rsp + 0x1f8]
mov rsi, qword [rbx + rsi]
cmp r8, 9
jae 0x496a65
mov qword [rsp + r8*8 + 0x590], rsi
mov rbx, qword [rsp + 0x1f8]
mov rcx, qword [rsp + 0x1e8]
lea rax, [rsp + 0x4d0]
call fcn.0048afe0
mov rax, qword [rsp + 0x158]
mov rcx, qword [rsp + 0x170]
mov rdx, qword [rsp + 0x128]
mov r10, qword [rsp + 0x118]
mov r11, qword [rsp + 0xd8]
mov r12, qword [rsp + 0x2d8]
mov r15, qword [rsp + 0x298]
jmp 0x49698d
cmp r13, 4
jne 0x496a4e
bt ecx, 7
nop dword [rax]
jae 0x496a3b
mov r13, qword [rsp + 0x1e0]
mov r15, qword [rsp + 0x200]
mov rsi, r10
mov r10, qword [rsp + 0x1e8]
cmp r10, 4
jne 0x496966
movss xmm0, dword [rbx + r13]
cmp r15, 0xf
jae 0x496a2e
movd r10d, xmm0
mov qword [rsp + r15*8 + 0x518], r10
jmp 0x496987
cmp r10, 8
jne 0x496a1b
mov r10, qword [r13 + rbx]
cmp r15, 0xf
jae 0x496a0e
mov qword [rsp + r15*8 + 0x518], r10
mov r10, rsi
mov r15, rbx
lea r13, [rax + 1]
cmp r11, r13
jg 0x4967d0
mov r12, qword [rsp + 0x280]
jmp 0x496797
mov r11, qword [rsp + 0x1f0]
mov r12, qword [rsp + 0x280]
lea rdi, [r12 + r11]
bt ecx, 7
nop
jb 0x4969de
cmp dword [0x00bc2240], 0
jne 0x4969d4
mov qword [r12 + r11], rbx
jmp 0x496797
call fcn.00467000
jmp 0x496797
mov rax, qword [rsp + 0x270]
mov rcx, rbx
mov rbx, rdi
call fcn.004606e0
mov rdx, qword [rsp + 0x128]
mov r10, qword [rsp + 0x118]
mov r12, qword [rsp + 0x280]
jmp 0x496797
mov rax, r15
mov ecx, 0xf
call fcn.00467360
lea rax, [0x00868e20]
lea rbx, [0x0096e9d0]
call fcn.00438e60
mov rax, r15
mov ecx, 0xf
call fcn.00467360
lea rax, [0x00868e20]
lea rbx, [0x0096ecc0]
call fcn.00438e60
lea rax, [0x00868e20]
lea rbx, [0x0096ecd0]
nop dword [rax]
call fcn.00438e60
mov rax, r8
mov ecx, 9
call fcn.00467360
mov rax, r13
mov ecx, 9
call fcn.00467360
mov rax, r13
mov ecx, 9
call fcn.00467360
mov rax, r13
mov rcx, r11
call fcn.00467420
mov rcx, r11
mov rdx, r12
nop dword [rax]
call fcn.004673e0
mov rcx, r11
call fcn.00467360
mov rcx, r11
call fcn.00467360
lea rbx, [0x008ca860]
lea rcx, [0x008c11e0]
call fcn.0040c240
mov rax, rdx
mov ecx, 0xf
call fcn.00467360
lea rax, [0x00868e20]
lea rbx, [0x0096ecb0]
call fcn.00438e60
mov rax, rdx
mov ecx, 9
call fcn.00467360
mov rax, rdx
mov ecx, 9
nop dword [rax]
call fcn.00467360
xor eax, eax
mov rcx, rax
call fcn.00467360
mov rbx, rcx
lea rcx, [0x00877400]
call fcn.0040c160
lea rax, [0x00868e20]
lea rbx, [0x0096eca0]
call fcn.00438e60
mov rax, qword [rsp + 0x2f0]
mov rbx, qword [rsp + 0x2f8]
mov rcx, qword [rsp + 0x170]
mov rdi, qword [rsp + 0x130]
call fcn.00499760
mov rdi, qword [rsp + 0x2d0]
mov rsi, qword [rsp + 0x2c8]
mov r8, qword [rsp + 0x148]
call fcn.0049c500
mov r8, qword [rsp + 0x130]
inc r8
mov rdx, qword [rsp + 0x110]
mov rsi, qword [rsp + 0x2e8]
mov r9, qword [rsp + 0x618]
mov r10, qword [rsp + 0x2b8]
mov r11, qword [rsp + 0x620]
mov r12, qword [rsp + 0x108]
mov rax, rsi
mov rcx, rdx
mov rdx, r9
mov rbx, r10
mov rsi, r11
mov rdi, r12
cmp r8, rcx
jge 0x496c6f
lea r9, [rdi + r8]
cmp rsi, r9
jbe 0x496e9f
mov qword [rsp + 0x130], r8
lea r9, [r9 + r9*2]
mov r10, qword [rdx + r9*8 + 0x10]
mov qword [rsp + 0x148], r10
mov r11, qword [rdx + r9*8]
mov qword [rsp + 0x2d0], r11
mov r9, qword [rdx + r9*8 + 8]
mov qword [rsp + 0x2c8], r9
test r10, r10
je 0x496c1d
bt r10d, 9
jb 0x496c1d
lea r12, [0x00975860]
jmp 0x496c41
mov rax, r11
mov rbx, r9
mov rcx, r10
call fcn.0049e220
mov r12, rax
mov r11, rbx
mov rax, qword [rsp + 0x2e8]
mov rbx, qword [rsp + 0x2b8]
mov qword [rsp + 0x240], r11
mov qword [rsp + 0xe0], r12
mov rdx, qword [r12 + 0x20]
mov rcx, rbx
mov rbx, rax
mov rax, r11
nop
call rdx
test al, al
jne 0x496b31
jmp 0x496d71
lea rcx, [rdi + 1]
mov qword [rsp + 0x168], rcx
lea rax, [0x008d2ee0]
mov rbx, rcx
call fcn.0044cf20
mov rcx, qword [rsp + 0x108]
mov rdx, qword [rsp + 0x168]
nop word [rax + rax]
cmp rcx, rdx
ja 0x496d6c
mov qword [rsp + 0x2c8], rax
mov rbx, rax
mov rdi, qword [rsp + 0x618]
mov rsi, qword [rsp + 0x620]
lea rax, [0x008d2ee0]
call fcn.00415520
mov rax, qword [rsp + 0x108]
mov rcx, qword [rsp + 0x168]
cmp rax, rcx
jae 0x496d67
lea rdx, [rax + rax*2]
mov rbx, qword [rsp + 0x170]
mov rsi, qword [rsp + 0x2c8]
mov qword [rsi + rdx*8 + 0x10], rbx
lea rdi, [rsi + rdx*8]
lea rbx, [rsi + rdx*8]
lea rbx, [rbx + 8]
cmp dword [0x00bc2240], 0
jne 0x496d32
mov rbx, qword [rsp + 0x2f0]
mov qword [rsi + rdx*8], rbx
mov rbx, qword [rsp + 0x2f8]
mov qword [rsi + rdx*8 + 8], rbx
jmp 0x496d4f
mov rdx, qword [rsp + 0x2f0]
call fcn.00466fe0
mov rdi, rbx
mov rdx, qword [rsp + 0x2f8]
call fcn.00466fe0
mov rsi, qword [rsp + 0x278]
mov r10, rcx
mov rdi, qword [rsp + 0x2c8]
jmp 0x4958f6
call fcn.00467360
call fcn.004673e0
mov rcx, qword [rsp + 0xe0]
mov rcx, qword [rcx + 0xf8]
mov rax, qword [rsp + 0x240]
call rcx
mov qword [rsp + 0x2c0], rax
mov qword [rsp + 0x168], rbx
mov rcx, qword [rsp + 0x2e8]
mov rcx, qword [rcx + 0xf8]
mov rax, qword [rsp + 0x2b8]
call rcx
lea rdi, [rsp + 0x300]
lea rdi, [rdi - 0x20]
nop
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046762b
mov rbp, qword [rbp]
lea rcx, [0x008d9a13]
mov qword [rsp + 0x300], rcx
mov qword [rsp + 0x308], 0x14
mov rcx, qword [rsp + 0x2c0]
mov qword [rsp + 0x310], rcx
mov rcx, qword [rsp + 0x168]
mov qword [rsp + 0x318], rcx
lea rcx, [0x008d4b89]
mov qword [rsp + 0x320], rcx
mov qword [rsp + 0x328], 9
mov qword [rsp + 0x330], rax
mov qword [rsp + 0x338], rbx
lea rcx, [0x008d3892]
mov qword [rsp + 0x340], rcx
mov qword [rsp + 0x348], 4
mov rcx, qword [rsp + 0x608]
mov qword [rsp + 0x350], rcx
mov rcx, qword [rsp + 0x610]
mov qword [rsp + 0x358], rcx
xor eax, eax
lea rbx, [rsp + 0x300]
mov ecx, 6
mov rdi, rcx
call fcn.004509c0
call fcn.0040c5a0
mov rbx, rax
lea rax, [0x00868e20]
call fcn.00438e60
mov rax, r9
mov rcx, rsi
call fcn.00467360
mov rcx, qword [rsp + 0xe8]
mov rcx, qword [rcx + 0xf8]
mov rax, qword [rsp + 0x248]
call rcx
mov qword [rsp + 0x2c0], rax
mov qword [rsp + 0x168], rbx
mov rcx, qword [rsp + 0x2e8]
mov rcx, qword [rcx + 0xf8]
mov rax, qword [rsp + 0x268]
call rcx
lea rdi, [rsp + 0x300]
lea rdi, [rdi - 0x20]
nop dword [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046762b
mov rbp, qword [rbp]
lea rcx, [0x008d4fe5]
mov qword [rsp + 0x300], rcx
mov qword [rsp + 0x308], 9
mov rcx, qword [rsp + 0x608]
mov qword [rsp + 0x310], rcx
mov rcx, qword [rsp + 0x610]
mov qword [rsp + 0x318], rcx
lea rcx, [0x008d4206]
mov qword [rsp + 0x320], rcx
mov qword [rsp + 0x328], 7
mov rcx, qword [rsp + 0x2c0]
mov qword [rsp + 0x330], rcx
mov rcx, qword [rsp + 0x168]
mov qword [rsp + 0x338], rcx
lea rcx, [0x008d4b89]
mov qword [rsp + 0x340], rcx
mov qword [rsp + 0x348], 9
mov qword [rsp + 0x350], rax
mov qword [rsp + 0x358], rbx
xor eax, eax
lea rbx, [rsp + 0x300]
mov ecx, 6
mov rdi, rcx
call fcn.004509c0
call fcn.0040c5a0
mov rbx, rax
lea rax, [0x00868e20]
call fcn.00438e60
mov rax, rbx
mov rcx, r10
call fcn.00467360
add r8, 0x18
mov rsi, r11
mov r11, qword [r8 + 0x10]
test r11, 0x1f
je 0x49700c
lea r11, [rsi + 1]
cmp r10, r11
jg 0x496fea
jmp 0x495725
xor eax, eax
lea rbx, [0x008d4fe5]
mov ecx, 9
mov rdi, qword [rsp + 0x608]
mov rsi, qword [rsp + 0x610]
lea r8, [0x008dc85a]
mov r9d, 0x1a
call fcn.00450d00
nop dword [rax]
call fcn.0040c5a0
mov rbx, rax
lea rax, [0x00868e20]
call fcn.00438e60
lea rax, [0x00868e20]
lea rbx, [0x0096ec90]
call fcn.00438e60
lea rax, [0x00868e20]
lea rbx, [0x0096ec80]
call fcn.00438e60
lea rax, [0x00868e20]
lea rbx, [0x0096ec70]
call fcn.00438e60
lea rax, [0x00868e20]
lea rbx, [0x0096ec60]
nop dword [rax + rax]
call fcn.00438e60
lea rax, [0x00868e20]
lea rbx, [0x0096ec50]
call fcn.00438e60
lea rax, [0x00868e20]
lea rbx, [0x0096ec40]
call fcn.00438e60
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x40], r10
call fcn.00464c60
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov r8, qword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
mov r10, qword [rsp + 0x40]
jmp fcn.00495520