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

Disassembly:
lea r12, [rsp - 0x50]
cmp r12, qword [r14 + 0x10]
jbe 0x42778d
sub rsp, 0xd0
mov qword [rsp + 0xc8], rbp
lea rbp, [rsp + 0xc8]
mov rdx, qword [r14 + 0x30]
cmp dword [rdx + 0xd8], 0
jne 0x426c09
cmp dword [rdx + 0xc0], 0
jne 0x426c09
mov rsi, r14
nop
cmp qword [rdx], rsi
jne 0x42777b
mov rdx, qword [rax]
test bl, bl
jne 0x426c17
mov qword [rax], 0
mov esi, dword [0x00b94058]
mov dword [rsp + 0x20], esi
mov dil, byte [rdx + 0x63]
mov byte [rsp + 0x1b], dil
cmp dil, 1
jne 0x4276f8
lea r8d, [rsi - 1]
nop dword [rax + rax]
cmp dword [rdx + 0x58], r8d
jne 0x4276f8
mov byte [rsp + 0xe0], bl
mov qword [rsp + 0x38], rdx
mov dword [rsp + 0x24], r8d
cmp byte [0x00b73e30], 0
je 0x426c87
mov rax, qword [rdx + 0x20]
shl rax, 0xd
call fcn.00458b80
mov rdx, qword [rsp + 0x38]
movzx ebx, byte [rsp + 0xe0]
mov esi, dword [rsp + 0x20]
mov r8d, dword [rsp + 0x24]
mov rdi, qword [rdx + 0x20]
lea r9, [0x00b94080]
lock xadd qword [r9], rdi
movzx edi, byte [rdx + 0x62]
mov byte [rsp + 0x18], dil
mov r9, qword [rdx + 0x68]
mov qword [rsp + 0x30], r9
mov r10, qword [rdx + 0x80]
mov qword [rsp + 0x80], r10
lea r11, [rdx + 0x80]
mov qword [rsp + 0x88], r11
mov qword [rsp + 0x90], r10
jmp 0x426cdd
mov rdx, r15
mov esi, dword [rsp + 0x20]
movzx edi, byte [rsp + 0x18]
mov r11, qword [rsp + 0x90]
test r11, r11
je 0x426dd6
movzx eax, word [r11 + 8]
test r9, r9
je 0x4276f3
mov rcx, rdx
xor edx, edx
div r9
mov rdx, rax
imul rax, r9
mov r12, qword [rcx + 0x18]
add r12, rax
nop
nop
mov r13, rdx
shr rdx, 3
and r13d, 7
mov r15, rcx
mov rcx, r13
mov edi, 1
shl edi, cl
nop
add rdx, qword [r15 + 0x50]
movzx esi, byte [rdx]
test dil, sil
je 0x426da9
cmp byte [r11 + 0xa], 3
nop
je 0x426d5b
nop
mov qword [rsp + 0x88], r11
mov rdx, qword [r11]
mov qword [rsp + 0x90], rdx
jmp 0x426cd1
nop
mov rdx, qword [r11]
mov qword [rsp + 0x90], rdx
mov rsi, qword [rsp + 0x88]
mov qword [rsi], rdx
mov byte [r11 + 0x11], 1
mov rax, r11
mov rbx, r12
mov rcx, r9
call fcn.0042b540
movzx ebx, byte [rsp + 0xe0]
mov r8d, dword [rsp + 0x24]
mov r9, qword [rsp + 0x30]
mov r10, qword [rsp + 0x80]
mov r15, qword [rsp + 0x38]
jmp 0x426cd1
lea rdi, [rax + r9]
jmp 0x427635
nop
bts esi, ecx
mov byte [rdx], sil
mov eax, 1
nop
jmp 0x426dc8
xor eax, eax
jmp 0x426dc8
xor eax, eax
mov qword [rsp + 0x58], rdi
mov byte [rsp + 0x19], al
jmp 0x427658
test r10, r10
je 0x426e69
cmp qword [rdx + 0x80], 0
jne 0x426e69
nop
nop
mov rax, qword [rdx + 0x18]
movabs r10, 0x800000000000
add r10, rax
mov r11, r10
shr r10, 0x2a
cmp r10, 0x40
jae 0x427625
lea r12, [0x00b940b0]
mov r10, qword [r12 + r10*8]
test byte [r10], al
shr r11, 0x16
and r11d, 0xfffff
mov r10, qword [r10 + r11*8]
test byte [r10], al
shr rax, 0xd
mov rcx, rax
and eax, 0x1ff
shr rax, 3
cmp rax, 0x40
jae 0x42761b
lea r10, [r10 + rax]
lea r10, [r10 + 0x21080]
and ecx, 7
mov r11d, 1
shl r11d, cl
not r11d
lock and byte [r10], r11b
cmp dword [0x00bc2588], 0
jne 0x426e7b
cmp dword [0x00bc2544], 0
je 0x426ec5
mov r10, qword [rdx + 0x50]
mov qword [rsp + 0x98], r10
mov byte [rsp + 0xa0], 1
mov qword [rsp + 0xa8], 0
mov r10, qword [rdx + 0x48]
mov qword [rsp + 0xb0], r10
mov byte [rsp + 0xb8], 1
mov qword [rsp + 0xc0], 0
xor eax, eax
nop dword [rax]
jmp 0x4274e4
mov rcx, qword [rdx + 0x30]
cmp qword [rdx + 0x38], rcx
jbe 0x426f45
mov r10, qword [rdx + 0x50]
mov r11, rcx
shr rcx, 3
movzx r10d, byte [rcx + r10]
mov r12, qword [rdx + 0x48]
movzx r12d, byte [rcx + r12]
not r12d
and r12d, r10d
and r11d, 7
mov rax, rcx
mov rcx, r11
shr r12b, cl
nop dword [rax + rax]
test r12b, r12b
je 0x426f37
mov qword [rsp + 0x78], rax
mov rax, rdx
call fcn.004277c0
mov rax, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x38]
movzx ebx, byte [rsp + 0xe0]
mov esi, dword [rsp + 0x20]
movzx edi, byte [rsp + 0x18]
mov r8d, dword [rsp + 0x24]
mov r9, qword [rsp + 0x30]
lea rcx, [rax + 1]
nop dword [rax + rax]
jmp 0x427470
nop
mov rcx, qword [rdx + 0x38]
add rcx, 7
shr rcx, 3
mov qword [rsp + 0x78], rcx
xor eax, eax
xor r10d, r10d
jmp 0x426f65
add rax, 8
add r10, r11
mov qword [rsp + 0x60], r10
cmp rax, rcx
jae 0x426fd5
mov r11, qword [rdx + 0x50]
mov r11, qword [r11 + rax]
movzx r12, byte [0x00bc1c6d]
nop
test r12d, r12d
je 0x426f8c
popcnt r11, r11
jmp 0x426f5e
mov qword [rsp + 0x40], rax
mov rax, r11
call fcn.004028a0
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x38]
movzx ebx, byte [rsp + 0xe0]
mov esi, dword [rsp + 0x20]
movzx edi, byte [rsp + 0x18]
mov r8d, dword [rsp + 0x24]
mov r9, qword [rsp + 0x30]
mov r10, qword [rsp + 0x60]
movzx r12, byte [0x00bc1c6d]
mov r11, rax
mov rax, qword [rsp + 0x40]
jmp 0x426f5e
movzx ecx, word [rdx + 0x60]
mov r11d, ecx
sub ecx, r10d
mov word [rsp + 0x1c], cx
cmp r10w, r11w
ja 0x4273bb
mov word [rdx + 0x60], r10w
mov qword [rdx + 0x30], 0
cmp byte [0x00b73e30], 0
je 0x427025
mov r11, qword [r14 + 0x30]
mov r11, qword [r11 + 0xa0]
test byte [r11], al
movzx r12d, cx
mov r13, qword [rdx + 0x68]
imul r13, r12
add qword [r11 + 0x11e8], r13
mov rcx, qword [rdx + 0x50]
mov qword [rdx + 0x48], rcx
mov rax, qword [rdx + 0x38]
call fcn.0042b680
mov rcx, qword [rsp + 0x38]
mov qword [rcx + 0x50], rax
mov rax, rcx
xor ebx, ebx
call fcn.004156a0
mov rbx, qword [rsp + 0x38]
mov cl, byte [rbx + 0x63]
mov byte [rsp + 0x1b], cl
cmp cl, 1
jne 0x42733b
mov edx, dword [rbx + 0x58]
mov esi, dword [rsp + 0x24]
cmp edx, esi
jne 0x42733b
mov esi, dword [rsp + 0x20]
lea edi, [rsi + 1]
cmp edx, edi
je 0x42732a
lea edi, [rsi + 3]
nop
cmp edx, edi
je 0x42732a
mov edx, esi
xchg dword [rbx + 0x58], esi
movzx eax, byte [rsp + 0x18]
mov esi, eax
shr al, 1
test al, al
je 0x427206
movzx edi, word [rsp + 0x1c]
test di, di
ja 0x4270b8
movzx edi, byte [rsp + 0xe0]
test dil, dil
jmp 0x427144
mov byte [rsp + 0x1a], al
mov byte [rbx + 0x64], 1
lea rax, [0x00bc6700]
call fcn.004320e0
test byte [rax], al
movzx ecx, byte [rsp + 0x1a]
movsx rcx, cl
nop word [rax + rax]
cmp rcx, 0x44
jae 0x42731d
lea rcx, [rax + rcx*8]
lea rcx, [rcx + 0x278]
movzx edx, word [rsp + 0x1c]
movzx edx, dx
mov qword [rsp + 0x70], rdx
lock xadd qword [rcx], rdx
lea rax, [0x00bc6700]
call fcn.004321c0
mov rbx, qword [rsp + 0x38]
mov rcx, qword [rbx + 0x68]
mov rdx, qword [rsp + 0x70]
imul rdx, rcx
lea rcx, [0x00bc2e30]
lock xadd qword [rcx], rdx
movzx ecx, byte [rsp + 0xe0]
test cl, cl
mov edx, dword [rsp + 0x20]
movzx esi, byte [rsp + 0x18]
jne 0x4272e6
mov rdi, qword [rsp + 0x60]
test di, di
je 0x4271e5
movzx edi, di
nop dword [rax + rax]
cmp qword [rbx + 0x38], rdi
jne 0x4271a5
cmp rsi, 0x88
jae 0x427311
lea rcx, [rsi + rsi*2]
shl rcx, 6
lea rsi, [0x00b94358]
lea rcx, [rcx + rsi]
lea rcx, [rcx + 0x58]
shr edx, 1
and edx, 1
lea rdx, [rdx + rdx*4]
lea rax, [rcx + rdx*8]
call fcn.00431a80
nop dword [rax]
jmp 0x4272e6
cmp rsi, 0x88
jae 0x427305
lea rcx, [rsi + rsi*2]
shl rcx, 6
lea rsi, [0x00b94358]
lea rcx, [rsi + rcx]
lea rcx, [rcx + 8]
shr edx, 1
and edx, 1
lea rdx, [rdx + rdx*4]
lea rax, [rcx + rdx*8]
call fcn.00431a80
nop dword [rax + rax]
jmp 0x4272e6
lea rax, [0x00b83f20]
call fcn.0042a5e0
mov eax, 1
mov rbp, qword [rsp + 0xc8]
add rsp, 0xd0
ret
movzx edi, byte [rsp + 0xe0]
test dil, dil
jne 0x4272e6
movzx edi, word [rsp + 0x1c]
nop dword [rax]
test di, di
je 0x4272b4
cmp dword [0x00bc2548], 0
jle 0x42724a
mov qword [rbx + 0x70], 0
mov rax, qword [rbx + 0x18]
mov rbx, qword [rsp + 0x30]
call fcn.00419700
jmp 0x427256
lea rax, [0x00b83f20]
call fcn.0042a5e0
lea rax, [0x00bc6700]
nop dword [rax]
call fcn.004320e0
mov ecx, 1
lock xadd qword [rax + 0x270], rcx
mov rcx, qword [rsp + 0x30]
lock xadd qword [rax + 0x268], rcx
lea rax, [0x00bc6700]
call fcn.004321c0
nop
mov rcx, qword [rsp + 0x30]
lea rdx, [0x00bc2e30]
lock xadd qword [rdx], rcx
mov eax, 1
mov rbp, qword [rsp + 0xc8]
add rsp, 0xd0
ret
cmp rsi, 0x88
jae 0x4272f8
lea rcx, [rsi + rsi*2]
shl rcx, 6
lea rsi, [0x00b94358]
lea rcx, [rcx + rsi]
lea rcx, [rcx + 0x58]
shr edx, 1
and edx, 1
lea rdx, [rdx + rdx*4]
lea rax, [rcx + rdx*8]
call fcn.00431a80
xor eax, eax
mov rbp, qword [rsp + 0xc8]
add rsp, 0xd0
ret
mov eax, esi
mov ecx, 0x88
nop
call fcn.00467360
mov eax, esi
mov ecx, 0x88
call fcn.00467360
mov eax, esi
mov ecx, 0x88
call fcn.00467360
mov rax, rcx
mov ecx, 0x44
call fcn.00467360
lea rax, [0x008d818b]
mov ebx, 0x11
call fcn.00439600
mov eax, dword [rbx + 0x58]
mov qword [rsp + 0x68], rax
call fcn.0043aec0
lea rax, [0x008d8fee]
mov ebx, 0x13
call fcn.0043b7c0
movzx eax, byte [rsp + 0x1b]
movzx eax, al
call fcn.0043b4c0
lea rax, [0x008d50e7]
mov ebx, 0xa
call fcn.0043b7c0
mov rax, qword [rsp + 0x68]
nop dword [rax]
call fcn.0043b4c0
lea rax, [0x008d741f]
mov ebx, 0x10
call fcn.0043b7c0
mov eax, dword [rsp + 0x20]
call fcn.0043b4c0
nop
call fcn.0043b120
call fcn.0043af40
lea rax, [0x008e3628]
mov ebx, 0x27
call fcn.00439600
mov word [rsp + 0x1e], r11w
mov rax, qword [rdx + 0x38]
mov qword [rsp + 0x78], rax
call fcn.0043aec0
lea rax, [0x008d7aef]
mov ebx, 0x10
nop dword [rax + rax]
call fcn.0043b7c0
mov rax, qword [rsp + 0x78]
call fcn.0043b4c0
lea rax, [0x008d467d]
mov ebx, 8
nop dword [rax + rax]
call fcn.0043b7c0
mov rax, qword [rsp + 0x60]
movzx eax, ax
call fcn.0043b4c0
lea rax, [0x008d9ba5]
mov ebx, 0x15
nop
call fcn.0043b7c0
movzx eax, word [rsp + 0x1e]
call fcn.0043b4c0
lea rax, [0x008d468d]
mov ebx, 8
nop dword [rax + rax]
call fcn.0043b7c0
movzx eax, word [rsp + 0x1c]
movzx eax, ax
call fcn.0043b4c0
call fcn.0043b120
call fcn.0043af40
lea rax, [0x008e01eb]
mov ebx, 0x20
call fcn.00439600
inc rcx
mov r10, qword [rdx + 0x38]
add r10, 7
shr r10, 3
nop dword [rax]
cmp rcx, r10
jae 0x426f45
mov r10, qword [rdx + 0x50]
movzx r10d, byte [rcx + r10]
mov r11, qword [rdx + 0x48]
movzx r11d, byte [rcx + r11]
not r11d
nop
test r10b, r11b
je 0x42746d
mov qword [rsp + 0x48], rcx
mov rax, rdx
call fcn.004277c0
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x38]
movzx ebx, byte [rsp + 0xe0]
mov esi, dword [rsp + 0x20]
movzx edi, byte [rsp + 0x18]
mov r8d, dword [rsp + 0x24]
mov r9, qword [rsp + 0x30]
jmp 0x42746d
inc qword [rsp + 0xc0]
inc rax
cmp qword [rdx + 0x38], rax
jbe 0x426ec5
mov r10, qword [rsp + 0x98]
movzx r11d, byte [rsp + 0xa0]
movzx r10d, byte [r10]
test r10b, r11b
jne 0x427595
mov r10, qword [rsp + 0xc0]
cmp qword [rdx + 0x30], r10
ja 0x427534
mov r10, qword [rsp + 0xb0]
movzx r11d, byte [rsp + 0xb8]
movzx r10d, byte [r10]
test r10b, r11b
je 0x427595
mov r10, qword [rdx + 0x68]
imul r10, rax
add r10, qword [rdx + 0x18]
cmp dword [0x00bc2588], 0
je 0x427588
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x28], r10
mov rax, r10
mov rbx, r9
call fcn.00430e80
mov rax, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x38]
movzx ebx, byte [rsp + 0xe0]
mov esi, dword [rsp + 0x20]
movzx edi, byte [rsp + 0x18]
mov r8d, dword [rsp + 0x24]
mov r9, qword [rsp + 0x30]
mov r10, qword [rsp + 0x28]
cmp dword [0x00bc2544], 0
je 0x427595
xor ecx, ecx
jmp 0x427611
nop
movzx r10d, byte [rsp + 0xa0]
nop
cmp r10b, 0x80
jne 0x4275b8
inc qword [rsp + 0x98]
mov byte [rsp + 0xa0], 1
jmp 0x4275c3
shl r10d, 1
mov byte [rsp + 0xa0], r10b
inc qword [rsp + 0xa8]
nop
movzx r10d, byte [rsp + 0xb8]
cmp r10b, 0x80
jne 0x4275f0
inc qword [rsp + 0xb0]
mov byte [rsp + 0xb8], 1
jmp 0x4274d9
shl r10d, 1
mov byte [rsp + 0xb8], r10b
nop dword [rax + rax]
jmp 0x4274d9
mov dword [r10 + rcx], 0xdeadbeef
add rcx, 4
cmp rcx, r9
jb 0x427605
jmp 0x427595
mov ecx, 0x40
call fcn.00467380
mov rax, r10
mov ecx, 0x40
call fcn.00467380
mov r11, qword [r11]
test r11, r11
je 0x426dc6
movzx r12d, word [r11 + 8]
cmp r12, rdi
jae 0x426dc2
cmp byte [r11 + 0xa], 1
jne 0x427632
jmp 0x426db2
mov rdx, qword [rsp + 0x90]
test rdx, rdx
je 0x426cd1
movzx esi, word [rdx + 8]
cmp rsi, rdi
jae 0x426cd1
mov r11, qword [r15 + 0x18]
add rsi, r11
cmp byte [rdx + 0xa], 1
je 0x42769d
test al, al
je 0x42769d
nop
mov qword [rsp + 0x88], rdx
mov rdx, qword [rdx]
mov qword [rsp + 0x90], rdx
jmp 0x427658
nop
mov rdi, qword [rdx]
mov qword [rsp + 0x90], rdi
mov r8, qword [rsp + 0x88]
mov qword [r8], rdi
mov rax, rdx
mov rbx, rsi
mov rcx, r9
nop dword [rax]
call fcn.0042b540
movzx eax, byte [rsp + 0x19]
movzx ebx, byte [rsp + 0xe0]
mov rdi, qword [rsp + 0x58]
mov r8d, dword [rsp + 0x24]
mov r9, qword [rsp + 0x30]
mov r10, qword [rsp + 0x80]
mov r15, qword [rsp + 0x38]
jmp 0x427658
call fcn.00437a20
mov eax, dword [rdx + 0x58]
mov qword [rsp + 0x68], rax
call fcn.0043aec0
lea rax, [0x008d8fee]
mov ebx, 0x13
call fcn.0043b7c0
movzx eax, byte [rsp + 0x1b]
movzx eax, al
nop
call fcn.0043b4c0
lea rax, [0x008d50e7]
mov ebx, 0xa
call fcn.0043b7c0
mov rax, qword [rsp + 0x68]
nop dword [rax + rax]
call fcn.0043b4c0
lea rax, [0x008d741f]
mov ebx, 0x10
call fcn.0043b7c0
mov eax, dword [rsp + 0x20]
call fcn.0043b4c0
nop
call fcn.0043b120
call fcn.0043af40
lea rax, [0x008dd6ae]
mov ebx, 0x1b
call fcn.00439600
lea rax, [0x008ddf6e]
mov ebx, 0x1c
call fcn.00439600
nop
mov qword [rsp + 8], rax
mov byte [rsp + 0x10], bl
call fcn.00464c60
mov rax, qword [rsp + 8]
movzx ebx, byte [rsp + 0x10]
jmp fcn.00426bc0