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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xb0
mov rax, qword [0x18009a1f0]
xor rax, rsp
mov qword [rbp + 0x27], rax
lea r14d, [rcx + 0x555]
mov dword [rbp - 0x49], ecx
mov r15, r8
mov rbx, rdx
mov r13d, ecx
mov edi, ecx
mov esi, 0x65
cmp ecx, r14d
jae 0x18003f2df
lea eax, [rsi - 0x18]
lea ecx, [rsi - 2]
lea r12d, [rsi - 0x1a]
mov r10d, 0x47
mov r11d, 0x7469
lea r9d, [r10 + 5]
lea r8d, [r10 + 0xd]
lea edx, [r10 + 1]
cmp edi, 0x267
ja 0x18003f22c
je 0x18003f205
cmp edi, 0x151
ja 0x18003f17f
je 0x18003f370
mov eax, edi
sub eax, 0xa0
je 0x18003f176
sub eax, 0x56
je 0x18003f11b
cmp eax, 5
jne 0x18003f2ce
lea rcx, [rbp + 0x17]
dec rcx
nop dword [rax]
cmp byte [rcx + 1], 0
lea rcx, [rcx + 1]
jne 0x18003f0e0
mov eax, dword [0x18008e6a0]
mov dword [rcx], eax
mov ecx, 0x63
movzx eax, word [0x18008e6a4]
mov word [rbp + 0x1a], ax
mov eax, dword [str.ws_NT]
mov dword [rbp + 0x1c], eax
movzx eax, word [0x18008e6ac]
mov word [rbp + 0x20], ax
jmp 0x18003f2ce
mov rax, qword [rbx + 0x10]
cmp qword [rbx + 0x18], rax
jb 0x18003f160
mov rdx, qword [rbx + 8]
lea rsi, [rax + rax]
lea rax, [rsi*8]
mov r9d, 8
lea r8, [rbp - 0x11]
mov qword [rbp - 0x11], rax
xor ecx, ecx
call fcn.180055a10
test rax, rax
je 0x18003f361
mov qword [rbx + 0x10], rsi
mov esi, 0x65
mov qword [rbx + 8], rax
mov rcx, qword [rbx + 0x18]
mov rax, qword [rbx + 8]
mov qword [rax + rcx*8], r15
mov ecx, 0x63
jmp 0x18003f2ce
mov byte [rbp + 0x17], 0
jmp 0x18003f2ce
mov eax, edi
sub eax, 0x156
je 0x18003f1d9
sub eax, 0x5b
je 0x18003f1b4
cmp eax, 0x5b
jne 0x18003f2ce
movzx eax, word [0x18008e689]
mov word [rbp - 3], ax
movzx eax, byte [0x18008e68b]
mov byte [rbp - 1], al
mov byte [rbp], 0
jmp 0x18003f2ce
mov r8d, 2
mov byte [rbp - 5], 0
lea rdx, [0x18008e70c]
lea rcx, [rbp - 9]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncat]
mov ecx, 0x63
jmp 0x18003f2ce
mov r8d, 5
mov byte [rbp + 0xf], 0
lea rdx, [0x18008e6f5]
lea rcx, [rbp + 0xf]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncat]
mov ecx, 0x63
mov dword [rbp - 9], 0x6c707041
jmp 0x18003f2ce
mov r8d, 0xa
mov word [rbp], r11w
lea rdx, [rbp - 0x25]
mov byte [rbp + 2], 0
lea ecx, [r8 - 5]
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__ltoa]
mov ecx, 0x63
jmp 0x18003f2ce
cmp edi, 0x3d3
ja 0x18003f2a0
je 0x18003f29a
mov eax, edi
sub eax, 0x2c2
je 0x18003f264
sub eax, 0x5b
je 0x18003f25d
cmp eax, 0x5b
mov eax, 0x4d
jne 0x18003f2d3
mov word [rbp - 0x34], dx
mov word [rbp - 0x33], r8w
jmp 0x18003f2d3
mov word [rbp - 0x35], r12w
jmp 0x18003f2ce
mov r8d, 0xa
mov dword [rbp - 0x24], 0x2e3733
lea rdx, [rbp - 0x21]
lea ecx, [r8 - 7]
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__ultoa]
mov r8d, 0xa
lea rdx, [rbp - 0x20]
lea ecx, [r8 - 4]
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__ultoa]
mov ecx, 0x63
jmp 0x18003f2ce
mov word [rbp - 0x32], ax
jmp 0x18003f2d3
mov eax, edi
sub eax, 0x42e
je 0x18003f2c4
sub eax, 0x5b
je 0x18003f2be
cmp eax, 0x5b
mov eax, 0x4d
jne 0x18003f2d3
mov word [rbp - 0x3b], cx
jmp 0x18003f2d3
mov word [rbp - 0x3c], si
jmp 0x18003f2ce
mov word [rbp - 0x31], r9w
mov word [rbp - 0x3d], r10w
mov eax, 0x4d
add edi, 0x5b
cmp edi, r14d
jb 0x18003f07f
lea r15d, [r13 + 0x620]
mov r14d, r13d
cmp r13d, r15d
jae 0x18003f7ed
mov ecx, 0x69
lea edx, [rcx - 0x16]
lea r12d, [rcx - 0x39]
lea r13d, [rcx - 0x26]
lea r8d, [rcx + 2]
lea r9d, [rcx + 6]
nop word [rax + rax]
cmp r14d, 0x3b0
ja 0x18003f4a1
je 0x18003f445
cmp r14d, 0x228
ja 0x18003f3e6
je 0x18003f3c2
mov eax, r14d
sub eax, 0xa0
je 0x18003f3b3
sub eax, 0x62
je 0x18003f392
sub eax, 0x62
je 0x18003f37b
cmp eax, 0x62
jne 0x18003f7d7
mov word [rbp - 0x2a], r12w
mov byte [rbp - 0x45], 0x34
jmp 0x18003f7d7
mov eax, 0x58
jmp 0x18003ff94
inc qword [rbx + 0x18]
xor eax, eax
jmp 0x18003ff94
mov dword [rbp - 0x1b], 0x6d6f72
mov word [rbp - 0x18], si
mov dword [rbp - 0x2d], 0x2e3338
jmp 0x18003f7d7
mov r8d, 2
mov word [rbp - 0x1d], r13w
lea rdx, [0x18008e72c]
lea rcx, [rbp - 0x1c]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
jmp 0x18003f7c5
mov word [rbp - 0x3a], r8w
mov word [rbp - 0x39], r9w
jmp 0x18003f7d7
mov r8d, 2
mov byte [rbp - 0x44], 0
lea rdx, [0x18008e727]
lea rcx, [rbp - 0x45]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncat]
mov byte [rbp - 0x42], 0x33
jmp 0x18003f7c5
mov eax, r14d
sub eax, 0x28a
je 0x18003f431
sub eax, 0x62
je 0x18003f428
cmp eax, 0x62
jne 0x18003f7d7
lea r8d, [rax - 0x58]
lea rdx, [rbp + 7]
lea ecx, [rax - 0x5d]
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__itoa]
mov r8d, 0xa
lea rdx, [rbp + 8]
lea ecx, [r8 + 0x1b]
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__ultoa]
jmp 0x18003f7c5
mov word [rbp - 0xc], cx
jmp 0x18003f7d7
mov word [rbp - 0x11], dx
mov dword [rbp - 0x10], 0x72616661
mov byte [rbp - 0x41], 0
jmp 0x18003f7d7
mov r8d, 3
lea rdx, [0x18008e734]
lea rcx, [rbp + 7]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncat]
mov r8d, 0xb
lea rdx, str.Mozilla_5.0
mov rcx, rbx
call fcn.180052d30
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x18003f7b3
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003f496
mov rax, qword [rbx]
mov word [rax + rcx], 0x20
jmp 0x18003f7c5
cmp r14d, 0x538
ja 0x18003f646
je 0x18003f5ac
mov eax, r14d
sub eax, 0x412
je 0x18003f578
sub eax, 0x62
je 0x18003f500
cmp eax, 0x62
jne 0x18003f7d7
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x18003f7b3
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003f4f5
mov rax, qword [rbx]
mov word [rax + rcx], 0x20
jmp 0x18003f7cf
lea rax, [rbp + 0x17]
mov rsi, 0xffffffffffffffff
nop dword [rax + rax]
inc rsi
cmp byte [rax + rsi], 0
jne 0x18003f510
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x18003f55c
lea rax, [rcx + rsi]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003f540
mov rax, qword [rbx]
lea rdi, [rax + rcx]
mov r8, rsi
mov rcx, rdi
lea rdx, [rbp + 0x17]
call sub.VCRUNTIME140.dll_memcpy
mov byte [rdi + rsi], 0
jmp 0x18003f7c5
lea r9, [rbp + 0x17]
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rdx, rsi
mov rcx, rbx
call fcn.18001e310
jmp 0x18003f7c5
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x18003f5a4
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003f599
mov rax, qword [rbx]
mov word [rax + rcx], 0x28
jmp 0x18003f7cf
mov r9b, 0x28
jmp 0x18003f7b6
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rax, 3
jb 0x18003f5f3
lea rax, [rcx + 3]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003f5d4
mov rax, qword [rbx]
lea rdi, [rax + rcx]
mov r8d, 3
mov rcx, rdi
lea rdx, [0x18008e71c]
call sub.VCRUNTIME140.dll_memmove
mov byte [rdi + 3], 0
jmp 0x18003f612
xor r8d, r8d
mov qword [rsp + 0x20], 3
lea r9, [0x18008e71c]
mov rcx, rbx
lea edx, [r8 + 3]
call fcn.18001e310
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x18003f63e
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003f633
mov rax, qword [rbx]
mov word [rax + rcx], 0x3b
jmp 0x18003f7c5
mov r9b, 0x3b
jmp 0x18003f7b6
mov eax, r14d
sub eax, 0x59a
je 0x18003f4d0
sub eax, 0x62
je 0x18003f700
cmp eax, 0x62
jne 0x18003f7d7
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rax, 3
jb 0x18003f6ad
lea rax, [rcx + 3]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003f68e
mov rax, qword [rbx]
lea rdi, [rax + rcx]
mov r8d, 3
mov rcx, rdi
lea rdx, [0x18008e730]
call sub.VCRUNTIME140.dll_memmove
mov byte [rdi + 3], 0
jmp 0x18003f6cc
xor r8d, r8d
mov qword [rsp + 0x20], 3
lea r9, [0x18008e730]
mov rcx, rbx
lea edx, [r8 + 3]
call fcn.18001e310
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x18003f6f8
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003f6ed
mov rax, qword [rbx]
mov word [rax + rcx], 0x29
jmp 0x18003f7c5
mov r9b, 0x29
jmp 0x18003f7b6
lea rax, [rbp + 0xf]
mov rsi, 0xffffffffffffffff
nop dword [rax + rax]
inc rsi
cmp byte [rax + rsi], 0
jne 0x18003f710
mov rcx, qword [rbx + 0x18]
mov rdx, qword [rbx + 0x10]
mov rax, rcx
sub rax, rdx
cmp rsi, rax
ja 0x18003f759
lea rax, [rdx + rsi]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rcx, 0x10
jb 0x18003f740
mov rax, qword [rbx]
lea rdi, [rax + rdx]
mov r8, rsi
mov rcx, rdi
lea rdx, [rbp + 0xf]
call sub.VCRUNTIME140.dll_memmove
mov byte [rdi + rsi], 0
jmp 0x18003f770
lea r9, [rbp + 0xf]
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rdx, rsi
mov rcx, rbx
call fcn.18001e310
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x18003f79c
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003f791
mov rax, qword [rbx]
mov word [rax + rcx], 0x3b
jmp 0x18003f471
xor r8d, r8d
mov r9b, 0x3b
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.18001e1b0
jmp 0x18003f471
mov r9b, 0x20
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.18001e1b0
mov r9d, 0x6f
lea r8d, [r9 - 4]
mov ecx, 0x69
lea edx, [rcx - 0x16]
add r14d, 0x62
mov esi, 0x65
cmp r14d, r15d
jb 0x18003f310
mov r13d, dword [rbp - 0x49]
imul r15d, r13d, 0xf
mov r14d, r13d
cmp r13d, r15d
ja 0x18003ff91
mov r12d, 0x3739
cmp r14d, 0x500
ja 0x18003fc3d
je 0x18003fbd4
cmp r14d, 0x280
ja 0x18003f9f9
je 0x18003f9b6
cmp r14d, 0xa0
je 0x18003f98e
cmp r14d, 0x140
je 0x18003f926
cmp r14d, 0x1e0
jne 0x18003ff85
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x18003f879
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003f871
mov rax, qword [rbx]
mov word [rax + rcx], 0x2f
jmp 0x18003f88b
xor r8d, r8d
mov r9b, 0x2f
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.18001e1b0
lea rax, [rbp - 0x25]
mov rsi, 0xffffffffffffffff
inc rsi
cmp byte [rax + rsi], 0
jne 0x18003f896
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x18003f8df
lea rax, [rcx + rsi]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003f8c6
mov rax, qword [rbx]
lea rdi, [rax + rcx]
mov r8, rsi
mov rcx, rdi
lea rdx, [rbp - 0x25]
call sub.VCRUNTIME140.dll_memmove
mov byte [rdi + rsi], 0
jmp 0x18003f8f6
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 0x25]
mov rdx, rsi
xor r8d, r8d
mov rcx, rbx
call fcn.18001e310
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
cmp rcx, rdx
jae 0x18003f99f
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003f91b
mov rax, qword [rbx]
mov word [rax + rcx], 0x20
jmp 0x18003ff85
lea rax, [rbp - 9]
mov rsi, 0xffffffffffffffff
inc rsi
cmp byte [rax + rsi], 0
jne 0x18003f931
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x18003f97d
lea rax, [rcx + rsi]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003f961
mov rax, qword [rbx]
lea rdi, [rax + rcx]
mov r8, rsi
mov rcx, rdi
lea rdx, [rbp - 9]
call sub.VCRUNTIME140.dll_memmove
mov byte [rdi + rsi], 0
jmp 0x18003ff85
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 9]
mov rdx, rsi
jmp 0x18003ff7a
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jb 0x18003f907
mov r9b, 0x20
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.18001e1b0
jmp 0x18003ff85
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x18003f9e2
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003f9d7
mov rax, qword [rbx]
mov word [rax + rcx], 0x28
jmp 0x18003ff85
mov r9b, 0x28
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.18001e1b0
jmp 0x18003ff85
cmp r14d, 0x320
je 0x18003fb26
cmp r14d, 0x3c0
je 0x18003fad3
cmp r14d, 0x460
jne 0x18003ff85
lea rax, [rbp - 0x3d]
mov rsi, 0xffffffffffffffff
nop dword [rax + rax]
inc rsi
cmp byte [rax + rsi], 0
jne 0x18003fa30
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x18003fa79
lea rax, [rcx + rsi]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003fa60
mov rax, qword [rbx]
lea rdi, [rax + rcx]
mov r8, rsi
mov rcx, rdi
lea rdx, [rbp - 0x3d]
call sub.VCRUNTIME140.dll_memcpy
mov byte [rdi + rsi], 0
jmp 0x18003fa90
lea r9, [rbp - 0x3d]
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rdx, rsi
mov rcx, rbx
call fcn.18001e310
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x18003fabc
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003fab1
mov rax, qword [rbx]
mov word [rax + rcx], 0x29
jmp 0x18003f8f6
mov r9b, 0x29
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.18001e1b0
jmp 0x18003f8f6
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rax, 4
jb 0x18003fb0c
lea rax, [rcx + 4]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003fafb
mov rax, qword [rbx]
mov dword [rax + rcx], 0x656b696c
mov byte [rax + rcx + 4], 0
jmp 0x18003f8f6
mov qword [rsp + 0x20], 4
lea r9, str.like
mov edx, 4
jmp 0x18003f8eb
lea rax, [rbp - 0x35]
mov rsi, 0xffffffffffffffff
inc rsi
cmp byte [rax + rsi], 0
jne 0x18003fb31
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x18003fb7a
lea rax, [rcx + rsi]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003fb61
mov rax, qword [rbx]
lea rdi, [rax + rcx]
mov r8, rsi
mov rcx, rdi
lea rdx, [rbp - 0x35]
call sub.VCRUNTIME140.dll_memcpy
mov byte [rdi + rsi], 0
jmp 0x18003fb91
lea r9, [rbp - 0x35]
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rdx, rsi
mov rcx, rbx
call fcn.18001e310
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x18003fbbd
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003fbb2
mov rax, qword [rbx]
mov word [rax + rcx], 0x2c
jmp 0x18003f8f6
mov r9b, 0x2c
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.18001e1b0
jmp 0x18003f8f6
lea rax, [rbp - 0x1d]
mov rsi, 0xffffffffffffffff
nop
inc rsi
cmp byte [rax + rsi], 0
jne 0x18003fbe0
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x18003fc2c
lea rax, [rcx + rsi]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003fc10
mov rax, qword [rbx]
lea rdi, [rax + rcx]
mov r8, rsi
mov rcx, rdi
lea rdx, [rbp - 0x1d]
call sub.VCRUNTIME140.dll_memmove
mov byte [rdi + rsi], 0
jmp 0x18003ff85
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 0x1d]
mov rdx, rsi
jmp 0x18003ff7a
cmp r14d, 0x780
ja 0x18003fdc3
je 0x18003fd50
cmp r14d, 0x5a0
je 0x18003fd93
cmp r14d, 0x640
je 0x18003fcdd
cmp r14d, 0x6e0
jne 0x18003ff85
lea rax, [rbp - 0x45]
mov rsi, 0xffffffffffffffff
nop
inc rsi
cmp byte [rax + rsi], 0
jne 0x18003fc80
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x18003fccc
lea rax, [rcx + rsi]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003fcb0
mov rax, qword [rbx]
lea rdi, [rax + rcx]
mov r8, rsi
mov rcx, rdi
lea rdx, [rbp - 0x45]
call sub.VCRUNTIME140.dll_memmove
mov byte [rsi + rdi], 0
jmp 0x18003ff85
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 0x45]
mov rdx, rsi
jmp 0x18003ff7a
lea rax, [rbp - 0x2d]
mov rsi, 0xffffffffffffffff
nop dword [rax + rax]
inc rsi
cmp byte [rax + rsi], 0
jne 0x18003fcf0
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x18003fd39
lea rax, [rcx + rsi]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003fd20
mov rax, qword [rbx]
lea rdi, [rax + rcx]
mov r8, rsi
mov rcx, rdi
lea rdx, [rbp - 0x2d]
call sub.VCRUNTIME140.dll_memcpy
mov byte [rsi + rdi], 0
jmp 0x18003fd50
lea r9, [rbp - 0x2d]
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rdx, rsi
mov rcx, rbx
call fcn.18001e310
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
cmp rcx, rdx
jae 0x18003fd7c
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003fd71
mov rax, qword [rbx]
mov word [rax + rcx], 0x2e
jmp 0x18003ff85
mov r9b, 0x2e
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.18001e1b0
jmp 0x18003ff85
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x18003ff1d
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003fdb8
mov rax, qword [rbx]
mov word [rcx + rax], 0x2f
jmp 0x18003ff85
cmp r14d, 0x820
je 0x18003ff31
cmp r14d, 0x8c0
je 0x18003fe4e
cmp r14d, 0x960
jne 0x18003ff85
lea rax, [rbp + 7]
mov rsi, 0xffffffffffffffff
inc rsi
cmp byte [rax + rsi], 0
jne 0x18003fdf1
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x18003fe3d
lea rax, [rcx + rsi]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003fe21
mov rax, qword [rbx]
lea rdi, [rax + rcx]
mov r8, rsi
mov rcx, rdi
lea rdx, [rbp + 7]
call sub.VCRUNTIME140.dll_memmove
mov byte [rsi + rdi], 0
jmp 0x18003ff85
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 7]
mov rdx, rsi
jmp 0x18003ff7a
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x18003fe77
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003fe6f
mov rax, qword [rbx]
mov word [rax + rcx], 0x20
jmp 0x18003fe89
xor r8d, r8d
mov r9b, 0x20
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.18001e1b0
lea rax, [rbp - 0x11]
mov rsi, 0xffffffffffffffff
inc rsi
cmp byte [rax + rsi], 0
jne 0x18003fe94
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x18003fedd
lea rax, [rcx + rsi]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003fec4
mov rax, qword [rbx]
lea rdi, [rax + rcx]
mov r8, rsi
mov rcx, rdi
lea rdx, [rbp - 0x11]
call sub.VCRUNTIME140.dll_memcpy
mov byte [rsi + rdi], 0
jmp 0x18003fef4
lea r9, [rbp - 0x11]
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rdx, rsi
mov rcx, rbx
call fcn.18001e310
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x18003ff1d
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003ff15
mov rax, qword [rbx]
mov word [rax + rcx], 0x2f
jmp 0x18003ff85
mov r9b, 0x2f
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 1]
call fcn.18001e1b0
jmp 0x18003ff85
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rax, 2
jb 0x18003ff65
lea rax, [rcx + 2]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x18003ff59
mov rax, qword [rbx]
mov word [rax + rcx], r12w
mov byte [rax + rcx + 2], 0
jmp 0x18003ff85
mov qword [rsp + 0x20], 2
lea r9, [0x18008bb38]
mov edx, 2
xor r8d, r8d
mov rcx, rbx
call fcn.18001e310
add r14d, r13d
cmp r14d, r15d
jbe 0x18003f803
mov eax, dword [rbp - 0x49]
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.180082e70
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret