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

Disassembly:
mov qword [rsp + 8], rbx
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x17]
sub rsp, 0xa0
mov rbx, qword [rbp + 0x77]
lea r12d, [r8 + 0x10]
mov r14, rcx
mov r15, r9
lea rcx, [0x180000000]
mov r13d, r8d
cmp r8d, r12d
jae 0x180012dde
mov esi, 0x6c
add r13d, 0xffffff1b
mov edi, 0x4e20
mov r11d, 0x6547
lea r8d, [rsi - 7]
lea r10d, [rsi + 4]
lea r9d, [rsi - 0x15]
nop word [rax + rax]
cmp r13d, 0x1e
ja case.default.0x18001292c
mov ecx, dword [rcx + r13*4 + 0x139e0]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
mov byte [rbp - 0x35], 0
mov word [rbp - 0x31], r11w
mov byte [rbp - 0x2f], 0
jmp case.0x18001292c.1
mov word [rbp - 0x15], r8w
jmp case.0x18001292c.1
mov dword [rbp - 2], 0x544e20
jmp case.0x18001292c.1
mov r8d, 3
mov byte [rbp - 9], 0
lea rdx, [0x18006e0a1]
lea rcx, [rbp - 9]
call fcn.18004c030
mov r8d, 4
lea rdx, [0x18006e0c6]
lea rcx, [rbp - 6]
call fcn.18004c270
mov byte [rbp - 2], 0
mov rdx, qword [rbp + 0x5f]
mov r8d, 0x65
mov r11d, 0x6547
lea r9d, [r8 - 0xe]
lea r10d, [r8 + 0xb]
jmp case.0x18001292c.1
mov word [rbp - 0x17], r10w
mov word [rbp - 0x16], si
jmp case.0x18001292c.1
mov byte [rbp - 0x2c], 0
mov dword [rbp - 0x29], 0x6f726843
jmp case.0x18001292c.1
mov word [rbp - 0x14], r9w
mov word [rbp - 0x13], r8w
mov dword [rbp - 0x12], 0x74694b62
mov byte [rbp - 0xe], 0
jmp case.0x18001292c.1
mov eax, 0x69
mov word [rbp - 0x49], r9w
mov word [rbp - 0x48], ax
mov eax, 0x6e
mov word [rbp - 0x47], ax
jmp case.0x18001292c.1
lea rcx, [rbp + 0xf]
dec rcx
cmp byte [rcx + 1], 0
lea rcx, [rcx + 1]
jne 0x180012a02
mov eax, dword [str.KHTML]
mov dword [rcx], eax
movzx eax, word [0x18006e104]
mov word [rcx + 4], ax
mov dword [rbp - 0x39], 0x656b696c
jmp case.0x18001292c.1
mov eax, 0x3436
mov byte [rbp - 0x44], 0
mov word [rbp - 0x46], ax
mov eax, 0x41
mov word [rbp - 0x19], ax
mov word [rbp - 0x18], r10w
jmp case.0x18001292c.1
mov r8d, 3
lea rdx, [0x18006e112]
lea rcx, [rbp - 0x2f]
call fcn.18004c270
jmp 0x18001298a
mov word [rbp - 0x3c], 0x36
mov byte [rbp + 0xf], 0
jmp case.0x18001292c.1
cmp qword [r14 + 0x48], 0
je 0x1800139c3
mov rsi, qword [rdx + 8]
test rsi, rsi
je 0x1800139c3
cmp qword [rsi + 8], 0
jne 0x180012b46
mov rcx, qword [rsi]
lea rax, [rbp - 0x59]
mov qword [rsp + 0x28], rax
mov r9d, 0xef
mov r8, r14
mov qword [rsp + 0x20], r15
mov rdx, rbx
mov dword [rbp - 0x59], 0xd1
call fcn.180028f70
mov rcx, qword [rsi]
lea rax, [rbp - 0x59]
mov qword [rsp + 0x28], rax
mov r9d, 0xef
mov r8, r14
mov qword [rsp + 0x20], r15
mov rdx, rbx
mov dword [rbp - 0x59], 0xd0
call fcn.180028f70
mov rcx, qword [rsi]
lea rax, [rbp - 0x59]
mov qword [rsp + 0x28], rax
mov r9d, 0xef
mov r8, r14
mov qword [rsp + 0x20], r15
mov rdx, rbx
mov dword [rbp - 0x59], 0xcc
call fcn.180028f70
mov rcx, qword [rsi]
lea rax, [rbp - 0x59]
mov qword [rsp + 0x28], rax
mov r9d, 0xef
mov r8, r14
mov qword [rsp + 0x20], r15
mov rdx, rbx
mov dword [rbp - 0x59], 0xcf
call fcn.180028f70
mov esi, 0x6c
jmp 0x18001298a
cmp qword [rsi + 0x10], 0
jne 0x180012c01
mov rcx, qword [rsi]
lea rax, [rbp - 0x59]
mov qword [rsp + 0x28], rax
mov r9d, 0xef
mov r8, r14
mov qword [rsp + 0x20], r15
mov rdx, rbx
mov dword [rbp - 0x59], 0xd1
call fcn.180028f70
mov rcx, qword [rsi + 8]
lea rax, [rbp - 0x59]
mov qword [rsp + 0x28], rax
mov r9d, 0xef
mov r8, r14
mov qword [rsp + 0x20], r15
mov rdx, rbx
mov dword [rbp - 0x59], 0xd0
call fcn.180028f70
mov rcx, qword [rsi]
lea rax, [rbp - 0x59]
mov qword [rsp + 0x28], rax
mov r9d, 0xef
mov r8, r14
mov qword [rsp + 0x20], r15
mov rdx, rbx
mov dword [rbp - 0x59], 0xcc
call fcn.180028f70
mov rcx, qword [rsi + 8]
lea rax, [rbp - 0x59]
mov qword [rsp + 0x28], rax
mov r9d, 0xef
mov r8, r14
mov qword [rsp + 0x20], r15
mov rdx, rbx
mov dword [rbp - 0x59], 0xcf
call fcn.180028f70
mov esi, 0x6c
jmp 0x18001298a
cmp qword [rsi + 0x18], 0
jne 0x180012cae
mov edi, 0xce
mov eax, edi
sub eax, 0xcc
je 0x180012c67
sub eax, 1
je 0x180012c30
cmp eax, 1
jne 0x180012c91
mov rcx, qword [rsi]
mov dword [rbp - 0x59], 0xd1
jmp 0x180012c72
mov rcx, qword [rsi + 8]
lea rax, [rbp - 0x59]
mov qword [rsp + 0x28], rax
mov r9d, 0xef
mov r8, r14
mov qword [rsp + 0x20], r15
mov rdx, rbx
mov dword [rbp - 0x59], 0xd0
call fcn.180028f70
mov rcx, qword [rsi + 0x10]
mov dword [rbp - 0x59], 0xcc
jmp 0x180012c72
mov rcx, qword [rsi + 8]
mov dword [rbp - 0x59], 0xcf
lea rax, [rbp - 0x59]
mov r9d, 0xef
mov qword [rsp + 0x28], rax
mov r8, r14
mov rdx, rbx
mov qword [rsp + 0x20], r15
call fcn.180028f70
dec edi
cmp edi, 0xcb
ja 0x180012c11
mov edi, 0x4e20
mov esi, 0x6c
jmp 0x18001298a
mov rcx, qword [rsi]
lea rax, [rbp - 0x59]
mov qword [rsp + 0x28], rax
mov r9d, 0xef
mov r8, r14
mov qword [rsp + 0x20], r15
mov rdx, rbx
mov dword [rbp - 0x59], 0xd1
call fcn.180028f70
mov rcx, qword [rsi + 8]
lea rax, [rbp - 0x59]
mov qword [rsp + 0x28], rax
mov r9d, 0xef
mov r8, r14
mov qword [rsp + 0x20], r15
mov rdx, rbx
mov dword [rbp - 0x59], 0xd0
call fcn.180028f70
mov rcx, qword [rsi + 0x10]
lea rax, [rbp - 0x59]
mov qword [rsp + 0x28], rax
mov r9d, 0xef
mov r8, r14
mov qword [rsp + 0x20], r15
mov rdx, rbx
mov dword [rbp - 0x59], 0xcc
call fcn.180028f70
mov rcx, qword [rsi + 0x18]
lea rax, [rbp - 0x59]
mov qword [rsp + 0x28], rax
mov r9d, 0xef
mov r8, r14
mov qword [rsp + 0x20], r15
mov rdx, rbx
mov dword [rbp - 0x59], 0xcf
call fcn.180028f70
mov esi, 0x6c
jmp 0x18001298a
mov eax, 0x6d
mov byte [rbp - 0x51], 0
mov word [rbp - 0x25], ax
mov word [rbp - 0x24], r8w
jmp case.0x18001292c.1
mov r8d, 1
lea rdx, [0x18006e138]
lea rcx, [rbp - 0x51]
call fcn.18004c030
mov eax, 0x3031
mov word [rbp - 0x50], ax
jmp 0x18001298a
mov eax, 0x3335
mov byte [rbp - 0x3c], 0
mov word [rbp - 0x41], ax
movzx eax, word [0x18006e16a]
mov word [rbp - 0x3f], ax
movzx eax, byte [0x18006e16c]
mov byte [rbp - 0x3d], al
nop dword [rax]
lea rcx, [0x180000000]
inc r13d
lea eax, [r13 + 0xe5]
cmp eax, r12d
jb 0x180012910
mov r13d, dword [rbp + 0x67]
lea r14d, [r13 - 0x10]
cmp r13d, r14d
jbe 0x1800139c3
mov r12d, 0x3633
mov r15d, 0x3739
nop word [rax + rax]
lea eax, [r13 - 0xe6]
cmp eax, 0xf
ja case.default.0x180012e21
mov ecx, dword [rcx + rax*4 + 0x13a5c]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
lea rax, [rbp - 0x21]
mov rsi, 0xffffffffffffffff
nop
inc rsi
cmp byte [rax + rsi], 0
jne 0x180012e30
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x180012e7c
lea rax, [rcx + rsi]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x180012e60
mov rax, qword [rbx]
lea rdi, [rax + rcx]
mov r8, rsi
mov rcx, rdi
lea rdx, [rbp - 0x21]
call fcn.180047910
mov byte [rdi + rsi], 0
jmp case.default.0x180012e21
lea r9, [rbp - 0x21]
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rdx, rsi
mov rcx, rbx
call fcn.1800073f0
jmp case.default.0x180012e21
lea rax, [rbp - 0x31]
mov rsi, 0xffffffffffffffff
inc rsi
cmp byte [rax + rsi], 0
jne 0x180012ea3
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x180012eec
lea rax, [rcx + rsi]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x180012ed3
mov rax, qword [rbx]
lea rdi, [rax + rcx]
mov r8, rsi
mov rcx, rdi
lea rdx, [rbp - 0x31]
call fcn.180047910
mov byte [rdi + rsi], 0
jmp 0x180012f03
lea r9, [rbp - 0x31]
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rdx, rsi
mov rcx, rbx
call fcn.1800073f0
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x180012f2c
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x180012f24
mov rax, qword [rbx]
mov word [rax + rcx], 0x29
jmp 0x180012f3e
xor r8d, r8d
mov r9b, 0x29
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.180007290
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x180012f67
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x180012f5f
mov rax, qword [rbx]
mov word [rax + rcx], 0x20
jmp 0x180012f79
xor r8d, r8d
mov r9b, 0x20
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.180007290
lea rax, [rbp - 0x29]
mov rsi, 0xffffffffffffffff
inc rsi
cmp byte [rax + rsi], 0
jne 0x180012f84
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x180012fd0
lea rax, [rcx + rsi]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x180012fb4
mov rax, qword [rbx]
lea rdi, [rax + rcx]
mov r8, rsi
mov rcx, rdi
lea rdx, [rbp - 0x29]
call fcn.180047910
mov byte [rdi + rsi], 0
jmp case.default.0x180012e21
lea r9, [rbp - 0x29]
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rdx, rsi
mov rcx, rbx
call fcn.1800073f0
jmp case.default.0x180012e21
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x180013015
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18001300d
mov rax, qword [rbx]
mov word [rax + rcx], 0x28
jmp 0x180013027
xor r8d, r8d
mov r9b, 0x28
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.180007290
lea rax, [rbp - 9]
mov rsi, 0xffffffffffffffff
inc rsi
cmp byte [rax + rsi], 0
jne 0x180013032
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x18001307b
lea rax, [rcx + rsi]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x180013062
mov rax, qword [rbx]
lea rdi, [rax + rcx]
mov r8, rsi
mov rcx, rdi
lea rdx, [rbp - 9]
call fcn.180047910
mov byte [rdi + rsi], 0
jmp 0x180013092
lea r9, [rbp - 9]
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rdx, rsi
mov rcx, rbx
call fcn.1800073f0
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x1800130bb
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x1800130b3
mov rax, qword [rbx]
mov word [rax + rcx], 0x20
jmp 0x1800130cd
xor r8d, r8d
mov r9b, 0x20
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.180007290
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rax, 3
jb 0x180013117
lea rax, [rcx + 3]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x1800130f5
mov rax, qword [rbx]
lea rdi, [rax + rcx]
mov r8d, 3
mov rcx, rdi
lea rdx, [0x18006e194]
call fcn.180047910
mov byte [rdi + 3], 0
jmp case.default.0x180012e21
xor r8d, r8d
mov qword [rsp + 0x20], 3
lea r9, [0x18006e194]
mov rcx, rbx
lea edx, [r8 + 3]
call fcn.1800073f0
jmp case.default.0x180012e21
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x180013164
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18001315c
mov rax, qword [rbx]
mov word [rax + rcx], 0x3b
jmp 0x180013176
xor r8d, r8d
mov r9b, 0x3b
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.180007290
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x1800131a2
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x180013197
mov rax, qword [rbx]
mov word [rax + rcx], 0x20
jmp case.default.0x180012e21
mov r9b, 0x20
jmp 0x1800139a1
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x1800131d3
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x1800131cb
mov rax, qword [rbx]
mov word [rax + rcx], 0x2f
jmp 0x1800131e5
xor r8d, r8d
mov r9b, 0x2f
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.180007290
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rax, 4
jb 0x18001321b
lea rax, [rcx + 4]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18001320d
mov rax, qword [rbx]
mov dword [rax + rcx], 0x302e3338
mov byte [rax + rcx + 4], 0
jmp 0x18001323a
xor r8d, r8d
mov qword [rsp + 0x20], 4
lea r9, str.83.0
mov rcx, rbx
lea edx, [r8 + 4]
call fcn.1800073f0
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x180013263
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18001325b
mov rax, qword [rbx]
mov word [rax + rcx], 0x2e
jmp 0x180013275
xor r8d, r8d
mov r9b, 0x2e
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.180007290
lea rax, [rbp - 0x51]
mov rsi, 0xffffffffffffffff
inc rsi
cmp byte [rax + rsi], 0
jne 0x180013280
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x1800132cc
lea rax, [rcx + rsi]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x1800132b0
mov rax, qword [rbx]
lea rdi, [rax + rcx]
mov r8, rsi
mov rcx, rdi
lea rdx, [rbp - 0x51]
call fcn.180047910
mov byte [rdi + rsi], 0
jmp case.default.0x180012e21
lea r9, [rbp - 0x51]
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rdx, rsi
mov rcx, rbx
call fcn.1800073f0
jmp case.default.0x180012e21
mov r8d, ILFindLastID
mov word [rbp - 0x1d], r12w
lea rdx, str.Mozilla_5.0
mov byte [rbp - 0x1b], 0
mov rcx, rbx
call fcn.18001b930
jmp 0x180013176
mov r8d, 4
lea rdx, [0x18006e1d9]
lea rcx, [rbp - 0x21]
call fcn.18004c270
mov byte [rbp - 0x1d], 0
jmp case.default.0x180012e21
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x180013353
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18001334b
mov rax, qword [rbx]
mov word [rax + rcx], 0x2c
jmp 0x180013365
xor r8d, r8d
mov r9b, 0x2c
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.180007290
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x18001338e
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x180013386
mov rax, qword [rbx]
mov word [rax + rcx], 0x20
jmp 0x1800133a0
xor r8d, r8d
mov r9b, 0x20
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.180007290
lea rax, [rbp - 0x39]
mov rsi, 0xffffffffffffffff
nop dword [rax + rax]
inc rsi
cmp byte [rax + rsi], 0
jne 0x1800133b0
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x1800133fc
lea rax, [rcx + rsi]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x1800133e0
mov rax, qword [rbx]
lea rdi, [rax + rcx]
mov r8, rsi
mov rcx, rdi
lea rdx, [rbp - 0x39]
call fcn.180047910
mov byte [rdi + rsi], 0
jmp 0x180013176
lea r9, [rbp - 0x39]
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rdx, rsi
mov rcx, rbx
call fcn.1800073f0
jmp 0x180013176
mov r8d, 3
mov byte [rbp + 7], 0
lea rdx, [0x18006e218]
lea rcx, [rbp + 7]
call fcn.18004c030
lea rcx, [rbp + 7]
dec rcx
nop dword [rax]
cmp byte [rcx + 1], 0
lea rcx, [rcx + 1]
jne 0x180013440
mov eax, dword [0x18006e21c]
mov dword [rcx], eax
jmp case.default.0x180012e21
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x180013480
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x180013478
mov rax, qword [rbx]
mov word [rax + rcx], 0x20
jmp 0x180013492
xor r8d, r8d
mov r9b, 0x20
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.180007290
lea rax, [rbp - 0x19]
mov rsi, 0xffffffffffffffff
nop dword [rax]
inc rsi
cmp byte [rax + rsi], 0
jne 0x1800134a0
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x1800134e9
lea rax, [rcx + rsi]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x1800134d0
mov rax, qword [rbx]
lea rdi, [rax + rcx]
mov r8, rsi
mov rcx, rdi
lea rdx, [rbp - 0x19]
call fcn.180047910
mov byte [rdi + rsi], 0
jmp 0x180013500
lea r9, [rbp - 0x19]
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rdx, rsi
mov rcx, rbx
call fcn.1800073f0
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x180013529
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x180013521
mov rax, qword [rbx]
mov word [rax + rcx], 0x2f
jmp 0x18001353b
xor r8d, r8d
mov r9b, 0x2f
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.180007290
lea rax, [rbp - 0x41]
mov rsi, 0xffffffffffffffff
inc rsi
cmp byte [rax + rsi], 0
jne 0x180013546
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x180013592
lea rax, [rcx + rsi]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x180013576
mov rax, qword [rbx]
lea rdi, [rax + rcx]
mov r8, rsi
mov rcx, rdi
lea rdx, [rbp - 0x41]
call fcn.180047910
mov byte [rdi + rsi], 0
jmp case.default.0x180012e21
lea r9, [rbp - 0x41]
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rdx, rsi
mov rcx, rbx
call fcn.1800073f0
jmp case.default.0x180012e21
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x1800135d7
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x1800135cf
mov rax, qword [rbx]
mov word [rax + rcx], 0x20
jmp 0x1800135e9
xor r8d, r8d
mov r9b, 0x20
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.180007290
lea rax, [rbp + 7]
mov rsi, 0xffffffffffffffff
inc rsi
cmp byte [rax + rsi], 0
jne 0x1800135f4
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x18001363d
lea rax, [rcx + rsi]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x180013624
mov rax, qword [rbx]
lea rdi, [rax + rcx]
mov r8, rsi
mov rcx, rdi
lea rdx, [rbp + 7]
call fcn.180047910
mov byte [rdi + rsi], 0
jmp 0x180013654
lea r9, [rbp + 7]
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rdx, rsi
mov rcx, rbx
call fcn.1800073f0
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x180013680
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x180013675
mov rax, qword [rbx]
mov word [rax + rcx], 0x2f
jmp case.default.0x180012e21
mov r9b, 0x2f
jmp 0x1800139a1
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x1800136b1
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x1800136a9
mov rax, qword [rbx]
mov word [rcx + rax], 0x20
jmp 0x1800136c3
xor r8d, r8d
mov r9b, 0x20
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.180007290
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x1800136ec
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x1800136e4
mov rax, qword [rbx]
mov word [rax + rcx], 0x28
jmp 0x1800136fe
xor r8d, r8d
mov r9b, 0x28
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.180007290
lea rax, [rbp + 0xf]
mov rsi, 0xffffffffffffffff
nop dword [rax]
inc rsi
cmp byte [rax + rsi], 0
jne 0x180013710
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x18001375c
lea rax, [rcx + rsi]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x180013740
mov rax, qword [rbx]
lea rdi, [rax + rcx]
mov r8, rsi
mov rcx, rdi
lea rdx, [rbp + 0xf]
call fcn.180047910
mov byte [rdi + rsi], 0
jmp case.default.0x180012e21
lea r9, [rbp + 0xf]
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rdx, rsi
mov rcx, rbx
call fcn.1800073f0
jmp case.default.0x180012e21
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x1800137a1
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x180013799
mov rax, qword [rbx]
mov word [rax + rcx], 0x2e
jmp 0x1800137b3
xor r8d, r8d
mov r9b, 0x2e
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.180007290
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rax, 2
jb 0x1800137ea
lea rax, [rcx + 2]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x1800137db
mov rax, qword [rbx]
mov word [rax + rcx], r15w
mov byte [rax + rcx + 2], 0
jmp case.default.0x180012e21
xor r8d, r8d
mov qword [rsp + 0x20], 2
lea r9, [0x1800646b0]
mov rcx, rbx
lea edx, [r8 + 2]
call fcn.1800073f0
jmp case.default.0x180012e21
mov r8d, 1
mov byte [rbp - 0x4e], 0
lea rdx, [0x18006e235]
lea rcx, [rbp - 0x51]
call fcn.18004c030
jmp case.default.0x180012e21
lea rax, [rbp - 0x49]
mov rsi, 0xffffffffffffffff
nop dword [rax + rax]
inc rsi
cmp byte [rax + rsi], 0
jne 0x180013840
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x180013889
lea rax, [rcx + rsi]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x180013870
mov rax, qword [rbx]
lea rdi, [rax + rcx]
mov r8, rsi
mov rcx, rdi
lea rdx, [rbp - 0x49]
call fcn.180047910
mov byte [rsi + rdi], 0
jmp 0x1800138a0
lea r9, [rbp - 0x49]
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rdx, rsi
mov rcx, rbx
call fcn.1800073f0
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x1800138cc
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x1800138c1
mov rax, qword [rbx]
mov word [rax + rcx], 0x3b
jmp case.default.0x180012e21
mov r9b, 0x3b
jmp 0x1800139a1
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x1800138fd
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x1800138f5
mov rax, qword [rbx]
mov word [rax + rcx], 0x20
jmp 0x18001390f
xor r8d, r8d
mov r9b, 0x20
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.180007290
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rax, 3
jb 0x180013956
lea rax, [rcx + 3]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x180013937
mov rax, qword [rbx]
lea rdi, [rax + rcx]
mov r8d, 3
mov rcx, rdi
lea rdx, [0x18006e25c]
call fcn.180047910
mov byte [rdi + 3], 0
jmp 0x180013975
xor r8d, r8d
mov qword [rsp + 0x20], 3
lea r9, [0x18006e25c]
mov rcx, rbx
lea edx, [r8 + 3]
call fcn.1800073f0
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x18001399e
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x180013996
mov rax, qword [rbx]
mov word [rax + rcx], 0x29
jmp case.default.0x180012e21
mov r9b, 0x29
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.180007290
dec r13d
lea rcx, [0x180000000]
cmp r13d, r14d
ja 0x180012e00
mov rbx, qword [rsp + 0xe0]
add rsp, 0xa0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret