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

Disassembly:
lea r12, [rsp - 0x1e0]
cmp r12, qword [r14 + 0x10]
jbe 0x61839a
sub rsp, 0x260
mov qword [rsp + 0x258], rbp
lea rbp, [rsp + 0x258]
mov qword [rsp + 0x270], rbx
mov qword [rsp + 0x290], r8
mov qword [rsp + 0x268], rax
mov qword [rsp + 0x280], rdi
mov qword [rsp + 0x1c0], rbx
mov qword [rsp + 0x278], rcx
mov qword [rsp + 0x288], rsi
movups xmmword [rsp + 0x1d0], xmm15
movups xmmword [rsp + 0x1e0], xmm15
mov rax, r8
mov rbx, r9
call fcn.00618640
nop
test rdi, rdi
jne 0x617175
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0x88], rbx
mov qword [rsp + 0x198], rax
mov rcx, qword [rsp + 0x1c0]
mov rdx, qword [rcx + 0x18]
mov rax, qword [rsp + 0x278]
call rdx
test dil, dil
je 0x616d1a
mov qword [rsp + 0x1f0], rax
mov qword [rsp + 0x1f8], rbx
mov qword [rsp + 0x200], rcx
mov rdx, qword [rsp + 0x1f0]
bt rdx, 0x3f
nop
jae 0x616cfb
mov rsi, rdx
shl rdx, 1
shr rdx, 0x1f
movabs r8, 0xdd7b17f80
add rdx, r8
jmp 0x616d01
mov rsi, rdx
mov rdx, rbx
test rdx, rdx
jne 0x616d13
and esi, 0x3fffffff
test esi, esi
sete dl
jmp 0x616d15
xor edx, edx
xor edx, 1
jmp 0x616d20
xor edx, edx
nop dword [rax]
test dl, dl
je 0x616de8
mov rdx, qword [rsp + 0x280]
mov rsi, qword [rdx + 0x38]
mov rdi, rcx
mov rcx, rbx
mov rbx, rax
mov rax, qword [rsp + 0x288]
call rsi
mov rdx, qword [rsp + 0x280]
test byte [rdx], al
mov rsi, qword [0x0089e030]
mov r8, qword [0x0089e038]
mov r9, qword [0x0089e040]
movups xmmword [rsp + 0x228], xmm15
movups xmmword [rsp + 0x238], xmm15
movups xmmword [rsp + 0x248], xmm15
lea r10, [0x006185e0]
mov qword [rsp + 0x228], r10
mov qword [rsp + 0x230], rdx
mov r10, qword [rsp + 0x288]
mov qword [rsp + 0x238], r10
mov qword [rsp + 0x240], rsi
mov qword [rsp + 0x248], r8
mov qword [rsp + 0x250], r9
lea rsi, [rsp + 0x228]
mov qword [rsp + 0x138], rsi
lea rax, [rsp + 0x120]
call fcn.004352a0
nop dword [rax]
test eax, eax
jne 0x617140
mov rcx, qword [0x0089c338]
mov rax, qword [rsp + 0x1c0]
lea rdx, [0x0071b0c8]
nop
cmp rax, rdx
jne 0x616e1a
mov rbx, qword [rsp + 0x278]
call fcn.00403fe0
test al, al
jne 0x616f7b
lea rax, [0x00655a20]
mov ebx, 1
call fcn.00405660
mov qword [rsp + 0x1a0], rax
xor ebx, ebx
lea rax, [0x00655d60]
nop dword [rax]
call fcn.00405660
mov qword [rsp + 0x1a8], rax
movups xmmword [rsp + 0x208], xmm15
movups xmmword [rsp + 0x218], xmm15
lea rcx, [0x00618540]
mov qword [rsp + 0x208], rcx
mov qword [rsp + 0x210], rax
lea rcx, [rsp + 0x1e0]
mov qword [rsp + 0x218], rcx
mov rcx, qword [rsp + 0x1a0]
mov qword [rsp + 0x220], rcx
lea rdx, [rsp + 0x208]
mov qword [rsp + 0xf0], rdx
lea rax, [rsp + 0xd8]
call fcn.004352a0
test eax, eax
jne 0x617106
lea rax, [0x006898e0]
call fcn.0040d960
lea rcx, [0x00618400]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x1c0]
mov qword [rax + 8], rcx
cmp dword [0x008f2cf0], 0
jne 0x616ef4
mov rdx, qword [rsp + 0x278]
mov qword [rax + 0x10], rdx
jmp 0x616f05
lea rdi, [rax + 0x10]
mov rdx, qword [rsp + 0x278]
call fcn.004655c0
mov rbx, qword [rsp + 0x280]
mov qword [rax + 0x18], rbx
cmp dword [0x008f2cf0], 0
jne 0x616f42
mov rsi, qword [rsp + 0x288]
mov qword [rax + 0x20], rsi
mov rdi, qword [rsp + 0x1a0]
mov qword [rax + 0x28], rdi
mov rdi, qword [rsp + 0x1a8]
mov qword [rax + 0x30], rdi
nop
jmp 0x616f76
lea rdi, [rax + 0x20]
mov rsi, qword [rsp + 0x288]
call fcn.00465600
lea rdi, [rax + 0x28]
mov r8, qword [rsp + 0x1a0]
nop
call fcn.00465620
lea rdi, [rax + 0x30]
mov r8, qword [rsp + 0x1a8]
call fcn.00465620
call fcn.00441a00
mov rcx, qword [rsp + 0x88]
lea rdx, [rcx + 6]
mov qword [rsp + 0x98], rdx
lea rax, [0x006578a0]
xor ebx, ebx
mov rcx, rdx
nop dword [rax + rax]
call fcn.0044a840
mov rdx, qword [rsp + 0x98]
cmp rdx, 1
jae 0x616fcc
mov ebx, 1
xor ecx, ecx
mov rdi, rbx
lea rsi, [0x006578a0]
call fcn.0044a920
mov rdx, rcx
mov byte [rax], 5
mov r8, qword [rsp + 0x268]
mov r9, qword [r8 + 0x38]
mov r10, qword [r8 + 0x30]
nop
test r9, r9
je 0x6170cc
cmp qword [r8 + 0x48], 0
je 0x6170cc
cmp r9, 0xff
jg 0x617057
mov qword [rsp + 0xc0], r9
mov qword [rsp + 0x1b8], r10
cmp rdx, 2
jae 0x617047
mov ebx, 2
mov rcx, rdx
mov edi, 1
lea rsi, [0x006578a0]
call fcn.0044a920
mov r8, qword [rsp + 0x268]
mov r9, qword [rsp + 0xc0]
mov r10, qword [rsp + 0x1b8]
mov rdx, rcx
mov byte [rax + 1], r9b
xor ecx, ecx
mov ebx, 2
jmp 0x61832d
lea rax, [0x0066df60]
nop
call fcn.0040d960
mov qword [rax + 8], 0x1f
lea rcx, [0x006aeb92]
mov qword [rax], rcx
movups xmmword [rsp + 0x1d0], xmm15
lea rcx, [0x007191c0]
mov qword [rsp + 0x1e0], rcx
mov qword [rsp + 0x1e8], rax
call fcn.004358c0
mov rcx, qword [rsp + 0x1e0]
mov rax, qword [rsp + 0x1d0]
mov rdi, qword [rsp + 0x1e8]
mov rbx, qword [rsp + 0x1d8]
mov rbp, qword [rsp + 0x258]
add rsp, 0x260
ret
cmp rdx, 3
jae 0x6170f6
mov ebx, 3
mov rcx, rdx
mov edi, 2
lea rsi, [0x006578a0]
call fcn.0044a920
mov r8, qword [rsp + 0x268]
mov rdx, rcx
mov word [rax + 1], 1
mov ecx, 3
jmp 0x6171c3
call fcn.004358c0
mov rax, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x1e0]
mov rbx, qword [rsp + 0x1d8]
mov rdi, qword [rsp + 0x1e8]
mov rbp, qword [rsp + 0x258]
add rsp, 0x260
ret
call fcn.004358c0
mov rax, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x1e0]
mov rdi, qword [rsp + 0x1e8]
mov rbx, qword [rsp + 0x1d8]
mov rbp, qword [rsp + 0x258]
add rsp, 0x260
ret
movups xmmword [rsp + 0x1d0], xmm15
mov qword [rsp + 0x1e0], rdi
mov qword [rsp + 0x1e8], rsi
call fcn.004358c0
mov rcx, qword [rsp + 0x1e0]
mov rdi, qword [rsp + 0x1e8]
mov rbx, qword [rsp + 0x1d8]
mov rax, qword [rsp + 0x1d0]
mov rbp, qword [rsp + 0x258]
add rsp, 0x260
ret
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0x1b0], rax
mov qword [rsp + 0x98], rdx
mov rsi, qword [rsp + 0x280]
mov r8, qword [rsi + 0x50]
mov rbx, rax
mov rdi, rdx
mov rax, qword [rsp + 0x288]
call r8
mov qword [rsp + 0x1e0], rbx
mov qword [rsp + 0x1e8], rcx
test rbx, rbx
jne 0x617720
mov rdx, qword [rsp + 0x98]
nop dword [rax]
cmp rdx, 2
jb 0x618316
lea rax, [0x0066a5c0]
mov rbx, qword [rsp + 0x280]
call fcn.0040b120
mov rbx, qword [rsp + 0x288]
mov rcx, qword [rsp + 0x1b0]
mov edi, 2
mov rsi, qword [rsp + 0x98]
mov r8, rdi
nop
call fcn.0046ff40
mov qword [rsp + 0x1e0], rbx
mov qword [rsp + 0x1e8], rcx
test rbx, rbx
jne 0x6176e9
mov rdx, qword [rsp + 0x90]
test rdx, rdx
jbe 0x61830c
mov rax, qword [rsp + 0x1b0]
movzx r8d, byte [rax]
nop dword [rax + rax]
cmp r8b, 5
jne 0x617621
cmp rdx, 1
jbe 0x6182ff
movzx edx, byte [rax + 1]
nop dword [rax + rax]
cmp rdx, 0xff
je 0x6175ad
mov r8, qword [rsp + 0x268]
cmp qword [r8 + 0x48], 0
nop word [rax + rax]
je 0x61736c
mov qword [rsp + 0xb8], rdx
lea rax, [0x0066b520]
mov rbx, qword [rsp + 0x280]
nop dword [rax]
call fcn.0040b120
mov rcx, qword [rsp + 0x268]
mov rdx, qword [rcx + 0x48]
mov rsi, qword [rdx]
mov rbx, qword [rsp + 0x278]
mov rdi, qword [rsp + 0x288]
mov r8, rax
mov rax, qword [rsp + 0x1c0]
mov rcx, r8
mov r10, rsi
mov rsi, qword [rsp + 0xb8]
nop dword [rax]
call r10
mov qword [rsp + 0x1e0], rax
mov qword [rsp + 0x1e8], rbx
test rax, rax
jne 0x617578
mov rax, qword [rsp + 0x1b0]
mov r8, qword [rsp + 0x268]
mov rdx, qword [r8]
mov r8, qword [rsp + 0x98]
cmp r8, 3
jae 0x6173a9
mov qword [rsp + 0xb0], rdx
mov ebx, 3
mov ecx, 2
mov rdi, rbx
lea rsi, [0x006578a0]
call fcn.0044a920
mov rdx, qword [rsp + 0xb0]
mov r8, rcx
mov qword [rsp + 0x1b0], rax
mov qword [rsp + 0x98], r8
mov byte [rax], 5
mov byte [rax + 1], dl
mov byte [rax + 2], 0
mov rbx, qword [rsp + 0x88]
mov rax, qword [rsp + 0x198]
call fcn.00560280
test rax, rax
je 0x617405
nop dword [rax]
cmp rbx, 4
je 0x6173f7
cmp rbx, 0x10
jne 0x6182b8
xor ecx, ecx
jmp 0x6182ca
mov rcx, rbx
mov rdx, rax
nop dword [rax]
jmp 0x617fc8
mov rbx, qword [rsp + 0x88]
cmp rbx, 0xff
jg 0x617505
mov rcx, qword [rsp + 0x98]
cmp rcx, 4
jb 0x617432
mov rax, qword [rsp + 0x1b0]
jmp 0x617458
mov rax, qword [rsp + 0x1b0]
mov ebx, 4
mov edi, 1
lea rsi, [0x006578a0]
call fcn.0044a920
mov rbx, qword [rsp + 0x88]
mov byte [rax + 3], 3
nop dword [rax]
cmp rcx, 5
jae 0x617484
mov ebx, 5
mov edi, 1
lea rsi, [0x006578a0]
call fcn.0044a920
mov rbx, qword [rsp + 0x88]
mov byte [rax + 4], bl
lea rdx, [rbx + 5]
cmp rcx, rdx
jae 0x6174b0
mov rdi, rbx
lea rsi, [0x006578a0]
mov rbx, rdx
nop dword [rax]
call fcn.0044a920
mov rdx, rbx
mov rbx, qword [rsp + 0x88]
mov qword [rsp + 0x98], rcx
mov qword [rsp + 0x90], rdx
mov qword [rsp + 0x1b0], rax
lea rsi, [rax + 5]
mov rax, rsi
mov r8, rbx
mov rbx, qword [rsp + 0x198]
mov rcx, r8
nop dword [rax]
call fcn.004662e0
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x1b0]
mov rdx, qword [rsp + 0x90]
nop dword [rax]
jmp 0x617755
lea rax, [0x0066df60]
call fcn.0040d960
mov qword [rax + 8], 0xd
lea rcx, [0x006a6aac]
mov qword [rax], rcx
movups xmmword [rsp + 0x1d0], xmm15
lea rcx, [0x007191c0]
mov qword [rsp + 0x1e0], rcx
mov qword [rsp + 0x1e8], rax
call fcn.004358c0
mov rax, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x1e0]
mov rdi, qword [rsp + 0x1e8]
mov rbx, qword [rsp + 0x1d8]
mov rbp, qword [rsp + 0x258]
add rsp, 0x260
ret
call fcn.004358c0
mov rcx, qword [rsp + 0x1e0]
mov rax, qword [rsp + 0x1d0]
mov rbx, qword [rsp + 0x1d8]
mov rdi, qword [rsp + 0x1e8]
mov rbp, qword [rsp + 0x258]
add rsp, 0x260
ret
lea rax, [0x0066df60]
call fcn.0040d960
mov qword [rax + 8], 0x24
lea rcx, [0x006b0cb9]
mov qword [rax], rcx
movups xmmword [rsp + 0x1d0], xmm15
lea rcx, [0x007191c0]
mov qword [rsp + 0x1e0], rcx
mov qword [rsp + 0x1e8], rax
call fcn.004358c0
mov rcx, qword [rsp + 0x1e0]
mov rax, qword [rsp + 0x1d0]
mov rbx, qword [rsp + 0x1d8]
mov rdi, qword [rsp + 0x1e8]
mov rbp, qword [rsp + 0x258]
add rsp, 0x260
nop
ret
mov eax, r8d
mov ebx, 0xa
call fcn.0047dfc0
mov ecx, 0x1c
mov rdi, rax
mov rsi, rbx
xor eax, eax
lea rbx, [0x006ad6be]
call fcn.0044e760
mov qword [rsp + 0x190], rax
mov qword [rsp + 0x70], rbx
lea rax, [0x0066df60]
nop dword [rax + rax]
call fcn.0040d960
mov rcx, qword [rsp + 0x70]
mov qword [rax + 8], rcx
cmp dword [0x008f2cf0], 0
jne 0x617684
mov rcx, qword [rsp + 0x190]
mov qword [rax], rcx
jmp 0x617694
mov rdi, rax
mov rcx, qword [rsp + 0x190]
call fcn.004655a0
movups xmmword [rsp + 0x1d0], xmm15
lea rcx, [0x007191c0]
mov qword [rsp + 0x1e0], rcx
mov qword [rsp + 0x1e8], rax
call fcn.004358c0
mov rcx, qword [rsp + 0x1e0]
mov rax, qword [rsp + 0x1d0]
mov rbx, qword [rsp + 0x1d8]
mov rdi, qword [rsp + 0x1e8]
mov rbp, qword [rsp + 0x258]
add rsp, 0x260
ret
call fcn.004358c0
mov rcx, qword [rsp + 0x1e0]
mov rax, qword [rsp + 0x1d0]
mov rdi, qword [rsp + 0x1e8]
mov rbx, qword [rsp + 0x1d8]
mov rbp, qword [rsp + 0x258]
add rsp, 0x260
ret
call fcn.004358c0
mov rcx, qword [rsp + 0x1e0]
mov rax, qword [rsp + 0x1d0]
mov rbx, qword [rsp + 0x1d8]
mov rdi, qword [rsp + 0x1e8]
mov rbp, qword [rsp + 0x258]
add rsp, 0x260
ret
lea rbx, [rdx + 2]
cmp rax, rbx
jae 0x617781
mov edi, 2
lea rsi, [0x006578a0]
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call fcn.0044a920
mov rdx, rcx
mov rcx, rax
mov rax, rdx
mov qword [rsp + 0x1b0], rcx
mov qword [rsp + 0x90], rbx
mov qword [rsp + 0x98], rax
mov rdx, qword [rsp + 0x78]
mov rsi, rdx
sar rdx, 8
mov byte [rbx + rcx - 2], dl
mov byte [rbx + rcx - 1], sil
mov rdx, qword [rsp + 0x280]
mov rsi, qword [rdx + 0x50]
mov rdi, rax
mov rax, qword [rsp + 0x288]
mov r8, rbx
mov rbx, rcx
mov rcx, r8
call rsi
mov qword [rsp + 0x1e0], rbx
mov qword [rsp + 0x1e8], rcx
test rbx, rbx
jne 0x617f40
mov rdx, qword [rsp + 0x98]
cmp rdx, 4
jb 0x617fbe
lea rax, [0x0066a5c0]
mov rbx, qword [rsp + 0x280]
call fcn.0040b120
mov rbx, qword [rsp + 0x288]
mov rcx, qword [rsp + 0x1b0]
mov edi, 4
mov rsi, qword [rsp + 0x98]
mov r8, rdi
call fcn.0046ff40
mov qword [rsp + 0x1e0], rbx
mov qword [rsp + 0x1e8], rcx
test rbx, rbx
jne 0x617f09
mov rdx, qword [rsp + 0x90]
test rdx, rdx
jbe 0x617fb4
mov rsi, qword [rsp + 0x1b0]
movzx eax, byte [rsi]
cmp al, 5
jne 0x617e49
cmp rdx, 1
jbe 0x617fa7
movzx eax, byte [rsi + 1]
nop
test rax, rax
jne 0x617d8c
cmp rdx, 2
jbe 0x617f9a
cmp byte [rsi + 2], 0
jne 0x617d15
lea rax, [0x0067dda0]
call fcn.0040d960
mov rcx, qword [rsp + 0x90]
cmp rcx, 3
jbe 0x617f8d
mov qword [rsp + 0x1c8], rax
mov rdx, qword [rsp + 0x1b0]
movzx esi, byte [rdx + 3]
cmp sil, 1
je 0x617ab7
nop dword [rax]
cmp sil, 3
je 0x617a0a
cmp sil, 4
jne 0x617948
lea rax, [0x006578a0]
mov ebx, 0x10
mov rcx, rbx
nop
call fcn.0044a840
mov rdi, qword [rsp + 0x1c8]
mov qword [rdi + 0x18], 0x10
mov qword [rdi + 0x20], 0x10
cmp dword [0x008f2cf0], 0
jne 0x61792c
mov qword [rdi + 0x10], rax
jmp 0x61793e
lea rsi, [rdi + 0x10]
mov rcx, rdi
mov rdi, rsi
call fcn.004654a0
mov rdi, rcx
mov eax, 0x12
jmp 0x617b0d
mov eax, esi
mov ebx, 0xa
call fcn.0047dfc0
mov ecx, 0x15
mov rdi, rax
mov rsi, rbx
xor eax, eax
lea rbx, [0x006aa1f2]
call fcn.0044e760
mov qword [rsp + 0x178], rax
mov qword [rsp + 0x58], rbx
lea rax, [0x0066df60]
call fcn.0040d960
mov rcx, qword [rsp + 0x58]
mov qword [rax + 8], rcx
cmp dword [0x008f2cf0], 0
jne 0x6179a5
mov rcx, qword [rsp + 0x178]
mov qword [rax], rcx
jmp 0x6179b5
mov rdi, rax
mov rcx, qword [rsp + 0x178]
call fcn.004655a0
movups xmmword [rsp + 0x1d0], xmm15
lea rcx, [0x007191c0]
mov qword [rsp + 0x1e0], rcx
mov qword [rsp + 0x1e8], rax
call fcn.004358c0
mov rcx, qword [rsp + 0x1e0]
mov rax, qword [rsp + 0x1d0]
mov rdi, qword [rsp + 0x1e8]
mov rbx, qword [rsp + 0x1d8]
mov rbp, qword [rsp + 0x258]
add rsp, 0x260
ret
lea rax, [0x0066a5c0]
mov rbx, qword [rsp + 0x280]
call fcn.0040b120
mov rbx, qword [rsp + 0x288]
mov rcx, qword [rsp + 0x1b0]
mov edi, 1
mov rsi, qword [rsp + 0x98]
mov r8, rdi
nop
call fcn.0046ff40
test rbx, rbx
jne 0x617a69
mov rsi, qword [rsp + 0x1b0]
movzx edi, byte [rsi]
add rdi, 2
mov rax, rdi
mov rdi, qword [rsp + 0x1c8]
jmp 0x617b0d
movups xmmword [rsp + 0x1d0], xmm15
mov qword [rsp + 0x1e0], rbx
mov qword [rsp + 0x1e8], rcx
call fcn.004358c0
mov rcx, qword [rsp + 0x1e0]
mov rdi, qword [rsp + 0x1e8]
mov rbx, qword [rsp + 0x1d8]
mov rax, qword [rsp + 0x1d0]
mov rbp, qword [rsp + 0x258]
add rsp, 0x260
ret
lea rax, [0x006578a0]
mov ebx, 4
mov rcx, rbx
call fcn.0044a840
mov rdi, qword [rsp + 0x1c8]
mov qword [rdi + 0x18], 4
mov qword [rdi + 0x20], 4
cmp dword [0x008f2cf0], 0
jne 0x617af2
mov qword [rdi + 0x10], rax
jmp 0x617b08
lea rsi, [rdi + 0x10]
mov rcx, rdi
mov rdi, rsi
nop dword [rax]
call fcn.004654a0
mov rdi, rcx
mov eax, 6
mov qword [rsp + 0x80], rax
mov rdx, qword [rsp + 0x98]
nop dword [rax]
cmp rax, rdx
jg 0x617b35
ja 0x617f85
mov rcx, qword [rsp + 0x1b0]
jmp 0x617b52
mov rbx, rax
mov rcx, rbx
lea rax, [0x006578a0]
call fcn.0044a840
mov rcx, rax
mov rdx, qword [rsp + 0x80]
mov qword [rsp + 0x1b0], rcx
mov qword [rsp + 0x98], rdx
lea rax, [0x0066a5c0]
mov rbx, qword [rsp + 0x280]
call fcn.0040b120
mov rbx, qword [rsp + 0x288]
mov rcx, qword [rsp + 0x1b0]
mov rdi, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x98]
mov r8, rdi
call fcn.0046ff40
mov qword [rsp + 0x1e0], rbx
mov qword [rsp + 0x1e8], rcx
test rbx, rbx
jne 0x617ce0
mov rsi, qword [rsp + 0x1c8]
mov rax, qword [rsi + 0x10]
mov rcx, qword [rsi + 0x18]
test rax, rax
je 0x617c0b
mov rdx, qword [rsp + 0x80]
cmp rdx, rcx
cmovl rcx, rdx
mov rbx, qword [rsp + 0x1b0]
cmp rbx, rax
je 0x617c6d
call fcn.004662e0
mov rdx, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x1b0]
mov rsi, qword [rsp + 0x1c8]
jmp 0x617c6d
mov rcx, qword [rsp + 0x80]
lea rdi, [rcx - 2]
mov rdx, qword [rsp + 0x98]
nop
cmp rdx, rdi
jb 0x617f7d
xor eax, eax
mov rbx, qword [rsp + 0x1b0]
mov rcx, rdi
call fcn.0044eb00
mov rdi, qword [rsp + 0x1c8]
mov qword [rdi + 8], rbx
cmp dword [0x008f2cf0], 0
jne 0x617c55
mov qword [rdi], rax
jmp 0x617c5a
call fcn.004654a0
mov rdx, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x1b0]
mov rsi, rdi
lea rax, [rdx - 2]
cmp rdx, rax
jbe 0x617f75
movzx eax, word [rdx + rbx - 2]
rol ax, 8
mov qword [rsi + 0x28], rax
lea rax, [0x0071a860]
mov qword [rsp + 0x1d0], rax
mov qword [rsp + 0x1d8], rsi
movups xmmword [rsp + 0x1e0], xmm15
call fcn.004358c0
mov rcx, qword [rsp + 0x1e0]
mov rdi, qword [rsp + 0x1e8]
mov rbx, qword [rsp + 0x1d8]
mov rax, qword [rsp + 0x1d0]
mov rbp, qword [rsp + 0x258]
add rsp, 0x260
ret
call fcn.004358c0
mov rcx, qword [rsp + 0x1e0]
mov rax, qword [rsp + 0x1d0]
mov rdi, qword [rsp + 0x1e8]
mov rbx, qword [rsp + 0x1d8]
mov rbp, qword [rsp + 0x258]
add rsp, 0x260
ret
lea rax, [0x0066df60]
nop dword [rax]
call fcn.0040d960
mov qword [rax + 8], 0x17
lea rcx, [0x006ab0bb]
mov qword [rax], rcx
movups xmmword [rsp + 0x1d0], xmm15
lea rcx, [0x007191c0]
mov qword [rsp + 0x1e0], rcx
mov qword [rsp + 0x1e8], rax
call fcn.004358c0
mov rcx, qword [rsp + 0x1e0]
mov rax, qword [rsp + 0x1d0]
mov rdi, qword [rsp + 0x1e8]
mov rbx, qword [rsp + 0x1d8]
mov rbp, qword [rsp + 0x258]
add rsp, 0x260
ret
call fcn.006187a0
mov ecx, 0xe
mov rdi, rax
mov rsi, rbx
xor eax, eax
lea rbx, [0x006a7308]
call fcn.0044e760
mov qword [rsp + 0x180], rax
mov qword [rsp + 0x60], rbx
lea rax, [0x0066df60]
nop
call fcn.0040d960
mov rcx, qword [rsp + 0x60]
mov qword [rax + 8], rcx
cmp dword [0x008f2cf0], 0
jne 0x617de4
mov rcx, qword [rsp + 0x180]
mov qword [rax], rcx
jmp 0x617df4
mov rdi, rax
mov rcx, qword [rsp + 0x180]
call fcn.004655a0
movups xmmword [rsp + 0x1d0], xmm15
lea rcx, [0x007191c0]
mov qword [rsp + 0x1e0], rcx
mov qword [rsp + 0x1e8], rax
call fcn.004358c0
mov rax, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x1e0]
mov rbx, qword [rsp + 0x1d8]
mov rdi, qword [rsp + 0x1e8]
mov rbp, qword [rsp + 0x258]
add rsp, 0x260
ret
mov ebx, 0xa
call fcn.0047dfc0
mov ecx, 0x1c
mov rdi, rax
mov rsi, rbx
xor eax, eax
lea rbx, [0x006ad6be]
call fcn.0044e760
mov qword [rsp + 0x188], rax
mov qword [rsp + 0x68], rbx
lea rax, [0x0066df60]
call fcn.0040d960
mov rcx, qword [rsp + 0x68]
mov qword [rax + 8], rcx
cmp dword [0x008f2cf0], 0
jne 0x617ea4
mov rcx, qword [rsp + 0x188]
mov qword [rax], rcx
jmp 0x617eb4
mov rdi, rax
mov rcx, qword [rsp + 0x188]
call fcn.004655a0
movups xmmword [rsp + 0x1d0], xmm15
lea rcx, [0x007191c0]
mov qword [rsp + 0x1e0], rcx
mov qword [rsp + 0x1e8], rax
call fcn.004358c0
mov rcx, qword [rsp + 0x1e0]
mov rax, qword [rsp + 0x1d0]
mov rdi, qword [rsp + 0x1e8]
mov rbx, qword [rsp + 0x1d8]
mov rbp, qword [rsp + 0x258]
add rsp, 0x260
ret
call fcn.004358c0
mov rax, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x1e0]
mov rdi, qword [rsp + 0x1e8]
mov rbx, qword [rsp + 0x1d8]
mov rbp, qword [rsp + 0x258]
add rsp, 0x260
ret
call fcn.004358c0
mov rcx, qword [rsp + 0x1e0]
mov rax, qword [rsp + 0x1d0]
mov rdi, qword [rsp + 0x1e8]
mov rbx, qword [rsp + 0x1d8]
mov rbp, qword [rsp + 0x258]
add rsp, 0x260
ret
mov rcx, rdx
call fcn.00465940
mov rcx, rdi
call fcn.004659c0
mov rcx, rax
call fcn.004659c0
mov eax, 3
mov rcx, rax
call fcn.00465940
mov eax, 2
mov rcx, rax
call fcn.00465940
mov eax, 1
mov rcx, rax
call fcn.00465940
xor eax, eax
mov rcx, rax
call fcn.00465940
mov ecx, 4
call fcn.004659c0
test rax, rax
je 0x6180a6
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x170], rax
mov rcx, qword [rsp + 0x98]
cmp rcx, 4
jb 0x617ff6
mov rdx, qword [rsp + 0x1b0]
jmp 0x618024
mov rax, qword [rsp + 0x1b0]
mov ebx, 4
mov edi, 1
lea rsi, [0x006578a0]
call fcn.0044a920
mov rbx, qword [rsp + 0x50]
mov rdx, rax
mov rax, qword [rsp + 0x170]
mov byte [rdx + 3], 1
lea r8, [rbx + 4]
cmp rcx, r8
jae 0x618059
mov rax, rdx
mov rdi, rbx
lea rsi, [0x006578a0]
mov rbx, r8
call fcn.0044a920
mov rdx, rax
mov r8, rbx
mov rax, qword [rsp + 0x170]
mov rbx, qword [rsp + 0x50]
mov qword [rsp + 0x98], rcx
mov qword [rsp + 0x90], r8
mov qword [rsp + 0x1b0], rdx
lea rsi, [rdx + 4]
mov rdi, rax
mov rax, rsi
mov r9, rbx
mov rbx, rdi
mov rcx, r9
call fcn.004662e0
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x1b0]
jmp 0x618234
cmp rcx, 4
jne 0x618150
movzx r8d, byte [rdx]
movzx r9d, byte [rdx + 1]
movzx r10d, byte [rdx + 2]
movzx edx, byte [rdx + 3]
movups xmmword [rsp + 0xc8], xmm15
mov r11, qword [0x00893538]
cmp r11, 0x10
mov ecx, 0x10
cmovl rcx, r11
mov rbx, qword [0x00893530]
lea rax, [rsp + 0xc8]
cmp rbx, rax
je 0x618122
mov byte [rsp + 0x47], r8b
mov byte [rsp + 0x46], r9b
mov byte [rsp + 0x45], r10b
mov byte [rsp + 0x44], dl
call fcn.004662e0
movzx edx, byte [rsp + 0x44]
movzx r8d, byte [rsp + 0x47]
movzx r9d, byte [rsp + 0x46]
movzx r10d, byte [rsp + 0x45]
mov byte [rsp + 0xd4], r8b
mov byte [rsp + 0xd5], r9b
mov byte [rsp + 0xd6], r10b
mov byte [rsp + 0xd7], dl
mov ecx, 0x10
lea rdx, [rsp + 0xc8]
jmp 0x618160
cmp rcx, 0x10
je 0x618160
xor ecx, ecx
xor edx, edx
nop word [rax + rax]
test rdx, rdx
je 0x618245
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x168], rdx
mov r8, qword [rsp + 0x98]
nop
cmp r8, 4
jb 0x618190
mov rax, qword [rsp + 0x1b0]
jmp 0x6181c1
mov rax, qword [rsp + 0x1b0]
mov ebx, 4
mov rcx, r8
mov edi, 1
lea rsi, [0x006578a0]
call fcn.0044a920
mov rdx, qword [rsp + 0x168]
mov r8, rcx
mov rcx, qword [rsp + 0x48]
mov byte [rax + 3], 4
lea rbx, [rcx + 4]
cmp r8, rbx
jae 0x6181f5
mov rdi, rcx
lea rsi, [0x006578a0]
mov rcx, r8
nop dword [rax + rax]
call fcn.0044a920
mov rdx, qword [rsp + 0x168]
mov r8, rcx
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x98], r8
mov qword [rsp + 0x90], rbx
mov qword [rsp + 0x1b0], rax
lea rsi, [rax + 4]
mov rax, rsi
mov rbx, rdx
call fcn.004662e0
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x1b0]
mov rbx, rcx
mov rcx, rdx
mov rdx, rbx
nop dword [rax]
jmp 0x617755
lea rax, [0x0066df60]
call fcn.0040d960
mov qword [rax + 8], 0x14
lea rcx, [0x006a9aeb]
mov qword [rax], rcx
movups xmmword [rsp + 0x1d0], xmm15
lea rcx, [0x007191c0]
mov qword [rsp + 0x1e0], rcx
mov qword [rsp + 0x1e8], rax
call fcn.004358c0
mov rcx, qword [rsp + 0x1e0]
mov rax, qword [rsp + 0x1d0]
mov rdi, qword [rsp + 0x1e8]
mov rbx, qword [rsp + 0x1d8]
mov rbp, qword [rsp + 0x258]
add rsp, 0x260
ret
mov rcx, rbx
mov rdx, rax
xor ebx, ebx
xor eax, eax
jmp 0x617fc8
inc rcx
cmp rcx, 0xa
jge 0x6182da
movzx edx, byte [rax + rcx]
test dl, dl
je 0x6182c7
jmp 0x6182b8
cmp byte [rax + 0xa], 0xff
nop
jne 0x6182b8
cmp byte [rax + 0xb], 0xff
jne 0x6182b8
lea r8, [rax + 0xc]
mov rcx, rbx
mov rdx, rax
mov ebx, 4
mov rax, r8
jmp 0x617fc8
mov eax, 1
mov rcx, rax
call fcn.00465940
xor eax, eax
mov rcx, rax
call fcn.00465940
mov ecx, 2
nop dword [rax + rax]
call fcn.004659c0
mov byte [rbx + rax - 1], r11b
inc rcx
cmp rcx, r9
jge 0x618392
mov r11, qword [r10 + rcx*8]
inc rbx
cmp rdx, rbx
jae 0x618325
mov qword [rsp + 0xa8], rcx
mov qword [rsp + 0xa0], r11
mov rcx, rdx
mov edi, 1
lea rsi, [0x006578a0]
nop dword [rax]
call fcn.0044a920
mov r8, qword [rsp + 0x268]
mov r9, qword [rsp + 0xc0]
mov r10, qword [rsp + 0x1b8]
mov r11, qword [rsp + 0xa0]
mov rdx, rcx
mov rcx, qword [rsp + 0xa8]
jmp 0x618325
mov rcx, rbx
jmp 0x6171c3
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
nop dword [rax]
call fcn.004632e0
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]
jmp fcn.00616c00