Function at 0x14000cf70
Capabilities:
Check for software breakpoints
Parse credit card information
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xf8
mov rsi, r9
mov rdi, r8
mov rbx, rdx
mov r15, rcx
mov rcx, qword [rsp + 0x168]
mov rax, qword [0x140062040]
xor rax, rsp
mov qword [rsp + 0xf0], rax
mov qword [rcx], 0
cmp qword [r9], 0
je 0x14000cfe0
cmp qword [rsi + 0x10], 0
je 0x14000f6dc
cmp qword [rsi + 0x18], 0
je 0x14000f6dc
cmp dword [rsi + 8], 0
je 0x14000f6dc
cmp byte [rsi + 0x34], 0
je 0x14000f6dc
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_EncodePointer]
mov ecx, dword [rsi + 0x20]
lea edx, [rcx + 8]
cmp qword [rsi], 0
je 0x14000e17a
cmp edx, dword [rsi + 0x30]
ja 0x14000e182
mov rdx, qword [rsi + 0x10]
mov qword [rdx + rcx], rax
add dword [rsi + 0x20], 8
cmp qword [rsi], 0
je 0x14000d03f
mov al, byte [rsi + 0x34]
cmp qword [rsi + 0x10], 0
je 0x14000f6dc
cmp qword [rsi + 0x18], 0
je 0x14000f6dc
cmp dword [rsi + 8], 0
je 0x14000f6dc
test al, al
je 0x14000f6dc
mov rax, qword [rbx]
mov ecx, dword [rbx + 0x10]
add rcx, qword [rax + 0x40]
call qword [sym.imp.KERNEL32.dll_EncodePointer]
mov ecx, dword [rsi + 0x20]
lea edx, [rcx + 8]
cmp qword [rsi], 0
mov qword [rsp + 0x40], rdi
je 0x14000e18d
cmp edx, dword [rsi + 0x30]
ja 0x14000e195
mov rdx, qword [rsi + 0x10]
mov qword [rdx + rcx], rax
add dword [rsi + 0x20], 8
cmp qword [rsi], 0
je 0x14000d0aa
mov al, byte [rsi + 0x34]
cmp qword [rsi + 0x10], 0
je 0x14000f6ce
cmp qword [rsi + 0x18], 0
je 0x14000f6ce
cmp dword [rsi + 8], 0
je 0x14000f6ce
test al, al
je 0x14000f6ce
mov rcx, qword [rbx]
mov edx, dword [rbx + 0x10]
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000d0c5
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x48
jne 0x14000d0f3
inc edx
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000d0e5
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx + 1], 0xb8
je 0x14000db15
mov eax, dword [rsi + 0x20]
mov dword [rsi + 0x24], eax
mov dword [rsi + 0x28], eax
cmp byte [r15 + 0x34], 0
je 0x14000e1cb
mov eax, dword [r15 + 0x30]
and eax, 2
mov ecx, eax
shr ecx, 1
mov dword [rsp + 0x3c], ecx
xor ecx, ecx
test eax, eax
sete cl
lea r14d, [rcx + rcx*2]
add r14d, 0xa
mov edx, dword [rbx + 0x10]
xor r12d, r12d
cmp edx, r14d
jae 0x14000d94f
lea r15, [rsp + 0x50]
mov rdi, qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov ebp, edx
mov dword [rsp + 0x2c], r14d
mov r13, qword [rbx]
mov rcx, r13
mov edx, ebp
test r12b, 1
jne 0x14000dcd8
mov rcx, r13
mov edx, ebp
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000d173
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xf
je 0x14000dd3c
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000d195
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x88
jae 0x14000d74b
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000d1b7
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x40
je 0x14000d60e
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000d1d9
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x41
je 0x14000d60e
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000d1fb
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x44
je 0x14000de6d
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000d21d
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x45
je 0x14000df16
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000d23f
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
mov al, byte [rax + rdx]
and al, 0xfa
cmp al, 0x48
je 0x14000d312
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000d264
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x66
je 0x14000dffc
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000d286
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
mov al, byte [rax + rdx]
and al, 0xf0
cmp al, 0x50
jne 0x14000d772
add rdx, qword [rcx + 0x40]
mov r8d, dword [rsi + 0x20]
lea ecx, [r8 + 1]
cmp r8d, dword [rsi + 0x28]
jne 0x14000d2ab
mov dword [rsi + 0x28], ecx
mov rax, qword [rsi]
test rax, rax
je 0x14000dff4
cmp ecx, dword [rsi + 0x30]
ja 0x14000dcc6
cmp qword [rax], 0
je 0x14000dcc6
add r8, qword [rsi + 0x10]
mov qword [rsp + 0x50], 0
mov rcx, qword [rax]
mov qword [rsp + 0x20], r15
mov r9d, 1
call rdi
test eax, eax
je 0x14000dcc6
cmp qword [rsp + 0x50], 1
jne 0x14000dcc6
inc dword [rsi + 0x20]
inc dword [rbx + 0x10]
mov ebp, dword [rbx + 0x10]
cmp ebp, r14d
jb 0x14000d147
jmp 0x14000d94d
add rdx, qword [rcx + 0x40]
mov r8d, dword [rsi + 0x20]
lea ecx, [r8 + 1]
cmp r8d, dword [rsi + 0x28]
jne 0x14000d327
mov dword [rsi + 0x28], ecx
mov rax, qword [rsi]
test rax, rax
je 0x14000e102
cmp ecx, dword [rsi + 0x30]
ja 0x14000dccf
cmp qword [rax], 0
je 0x14000dccf
add r8, qword [rsi + 0x10]
mov qword [rsp + 0x50], 0
mov rcx, qword [rax]
mov qword [rsp + 0x20], r15
mov r9d, 1
call rdi
test eax, eax
je 0x14000dccf
cmp qword [rsp + 0x50], 1
jne 0x14000dccf
inc dword [rsi + 0x20]
mov edx, dword [rbx + 0x10]
inc edx
mov dword [rbx + 0x10], edx
mov rcx, qword [rbx]
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rdx, qword [rcx + 0x10]
test rdx, rdx
je 0x14000d39a
mov rdx, qword [rcx + 8]
mov eax, dword [rbx + 0x10]
cmp byte [rdx + rax], 0x81
je 0x14000d6ab
mov edx, eax
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000d3be
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x83
je 0x14000e1d6
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000d3e0
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x83
je 0x14000e200
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000d402
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x83
je 0x14000e248
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000d424
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x2b
je 0x14000e29f
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000d446
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x85
je 0x14000e2e4
call fcn.14000b1d0
mov rbp, qword [rbx]
mov rax, qword [rbp + 0x10]
test rax, rax
je 0x14000d468
mov rax, qword [rbp + 8]
mov qword [rsp + 0x30], r12
mov edx, dword [rbx + 0x10]
mov al, byte [rax + rdx]
and al, 0xfd
cmp al, 0x89
jne 0x14000e30e
lea edi, [rdx + 1]
mov ecx, 0x58
call qword [sym.imp.mozglue.dll_moz_xmalloc]
mov r13, rax
movabs rax, 0x100000001
mov qword [r13 + 8], rax
lea rax, [0x140053420]
mov qword [r13], rax
mov rax, qword [rbp]
mov qword [r13 + 0x10], rax
mov qword [r13 + 0x20], 0
mov qword [r13 + 0x28], 0x20
lea rax, [r13 + 0x30]
mov qword [r13 + 0x18], rax
mov rcx, qword [rbp + 0x40]
add rcx, rdi
mov qword [r13 + 0x50], rcx
mov r15, qword [rbp + 0x10]
cmp r15, rdi
jbe 0x14000d51c
mov r12, qword [rbp + 8]
lea rbp, [r12 + r15]
add r12, rdi
mov r14, rbp
sub r14, r12
cmp r14, 0x21
jae 0x14000e375
xor ecx, ecx
cmp r15, rdi
jle 0x14000d515
add rax, rcx
mov cl, byte [r12]
mov byte [rax], cl
inc r12
inc rax
cmp r12, rbp
jb 0x14000d500
mov rcx, qword [r13 + 0x20]
add rcx, r14
mov qword [r13 + 0x20], rcx
lea rdi, [r13 + 8]
lea rax, [r13 + 0x10]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], r13
mov dword [rsp + 0x60], 0
lea r15, [rsp + 0x50]
mov rcx, r15
lea rdx, [rsp + 0x48]
call fcn.14000bdf0
mov ebp, eax
lock dec dword [rdi]
jne 0x14000d57c
mov rdi, r13
add rdi, 0xc
mov rax, qword [r13]
mov rax, qword [rax]
mov rcx, r13
call qword [0x140068010]
lock dec dword [rdi]
jne 0x14000d57c
mov rax, qword [r13]
mov rax, qword [rax + 8]
mov rcx, r13
call qword [0x140068010]
test ebp, ebp
mov r14d, dword [rsp + 0x2c]
mov r12, qword [rsp + 0x30]
js 0x14000e396
mov rax, qword [rbx]
mov edx, dword [rbx + 0x10]
add rdx, qword [rax + 0x40]
mov r8d, dword [rsi + 0x20]
lea ecx, [r8 + rbp]
inc ecx
cmp r8d, dword [rsi + 0x28]
mov rdi, qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
jne 0x14000d5b2
mov dword [rsi + 0x28], ecx
inc ebp
mov rax, qword [rsi]
test rax, rax
je 0x14000e3f7
cmp ecx, dword [rsi + 0x30]
ja 0x14000de64
cmp qword [rax], 0
je 0x14000de64
add r8, qword [rsi + 0x10]
mov r13d, ebp
mov qword [rsp + 0x50], 0
mov rcx, qword [rax]
mov qword [rsp + 0x20], r15
mov r9, r13
call rdi
test eax, eax
je 0x14000de64
cmp qword [rsp + 0x50], r13
jne 0x14000de64
add dword [rsi + 0x20], ebp
add dword [rbx + 0x10], ebp
jmp 0x14000d301
add rdx, qword [rcx + 0x40]
mov r8d, dword [rsi + 0x20]
lea ecx, [r8 + 1]
cmp r8d, dword [rsi + 0x28]
jne 0x14000d623
mov dword [rsi + 0x28], ecx
mov rax, qword [rsi]
test rax, rax
je 0x14000e54a
cmp ecx, dword [rsi + 0x30]
ja 0x14000df9c
cmp qword [rax], 0
je 0x14000df9c
add r8, qword [rsi + 0x10]
mov qword [rsp + 0x50], 0
mov rcx, qword [rax]
mov qword [rsp + 0x20], r15
mov r9d, 1
call rdi
test eax, eax
je 0x14000df9c
cmp qword [rsp + 0x50], 1
jne 0x14000df9c
inc dword [rsi + 0x20]
mov edx, dword [rbx + 0x10]
inc edx
mov dword [rbx + 0x10], edx
mov rcx, qword [rbx]
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000d696
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
mov al, byte [rax + rdx]
and al, 0xf0
cmp al, 0x50
je 0x14000d296
jmp 0x14000e552
lea edx, [rax + 1]
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rdx, qword [rcx + 0x10]
test rdx, rdx
je 0x14000d6c3
mov rdx, qword [rcx + 8]
mov eax, dword [rbx + 0x10]
mov dl, byte [rdx + rax + 1]
and dl, 0xf8
cmp dl, 0xe8
jne 0x14000d3a7
mov rdx, qword [rcx + 0x40]
add rdx, rax
mov r8d, dword [rsi + 0x20]
lea ecx, [r8 + 6]
cmp r8d, dword [rsi + 0x28]
jne 0x14000d6ee
mov dword [rsi + 0x28], ecx
mov rax, qword [rsi]
test rax, rax
je 0x14000e64a
cmp ecx, dword [rsi + 0x30]
ja 0x14000dfa5
cmp qword [rax], 0
je 0x14000dfa5
add r8, qword [rsi + 0x10]
mov qword [rsp + 0x50], 0
mov rcx, qword [rax]
mov qword [rsp + 0x20], r15
mov r9d, 6
call rdi
test eax, eax
je 0x14000dfa5
cmp qword [rsp + 0x50], 6
jne 0x14000dfa5
add dword [rsi + 0x20], 6
add dword [rbx + 0x10], 6
jmp 0x14000d301
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000d760
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x8b
ja 0x14000d1a2
jmp 0x14000e652
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000d787
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x65
je 0x14000e671
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000d7a9
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x80
je 0x14000e70b
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000d7cb
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x90
je 0x14000dfd0
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000d7ed
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
mov al, byte [rax + rdx]
and al, 0xf8
cmp al, 0xb8
jne 0x14000d822
add rdx, qword [rcx + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x14000d80b
add eax, 5
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 5
call fcn.14000bcb0
add dword [rbx + 0x10], 5
jmp 0x14000d301
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000d837
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x33
je 0x14000e8a8
call fcn.14000b1d0
mov rbp, qword [rbx]
mov rax, qword [rbp + 0x10]
test rax, rax
je 0x14000d859
mov rax, qword [rbp + 8]
mov qword [rsp + 0x30], r12
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xf6
jne 0x14000e8b1
mov byte [rsp + 0x48], 0
lea edi, [rdx + 1]
mov ecx, 0x58
call qword [sym.imp.mozglue.dll_moz_xmalloc]
mov r13, rax
movabs rax, 0x100000001
mov qword [r13 + 8], rax
lea rax, [0x140053420]
mov qword [r13], rax
lea r12, [r13 + 0x10]
mov rcx, r12
mov rdx, rbp
mov r8d, edi
call fcn.14000bd40
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x58], r13
mov dword [rsp + 0x60], 0
mov rcx, r15
lea rdx, [rsp + 0x48]
call fcn.14000bdf0
mov ebp, eax
lock dec dword [r13 + 8]
jne 0x14000d901
mov rdi, r13
add rdi, 0xc
mov rax, qword [r13]
mov rax, qword [rax]
mov rcx, r13
call qword [0x140068010]
lock dec dword [rdi]
jne 0x14000d901
mov rax, qword [r13]
mov rax, qword [rax + 8]
mov rcx, r13
call qword [0x140068010]
test ebp, ebp
mov r12, qword [rsp + 0x30]
js 0x14000f6ce
cmp byte [rsp + 0x48], 0
jne 0x14000f6ce
mov rax, qword [rbx]
mov edx, dword [rbx + 0x10]
add rdx, qword [rax + 0x40]
add ebp, 2
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
mov rdi, qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
jne 0x14000d93a
add eax, ebp
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, ebp
call fcn.14000bcb0
add dword [rbx + 0x10], ebp
jmp 0x14000d301
mov edx, ebp
cmp edx, 0x64
ja 0x14000f6ce
test r12b, 1
jne 0x14000d97d
mov rax, qword [rbx]
mov edx, edx
add rdx, qword [rax + 0x40]
mov rcx, rsi
mov r8d, 3
call fcn.14000f790
test al, al
je 0x14000f6ce
cmp byte [rsi + 0x34], 0
je 0x14000f6ce
cmp qword [rsi], 0
je 0x14000f6ce
mov eax, dword [rsi + 0x20]
mov r15d, dword [rsi + 0x24]
mov dword [rsi + 0x2c], eax
add r15, qword [rsi + 0x18]
je 0x14000f6ce
mov r9d, dword [rbx + 0x10]
test r9, r9
je 0x14000e3ff
mov rax, qword [rbx]
mov rdx, qword [rax]
mov r8, qword [rax + 0x40]
lea r14, [rsp + 0x88]
mov qword [r14 - 0x38], rdx
mov qword [r14 - 0x30], r8
mov qword [r14 - 0x28], r9
xor edi, edi
mov qword [r14 - 0x20], rdi
mov qword [r14 - 0x10], rdi
mov qword [r14 - 8], 0x20
mov qword [r14 - 0x18], r14
mov byte [r14 + 0x20], 1
lea rbx, [rsp + 0xb0]
mov rcx, rbx
call fcn.14000bfd0
cmp qword [rbx + 0x10], rdi
je 0x14000f6ab
cmp byte [rsp + 0xa8], 0
je 0x14000f6ab
cmp byte [rsp + 0x3c], 0
jne 0x14000e40a
lea rdi, [rsp + 0x70]
mov rax, qword [rdi + 8]
cmp rax, qword [rdi + 0x10]
je 0x14000e434
mov rcx, qword [rsp + 0x70]
mov byte [rcx + rax], 0x49
mov rax, qword [rsp + 0x78]
inc rax
mov qword [rsp + 0x78], rax
inc dword [rsp + 0x68]
cmp rax, qword [rsp + 0x80]
je 0x14000e453
mov rcx, qword [rsp + 0x70]
mov byte [rcx + rax], 0xbb
mov rax, qword [rsp + 0x78]
inc rax
mov qword [rsp + 0x78], rax
inc dword [rsp + 0x68]
lea rcx, [rax + 8]
cmp rcx, qword [rsp + 0x80]
ja 0x14000e472
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x160]
mov qword [rcx + rax], rdx
mov rax, qword [rsp + 0x78]
add rax, 8
mov qword [rsp + 0x78], rax
add dword [rsp + 0x68], 8
cmp rax, qword [rsp + 0x80]
je 0x14000e491
mov rcx, qword [rsp + 0x70]
mov byte [rcx + rax], 0x41
mov rax, qword [rsp + 0x78]
inc rax
mov qword [rsp + 0x78], rax
inc dword [rsp + 0x68]
cmp rax, qword [rsp + 0x80]
je 0x14000e4b0
mov rcx, qword [rsp + 0x70]
mov byte [rcx + rax], 0xff
mov rax, qword [rsp + 0x78]
inc rax
mov qword [rsp + 0x78], rax
inc dword [rsp + 0x68]
cmp rax, qword [rsp + 0x80]
je 0x14000e4cf
mov rcx, qword [rsp + 0x70]
mov byte [rcx + rax], 0xe3
jmp 0x14000f733
add edx, 0xa
call fcn.14000b1d0
mov r12, qword [rbx]
mov rax, qword [r12 + 0x10]
test rax, rax
je 0x14000db2f
mov rax, qword [r12 + 8]
mov r13d, dword [rbx + 0x10]
cmp byte [rax + r13 + 0xa], 0xff
jne 0x14000e4ee
lea edx, [r13 + 0xb]
mov rcx, r12
call fcn.14000b1d0
mov r12, qword [rbx]
mov rax, qword [r12 + 0x10]
test rax, rax
je 0x14000db5d
mov rax, qword [r12 + 8]
mov r13d, dword [rbx + 0x10]
cmp byte [rax + r13 + 0xb], 0xe0
jne 0x14000e4ee
add r13d, 2
mov ecx, 0x58
call qword [sym.imp.mozglue.dll_moz_xmalloc]
mov rbp, rax
movabs rax, 0x100000001
mov qword [rbp + 8], rax
lea rax, [0x140053420]
mov qword [rbp], rax
lea rdi, [rbp + 0x10]
mov rcx, rdi
mov rdx, r12
mov r8d, r13d
call fcn.14000bd40
mov rcx, rdi
mov edx, 8
call fcn.14000b1d0
mov rax, qword [rbp + 0x18]
mov r14, qword [rax]
lock dec dword [rbp + 8]
jne 0x14000dbf1
mov rdi, rbp
add rdi, 0xc
mov rax, qword [rbp]
mov rax, qword [rax]
mov rcx, rbp
call qword [0x140068010]
lock dec dword [rdi]
jne 0x14000dbf1
mov rax, qword [rbp]
mov rax, qword [rax + 8]
mov rcx, rbp
call qword [0x140068010]
lea rdi, [rsp + 0x50]
mov rcx, rbx
mov rdx, rdi
call fcn.14002d5c0
xor ebp, ebp
cmp qword [rdi + 0x70], 0
je 0x14000dc93
cmp byte [rsp + 0xa8], 0
je 0x14000dc93
lea rdi, [rsp + 0x50]
mov rcx, rdi
mov rdx, qword [rsp + 0x160]
call fcn.14002d770
mov rcx, rdi
call fcn.14002d7c0
test al, al
je 0x14000e883
mov eax, dword [rsi + 0x20]
lea ecx, [rax + 8]
cmp qword [rsi], 0
je 0x14000e88a
cmp ecx, dword [rsi + 0x30]
ja 0x14000e892
mov rcx, qword [rsi + 0x10]
mov qword [rcx + rax], r14
add dword [rsi + 0x20], 8
cmp qword [rsi], 0
je 0x14000dc85
mov al, byte [rsi + 0x34]
xor ebp, ebp
cmp qword [rsi + 0x10], 0
je 0x14000dc93
cmp qword [rsi + 0x18], 0
je 0x14000dc93
cmp dword [rsi + 8], 0
je 0x14000dc93
test al, al
je 0x14000dc93
mov rax, qword [rsp + 0x168]
mov qword [rax], r14
mov bpl, 1
lea rdi, [rsp + 0xb0]
mov rcx, rdi
call fcn.14002e480
mov rcx, qword [rdi - 0x40]
lea rax, [rsp + 0x88]
cmp rcx, rax
jne 0x14000e89d
test bpl, bpl
jne 0x14000f6ce
jmp 0x14000d0f3
mov byte [rsi + 0x34], 0
jmp 0x14000d2fe
mov byte [rsi + 0x34], 0
jmp 0x14000d37a
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000dced
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x90
je 0x14000dd18
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000dd0b
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xcc
jne 0x14000de27
inc edx
mov dword [rbx + 0x10], edx
mov r14d, dword [rsp + 0x2c]
cmp edx, r14d
lea r15, [rsp + 0x50]
mov rdi, qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
jb 0x14000d14f
jmp 0x14000d94f
add rdx, qword [rcx + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x14000dd4d
inc eax
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 1
call fcn.14000bcb0
mov edx, dword [rbx + 0x10]
inc edx
mov dword [rbx + 0x10], edx
mov rcx, qword [rbx]
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000dd7b
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x1f
jne 0x14000dfae
add rdx, qword [rcx + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x14000dd99
inc eax
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 1
call fcn.14000bcb0
mov edx, dword [rbx + 0x10]
inc edx
mov dword [rbx + 0x10], edx
mov rcx, qword [rbx]
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000ddc7
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
mov al, byte [rax + rdx]
and al, 0xc0
cmp al, 0x40
jne 0x14000f6ce
call fcn.14000b1d0
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x14000ddec
mov rcx, qword [rax + 8]
mov edx, dword [rbx + 0x10]
mov cl, byte [rcx + rdx]
and cl, 7
cmp cl, 4
jne 0x14000f6ce
add rdx, qword [rax + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x14000de10
add eax, 3
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 3
call fcn.14000bcb0
add dword [rbx + 0x10], 3
jmp 0x14000df86
cmp qword [rsp + 0x40], 0
je 0x14000f6ce
cmp edx, 0xa
jb 0x14000f6ce
mov rax, qword [rsp + 0x40]
mov rax, qword [rax]
mov ecx, dword [rax + 0x20]
add rcx, qword [rax + 0x18]
mov al, 1
mov dword [rsp + 0x3c], eax
mov eax, 0x80000001
cmp rcx, rax
jb 0x14000d94f
jmp 0x14000f6ce
mov byte [rsi + 0x34], 0
jmp 0x14000d606
add rdx, qword [rcx + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x14000de7e
inc eax
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 1
call fcn.14000bcb0
mov edx, dword [rbx + 0x10]
inc edx
mov dword [rbx + 0x10], edx
mov rcx, qword [rbx]
call fcn.14000b1d0
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x14000deac
mov rcx, qword [rax + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rcx + rdx], 0x89
jne 0x14000f6ce
add rdx, qword [rax + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x14000deca
inc eax
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 1
call fcn.14000bcb0
inc dword [rbx + 0x10]
mov rcx, rbx
xor edx, edx
call fcn.14000bdf0
test eax, eax
js 0x14000f6ce
mov ebp, eax
mov rax, qword [rbx]
mov edx, dword [rbx + 0x10]
add rdx, qword [rax + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x14000df06
add eax, ebp
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, ebp
call fcn.14000bcb0
add dword [rbx + 0x10], ebp
jmp 0x14000df86
add rdx, qword [rcx + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x14000df27
inc eax
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 1
call fcn.14000bcb0
mov edx, dword [rbx + 0x10]
inc edx
mov dword [rbx + 0x10], edx
mov rcx, qword [rbx]
call fcn.14000b1d0
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x14000df55
mov rcx, qword [rax + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rcx + rdx], 0x33
jne 0x14000f6ce
add rdx, qword [rax + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x14000df74
add eax, 2
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 2
call fcn.14000bcb0
add dword [rbx + 0x10], 2
mov r14d, dword [rsp + 0x2c]
lea r15, [rsp + 0x50]
mov rdi, qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
jmp 0x14000d301
mov byte [rsi + 0x34], 0
jmp 0x14000d676
mov byte [rsi + 0x34], 0
jmp 0x14000d742
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000dfc3
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 5
jne 0x14000e1a0
add rdx, qword [rcx + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x14000dfe1
inc eax
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 1
call fcn.14000bcb0
inc dword [rbx + 0x10]
jmp 0x14000df86
mov dword [rsi + 0x20], ecx
jmp 0x14000d2fe
add rdx, qword [rcx + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x14000e00d
inc eax
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 1
call fcn.14000bcb0
mov edx, dword [rbx + 0x10]
inc edx
mov dword [rbx + 0x10], edx
mov rcx, qword [rbx]
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000e03b
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x88
jb 0x14000e10a
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000e05d
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x8b
ja 0x14000e10a
inc edx
call fcn.14000b1d0
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x14000e081
mov rcx, qword [rax + 8]
mov edx, dword [rbx + 0x10]
movzx ecx, byte [rcx + rdx + 1]
mov r8d, ecx
and r8d, 0xffffffc0
mov r9d, 0xc0
cmp r8d, r9d
je 0x14000df62
cmp r8d, 0x40
je 0x14000e0c9
test r8d, r8d
jne 0x14000f6ce
mov r9d, ecx
and r9d, 6
cmp r9d, 4
jne 0x14000df62
cmp r8d, 0x40
jne 0x14000f6ce
add rdx, qword [rax + 0x40]
and ecx, 7
mov eax, dword [rsi + 0x20]
mov r8d, dword [rsi + 0x28]
cmp ecx, 4
jne 0x14000ebb3
cmp eax, r8d
jne 0x14000e0eb
add eax, 4
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 4
call fcn.14000bcb0
add dword [rbx + 0x10], 4
jmp 0x14000df86
mov dword [rsi + 0x20], ecx
jmp 0x14000d37a
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000e11f
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x44
jne 0x14000df86
inc edx
call fcn.14000b1d0
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x14000e143
mov rcx, qword [rax + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rcx + rdx + 1], 0x89
jne 0x14000df86
add rdx, qword [rax + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x14000e163
add eax, 2
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 2
call fcn.14000bcb0
add dword [rbx + 0x10], 2
jmp 0x14000dedb
mov dword [rsi + 0x20], edx
jmp 0x14000d03f
mov byte [rsi + 0x34], 0
xor eax, eax
jmp 0x14000d017
mov dword [rsi + 0x20], edx
jmp 0x14000d0aa
mov byte [rsi + 0x34], 0
xor eax, eax
jmp 0x14000d082
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000e1b5
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x10
jne 0x14000e746
add rdx, qword [rcx + 0x40]
jmp 0x14000debd
int3
inc edx
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000e1ed
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
mov al, byte [rax + rdx + 1]
and al, 0xf8
cmp al, 0xe8
jne 0x14000d3cb
jmp 0x14000e228
inc edx
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000e217
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
mov al, byte [rax + rdx + 1]
and al, 0xf8
cmp al, 0xc0
jne 0x14000d3ed
mov rax, qword [rcx + 0x40]
add rax, rdx
mov ecx, dword [rsi + 0x20]
cmp ecx, dword [rsi + 0x28]
jne 0x14000e23d
add ecx, 3
mov dword [rsi + 0x28], ecx
mov rcx, rsi
mov rdx, rax
jmp 0x14000de13
inc edx
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000e25f
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
mov al, byte [rax + rdx + 1]
and al, 0xf8
cmp al, 0x60
jne 0x14000d40f
mov rax, qword [rcx + 0x40]
add rax, rdx
mov ecx, dword [rsi + 0x20]
cmp ecx, dword [rsi + 0x28]
jne 0x14000e285
add ecx, 5
mov dword [rsi + 0x28], ecx
mov rcx, rsi
mov rdx, rax
mov r8d, 5
call fcn.14000bcb0
add dword [rbx + 0x10], 5
jmp 0x14000df86
inc edx
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000e2b6
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx + 1], 0xc0
jb 0x14000d431
mov rax, qword [rcx + 0x40]
add rax, rdx
mov ecx, dword [rsi + 0x20]
cmp ecx, dword [rsi + 0x28]
jne 0x14000e2d9
add ecx, 2
mov dword [rsi + 0x28], ecx
mov rcx, rsi
mov rdx, rax
jmp 0x14000df77
inc edx
call fcn.14000b1d0
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x14000e2fb
mov rcx, qword [rax + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rcx + rdx + 1], 0xc0
jae 0x14000df62
jmp 0x14000f6ce
mov rcx, rbp
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000e326
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
mov al, byte [rax + rdx]
and al, 0xf8
cmp al, 0xb8
jne 0x14000e813
add rdx, qword [rcx + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x14000e348
add eax, 9
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 9
call fcn.14000bcb0
add dword [rbx + 0x10], 9
mov r14d, dword [rsp + 0x2c]
lea r15, [rsp + 0x50]
mov rdi, qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov r12, qword [rsp + 0x30]
jmp 0x14000d301
lea rcx, [r13 + 0x18]
mov rdx, r14
call fcn.14000b3b0
test al, al
je 0x14000d51c
mov rax, qword [r13 + 0x18]
mov rcx, qword [r13 + 0x20]
jmp 0x14000d4f8
cmp ebp, 0xfffffffe
jne 0x14000f6ce
add dword [rbx + 0x10], 2
mov rcx, rbx
call fcn.140034160
mov r8b, byte [rsp + 0x48]
test r8b, r8b
je 0x14000eabf
cmp qword [rsi], 0
mov ecx, dword [rsi + 0x20]
je 0x14000eaf9
mov edx, dword [rsi + 0x30]
cmp ecx, edx
jae 0x14000eb72
add r8b, 0xb8
mov rdx, qword [rsi + 0x10]
mov byte [rdx + rcx], r8b
mov ecx, dword [rsi + 0x20]
inc ecx
mov dword [rsi + 0x20], ecx
cmp qword [rsi], 0
je 0x14000eafb
mov edx, dword [rsi + 0x30]
jmp 0x14000eb76
mov dword [rsi + 0x20], ecx
jmp 0x14000d606
int3
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax]
lea r8, [rsp + 0x50]
mov rdx, r15
mov r9, qword [rsp + 0x160]
call fcn.140034290
test al, al
jne 0x14000f60c
jmp 0x14000f6ab
mov edx, 1
mov rcx, rdi
call fcn.14000b3b0
test al, al
je 0x14000f55f
mov rax, qword [rsp + 0x78]
jmp 0x14000da31
mov edx, 1
mov rcx, rdi
call fcn.14000b3b0
test al, al
je 0x14000f571
mov rax, qword [rsp + 0x78]
jmp 0x14000da59
mov edx, 8
mov rcx, rdi
call fcn.14000b3b0
test al, al
je 0x14000f583
mov rax, qword [rsp + 0x78]
jmp 0x14000da85
mov edx, 1
mov rcx, rdi
call fcn.14000b3b0
test al, al
je 0x14000f595
mov rax, qword [rsp + 0x78]
jmp 0x14000dab7
mov edx, 1
mov rcx, rdi
call fcn.14000b3b0
test al, al
je 0x14000f5a7
mov rax, qword [rsp + 0x78]
jmp 0x14000dadf
mov edx, 1
mov rcx, rdi
call fcn.14000b3b0
test al, al
je 0x14000f781
mov rax, qword [rsp + 0x78]
jmp 0x14000db07
add r13d, 0xa
mov rcx, r12
mov edx, r13d
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000e50d
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx + 0xa], 0x50
jne 0x14000d0f3
add edx, 0xb
call fcn.14000b1d0
mov r12, qword [rbx]
mov rax, qword [r12 + 0x10]
test rax, rax
je 0x14000e535
mov rax, qword [r12 + 8]
mov r13d, dword [rbx + 0x10]
cmp byte [rax + r13 + 0xb], 0xc3
jne 0x14000d0f3
jmp 0x14000db6d
mov dword [rsi + 0x20], ecx
jmp 0x14000d676
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000e567
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xb8
jb 0x14000e592
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000e585
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xbf
jbe 0x14000e270
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000e5a7
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x8b
jne 0x14000e5d5
inc edx
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000e5c7
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx + 1], 0xc0
jae 0x14000e2c4
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000e5ea
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xf7
jne 0x14000f6ce
inc edx
call fcn.14000b1d0
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x14000e60e
mov rcx, qword [rax + 8]
mov edx, dword [rbx + 0x10]
mov cl, byte [rcx + rdx + 1]
and cl, 0xf8
cmp cl, 0xc0
jne 0x14000f6ce
add rdx, qword [rax + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x14000e633
add eax, 6
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 6
call fcn.14000bcb0
add dword [rbx + 0x10], 6
jmp 0x14000df86
mov dword [rsi + 0x20], ecx
jmp 0x14000d742
mov rax, qword [rcx + 0x40]
add rax, rdx
mov ecx, dword [rsi + 0x20]
cmp ecx, dword [rsi + 0x28]
jne 0x14000e666
inc ecx
mov dword [rsi + 0x28], ecx
mov rcx, rsi
mov rdx, rax
jmp 0x14000decd
inc edx
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000e688
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx + 1], 0x48
jne 0x14000f6ce
add edx, 2
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000e6ae
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx + 2], 0x88
jb 0x14000f6ce
add edx, 2
call fcn.14000b1d0
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x14000e6d4
mov rcx, qword [rax + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rcx + rdx + 2], 0x8b
ja 0x14000f6ce
add rdx, qword [rax + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x14000e6f4
add eax, 3
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 3
call fcn.14000bcb0
add dword [rbx + 0x10], 3
jmp 0x14000dedb
inc edx
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000e722
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx + 1], 0x3d
je 0x14000ef99
mov r14d, dword [rsp + 0x2c]
lea r15, [rsp + 0x50]
mov rdi, qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
jmp 0x14000d7b6
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000e75b
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x11
je 0x14000e1c2
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000e77d
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x83
jb 0x14000f6ce
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000e79f
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x85
ja 0x14000f6ce
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000e7c1
mov rax, qword [rcx + 8]
mov ecx, dword [rbx + 0x10]
movzx eax, byte [rax + rcx]
lea rdx, [0x140055b58]
mov edi, dword [rdx + rax*4 - 0x20c]
lea eax, [rcx + 1]
mov dword [rbx + 0x10], eax
dec dword [rsi + 0x20]
mov rcx, rbx
call fcn.140034160
mov rcx, rsi
mov rdx, rax
mov r8d, edi
call fcn.14000f790
test al, al
mov r14d, dword [rsp + 0x2c]
lea r15, [rsp + 0x50]
mov rdi, qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
jne 0x14000d301
jmp 0x14000f6ce
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000e828
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xc7
jne 0x14000e996
inc edx
call fcn.14000b1d0
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x14000e84c
mov rcx, qword [rax + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rcx + rdx + 1], 0x44
jne 0x14000f6ce
add rdx, qword [rax + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x14000e86c
add eax, 8
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 8
call fcn.14000bcb0
add dword [rbx + 0x10], 8
jmp 0x14000e35a
xor ebp, ebp
jmp 0x14000dc93
mov dword [rsi + 0x20], ecx
jmp 0x14000dc85
mov byte [rsi + 0x34], 0
xor eax, eax
jmp 0x14000dc6b
call qword [sym.imp.mozglue.dll_free]
jmp 0x14000dcb8
add rdx, qword [rcx + 0x40]
jmp 0x14000df66
mov rcx, rbp
call fcn.14000b1d0
mov rbp, qword [rbx]
mov rax, qword [rbp + 0x10]
test rax, rax
je 0x14000e8c9
mov rax, qword [rbp + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x85
jne 0x14000eb0c
lea edi, [rdx + 1]
mov ecx, 0x58
call qword [sym.imp.mozglue.dll_moz_xmalloc]
mov r13, rax
movabs rax, 0x100000001
mov qword [r13 + 8], rax
lea rax, [0x140053420]
mov qword [r13], rax
lea r12, [r13 + 0x10]
mov rcx, r12
mov rdx, rbp
mov r8d, edi
call fcn.14000bd40
lea rcx, [rsp + 0x50]
mov qword [rcx], r12
mov qword [rcx + 8], r13
mov dword [rcx + 0x10], 0
xor edx, edx
call fcn.14000bdf0
mov ebp, eax
lock dec dword [r13 + 8]
jne 0x14000e962
mov rdi, r13
add rdi, 0xc
mov rax, qword [r13]
mov rax, qword [rax]
mov rcx, r13
call qword [0x140068010]
lock dec dword [rdi]
jne 0x14000e962
mov rax, qword [r13]
mov rax, qword [rax + 8]
mov rcx, r13
call qword [0x140068010]
test ebp, ebp
js 0x14000f6ce
mov rax, qword [rbx]
mov edx, dword [rbx + 0x10]
add rdx, qword [rax + 0x40]
inc ebp
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x14000e983
add eax, ebp
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, ebp
call fcn.14000bcb0
add dword [rbx + 0x10], ebp
jmp 0x14000e35a
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000e9ab
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xff
je 0x14000ec5c
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000e9cd
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x8d
jne 0x14000edcd
inc edx
call fcn.14000b1d0
mov r14, qword [rbx]
mov rax, qword [r14 + 0x10]
test rax, rax
je 0x14000e9f1
mov rax, qword [r14 + 8]
mov ebp, dword [rbx + 0x10]
cmp byte [rax + rbp + 1], 0x3f
ja 0x14000ea27
lea edx, [rbp + 1]
mov rcx, r14
call fcn.14000b1d0
mov r14, qword [rbx]
mov rax, qword [r14 + 0x10]
test rax, rax
je 0x14000ea16
mov rax, qword [r14 + 8]
mov ebp, dword [rbx + 0x10]
mov al, byte [rax + rbp + 1]
and al, 7
cmp al, 5
je 0x14000f4a0
inc ebp
mov ecx, 0x58
call qword [sym.imp.mozglue.dll_moz_xmalloc]
mov r13, rax
movabs rax, 0x100000001
mov qword [r13 + 8], rax
lea rax, [0x140053420]
mov qword [r13], rax
lea rdi, [r13 + 0x10]
mov rcx, rdi
mov rdx, r14
mov r8d, ebp
call fcn.14000bd40
lea rcx, [rsp + 0x50]
mov qword [rcx], rdi
mov qword [rcx + 8], r13
mov dword [rcx + 0x10], 0
xor edx, edx
call fcn.14000bdf0
mov ebp, eax
lock dec dword [r13 + 8]
jne 0x14000e96a
mov rdi, r13
add rdi, 0xc
mov rax, qword [r13]
mov rax, qword [rax]
mov rcx, r13
call qword [0x140068010]
lock dec dword [rdi]
jne 0x14000e96a
mov rax, qword [r13]
mov rax, qword [rax + 8]
mov rcx, r13
call qword [0x140068010]
jmp 0x14000e96a
cmp qword [rsi], 0
mov ecx, dword [rsi + 0x20]
je 0x14000f4f6
mov edx, dword [rsi + 0x30]
cmp ecx, edx
jae 0x14000f500
mov rdx, qword [rsi + 0x10]
mov byte [rdx + rcx], 0xa1
mov ecx, dword [rsi + 0x20]
inc ecx
mov dword [rsi + 0x20], ecx
cmp qword [rsi], 0
je 0x14000f4f8
mov edx, dword [rsi + 0x30]
jmp 0x14000f504
inc ecx
add ecx, 8
inc ecx
inc ecx
inc ecx
mov dword [rsi + 0x20], ecx
jmp 0x14000e35a
mov rcx, rbp
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000eb24
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xd1
jne 0x14000ebc1
inc edx
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000eb48
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx + 1], 0xc0
jb 0x14000ebc1
mov rax, qword [rcx + 0x40]
add rax, rdx
mov ecx, dword [rsi + 0x20]
cmp ecx, dword [rsi + 0x28]
jne 0x14000eb67
add ecx, 2
mov dword [rsi + 0x28], ecx
mov rcx, rsi
mov rdx, rax
jmp 0x14000ee29
mov byte [rsi + 0x34], 0
lea r8d, [rcx + 8]
cmp r8d, edx
jbe 0x14000ec37
mov byte [rsi + 0x34], 0
cmp ecx, edx
jae 0x14000ed47
mov rax, qword [rsi + 0x10]
mov ecx, ecx
mov byte [rax + rcx], 0x48
mov ecx, dword [rsi + 0x20]
inc ecx
mov dword [rsi + 0x20], ecx
cmp qword [rsi], 0
je 0x14000eb00
mov edx, dword [rsi + 0x30]
jmp 0x14000ed4b
cmp eax, r8d
je 0x14000de0a
jmp 0x14000de10
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000ebd6
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x83
jne 0x14000ed84
inc edx
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000ebfa
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx + 1], 0xc0
jb 0x14000ed84
mov rax, qword [rcx + 0x40]
add rax, rdx
mov ecx, dword [rsi + 0x20]
cmp ecx, dword [rsi + 0x28]
jne 0x14000ec1d
add ecx, 3
mov dword [rsi + 0x28], ecx
mov rcx, rsi
mov rdx, rax
mov r8d, 3
call fcn.14000bcb0
add dword [rbx + 0x10], 3
jmp 0x14000e35a
mov rdx, qword [rsi + 0x10]
mov ecx, ecx
mov qword [rdx + rcx], rax
mov ecx, dword [rsi + 0x20]
add ecx, 8
mov dword [rsi + 0x20], ecx
cmp qword [rsi], 0
je 0x14000eafe
mov edx, dword [rsi + 0x30]
jmp 0x14000eb87
inc edx
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000ec73
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx + 1], 0x3f
ja 0x14000f6ce
inc edx
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000ec98
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
mov al, byte [rax + rdx + 1]
and al, 7
cmp al, 5
jne 0x14000f6ce
inc edx
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rdx, qword [rcx + 0x10]
test rdx, rdx
je 0x14000ecc0
mov rdx, qword [rcx + 8]
mov eax, dword [rbx + 0x10]
mov dl, byte [rdx + rax + 1]
and dl, 0x38
cmp dl, 0x20
je 0x14000ecfa
lea edx, [rax + 1]
call fcn.14000b1d0
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x14000ece7
mov rcx, qword [rax + 8]
mov eax, dword [rbx + 0x10]
mov cl, byte [rcx + rax + 1]
and cl, 0x38
cmp cl, 0x10
jne 0x14000f6ce
add eax, 2
mov dword [rbx + 0x10], eax
dec dword [rsi + 0x20]
mov rcx, qword [rbx]
mov edx, dword [rbx + 0x10]
inc edx
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000ed20
mov rax, qword [rcx + 8]
mov ecx, dword [rbx + 0x10]
mov al, byte [rax + rcx + 1]
and al, 0x38
xor r12d, r12d
cmp al, 0x20
sete r12b
mov edi, 4
sub edi, r12d
mov rcx, rbx
call fcn.1400341b0
jmp 0x14000e7e7
mov byte [rsi + 0x34], 0
cmp ecx, edx
jae 0x14000ee3d
mov rax, qword [rsi + 0x10]
mov ecx, ecx
mov byte [rax + rcx], 0x8b
mov ecx, dword [rsi + 0x20]
inc ecx
mov dword [rsi + 0x20], ecx
cmp qword [rsi], 0
je 0x14000eb02
mov dl, byte [rsp + 0x48]
lea eax, [rdx*8]
or al, dl
mov edx, dword [rsi + 0x30]
jmp 0x14000ee51
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000ed99
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xc3
jne 0x14000ee6a
add rdx, qword [rcx + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x14000edb7
inc eax
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 1
call fcn.14000bcb0
inc dword [rbx + 0x10]
jmp 0x14000e35a
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000ede2
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x63
jne 0x14000f6ce
inc edx
call fcn.14000b1d0
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x14000ee06
mov rcx, qword [rax + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rcx + rdx + 1], 0xc0
jb 0x14000f6ce
add rdx, qword [rax + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x14000ee26
add eax, 2
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 2
call fcn.14000bcb0
add dword [rbx + 0x10], 2
jmp 0x14000e35a
mov byte [rsi + 0x34], 0
mov r8b, byte [rsp + 0x48]
lea eax, [r8*8]
or al, r8b
cmp ecx, edx
jae 0x14000f50d
mov rdx, qword [rsi + 0x10]
mov ecx, ecx
mov byte [rdx + rcx], al
inc dword [rsi + 0x20]
jmp 0x14000e35a
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000ee7f
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xcc
je 0x14000eda6
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000eea1
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xe8
je 0x14000f529
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000eec3
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xe9
je 0x14000f529
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000eee5
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x73
jb 0x14000f01a
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000ef07
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x75
ja 0x14000f01a
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000ef29
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
movzx eax, byte [rax + rdx]
lea r8, [0x140055b58]
mov ebp, dword [r8 + rax*4 - 0x1cc]
inc edx
call fcn.14000b1d0
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x14000ef56
mov rcx, qword [rax + 8]
mov edx, dword [rbx + 0x10]
movzx ecx, byte [rcx + rdx + 1]
add edx, 2
mov dword [rbx + 0x10], edx
add rdx, rcx
add rdx, qword [rax + 0x40]
mov rcx, rsi
mov r8d, ebp
call fcn.14000f790
test al, al
mov r14d, dword [rsp + 0x2c]
lea r15, [rsp + 0x50]
mov rdi, qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov r12, qword [rsp + 0x30]
jne 0x14000d301
jmp 0x14000f6ce
lea eax, [rdx + 2]
mov dword [rbx + 0x10], eax
cmp qword [rsi], 0
mov eax, dword [rsi + 0x20]
jne 0x14000eff1
inc eax
inc eax
mov dword [rsi + 0x20], eax
mov rcx, rbx
call fcn.140034160
cmp qword [rsi], 0
mov ecx, dword [rsi + 0x20]
je 0x14000f0b5
mov edx, dword [rsi + 0x30]
cmp ecx, edx
jae 0x14000f121
mov rdx, qword [rsi + 0x10]
mov byte [rdx + rcx], 0x49
mov ecx, dword [rsi + 0x20]
inc ecx
mov dword [rsi + 0x20], ecx
cmp qword [rsi], 0
je 0x14000f0b7
mov edx, dword [rsi + 0x30]
jmp 0x14000f125
mov ecx, dword [rsi + 0x30]
cmp eax, ecx
jae 0x14000f1aa
mov rcx, qword [rsi + 0x10]
mov byte [rcx + rax], 0x49
mov eax, dword [rsi + 0x20]
inc eax
mov dword [rsi + 0x20], eax
cmp qword [rsi], 0
je 0x14000efaa
mov ecx, dword [rsi + 0x30]
jmp 0x14000f1ae
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000f02f
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xff
je 0x14000f2e6
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000f051
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x83
jne 0x14000f1ef
inc edx
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000f075
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
mov al, byte [rax + rdx + 1]
and al, 0xf8
cmp al, 0x60
jne 0x14000f1ef
mov rax, qword [rcx + 0x40]
add rax, rdx
mov ecx, dword [rsi + 0x20]
cmp ecx, dword [rsi + 0x28]
jne 0x14000f09b
add ecx, 5
mov dword [rsi + 0x28], ecx
mov rcx, rsi
mov rdx, rax
mov r8d, 5
call fcn.14000bcb0
add dword [rbx + 0x10], 5
jmp 0x14000e35a
inc ecx
inc ecx
add ecx, 8
inc ecx
inc ecx
inc ecx
mov dword [rsi + 0x20], ecx
mov rax, qword [rbx]
mov edx, dword [rbx + 0x10]
add rdx, qword [rax + 0x40]
cmp ecx, dword [rsi + 0x28]
jne 0x14000f0d9
inc ecx
mov dword [rsi + 0x28], ecx
mov rcx, rsi
mov r8d, 1
call fcn.14000bcb0
inc dword [rbx + 0x10]
cmp qword [rsi], 0
mov eax, dword [rsi + 0x20]
je 0x14000f115
mov ecx, dword [rsi + 0x30]
cmp eax, ecx
jae 0x14000f14a
mov rcx, qword [rsi + 0x10]
mov byte [rcx + rax], 0x49
mov eax, dword [rsi + 0x20]
inc eax
mov dword [rsi + 0x20], eax
cmp qword [rsi], 0
je 0x14000f117
mov ecx, dword [rsi + 0x30]
jmp 0x14000f14e
inc eax
inc eax
mov dword [rsi + 0x20], eax
jmp 0x14000df86
mov byte [rsi + 0x34], 0
cmp ecx, edx
jae 0x14000f164
mov rdx, qword [rsi + 0x10]
mov ecx, ecx
mov byte [rdx + rcx], 0xbb
mov ecx, dword [rsi + 0x20]
inc ecx
mov dword [rsi + 0x20], ecx
cmp qword [rsi], 0
je 0x14000f0b9
mov edx, dword [rsi + 0x30]
jmp 0x14000f168
mov byte [rsi + 0x34], 0
cmp eax, ecx
jae 0x14000f1a1
mov rcx, qword [rsi + 0x10]
mov eax, eax
mov byte [rcx + rax], 0x5b
inc dword [rsi + 0x20]
jmp 0x14000df86
mov byte [rsi + 0x34], 0
lea r8d, [rcx + 8]
cmp r8d, edx
jbe 0x14000f1c4
mov byte [rsi + 0x34], 0
cmp ecx, edx
jae 0x14000f2b6
mov rax, qword [rsi + 0x10]
mov ecx, ecx
mov byte [rax + rcx], 0x41
mov ecx, dword [rsi + 0x20]
inc ecx
mov dword [rsi + 0x20], ecx
cmp qword [rsi], 0
je 0x14000f0be
mov edx, dword [rsi + 0x30]
jmp 0x14000f2ba
mov byte [rsi + 0x34], 0
jmp 0x14000df86
mov byte [rsi + 0x34], 0
cmp eax, ecx
jae 0x14000f1e6
mov rcx, qword [rsi + 0x10]
mov eax, eax
mov byte [rcx + rax], 0x53
inc dword [rsi + 0x20]
jmp 0x14000efaf
mov rdx, qword [rsi + 0x10]
mov ecx, ecx
mov qword [rdx + rcx], rax
mov ecx, dword [rsi + 0x20]
add ecx, 8
mov dword [rsi + 0x20], ecx
cmp qword [rsi], 0
je 0x14000f0bc
mov edx, dword [rsi + 0x30]
jmp 0x14000f175
mov byte [rsi + 0x34], 0
jmp 0x14000efaf
call fcn.14000b1d0
mov r14, qword [rbx]
mov rax, qword [r14 + 0x10]
test rax, rax
je 0x14000f204
mov rax, qword [r14 + 8]
mov ebp, dword [rbx + 0x10]
cmp byte [rax + rbp], 0xc6
jne 0x14000f6ce
inc ebp
mov ecx, 0x58
call qword [sym.imp.mozglue.dll_moz_xmalloc]
mov r13, rax
movabs rax, 0x100000001
mov qword [r13 + 8], rax
lea rax, [0x140053420]
mov qword [r13], rax
lea rdi, [r13 + 0x10]
mov rcx, rdi
mov rdx, r14
mov r8d, ebp
call fcn.14000bd40
lea rcx, [rsp + 0x50]
mov qword [rcx], rdi
mov qword [rcx + 8], r13
mov dword [rcx + 0x10], 0
xor edx, edx
call fcn.14000bdf0
mov ebp, eax
lock dec dword [r13 + 8]
jne 0x14000f29c
mov rdi, r13
add rdi, 0xc
mov rax, qword [r13]
mov rax, qword [rax]
mov rcx, r13
call qword [0x140068010]
lock dec dword [rdi]
jne 0x14000f29c
mov rax, qword [r13]
mov rax, qword [rax + 8]
mov rcx, r13
call qword [0x140068010]
test ebp, ebp
js 0x14000f6ce
mov rax, qword [rbx]
mov edx, dword [rbx + 0x10]
add rdx, qword [rax + 0x40]
add ebp, 2
jmp 0x14000e976
mov byte [rsi + 0x34], 0
cmp ecx, edx
jae 0x14000f385
mov rax, qword [rsi + 0x10]
mov ecx, ecx
mov byte [rax + rcx], 0x80
mov ecx, dword [rsi + 0x20]
inc ecx
mov dword [rsi + 0x20], ecx
cmp qword [rsi], 0
je 0x14000f0c0
mov edx, dword [rsi + 0x30]
jmp 0x14000f389
inc edx
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000f2fd
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
mov r12b, byte [rax + rdx + 1]
inc edx
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000f31c
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
movzx edi, byte [rax + rdx + 1]
inc edx
call fcn.14000b1d0
mov r14, qword [rbx]
mov rax, qword [r14 + 0x10]
test rax, rax
je 0x14000f33b
mov rax, qword [r14 + 8]
shr edi, 3
and edi, 7
mov ebp, dword [rbx + 0x10]
mov dl, byte [rax + rbp + 1]
and dl, 7
cmp r12b, 0xc0
jb 0x14000f3a8
cmp edi, 6
ja 0x14000f5b9
mov eax, 0x47
bt eax, edi
jae 0x14000f5b9
add rbp, qword [r14 + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x14000f37a
add eax, 2
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov rdx, rbp
jmp 0x14000ee29
mov byte [rsi + 0x34], 0
cmp ecx, edx
jae 0x14000f39f
mov rax, qword [rsi + 0x10]
mov ecx, ecx
mov byte [rax + rcx], 0x3b
mov ecx, dword [rsi + 0x20]
jmp 0x14000f0c0
mov byte [rsi + 0x34], 0
jmp 0x14000f0c5
cmp r12b, 0x40
setb al
cmp dl, 5
sete cl
cmp r12b, 0x3f
ja 0x14000f3ca
cmp dil, 2
jne 0x14000f3ca
cmp dl, 5
je 0x14000f5c6
cmp dil, 4
jne 0x14000f6ce
and al, cl
cmp al, 1
je 0x14000f5e5
inc ebp
mov ecx, 0x58
call qword [sym.imp.mozglue.dll_moz_xmalloc]
mov r13, rax
movabs rax, 0x100000001
mov qword [r13 + 8], rax
lea rax, [0x140053420]
mov qword [r13], rax
lea rdi, [r13 + 0x10]
mov rcx, rdi
mov rdx, r14
mov r8d, ebp
call fcn.14000bd40
lea rcx, [rsp + 0x50]
mov qword [rcx], rdi
mov qword [rcx + 8], r13
mov dword [rcx + 0x10], 0
xor edx, edx
call fcn.14000bdf0
mov ebp, eax
lock dec dword [r13 + 8]
jne 0x14000f469
mov rdi, r13
add rdi, 0xc
mov rax, qword [r13]
mov rax, qword [rax]
mov rcx, r13
call qword [0x140068010]
lock dec dword [rdi]
jne 0x14000f469
mov rax, qword [r13]
mov rax, qword [rax + 8]
mov rcx, r13
call qword [0x140068010]
test ebp, ebp
js 0x14000f6ce
mov rax, qword [rbx]
mov edx, dword [rbx + 0x10]
add rdx, qword [rax + 0x40]
inc ebp
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x14000f48a
add eax, ebp
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, ebp
call fcn.14000bcb0
add dword [rbx + 0x10], ebp
mov r12b, 1
jmp 0x14000df86
lea edx, [rbp + 1]
mov rcx, r14
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000f4bb
mov rax, qword [rcx + 8]
mov ecx, dword [rbx + 0x10]
mov dil, byte [rax + rcx + 1]
lea eax, [rcx + 2]
mov dword [rbx + 0x10], eax
mov rcx, rbx
call fcn.140034160
cmp qword [rsi], 0
mov ecx, dword [rsi + 0x20]
je 0x14000f4f6
mov edx, dword [rsi + 0x30]
cmp ecx, edx
jae 0x14000f500
shr dil, 3
or dil, 0xb8
mov rdx, qword [rsi + 0x10]
mov byte [rdx + rcx], dil
jmp 0x14000eadf
inc ecx
add ecx, 8
jmp 0x14000eb04
mov byte [rsi + 0x34], 0
lea r8d, [rcx + 8]
cmp r8d, edx
jbe 0x14000f516
mov byte [rsi + 0x34], 0
jmp 0x14000e35a
mov rdx, qword [rsi + 0x10]
mov ecx, ecx
mov qword [rdx + rcx], rax
add dword [rsi + 0x20], 8
jmp 0x14000e35a
call fcn.14000b1d0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14000f53e
mov rax, qword [rcx + 8]
mov ecx, dword [rbx + 0x10]
xor r12d, r12d
cmp byte [rax + rcx], 0xe9
sete r12b
lea eax, [rcx + 1]
mov dword [rbx + 0x10], eax
mov edi, 4
sub edi, r12d
jmp 0x14000e7df
mov byte [rsp + 0xa8], 0
mov rax, qword [rsp + 0x78]
jmp 0x14000da4b
mov byte [rsp + 0xa8], 0
mov rax, qword [rsp + 0x78]
jmp 0x14000da73
mov byte [rsp + 0xa8], 0
mov rax, qword [rsp + 0x78]
jmp 0x14000daa9
mov byte [rsp + 0xa8], 0
mov rax, qword [rsp + 0x78]
jmp 0x14000dad1
mov byte [rsp + 0xa8], 0
mov rax, qword [rsp + 0x78]
jmp 0x14000daf9
cmp dl, 5
sete cl
xor eax, eax
jmp 0x14000f3ca
add ebp, 2
mov dword [rbx + 0x10], ebp
mov rcx, rbx
call fcn.1400341b0
mov rcx, rsi
mov rdx, rax
mov r8d, 4
jmp 0x14000ef71
add ebp, 2
mov dword [rbx + 0x10], ebp
mov rcx, rbx
call fcn.1400341b0
mov rcx, rsi
mov rdx, rax
mov r8d, 3
call fcn.14000f790
mov r12b, 1
jmp 0x14000e7f5
mov rax, qword [rsp + 0x168]
mov qword [rax], r15
cmp qword [rsp + 0xc0], 0
je 0x14000f701
cmp byte [rsp + 0xa8], 0
je 0x14000f701
mov rdi, qword [rsp + 0x78]
test rdi, rdi
je 0x14000f6ab
mov rax, qword [rsp + 0x50]
cmp qword [rax], 0
je 0x14000f701
mov edx, dword [rsp + 0x6c]
add rdx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x70]
lea r9, [rsp + 0x48]
mov qword [r9], 0
mov rcx, qword [rax]
mov qword [rsp + 0x20], r9
mov r9, rdi
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
test eax, eax
je 0x14000f701
cmp qword [rsp + 0x48], rdi
jne 0x14000f701
mov rax, qword [rsp + 0x50]
mov rcx, qword [rax]
xor edx, edx
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_FlushInstructionCache]
mov eax, dword [rsp + 0x78]
add dword [rsp + 0x6c], eax
mov qword [rsp + 0x78], 0
mov rcx, rbx
call fcn.14000c170
lea rax, [rsp + 0xd0]
mov rcx, qword [rax - 0x18]
cmp rcx, rax
jne 0x14000f723
mov rcx, qword [rsp + 0x70]
cmp rcx, r14
jne 0x14000f72b
mov rax, qword [rsp + 0x168]
cmp qword [rax], 0
je 0x14000f712
mov rcx, qword [rsp + 0xf0]
xor rcx, rsp
call fcn.14002ba50
nop
add rsp, 0xf8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rsp + 0x168]
mov qword [rax], 0
jmp 0x14000f6ab
mov dword [rsi + 0x20], 0
mov rcx, rsi
call fcn.14002d580
jmp 0x14000f6dc
call qword [sym.imp.mozglue.dll_free]
jmp 0x14000f6c4
call qword [sym.imp.mozglue.dll_free]
jmp 0x14000f6ce
inc qword [rsp + 0x78]
mov eax, dword [rsp + 0x68]
inc eax
mov dword [rsp + 0x68], eax
mov eax, eax
cmp qword [rsp + 0x60], rax
jbe 0x14000f60c
mov rax, qword [rsp + 0x78]
cmp rax, qword [rsp + 0x80]
je 0x14000f769
mov rcx, qword [rsp + 0x70]
mov byte [rcx + rax], 0x90
jmp 0x14000f733
mov edx, 1
mov rcx, rdi
call fcn.14000b3b0
test al, al
je 0x14000f781
mov rax, qword [rsp + 0x78]
jmp 0x14000f75e
mov byte [rsp + 0xa8], 0
mov eax, dword [rsp + 0x68]
jmp 0x14000f742