Function at 0x1400125c0
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 [0x140061030]
xor rax, rsp
mov qword [rsp + 0xf0], rax
mov qword [rcx], 0
cmp qword [r9], 0
je 0x140012630
cmp qword [rsi + 0x10], 0
je 0x140014d2c
cmp qword [rsi + 0x18], 0
je 0x140014d2c
cmp dword [rsi + 8], 0
je 0x140014d2c
cmp byte [rsi + 0x34], 0
je 0x140014d2c
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_EncodePointer]
mov ecx, dword [rsi + 0x20]
lea edx, [rcx + 8]
cmp qword [rsi], 0
je 0x1400137ca
cmp edx, dword [rsi + 0x30]
ja 0x1400137d2
mov rdx, qword [rsi + 0x10]
mov qword [rdx + rcx], rax
add dword [rsi + 0x20], 8
cmp qword [rsi], 0
je 0x14001268f
mov al, byte [rsi + 0x34]
cmp qword [rsi + 0x10], 0
je 0x140014d2c
cmp qword [rsi + 0x18], 0
je 0x140014d2c
cmp dword [rsi + 8], 0
je 0x140014d2c
test al, al
je 0x140014d2c
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 0x1400137dd
cmp edx, dword [rsi + 0x30]
ja 0x1400137e5
mov rdx, qword [rsi + 0x10]
mov qword [rdx + rcx], rax
add dword [rsi + 0x20], 8
cmp qword [rsi], 0
je 0x1400126fa
mov al, byte [rsi + 0x34]
cmp qword [rsi + 0x10], 0
je 0x140014d1e
cmp qword [rsi + 0x18], 0
je 0x140014d1e
cmp dword [rsi + 8], 0
je 0x140014d1e
test al, al
je 0x140014d1e
mov rcx, qword [rbx]
mov edx, dword [rbx + 0x10]
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140012715
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x48
jne 0x140012743
inc edx
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140012735
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx + 1], 0xb8
je 0x140013165
mov eax, dword [rsi + 0x20]
mov dword [rsi + 0x24], eax
mov dword [rsi + 0x28], eax
cmp byte [r15 + 0x34], 0
je 0x14001381b
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 0x140012f9f
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 0x140013328
mov rcx, r13
mov edx, ebp
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x1400127c3
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xf
je 0x14001338c
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x1400127e5
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x88
jae 0x140012d9b
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140012807
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x40
je 0x140012c5e
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140012829
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x41
je 0x140012c5e
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14001284b
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x44
je 0x1400134bd
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14001286d
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x45
je 0x140013566
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14001288f
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
mov al, byte [rax + rdx]
and al, 0xfa
cmp al, 0x48
je 0x140012962
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x1400128b4
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x66
je 0x14001364c
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x1400128d6
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
mov al, byte [rax + rdx]
and al, 0xf0
cmp al, 0x50
jne 0x140012dc2
add rdx, qword [rcx + 0x40]
mov r8d, dword [rsi + 0x20]
lea ecx, [r8 + 1]
cmp r8d, dword [rsi + 0x28]
jne 0x1400128fb
mov dword [rsi + 0x28], ecx
mov rax, qword [rsi]
test rax, rax
je 0x140013644
cmp ecx, dword [rsi + 0x30]
ja 0x140013316
cmp qword [rax], 0
je 0x140013316
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 0x140013316
cmp qword [rsp + 0x50], 1
jne 0x140013316
inc dword [rsi + 0x20]
inc dword [rbx + 0x10]
mov ebp, dword [rbx + 0x10]
cmp ebp, r14d
jb 0x140012797
jmp 0x140012f9d
add rdx, qword [rcx + 0x40]
mov r8d, dword [rsi + 0x20]
lea ecx, [r8 + 1]
cmp r8d, dword [rsi + 0x28]
jne 0x140012977
mov dword [rsi + 0x28], ecx
mov rax, qword [rsi]
test rax, rax
je 0x140013752
cmp ecx, dword [rsi + 0x30]
ja 0x14001331f
cmp qword [rax], 0
je 0x14001331f
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 0x14001331f
cmp qword [rsp + 0x50], 1
jne 0x14001331f
inc dword [rsi + 0x20]
mov edx, dword [rbx + 0x10]
inc edx
mov dword [rbx + 0x10], edx
mov rcx, qword [rbx]
call fcn.140014de0
mov rcx, qword [rbx]
mov rdx, qword [rcx + 0x10]
test rdx, rdx
je 0x1400129ea
mov rdx, qword [rcx + 8]
mov eax, dword [rbx + 0x10]
cmp byte [rdx + rax], 0x81
je 0x140012cfb
mov edx, eax
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140012a0e
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x83
je 0x140013826
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140012a30
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x83
je 0x140013850
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140012a52
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x83
je 0x140013898
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140012a74
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x2b
je 0x1400138ef
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140012a96
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x85
je 0x140013934
call fcn.140014de0
mov rbp, qword [rbx]
mov rax, qword [rbp + 0x10]
test rax, rax
je 0x140012ab8
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 0x14001395e
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, [0x140052420]
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 0x140012b6c
mov r12, qword [rbp + 8]
lea rbp, [r12 + r15]
add r12, rdi
mov r14, rbp
sub r14, r12
cmp r14, 0x21
jae 0x1400139c5
xor ecx, ecx
cmp r15, rdi
jle 0x140012b65
add rax, rcx
mov cl, byte [r12]
mov byte [rax], cl
inc r12
inc rax
cmp r12, rbp
jb 0x140012b50
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.1400153a0
mov ebp, eax
lock dec dword [rdi]
jne 0x140012bcc
mov rdi, r13
add rdi, 0xc
mov rax, qword [r13]
mov rax, qword [rax]
mov rcx, r13
call qword [0x140067010]
lock dec dword [rdi]
jne 0x140012bcc
mov rax, qword [r13]
mov rax, qword [rax + 8]
mov rcx, r13
call qword [0x140067010]
test ebp, ebp
mov r14d, dword [rsp + 0x2c]
mov r12, qword [rsp + 0x30]
js 0x1400139e6
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 0x140012c02
mov dword [rsi + 0x28], ecx
inc ebp
mov rax, qword [rsi]
test rax, rax
je 0x140013a47
cmp ecx, dword [rsi + 0x30]
ja 0x1400134b4
cmp qword [rax], 0
je 0x1400134b4
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 0x1400134b4
cmp qword [rsp + 0x50], r13
jne 0x1400134b4
add dword [rsi + 0x20], ebp
add dword [rbx + 0x10], ebp
jmp 0x140012951
add rdx, qword [rcx + 0x40]
mov r8d, dword [rsi + 0x20]
lea ecx, [r8 + 1]
cmp r8d, dword [rsi + 0x28]
jne 0x140012c73
mov dword [rsi + 0x28], ecx
mov rax, qword [rsi]
test rax, rax
je 0x140013b9a
cmp ecx, dword [rsi + 0x30]
ja 0x1400135ec
cmp qword [rax], 0
je 0x1400135ec
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 0x1400135ec
cmp qword [rsp + 0x50], 1
jne 0x1400135ec
inc dword [rsi + 0x20]
mov edx, dword [rbx + 0x10]
inc edx
mov dword [rbx + 0x10], edx
mov rcx, qword [rbx]
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140012ce6
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
mov al, byte [rax + rdx]
and al, 0xf0
cmp al, 0x50
je 0x1400128e6
jmp 0x140013ba2
lea edx, [rax + 1]
call fcn.140014de0
mov rcx, qword [rbx]
mov rdx, qword [rcx + 0x10]
test rdx, rdx
je 0x140012d13
mov rdx, qword [rcx + 8]
mov eax, dword [rbx + 0x10]
mov dl, byte [rdx + rax + 1]
and dl, 0xf8
cmp dl, 0xe8
jne 0x1400129f7
mov rdx, qword [rcx + 0x40]
add rdx, rax
mov r8d, dword [rsi + 0x20]
lea ecx, [r8 + 6]
cmp r8d, dword [rsi + 0x28]
jne 0x140012d3e
mov dword [rsi + 0x28], ecx
mov rax, qword [rsi]
test rax, rax
je 0x140013c9a
cmp ecx, dword [rsi + 0x30]
ja 0x1400135f5
cmp qword [rax], 0
je 0x1400135f5
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 0x1400135f5
cmp qword [rsp + 0x50], 6
jne 0x1400135f5
add dword [rsi + 0x20], 6
add dword [rbx + 0x10], 6
jmp 0x140012951
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140012db0
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x8b
ja 0x1400127f2
jmp 0x140013ca2
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140012dd7
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x65
je 0x140013cc1
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140012df9
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x80
je 0x140013d5b
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140012e1b
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x90
je 0x140013620
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140012e3d
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
mov al, byte [rax + rdx]
and al, 0xf8
cmp al, 0xb8
jne 0x140012e72
add rdx, qword [rcx + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x140012e5b
add eax, 5
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 5
call fcn.140015170
add dword [rbx + 0x10], 5
jmp 0x140012951
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140012e87
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x33
je 0x140013ef8
call fcn.140014de0
mov rbp, qword [rbx]
mov rax, qword [rbp + 0x10]
test rax, rax
je 0x140012ea9
mov rax, qword [rbp + 8]
mov qword [rsp + 0x30], r12
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xf6
jne 0x140013f01
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, [0x140052420]
mov qword [r13], rax
lea r12, [r13 + 0x10]
mov rcx, r12
mov rdx, rbp
mov r8d, edi
call fcn.140014fc0
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x58], r13
mov dword [rsp + 0x60], 0
mov rcx, r15
lea rdx, [rsp + 0x48]
call fcn.1400153a0
mov ebp, eax
lock dec dword [r13 + 8]
jne 0x140012f51
mov rdi, r13
add rdi, 0xc
mov rax, qword [r13]
mov rax, qword [rax]
mov rcx, r13
call qword [0x140067010]
lock dec dword [rdi]
jne 0x140012f51
mov rax, qword [r13]
mov rax, qword [rax + 8]
mov rcx, r13
call qword [0x140067010]
test ebp, ebp
mov r12, qword [rsp + 0x30]
js 0x140014d1e
cmp byte [rsp + 0x48], 0
jne 0x140014d1e
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 0x140012f8a
add eax, ebp
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, ebp
call fcn.140015170
add dword [rbx + 0x10], ebp
jmp 0x140012951
mov edx, ebp
cmp edx, 0x64
ja 0x140014d1e
test r12b, 1
jne 0x140012fcd
mov rax, qword [rbx]
mov edx, edx
add rdx, qword [rax + 0x40]
mov rcx, rsi
mov r8d, 3
call fcn.140015610
test al, al
je 0x140014d1e
cmp byte [rsi + 0x34], 0
je 0x140014d1e
cmp qword [rsi], 0
je 0x140014d1e
mov eax, dword [rsi + 0x20]
mov r15d, dword [rsi + 0x24]
mov dword [rsi + 0x2c], eax
add r15, qword [rsi + 0x18]
je 0x140014d1e
mov r9d, dword [rbx + 0x10]
test r9, r9
je 0x140013a4f
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.140015200
cmp qword [rbx + 0x10], rdi
je 0x140014cfb
cmp byte [rsp + 0xa8], 0
je 0x140014cfb
cmp byte [rsp + 0x3c], 0
jne 0x140013a5a
lea rdi, [rsp + 0x70]
mov rax, qword [rdi + 8]
cmp rax, qword [rdi + 0x10]
je 0x140013a84
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 0x140013aa3
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 0x140013ac2
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 0x140013ae1
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 0x140013b00
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 0x140013b1f
mov rcx, qword [rsp + 0x70]
mov byte [rcx + rax], 0xe3
jmp 0x140014d83
add edx, 0xa
call fcn.140014de0
mov r12, qword [rbx]
mov rax, qword [r12 + 0x10]
test rax, rax
je 0x14001317f
mov rax, qword [r12 + 8]
mov r13d, dword [rbx + 0x10]
cmp byte [rax + r13 + 0xa], 0xff
jne 0x140013b3e
lea edx, [r13 + 0xb]
mov rcx, r12
call fcn.140014de0
mov r12, qword [rbx]
mov rax, qword [r12 + 0x10]
test rax, rax
je 0x1400131ad
mov rax, qword [r12 + 8]
mov r13d, dword [rbx + 0x10]
cmp byte [rax + r13 + 0xb], 0xe0
jne 0x140013b3e
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, [0x140052420]
mov qword [rbp], rax
lea rdi, [rbp + 0x10]
mov rcx, rdi
mov rdx, r12
mov r8d, r13d
call fcn.140014fc0
mov rcx, rdi
mov edx, 8
call fcn.140014de0
mov rax, qword [rbp + 0x18]
mov r14, qword [rax]
lock dec dword [rbp + 8]
jne 0x140013241
mov rdi, rbp
add rdi, 0xc
mov rax, qword [rbp]
mov rax, qword [rax]
mov rcx, rbp
call qword [0x140067010]
lock dec dword [rdi]
jne 0x140013241
mov rax, qword [rbp]
mov rax, qword [rax + 8]
mov rcx, rbp
call qword [0x140067010]
lea rdi, [rsp + 0x50]
mov rcx, rbx
mov rdx, rdi
call fcn.14002ed10
xor ebp, ebp
cmp qword [rdi + 0x70], 0
je 0x1400132e3
cmp byte [rsp + 0xa8], 0
je 0x1400132e3
lea rdi, [rsp + 0x50]
mov rcx, rdi
mov rdx, qword [rsp + 0x160]
call fcn.14002ec10
mov rcx, rdi
call fcn.14002ec60
test al, al
je 0x140013ed3
mov eax, dword [rsi + 0x20]
lea ecx, [rax + 8]
cmp qword [rsi], 0
je 0x140013eda
cmp ecx, dword [rsi + 0x30]
ja 0x140013ee2
mov rcx, qword [rsi + 0x10]
mov qword [rcx + rax], r14
add dword [rsi + 0x20], 8
cmp qword [rsi], 0
je 0x1400132d5
mov al, byte [rsi + 0x34]
xor ebp, ebp
cmp qword [rsi + 0x10], 0
je 0x1400132e3
cmp qword [rsi + 0x18], 0
je 0x1400132e3
cmp dword [rsi + 8], 0
je 0x1400132e3
test al, al
je 0x1400132e3
mov rax, qword [rsp + 0x168]
mov qword [rax], r14
mov bpl, 1
lea rdi, [rsp + 0xb0]
mov rcx, rdi
call fcn.14002ebe0
mov rcx, qword [rdi - 0x40]
lea rax, [rsp + 0x88]
cmp rcx, rax
jne 0x140013eed
test bpl, bpl
jne 0x140014d1e
jmp 0x140012743
mov byte [rsi + 0x34], 0
jmp 0x14001294e
mov byte [rsi + 0x34], 0
jmp 0x1400129ca
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14001333d
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x90
je 0x140013368
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14001335b
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xcc
jne 0x140013477
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 0x14001279f
jmp 0x140012f9f
add rdx, qword [rcx + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x14001339d
inc eax
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 1
call fcn.140015170
mov edx, dword [rbx + 0x10]
inc edx
mov dword [rbx + 0x10], edx
mov rcx, qword [rbx]
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x1400133cb
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x1f
jne 0x1400135fe
add rdx, qword [rcx + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x1400133e9
inc eax
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 1
call fcn.140015170
mov edx, dword [rbx + 0x10]
inc edx
mov dword [rbx + 0x10], edx
mov rcx, qword [rbx]
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140013417
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
mov al, byte [rax + rdx]
and al, 0xc0
cmp al, 0x40
jne 0x140014d1e
call fcn.140014de0
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x14001343c
mov rcx, qword [rax + 8]
mov edx, dword [rbx + 0x10]
mov cl, byte [rcx + rdx]
and cl, 7
cmp cl, 4
jne 0x140014d1e
add rdx, qword [rax + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x140013460
add eax, 3
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 3
call fcn.140015170
add dword [rbx + 0x10], 3
jmp 0x1400135d6
cmp qword [rsp + 0x40], 0
je 0x140014d1e
cmp edx, 0xa
jb 0x140014d1e
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 0x140012f9f
jmp 0x140014d1e
mov byte [rsi + 0x34], 0
jmp 0x140012c56
add rdx, qword [rcx + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x1400134ce
inc eax
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 1
call fcn.140015170
mov edx, dword [rbx + 0x10]
inc edx
mov dword [rbx + 0x10], edx
mov rcx, qword [rbx]
call fcn.140014de0
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x1400134fc
mov rcx, qword [rax + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rcx + rdx], 0x89
jne 0x140014d1e
add rdx, qword [rax + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x14001351a
inc eax
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 1
call fcn.140015170
inc dword [rbx + 0x10]
mov rcx, rbx
xor edx, edx
call fcn.1400153a0
test eax, eax
js 0x140014d1e
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 0x140013556
add eax, ebp
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, ebp
call fcn.140015170
add dword [rbx + 0x10], ebp
jmp 0x1400135d6
add rdx, qword [rcx + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x140013577
inc eax
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 1
call fcn.140015170
mov edx, dword [rbx + 0x10]
inc edx
mov dword [rbx + 0x10], edx
mov rcx, qword [rbx]
call fcn.140014de0
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x1400135a5
mov rcx, qword [rax + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rcx + rdx], 0x33
jne 0x140014d1e
add rdx, qword [rax + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x1400135c4
add eax, 2
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 2
call fcn.140015170
add dword [rbx + 0x10], 2
mov r14d, dword [rsp + 0x2c]
lea r15, [rsp + 0x50]
mov rdi, qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
jmp 0x140012951
mov byte [rsi + 0x34], 0
jmp 0x140012cc6
mov byte [rsi + 0x34], 0
jmp 0x140012d92
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140013613
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 5
jne 0x1400137f0
add rdx, qword [rcx + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x140013631
inc eax
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 1
call fcn.140015170
inc dword [rbx + 0x10]
jmp 0x1400135d6
mov dword [rsi + 0x20], ecx
jmp 0x14001294e
add rdx, qword [rcx + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x14001365d
inc eax
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 1
call fcn.140015170
mov edx, dword [rbx + 0x10]
inc edx
mov dword [rbx + 0x10], edx
mov rcx, qword [rbx]
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14001368b
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x88
jb 0x14001375a
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x1400136ad
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x8b
ja 0x14001375a
inc edx
call fcn.140014de0
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x1400136d1
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 0x1400135b2
cmp r8d, 0x40
je 0x140013719
test r8d, r8d
jne 0x140014d1e
mov r9d, ecx
and r9d, 6
cmp r9d, 4
jne 0x1400135b2
cmp r8d, 0x40
jne 0x140014d1e
add rdx, qword [rax + 0x40]
and ecx, 7
mov eax, dword [rsi + 0x20]
mov r8d, dword [rsi + 0x28]
cmp ecx, 4
jne 0x140014203
cmp eax, r8d
jne 0x14001373b
add eax, 4
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 4
call fcn.140015170
add dword [rbx + 0x10], 4
jmp 0x1400135d6
mov dword [rsi + 0x20], ecx
jmp 0x1400129ca
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14001376f
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x44
jne 0x1400135d6
inc edx
call fcn.140014de0
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x140013793
mov rcx, qword [rax + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rcx + rdx + 1], 0x89
jne 0x1400135d6
add rdx, qword [rax + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x1400137b3
add eax, 2
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 2
call fcn.140015170
add dword [rbx + 0x10], 2
jmp 0x14001352b
mov dword [rsi + 0x20], edx
jmp 0x14001268f
mov byte [rsi + 0x34], 0
xor eax, eax
jmp 0x140012667
mov dword [rsi + 0x20], edx
jmp 0x1400126fa
mov byte [rsi + 0x34], 0
xor eax, eax
jmp 0x1400126d2
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140013805
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x10
jne 0x140013d96
add rdx, qword [rcx + 0x40]
jmp 0x14001350d
int3
inc edx
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14001383d
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
mov al, byte [rax + rdx + 1]
and al, 0xf8
cmp al, 0xe8
jne 0x140012a1b
jmp 0x140013878
inc edx
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140013867
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
mov al, byte [rax + rdx + 1]
and al, 0xf8
cmp al, 0xc0
jne 0x140012a3d
mov rax, qword [rcx + 0x40]
add rax, rdx
mov ecx, dword [rsi + 0x20]
cmp ecx, dword [rsi + 0x28]
jne 0x14001388d
add ecx, 3
mov dword [rsi + 0x28], ecx
mov rcx, rsi
mov rdx, rax
jmp 0x140013463
inc edx
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x1400138af
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
mov al, byte [rax + rdx + 1]
and al, 0xf8
cmp al, 0x60
jne 0x140012a5f
mov rax, qword [rcx + 0x40]
add rax, rdx
mov ecx, dword [rsi + 0x20]
cmp ecx, dword [rsi + 0x28]
jne 0x1400138d5
add ecx, 5
mov dword [rsi + 0x28], ecx
mov rcx, rsi
mov rdx, rax
mov r8d, 5
call fcn.140015170
add dword [rbx + 0x10], 5
jmp 0x1400135d6
inc edx
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140013906
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx + 1], 0xc0
jb 0x140012a81
mov rax, qword [rcx + 0x40]
add rax, rdx
mov ecx, dword [rsi + 0x20]
cmp ecx, dword [rsi + 0x28]
jne 0x140013929
add ecx, 2
mov dword [rsi + 0x28], ecx
mov rcx, rsi
mov rdx, rax
jmp 0x1400135c7
inc edx
call fcn.140014de0
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x14001394b
mov rcx, qword [rax + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rcx + rdx + 1], 0xc0
jae 0x1400135b2
jmp 0x140014d1e
mov rcx, rbp
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140013976
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
mov al, byte [rax + rdx]
and al, 0xf8
cmp al, 0xb8
jne 0x140013e63
add rdx, qword [rcx + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x140013998
add eax, 9
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 9
call fcn.140015170
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 0x140012951
lea rcx, [r13 + 0x18]
mov rdx, r14
call fcn.140011fc0
test al, al
je 0x140012b6c
mov rax, qword [r13 + 0x18]
mov rcx, qword [r13 + 0x20]
jmp 0x140012b48
cmp ebp, 0xfffffffe
jne 0x140014d1e
add dword [rbx + 0x10], 2
mov rcx, rbx
call fcn.1400332e0
mov r8b, byte [rsp + 0x48]
test r8b, r8b
je 0x14001410f
cmp qword [rsi], 0
mov ecx, dword [rsi + 0x20]
je 0x140014149
mov edx, dword [rsi + 0x30]
cmp ecx, edx
jae 0x1400141c2
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 0x14001414b
mov edx, dword [rsi + 0x30]
jmp 0x1400141c6
mov dword [rsi + 0x20], ecx
jmp 0x140012c56
int3
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax]
lea r8, [rsp + 0x50]
mov rdx, r15
mov r9, qword [rsp + 0x160]
call fcn.140033410
test al, al
jne 0x140014c5c
jmp 0x140014cfb
mov edx, 1
mov rcx, rdi
call fcn.140011fc0
test al, al
je 0x140014baf
mov rax, qword [rsp + 0x78]
jmp 0x140013081
mov edx, 1
mov rcx, rdi
call fcn.140011fc0
test al, al
je 0x140014bc1
mov rax, qword [rsp + 0x78]
jmp 0x1400130a9
mov edx, 8
mov rcx, rdi
call fcn.140011fc0
test al, al
je 0x140014bd3
mov rax, qword [rsp + 0x78]
jmp 0x1400130d5
mov edx, 1
mov rcx, rdi
call fcn.140011fc0
test al, al
je 0x140014be5
mov rax, qword [rsp + 0x78]
jmp 0x140013107
mov edx, 1
mov rcx, rdi
call fcn.140011fc0
test al, al
je 0x140014bf7
mov rax, qword [rsp + 0x78]
jmp 0x14001312f
mov edx, 1
mov rcx, rdi
call fcn.140011fc0
test al, al
je 0x140014dd1
mov rax, qword [rsp + 0x78]
jmp 0x140013157
add r13d, 0xa
mov rcx, r12
mov edx, r13d
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140013b5d
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx + 0xa], 0x50
jne 0x140012743
add edx, 0xb
call fcn.140014de0
mov r12, qword [rbx]
mov rax, qword [r12 + 0x10]
test rax, rax
je 0x140013b85
mov rax, qword [r12 + 8]
mov r13d, dword [rbx + 0x10]
cmp byte [rax + r13 + 0xb], 0xc3
jne 0x140012743
jmp 0x1400131bd
mov dword [rsi + 0x20], ecx
jmp 0x140012cc6
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140013bb7
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xb8
jb 0x140013be2
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140013bd5
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xbf
jbe 0x1400138c0
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140013bf7
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x8b
jne 0x140013c25
inc edx
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140013c17
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx + 1], 0xc0
jae 0x140013914
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140013c3a
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xf7
jne 0x140014d1e
inc edx
call fcn.140014de0
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x140013c5e
mov rcx, qword [rax + 8]
mov edx, dword [rbx + 0x10]
mov cl, byte [rcx + rdx + 1]
and cl, 0xf8
cmp cl, 0xc0
jne 0x140014d1e
add rdx, qword [rax + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x140013c83
add eax, 6
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 6
call fcn.140015170
add dword [rbx + 0x10], 6
jmp 0x1400135d6
mov dword [rsi + 0x20], ecx
jmp 0x140012d92
mov rax, qword [rcx + 0x40]
add rax, rdx
mov ecx, dword [rsi + 0x20]
cmp ecx, dword [rsi + 0x28]
jne 0x140013cb6
inc ecx
mov dword [rsi + 0x28], ecx
mov rcx, rsi
mov rdx, rax
jmp 0x14001351d
inc edx
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140013cd8
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx + 1], 0x48
jne 0x140014d1e
add edx, 2
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140013cfe
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx + 2], 0x88
jb 0x140014d1e
add edx, 2
call fcn.140014de0
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x140013d24
mov rcx, qword [rax + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rcx + rdx + 2], 0x8b
ja 0x140014d1e
add rdx, qword [rax + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x140013d44
add eax, 3
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 3
call fcn.140015170
add dword [rbx + 0x10], 3
jmp 0x14001352b
inc edx
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140013d72
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx + 1], 0x3d
je 0x1400145e9
mov r14d, dword [rsp + 0x2c]
lea r15, [rsp + 0x50]
mov rdi, qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
jmp 0x140012e06
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140013dab
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x11
je 0x140013812
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140013dcd
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x83
jb 0x140014d1e
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140013def
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x85
ja 0x140014d1e
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140013e11
mov rax, qword [rcx + 8]
mov ecx, dword [rbx + 0x10]
movzx eax, byte [rax + rcx]
lea rdx, [0x140054bb8]
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.1400332e0
mov rcx, rsi
mov rdx, rax
mov r8d, edi
call fcn.140015610
test al, al
mov r14d, dword [rsp + 0x2c]
lea r15, [rsp + 0x50]
mov rdi, qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
jne 0x140012951
jmp 0x140014d1e
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140013e78
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xc7
jne 0x140013fe6
inc edx
call fcn.140014de0
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x140013e9c
mov rcx, qword [rax + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rcx + rdx + 1], 0x44
jne 0x140014d1e
add rdx, qword [rax + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x140013ebc
add eax, 8
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 8
call fcn.140015170
add dword [rbx + 0x10], 8
jmp 0x1400139aa
xor ebp, ebp
jmp 0x1400132e3
mov dword [rsi + 0x20], ecx
jmp 0x1400132d5
mov byte [rsi + 0x34], 0
xor eax, eax
jmp 0x1400132bb
call qword [sym.imp.mozglue.dll_free]
jmp 0x140013308
add rdx, qword [rcx + 0x40]
jmp 0x1400135b6
mov rcx, rbp
call fcn.140014de0
mov rbp, qword [rbx]
mov rax, qword [rbp + 0x10]
test rax, rax
je 0x140013f19
mov rax, qword [rbp + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x85
jne 0x14001415c
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, [0x140052420]
mov qword [r13], rax
lea r12, [r13 + 0x10]
mov rcx, r12
mov rdx, rbp
mov r8d, edi
call fcn.140014fc0
lea rcx, [rsp + 0x50]
mov qword [rcx], r12
mov qword [rcx + 8], r13
mov dword [rcx + 0x10], 0
xor edx, edx
call fcn.1400153a0
mov ebp, eax
lock dec dword [r13 + 8]
jne 0x140013fb2
mov rdi, r13
add rdi, 0xc
mov rax, qword [r13]
mov rax, qword [rax]
mov rcx, r13
call qword [0x140067010]
lock dec dword [rdi]
jne 0x140013fb2
mov rax, qword [r13]
mov rax, qword [rax + 8]
mov rcx, r13
call qword [0x140067010]
test ebp, ebp
js 0x140014d1e
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 0x140013fd3
add eax, ebp
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, ebp
call fcn.140015170
add dword [rbx + 0x10], ebp
jmp 0x1400139aa
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140013ffb
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xff
je 0x1400142ac
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14001401d
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x8d
jne 0x14001441d
inc edx
call fcn.140014de0
mov r14, qword [rbx]
mov rax, qword [r14 + 0x10]
test rax, rax
je 0x140014041
mov rax, qword [r14 + 8]
mov ebp, dword [rbx + 0x10]
cmp byte [rax + rbp + 1], 0x3f
ja 0x140014077
lea edx, [rbp + 1]
mov rcx, r14
call fcn.140014de0
mov r14, qword [rbx]
mov rax, qword [r14 + 0x10]
test rax, rax
je 0x140014066
mov rax, qword [r14 + 8]
mov ebp, dword [rbx + 0x10]
mov al, byte [rax + rbp + 1]
and al, 7
cmp al, 5
je 0x140014af0
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, [0x140052420]
mov qword [r13], rax
lea rdi, [r13 + 0x10]
mov rcx, rdi
mov rdx, r14
mov r8d, ebp
call fcn.140014fc0
lea rcx, [rsp + 0x50]
mov qword [rcx], rdi
mov qword [rcx + 8], r13
mov dword [rcx + 0x10], 0
xor edx, edx
call fcn.1400153a0
mov ebp, eax
lock dec dword [r13 + 8]
jne 0x140013fba
mov rdi, r13
add rdi, 0xc
mov rax, qword [r13]
mov rax, qword [rax]
mov rcx, r13
call qword [0x140067010]
lock dec dword [rdi]
jne 0x140013fba
mov rax, qword [r13]
mov rax, qword [rax + 8]
mov rcx, r13
call qword [0x140067010]
jmp 0x140013fba
cmp qword [rsi], 0
mov ecx, dword [rsi + 0x20]
je 0x140014b46
mov edx, dword [rsi + 0x30]
cmp ecx, edx
jae 0x140014b50
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 0x140014b48
mov edx, dword [rsi + 0x30]
jmp 0x140014b54
inc ecx
add ecx, 8
inc ecx
inc ecx
inc ecx
mov dword [rsi + 0x20], ecx
jmp 0x1400139aa
mov rcx, rbp
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140014174
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xd1
jne 0x140014211
inc edx
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140014198
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx + 1], 0xc0
jb 0x140014211
mov rax, qword [rcx + 0x40]
add rax, rdx
mov ecx, dword [rsi + 0x20]
cmp ecx, dword [rsi + 0x28]
jne 0x1400141b7
add ecx, 2
mov dword [rsi + 0x28], ecx
mov rcx, rsi
mov rdx, rax
jmp 0x140014479
mov byte [rsi + 0x34], 0
lea r8d, [rcx + 8]
cmp r8d, edx
jbe 0x140014287
mov byte [rsi + 0x34], 0
cmp ecx, edx
jae 0x140014397
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 0x140014150
mov edx, dword [rsi + 0x30]
jmp 0x14001439b
cmp eax, r8d
je 0x14001345a
jmp 0x140013460
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140014226
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x83
jne 0x1400143d4
inc edx
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14001424a
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx + 1], 0xc0
jb 0x1400143d4
mov rax, qword [rcx + 0x40]
add rax, rdx
mov ecx, dword [rsi + 0x20]
cmp ecx, dword [rsi + 0x28]
jne 0x14001426d
add ecx, 3
mov dword [rsi + 0x28], ecx
mov rcx, rsi
mov rdx, rax
mov r8d, 3
call fcn.140015170
add dword [rbx + 0x10], 3
jmp 0x1400139aa
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 0x14001414e
mov edx, dword [rsi + 0x30]
jmp 0x1400141d7
inc edx
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x1400142c3
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx + 1], 0x3f
ja 0x140014d1e
inc edx
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x1400142e8
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
mov al, byte [rax + rdx + 1]
and al, 7
cmp al, 5
jne 0x140014d1e
inc edx
call fcn.140014de0
mov rcx, qword [rbx]
mov rdx, qword [rcx + 0x10]
test rdx, rdx
je 0x140014310
mov rdx, qword [rcx + 8]
mov eax, dword [rbx + 0x10]
mov dl, byte [rdx + rax + 1]
and dl, 0x38
cmp dl, 0x20
je 0x14001434a
lea edx, [rax + 1]
call fcn.140014de0
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x140014337
mov rcx, qword [rax + 8]
mov eax, dword [rbx + 0x10]
mov cl, byte [rcx + rax + 1]
and cl, 0x38
cmp cl, 0x10
jne 0x140014d1e
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.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140014370
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.140033330
jmp 0x140013e37
mov byte [rsi + 0x34], 0
cmp ecx, edx
jae 0x14001448d
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 0x140014152
mov dl, byte [rsp + 0x48]
lea eax, [rdx*8]
or al, dl
mov edx, dword [rsi + 0x30]
jmp 0x1400144a1
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x1400143e9
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xc3
jne 0x1400144ba
add rdx, qword [rcx + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x140014407
inc eax
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 1
call fcn.140015170
inc dword [rbx + 0x10]
jmp 0x1400139aa
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140014432
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x63
jne 0x140014d1e
inc edx
call fcn.140014de0
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x140014456
mov rcx, qword [rax + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rcx + rdx + 1], 0xc0
jb 0x140014d1e
add rdx, qword [rax + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x140014476
add eax, 2
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, 2
call fcn.140015170
add dword [rbx + 0x10], 2
jmp 0x1400139aa
mov byte [rsi + 0x34], 0
mov r8b, byte [rsp + 0x48]
lea eax, [r8*8]
or al, r8b
cmp ecx, edx
jae 0x140014b5d
mov rdx, qword [rsi + 0x10]
mov ecx, ecx
mov byte [rdx + rcx], al
inc dword [rsi + 0x20]
jmp 0x1400139aa
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x1400144cf
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xcc
je 0x1400143f6
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x1400144f1
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xe8
je 0x140014b79
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140014513
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xe9
je 0x140014b79
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140014535
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x73
jb 0x14001466a
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140014557
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x75
ja 0x14001466a
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140014579
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
movzx eax, byte [rax + rdx]
lea r8, [0x140054bb8]
mov ebp, dword [r8 + rax*4 - 0x1cc]
inc edx
call fcn.140014de0
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x1400145a6
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.140015610
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 0x140012951
jmp 0x140014d1e
lea eax, [rdx + 2]
mov dword [rbx + 0x10], eax
cmp qword [rsi], 0
mov eax, dword [rsi + 0x20]
jne 0x140014641
inc eax
inc eax
mov dword [rsi + 0x20], eax
mov rcx, rbx
call fcn.1400332e0
cmp qword [rsi], 0
mov ecx, dword [rsi + 0x20]
je 0x140014705
mov edx, dword [rsi + 0x30]
cmp ecx, edx
jae 0x140014771
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 0x140014707
mov edx, dword [rsi + 0x30]
jmp 0x140014775
mov ecx, dword [rsi + 0x30]
cmp eax, ecx
jae 0x1400147fa
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 0x1400145fa
mov ecx, dword [rsi + 0x30]
jmp 0x1400147fe
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14001467f
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0xff
je 0x140014936
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x1400146a1
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
cmp byte [rax + rdx], 0x83
jne 0x14001483f
inc edx
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x1400146c5
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
mov al, byte [rax + rdx + 1]
and al, 0xf8
cmp al, 0x60
jne 0x14001483f
mov rax, qword [rcx + 0x40]
add rax, rdx
mov ecx, dword [rsi + 0x20]
cmp ecx, dword [rsi + 0x28]
jne 0x1400146eb
add ecx, 5
mov dword [rsi + 0x28], ecx
mov rcx, rsi
mov rdx, rax
mov r8d, 5
call fcn.140015170
add dword [rbx + 0x10], 5
jmp 0x1400139aa
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 0x140014729
inc ecx
mov dword [rsi + 0x28], ecx
mov rcx, rsi
mov r8d, 1
call fcn.140015170
inc dword [rbx + 0x10]
cmp qword [rsi], 0
mov eax, dword [rsi + 0x20]
je 0x140014765
mov ecx, dword [rsi + 0x30]
cmp eax, ecx
jae 0x14001479a
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 0x140014767
mov ecx, dword [rsi + 0x30]
jmp 0x14001479e
inc eax
inc eax
mov dword [rsi + 0x20], eax
jmp 0x1400135d6
mov byte [rsi + 0x34], 0
cmp ecx, edx
jae 0x1400147b4
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 0x140014709
mov edx, dword [rsi + 0x30]
jmp 0x1400147b8
mov byte [rsi + 0x34], 0
cmp eax, ecx
jae 0x1400147f1
mov rcx, qword [rsi + 0x10]
mov eax, eax
mov byte [rcx + rax], 0x5b
inc dword [rsi + 0x20]
jmp 0x1400135d6
mov byte [rsi + 0x34], 0
lea r8d, [rcx + 8]
cmp r8d, edx
jbe 0x140014814
mov byte [rsi + 0x34], 0
cmp ecx, edx
jae 0x140014906
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 0x14001470e
mov edx, dword [rsi + 0x30]
jmp 0x14001490a
mov byte [rsi + 0x34], 0
jmp 0x1400135d6
mov byte [rsi + 0x34], 0
cmp eax, ecx
jae 0x140014836
mov rcx, qword [rsi + 0x10]
mov eax, eax
mov byte [rcx + rax], 0x53
inc dword [rsi + 0x20]
jmp 0x1400145ff
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 0x14001470c
mov edx, dword [rsi + 0x30]
jmp 0x1400147c5
mov byte [rsi + 0x34], 0
jmp 0x1400145ff
call fcn.140014de0
mov r14, qword [rbx]
mov rax, qword [r14 + 0x10]
test rax, rax
je 0x140014854
mov rax, qword [r14 + 8]
mov ebp, dword [rbx + 0x10]
cmp byte [rax + rbp], 0xc6
jne 0x140014d1e
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, [0x140052420]
mov qword [r13], rax
lea rdi, [r13 + 0x10]
mov rcx, rdi
mov rdx, r14
mov r8d, ebp
call fcn.140014fc0
lea rcx, [rsp + 0x50]
mov qword [rcx], rdi
mov qword [rcx + 8], r13
mov dword [rcx + 0x10], 0
xor edx, edx
call fcn.1400153a0
mov ebp, eax
lock dec dword [r13 + 8]
jne 0x1400148ec
mov rdi, r13
add rdi, 0xc
mov rax, qword [r13]
mov rax, qword [rax]
mov rcx, r13
call qword [0x140067010]
lock dec dword [rdi]
jne 0x1400148ec
mov rax, qword [r13]
mov rax, qword [rax + 8]
mov rcx, r13
call qword [0x140067010]
test ebp, ebp
js 0x140014d1e
mov rax, qword [rbx]
mov edx, dword [rbx + 0x10]
add rdx, qword [rax + 0x40]
add ebp, 2
jmp 0x140013fc6
mov byte [rsi + 0x34], 0
cmp ecx, edx
jae 0x1400149d5
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 0x140014710
mov edx, dword [rsi + 0x30]
jmp 0x1400149d9
inc edx
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14001494d
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
mov r12b, byte [rax + rdx + 1]
inc edx
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14001496c
mov rax, qword [rcx + 8]
mov edx, dword [rbx + 0x10]
movzx edi, byte [rax + rdx + 1]
inc edx
call fcn.140014de0
mov r14, qword [rbx]
mov rax, qword [r14 + 0x10]
test rax, rax
je 0x14001498b
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 0x1400149f8
cmp edi, 6
ja 0x140014c09
mov eax, 0x47
bt eax, edi
jae 0x140014c09
add rbp, qword [r14 + 0x40]
mov eax, dword [rsi + 0x20]
cmp eax, dword [rsi + 0x28]
jne 0x1400149ca
add eax, 2
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov rdx, rbp
jmp 0x140014479
mov byte [rsi + 0x34], 0
cmp ecx, edx
jae 0x1400149ef
mov rax, qword [rsi + 0x10]
mov ecx, ecx
mov byte [rax + rcx], 0x3b
mov ecx, dword [rsi + 0x20]
jmp 0x140014710
mov byte [rsi + 0x34], 0
jmp 0x140014715
cmp r12b, 0x40
setb al
cmp dl, 5
sete cl
cmp r12b, 0x3f
ja 0x140014a1a
cmp dil, 2
jne 0x140014a1a
cmp dl, 5
je 0x140014c16
cmp dil, 4
jne 0x140014d1e
and al, cl
cmp al, 1
je 0x140014c35
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, [0x140052420]
mov qword [r13], rax
lea rdi, [r13 + 0x10]
mov rcx, rdi
mov rdx, r14
mov r8d, ebp
call fcn.140014fc0
lea rcx, [rsp + 0x50]
mov qword [rcx], rdi
mov qword [rcx + 8], r13
mov dword [rcx + 0x10], 0
xor edx, edx
call fcn.1400153a0
mov ebp, eax
lock dec dword [r13 + 8]
jne 0x140014ab9
mov rdi, r13
add rdi, 0xc
mov rax, qword [r13]
mov rax, qword [rax]
mov rcx, r13
call qword [0x140067010]
lock dec dword [rdi]
jne 0x140014ab9
mov rax, qword [r13]
mov rax, qword [rax + 8]
mov rcx, r13
call qword [0x140067010]
test ebp, ebp
js 0x140014d1e
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 0x140014ada
add eax, ebp
mov dword [rsi + 0x28], eax
mov rcx, rsi
mov r8d, ebp
call fcn.140015170
add dword [rbx + 0x10], ebp
mov r12b, 1
jmp 0x1400135d6
lea edx, [rbp + 1]
mov rcx, r14
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140014b0b
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.1400332e0
cmp qword [rsi], 0
mov ecx, dword [rsi + 0x20]
je 0x140014b46
mov edx, dword [rsi + 0x30]
cmp ecx, edx
jae 0x140014b50
shr dil, 3
or dil, 0xb8
mov rdx, qword [rsi + 0x10]
mov byte [rdx + rcx], dil
jmp 0x14001412f
inc ecx
add ecx, 8
jmp 0x140014154
mov byte [rsi + 0x34], 0
lea r8d, [rcx + 8]
cmp r8d, edx
jbe 0x140014b66
mov byte [rsi + 0x34], 0
jmp 0x1400139aa
mov rdx, qword [rsi + 0x10]
mov ecx, ecx
mov qword [rdx + rcx], rax
add dword [rsi + 0x20], 8
jmp 0x1400139aa
call fcn.140014de0
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140014b8e
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 0x140013e2f
mov byte [rsp + 0xa8], 0
mov rax, qword [rsp + 0x78]
jmp 0x14001309b
mov byte [rsp + 0xa8], 0
mov rax, qword [rsp + 0x78]
jmp 0x1400130c3
mov byte [rsp + 0xa8], 0
mov rax, qword [rsp + 0x78]
jmp 0x1400130f9
mov byte [rsp + 0xa8], 0
mov rax, qword [rsp + 0x78]
jmp 0x140013121
mov byte [rsp + 0xa8], 0
mov rax, qword [rsp + 0x78]
jmp 0x140013149
cmp dl, 5
sete cl
xor eax, eax
jmp 0x140014a1a
add ebp, 2
mov dword [rbx + 0x10], ebp
mov rcx, rbx
call fcn.140033330
mov rcx, rsi
mov rdx, rax
mov r8d, 4
jmp 0x1400145c1
add ebp, 2
mov dword [rbx + 0x10], ebp
mov rcx, rbx
call fcn.140033330
mov rcx, rsi
mov rdx, rax
mov r8d, 3
call fcn.140015610
mov r12b, 1
jmp 0x140013e45
mov rax, qword [rsp + 0x168]
mov qword [rax], r15
cmp qword [rsp + 0xc0], 0
je 0x140014d51
cmp byte [rsp + 0xa8], 0
je 0x140014d51
mov rdi, qword [rsp + 0x78]
test rdi, rdi
je 0x140014cfb
mov rax, qword [rsp + 0x50]
cmp qword [rax], 0
je 0x140014d51
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 0x140014d51
cmp qword [rsp + 0x48], rdi
jne 0x140014d51
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.140015070
lea rax, [rsp + 0xd0]
mov rcx, qword [rax - 0x18]
cmp rcx, rax
jne 0x140014d73
mov rcx, qword [rsp + 0x70]
cmp rcx, r14
jne 0x140014d7b
mov rax, qword [rsp + 0x168]
cmp qword [rax], 0
je 0x140014d62
mov rcx, qword [rsp + 0xf0]
xor rcx, rsp
call fcn.14002b660
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 0x140014cfb
mov dword [rsi + 0x20], 0
mov rcx, rsi
call fcn.140033830
jmp 0x140014d2c
call qword [sym.imp.mozglue.dll_free]
jmp 0x140014d14
call qword [sym.imp.mozglue.dll_free]
jmp 0x140014d1e
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 0x140014c5c
mov rax, qword [rsp + 0x78]
cmp rax, qword [rsp + 0x80]
je 0x140014db9
mov rcx, qword [rsp + 0x70]
mov byte [rcx + rax], 0x90
jmp 0x140014d83
mov edx, 1
mov rcx, rdi
call fcn.140011fc0
test al, al
je 0x140014dd1
mov rax, qword [rsp + 0x78]
jmp 0x140014dae
mov byte [rsp + 0xa8], 0
mov eax, dword [rsp + 0x68]
jmp 0x140014d92