Function at 0x18001a394
Capabilities:
Encode data using base64
Encrypt data using speck

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x58]
sub rsp, 0x130
mov rax, qword [0x18004ed78]
xor rax, rsp
mov qword [rbp + 0x28], rax
movzx eax, word [0x18004e804]
xor ebx, ebx
movzx eax, word [0x18004e850]
mov r10d, reloc.mozglue.dll_export_full.dll_Ordinal_116
mov word [rsp + 0x44], ax
mov r14, rcx
mov edi, dword [0x18004e838]
mov r9, qword [0x18004e840]
movsx rax, word [0x18004e810]
movsx r12d, byte [0x18004e7e6]
mov qword [rbp - 0x80], rax
mov eax, 0xffff8b20
mov word [rsp + 0x40], ax
mov eax, 0xb3
mov word [rsp + 0x34], ax
movzx eax, byte [0x18004e6ff]
mov dword [rsp + 0x48], eax
mov eax, dword [0x18004e838]
movzx esi, byte [0x18004e73b]
mov byte [rsp + 0x30], al
mov eax, dword [0x18004e7ec]
mov dword [rsp + 0x4c], 0x48ab
mov byte [rsp + 0x32], 0xa2
mov r13, qword [0x18004e7d0]
mov dword [rsp + 0x58], 0x73f9c927
mov qword [rbp - 0x48], rax
movabs rax, 0xe8fcd080151e5
mov qword [rbp - 0x50], rax
mov al, byte [0x18004e83c]
mov byte [rsp + 0x31], 0x32
mov qword [rsp + 0x70], 0xfe1b
mov byte [rsp + 0x38], 0x1e
mov byte [rsp + 0x38], al
movsx rax, word [0x18004e810]
mov qword [rbp - 0x28], rax
movzx eax, word [0x18004e800]
mov byte [rsp + 0x38], al
mov byte [rsp + 0x38], 0x4d
mov al, byte [0x18004e7e7]
movzx eax, byte [0x18004e73b]
mov word [rsp + 0x38], ax
mov eax, 0x49c6
mov byte [rsp + 0x38], 7
mov word [rsp + 0x38], ax
movzx eax, word [0x18004e864]
mov word [rsp + 0x38], ax
movsx eax, byte [0x18004e7e7]
mov dword [rsp + 0x60], eax
movzx eax, word [0x18004e850]
mov word [rsp + 0x38], ax
movzx eax, byte [0x18004e6fe]
mov word [rsp + 0x38], ax
mov dword [rsp + 0x60], 0xabc1
movsx eax, byte [0x18004e726]
mov word [rsp + 0x38], ax
mov dword [rsp + 0x60], 0x2ba65b26
mov rax, qword [0x18004e840]
movzx eax, word [0x18004e7e8]
cmp byte [0x18004e7e6], bl
mov eax, dword [0x1807446d0]
mov dword [rsp + 0x54], eax
mov qword [rbp - 0x30], rdx
mov qword [rbp - 0x68], r9
mov dword [rsp + 0x7c], r12d
mov dword [rbp - 0x60], r10d
je 0x18001a561
cmp dword [0x18004e83c], ebx
je 0x18001a5b0
movsx ecx, word [rsp + 0x40]
movsx eax, word [rsp + 0x34]
not ecx
movsx ecx, cl
movsx edx, al
imul edx, ecx
mov byte [rsp + 0x30], dl
jmp 0x18001a5b0
movsx edx, word [0x18004e7f4]
mov r8d, ebx
movzx eax, byte [0x18004e6ff]
mov ecx, ebx
cmp eax, edx
movzx eax, byte [0x18004e773]
setne r8b
cmp r9, rax
setae cl
cmp r8d, ecx
jne 0x18001a5b0
movzx eax, byte [0x18004e73b]
test di, di
jne 0x18001a59c
mov eax, dword [rsp + 0x58]
mov dword [0x18004e774], eax
mov rax, qword [0x18004e820]
mov qword [0x1808a1d38], rax
mov eax, dword [rsp + 0x54]
add eax, 0x2e2
mov dword [rsp + 0x60], eax
movsx ecx, byte [rsp + 0x31]
mov eax, dword [0x18004e774]
cmp eax, ecx
jae 0x18001a60f
mov cl, 0xbf
call fcn.1800233e4
mov r9, qword [rbp - 0x68]
mov r10d, reloc.mozglue.dll_export_full.dll_Ordinal_116
movzx eax, al
mov dword [0x18004e7e0], eax
test eax, eax
je 0x18001a619
mov eax, dword [rsp + 0x48]
movsx eax, byte [rsp + 0x30]
imul ecx, eax, 0x47
mov word [0x18004e800], cx
movsx eax, word [rsp + 0x44]
add eax, 0x5262
cdqe
mov qword [rbp - 0x50], rax
jmp 0x18001a619
mov eax, dword [rsp + 0x4c]
mov esi, dword [0x1807446d0]
mov eax, dword [rsp + 0x54]
mov ecx, 0x80ff
add eax, 0x232
mov dword [rbp - 0x38], eax
mov dword [rsp + 0x4c], 0xb8dbc85c
mov eax, dword [rsp + 0x54]
add eax, 0xad
mov dword [rbp - 0x74], eax
mov r15d, dword [0x18004e868]
mov eax, dword [0x1807446d0]
not r15d
mov dword [rsp + 0x54], eax
and r15d, 0x831d
movzx edx, word [rsp + 0x40]
imul edx, ecx
mov dword [0x18004e83c], ebx
mov word [0x18004e804], dx
movsx ecx, word [rsp + 0x40]
and ecx, dword [0x18004e83c]
mov r8, qword [rsp + 0x70]
not ecx
movsxd rax, dword [0x18004e7d8]
movsxd rdx, ecx
sub r8, rax
mov ecx, dword [0x18004e858]
xor r8, rdx
movzx eax, word [0x18004e814]
add ecx, eax
movsx rax, word [0x18004e810]
movsxd rdx, ecx
xor rax, r13
cmp rax, rdx
mov rcx, rbx
sete cl
add rcx, r8
sete byte [0x18004e7de]
cmp dword [0x18004e83c], ebx
jne 0x18001a6e3
mov al, byte [0x180922164]
movzx r10d, si
mov ecx, 0x42e4
mov byte [rsp + 0x30], al
xor r10w, cx
mov dword [rbp - 0x60], r10d
mov eax, dword [rsp + 0x54]
mov edx, ebx
add eax, 0x1dd
mov dword [rbp - 0x58], eax
movsx eax, di
cmp dword [0x18004e84c], eax
mov eax, ebx
setl dl
cmp dword [0x18004e84c], 0x46
setl al
cmp edx, eax
ja 0x18001a750
movzx eax, word [rsp + 0x34]
mov edx, ebx
mov ecx, ebx
mov eax, r15d
cmp qword [0x18004e820], rax
mov dl, 1
setne cl
test edx, ecx
je 0x18001a750
movzx eax, word [0x18004e818]
mov ecx, 0x3d59
sub ax, cx
mov word [0x18004e804], ax
movsx eax, word [rsp + 0x44]
sub eax, 0x75c1
cdqe
mov qword [rsp + 0x70], rax
mov eax, dword [rsp + 0x54]
add eax, 0x101
mov dword [rsp + 0x3c], eax
movsx eax, byte [0x18004e7e7]
mov edx, dword [0x18004e828]
and edx, eax
movzx eax, word [0x1807446d0]
add dword [0x18004e828], edx
mov word [0x18004e81c], ax
mov eax, dword [rsp + 0x54]
add eax, 0xdd
mov dword [rsp + 0x60], eax
mov eax, dword [0x1807446d0]
mov dword [rsp + 0x54], eax
mov eax, dword [rsp + 0x54]
add eax, 0x3d7
mov dword [rsp + 0x5c], eax
movzx eax, word [rsp + 0x44]
mov eax, dword [rsp + 0x58]
movzx edx, byte [0x18004e6fe]
mov eax, 4
mov qword [0x18004e840], rax
add rdx, 0xc6
movsx eax, byte [0x18004e7cf]
mov ecx, dword [0x18004e838]
sub ecx, eax
mov qword [rbp - 0x28], rdx
mov dword [0x18004e838], ecx
mov rax, qword [0x18004e840]
test rax, rax
je 0x18001a91b
sub rax, 1
je 0x18001a90d
sub rax, 1
je 0x18001a88b
sub rax, 1
je 0x18001a834
cmp rax, 1
jne 0x18001a927
mov ecx, dword [0x18004e858]
movzx eax, word [rsp + 0x44]
imul ecx, r15d
and al, dl
xor al, cl
xor al, 0xf7
mov byte [0x18004e7e7], al
jmp 0x18001a927
movzx eax, byte [0x18004e6ff]
movsx ecx, word [rsp + 0x40]
imul ecx, eax
mov rax, qword [rbp - 0x50]
mov r8d, dword [0x18004e828]
not rax
or r8, rax
not r8
movsxd rdx, ecx
movsx ecx, byte [0x18004e726]
add r8, rdx
sub ecx, dword [0x18004e7d8]
mov rax, qword [rsp + 0x70]
movsxd rdx, ecx
mov ecx, ebx
imul rdx, r8
imul rax, rdx
test rax, rax
sete cl
mov dword [rsp + 0x48], ecx
jmp 0x18001a927
movsx ecx, byte [0x18004e7e7]
mov r8d, ebx
mov eax, dword [0x18004e84c]
not ecx
not eax
add eax, ecx
movzx ecx, word [0x18004e82c]
movsxd rdx, eax
mov rax, qword [0x18004e840]
add eax, ecx
imul eax, edx
movsx edx, r10w
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x58]
movsx ecx, word [0x18004e7f4]
inc eax
add edx, eax
mov edx, ebx
sete r8b
and ecx, r15d
xor r8d, ecx
movsx ecx, byte [0x18004e726]
cmp byte [0x18004e6fe], bl
not r8d
sete dl
imul ecx, edx
movsxd rdx, ecx
mov ecx, dword [rsp + 0x4c]
sub rdx, r8
not ecx
imul rcx, qword [0x18004e850]
sub rdx, rcx
mov qword [rbp - 0x80], rdx
jmp 0x18001a927
mov al, byte [0x18004e820]
xor byte [0x18004e6fe], al
jmp 0x18001a927
mov r15d, 0x718c86f7
mov r13d, 0x3d9c
mov eax, dword [rsp + 0x54]
add eax, 0x349
mov dword [rsp + 0x60], eax
mov eax, dword [rsp + 0x54]
add eax, 0x12
mov dword [rbp - 0x6c], eax
mov rax, qword [rsp + 0x70]
cmp r9, rax
jbe 0x18001aa66
mov r8b, r13b
xor edx, edx
xor ecx, ecx
call fcn.18002321c
movzx eax, al
mov word [0x18004e810], ax
mov eax, dword [0x18004e868]
test eax, eax
je 0x18001aa17
xor ecx, ecx
call fcn.1800233e4
movzx eax, al
mov edx, ebx
mov word [0x18004e7e4], ax
mov ecx, ebx
movzx eax, word [0x18004e7e4]
cmp ax, 0x37
movzx eax, word [0x18004e7e4]
sete dl
test ax, ax
sete cl
cmp ecx, edx
je 0x18001a9dc
movzx eax, word [0x180036820]
lea rcx, [rbp + 0x10]
movups xmm0, xmmword [str.Message_file_path]
mov word [rbp + 0x20], ax
mov al, byte [0x180036822]
mov byte [rbp + 0x22], al
movups xmmword [rbp + 0x10], xmm0
call qword [sym.imp.KERNEL32.dll_lstrlenA]
movsxd rcx, eax
mov qword [0x18004e850], rcx
jmp 0x18001aa7b
mov eax, dword [0x18004e868]
test eax, eax
je 0x18001aa7b
movsx eax, byte [0x18004e7ce]
mov ecx, 0xb7
xor ax, cx
mov ecx, 0x3c96
mov word [0x18004e7dc], ax
mov eax, dword [0x18004e774]
sub ax, cx
mov word [0x18004e7f4], ax
jmp 0x18001aa7b
mov al, byte [rsp + 0x32]
mov al, byte [0x18004e6ff]
movzx ecx, word [rsp + 0x44]
add cl, al
mov byte [0x18004e6ff], cl
mov rcx, rbx
movzx eax, word [0x18004e82c]
mov rdx, qword [0x18004e840]
test ax, ax
mov eax, dword [0x18004e84c]
sete cl
imul rdx, rcx
add eax, 0x6676
mov rcx, rbx
sete cl
add rcx, rdx
mov qword [0x18004e820], rcx
jmp 0x18001aa7b
mov al, byte [0x18004e726]
test al, al
jne 0x18001aa7b
mov rax, r9
shr rax, 3
mov qword [rbp - 0x48], rax
mov eax, dword [0x1807446d0]
mov r10d, 0x8d
mov dword [rsp + 0x54], eax
xor r8d, r8d
mov eax, dword [rsp + 0x54]
add eax, 0x2d4
mov word [rsp + 0x20], r10w
mov dword [rsp + 0x60], eax
lea edx, [r10 + 0xe]
movsx r9d, byte [rsp + 0x32]
mov rcx, qword [0x18004e808]
call fcn.1800237f8
mov word [rsp + 0x40], ax
mov edi, 1
movsx eax, byte [0x18004e7ce]
cmp eax, 0xef0bdef1
jae 0x18001aaf0
movzx eax, byte [0x18004e6ff]
lea esi, [rax*4]
movzx eax, word [0x18004e7e8]
sub ax, di
mov word [0x18004e7e8], ax
jmp 0x18001aaff
test r12d, r12d
je 0x18001aaff
mov dword [0x18004e858], 0xbca6946b
mov eax, dword [rsp + 0x54]
xor r8d, r8d
mov edx, dword [rbp - 0x28]
add eax, 0x1b6
xor ecx, ecx
mov dword [rsp + 0x68], eax
call fcn.18002306c
mov r8, qword [rbp - 0x48]
mov byte [0x18004e7e7], al
mov al, byte [0x18004e7e7]
test al, al
jne 0x18001ab44
movsxd rax, dword [0x18004e83c]
sub r8, rax
movzx eax, word [rsp + 0x34]
add ax, di
mov word [rsp + 0x34], ax
mov eax, dword [rsp + 0x54]
add eax, 0x21
mov dword [rsp + 0x60], eax
movzx eax, word [rsp + 0x44]
test ax, ax
je 0x18001ab69
mov eax, dword [0x18004e7d8]
sar eax, 1
mov dword [0x18004e860], eax
jmp 0x18001abe2
mov rax, qword [0x18004e850]
not rax
test rax, rax
je 0x18001abb0
movsxd rdx, dword [rsp + 0x48]
lea ecx, [rsi + r15]
imul r13, rcx
movabs rax, 0x935d656878ff4
imul r13, rax
mov rax, qword [rsp + 0x70]
not r13
add rax, rdx
xor r13, rax
mov eax, 0xa69aaa19
mov qword [rsp + 0x70], rax
not r13
jmp 0x18001abe2
mov rax, qword [rbp - 0x80]
mov edx, ebx
movsxd rcx, dword [0x18004e83c]
cmp rcx, rax
mov eax, dword [reloc.mozglue.dll_export_full.dll_Ordinal_116]
setg dl
cmp edx, eax
jne 0x18001abe2
mov ecx, dword [0x18004e868]
mov eax, dword [rsp + 0x4c]
add eax, 0xfc4162c2
add ecx, eax
mov dword [rsp + 0x4c], ecx
mov eax, dword [0x1807446d0]
mov r9d, 0x1af
mov dword [rsp + 0x54], eax
mov rax, qword [0x18004e840]
sub rax, 0xab
movsxd r15, r12d
mov qword [rbp - 0x80], rax
mov eax, dword [rsp + 0x54]
add eax, 0x344
mov dword [rbp - 0x40], eax
mov rax, qword [rbp - 0x80]
cmp rax, r15
jge 0x18001ac34
movzx edx, byte [0x18004e73b]
mov ecx, 0x7d9c
movsx ecx, cx
imul edx, ecx
mov word [rsp + 0x34], dx
jmp 0x18001ac42
movsx eax, byte [rsp + 0x31]
imul eax, eax, 0x68
mov dword [0x18004e84c], eax
mov rax, qword [0x18004e840]
add rax, rdi
mov qword [0x18004e840], rax
sub r9, rdi
jne 0x18001ac12
mov eax, dword [rsp + 0x54]
mov edx, ebx
add eax, 0x9f
mov dword [rbp - 0x78], eax
movsx ecx, word [rsp + 0x40]
mov eax, dword [0x18004e868]
cmp eax, ecx
mov eax, dword [0x18004e868]
mov ecx, ebx
seta dl
cmp eax, 0x1b
seta cl
cmp edx, ecx
jne 0x18001accb
test r8, r8
je 0x18001aca5
mov rax, qword [rbp - 0x50]
lea ecx, [r9 + 0x15]
sub rcx, rax
mov rax, qword [rbp - 0x80]
add rax, rcx
mov qword [rbp - 0x80], rax
jmp 0x18001ace9
mov eax, dword [0x18004e774]
movzx ecx, al
imul eax, ecx, 0xfc
mov byte [0x18004e79f], al
mov eax, dword [0x18004e830]
add eax, 8
mov dword [reloc.mozglue.dll_export_full.dll_Ordinal_116], eax
jmp 0x18001ace9
mov al, byte [0x18004e7df]
test al, al
je 0x18001ace9
movzx r15d, byte [0x18004e7df]
and r15d, 0x38b3baa7
mov dword [rsp + 0x7c], r15d
mov eax, dword [rsp + 0x54]
mov r11d, 2
mov r12b, byte [reloc.mozglue.dll_export_full.dll_Ordinal_116]
add eax, 0x1b1
mov dword [rsp + 0x54], eax
not r12b
mov rax, qword [0x18004e840]
sub r12b, al
mov r10, qword [rbp - 0x68]
mov eax, dword [0x1807446d0]
mov dword [rsp + 0x50], eax
movzx eax, byte [0x18004e6ff]
imul eax, eax, 0xdd9c1b4b
mov byte [rsp + 0x38], r12b
mov dword [rsp + 0x48], eax
movzx eax, word [0x18004e81c]
shl ax, 2
mov word [0x18004e7dc], ax
mov eax, dword [rsp + 0x50]
add eax, 0x16d
mov dword [rsp + 0x60], eax
mov eax, dword [rsp + 0x50]
add eax, 0x24
mov dword [rbp - 0x5c], eax
mov eax, dword [rsp + 0x4c]
xor eax, 0x911d
mov dword [0x18004e818], eax
mov eax, dword [rsp + 0x50]
add eax, 0x158
mov qword [0x18004e7f8], r11
mov dword [rsp + 0x60], eax
movzx r9d, word [0x18004e82c]
mov ecx, dword [rsp + 0x4c]
sub r9d, 0xa67a
movsx rdx, word [0x18004e800]
mov r8d, dword [0x18004e838]
movzx eax, word [0x18004e7dc]
imul ecx, r10d
mov dword [rsp + 0x78], r9d
sub edx, ecx
sub edx, eax
mov eax, dword [0x1807446d0]
mov dword [rsp + 0x50], eax
add r8d, edx
movsx ecx, byte [rsp + 0x32]
mov eax, ebx
and ecx, 0x4b242197
mov edx, ebx
test r15d, r15d
sete al
add ecx, eax
mov eax, dword [rsp + 0x58]
movsx ecx, byte [0x18004e7de]
not eax
sete dl
or ecx, eax
imul ecx, dword [0x18004e85c]
imul eax, ecx, 0xc3
mov ecx, ebx
add eax, edx
mov rax, r10
not rax
sete cl
mov dword [rsp + 0x58], ecx
movsx rcx, word [rsp + 0x44]
mov edx, dword [rsp + 0x4c]
add rcx, rax
mov eax, dword [rsp + 0x48]
xor rdx, rcx
xor ax, dx
mov word [0x18004e82c], ax
mov eax, dword [rsp + 0x50]
add eax, 0xb9
mov dword [rsp + 0x60], eax
movsx rcx, word [rsp + 0x40]
mov rax, qword [0x18004e7d0]
add ax, cx
mov word [rsp + 0x40], ax
mov eax, dword [rsp + 0x50]
add eax, 0x19f
mov dword [rbp - 0x18], eax
mov eax, dword [0x1807446d0]
mov edx, ebx
mov qword [0x18004e820], rax
mov eax, dword [rsp + 0x50]
add eax, 0x347
mov dword [rbp - 0x1c], eax
mov rcx, qword [0x18004e840]
mov rax, qword [rsp + 0x70]
cmp rcx, rax
mov rax, qword [0x18004e840]
mov ecx, ebx
setg dl
cmp rax, 4
setg cl
cmp edx, ecx
ja 0x18001aeb0
lea ecx, [r11 + 0x23]
movzx eax, word [0x18004e82c]
add byte [0x18004e7cf], dil
sub rcx, rdi
jne 0x18001ae9b
jmp 0x18001aee8
mov rcx, qword [rsp + 0x70]
mov edx, ebx
mov eax, dword [0x18004e828]
not rcx
cmp rax, rcx
movsx ecx, word [rsp + 0x34]
mov eax, dword [rsp + 0x58]
not ecx
setne dl
add edx, ecx
add eax, edx
je 0x18001aee8
movsx eax, word [rsp + 0x34]
imul r9d, eax, 0xd092
mov dword [rsp + 0x78], r9d
movsxd rcx, dword [0x18004e858]
mov edx, ebx
mov rax, qword [0x18004e7d0]
cmp rcx, rax
mov eax, dword [0x18004e858]
mov ecx, ebx
sete dl
cmp eax, 0x17
sete cl
cmp edx, ecx
ja 0x18001b000
mov eax, 4
mov byte [0x18004e7cf], 0x9f
mov word [rsp + 0x40], ax
mov eax, dword [rsp + 0x48]
mov byte [rsp + 0x30], al
movsx eax, word [rsp + 0x40]
mov ecx, eax
test eax, eax
je 0x18001afe0
sub ecx, edi
je 0x18001afd0
sub ecx, edi
je 0x18001af84
sub ecx, edi
je 0x18001af6c
cmp ecx, edi
jne 0x18001b01f
mov ecx, dword [rbp - 0x28]
test r8d, r8d
not ecx
mov eax, ebx
cmove eax, ecx
mov dword [0x18004e818], eax
jmp 0x18001b01f
mov rax, qword [rbp - 0x80]
movsx ecx, byte [rsp + 0x30]
sub ecx, 0x6c51729c
mov dword [rsp + 0x48], ecx
jmp 0x18001b01f
mov al, byte [rsp + 0x30]
mov ecx, ebx
movzx edx, byte [0x18004e773]
test al, al
sete cl
sub edx, ecx
movsx ecx, word [rsp + 0x34]
movzx eax, word [0x18004e7f4]
add ecx, edx
test ax, ax
movsxd rdx, ecx
mov eax, dword [rsp + 0x58]
mov rcx, rbx
sete cl
sub rdx, rcx
sub rdx, rax
mov eax, ebx
add rdx, qword [0x18004e850]
sete al
mov dword [0x18004e84c], eax
jmp 0x18001b01f
imul ecx, r8d, 0x454c
mov qword [0x18004e820], rcx
jmp 0x18001b01f
mov eax, dword [0x18004e73c]
mov ecx, dword [0x18004e864]
shr eax, 8
xor ecx, r15d
add dword [0x18004e864], ecx
mov dword [0x18004e838], eax
jmp 0x18001b01f
mov eax, dword [0x18004e84c]
sub eax, dword [0x18004e818]
add eax, r9d
mov qword [rbp - 0x80], rax
mov al, byte [0x1807446d0]
mov byte [0x18004e79f], al
mov eax, dword [rbp - 0x38]
mov edx, dword [rbp - 0x74]
imul ecx, eax, 0xe7
sub edx, ecx
mov ecx, dword [rbp - 0x74]
mov eax, dword [rbp - 0x74]
add ecx, edx
cmp ecx, eax
je 0x18001d0d2
mov rax, qword [rbp - 0x80]
mov ecx, 0xdad
add ax, cx
mov word [rsp + 0x40], ax
mov eax, dword [0x18004e830]
add eax, 0x200c
mov dword [rbp - 0x74], eax
mov eax, dword [0x1807446d0]
mov dword [rsp + 0x50], eax
mov eax, 0xffffc32d
mov r8d, dword [0x18004e860]
and r8w, ax
mov eax, 0x3cd3
sub r8w, ax
mov eax, dword [rsp + 0x50]
add eax, 0x2eb
mov dword [rsp + 0x40], eax
mov ecx, dword [0x18004e858]
mov eax, dword [0x18004e774]
cmp ecx, eax
jbe 0x18001b0c3
movsx r9d, byte [0x18004e727]
movabs rax, 0x3a01523f921f7
sub r9d, 0x7d31aba4
mov qword [0x18004e820], rax
mov dword [rsp + 0x78], r9d
jmp 0x18001b0ed
test r12b, r12b
je 0x18001b0ed
mov rax, qword [rbp - 0x50]
movsx ecx, ax
movsx eax, word [rbp - 0x60]
imul eax, ecx
mov word [rbp - 0x60], ax
movsx eax, byte [0x18004e7e6]
imul ecx, eax, 0xd3
add dword [0x18004e83c], ecx
mov eax, dword [rsp + 0x50]
add eax, 0x202
mov dword [rbp - 0x70], eax
mov eax, dword [0x18004e7f8]
add eax, 0x51f4
mov dword [0x18004e868], eax
mov eax, dword [rsp + 0x50]
add eax, 0x124
cmp byte [r14], 0xe9
mov dword [rsp + 0x64], eax
jne 0x18001b189
mov al, byte [0x1807446d0]
mov edx, ebx
mov byte [0x18004e7df], al
movsx rax, word [rsp + 0x44]
cmp qword [0x18004e820], rax
seta dl
cmp qword [0x18004e820], 9
seta bl
cmp edx, ebx
je 0x18001b15f
mov cl, byte [0x18004e7de]
mov al, cl
sub al, r8b
xor cl, al
mov byte [0x18004e7de], cl
jmp 0x18001b17a
mov ecx, dword [0x18004e838]
mov dword [0x1808a1cac], ecx
mov cl, byte [0x18004e7f0]
add cl, 0x58
mov byte [0x18004e726], cl
mov rcx, qword [rbp - 0x30]
mov eax, r11d
mov qword [rcx], rdi
jmp 0x18001d0d4
mov eax, dword [rsp + 0x3c]
mov ecx, 0xffffff9f
sub ecx, eax
mov eax, dword [rbp - 0x58]
add eax, ecx
cmp eax, 0x8f
je 0x18001d0d2
movsx ecx, byte [0x18004e7ce]
mov eax, r9d
not eax
not ecx
imul eax, ecx
cdqe
mov qword [rbp - 0x50], rax
mov edx, dword [reloc.mozglue.dll_export_full.dll_Ordinal_116]
movsx r8d, word [0x18004e7f4]
not edx
mov eax, dword [rsp + 0x48]
add r8d, edx
mov ecx, dword [rsp + 0x4c]
inc eax
sub ecx, dword [0x18004e84c]
mov edx, dword [rbp - 0x74]
xor ecx, r9d
add edx, eax
mov eax, ebx
cmp r8d, edx
cmove eax, ecx
mov qword [rsp + 0x70], rax
mov eax, dword [0x1807446d0]
mov dword [rsp + 0x50], eax
movzx eax, word [0x18004e800]
test ax, ax
je 0x18001b3ba
movsx ecx, byte [0x18004e726]
mov al, byte [rsp + 0x32]
sub al, cl
mov byte [rsp + 0x32], al
mov r8d, 4
mov eax, dword [rsp + 0x50]
add eax, 0x1ef
mov dword [rsp + 0x3c], eax
mov eax, 0xb1d
movsx ecx, byte [0x18004e7e7]
sub cx, ax
mov word [0x18004e7e4], cx
mov eax, dword [rsp + 0x50]
add eax, 0x30
mov dword [rbp - 0x70], eax
movzx eax, byte [0x18004e6ff]
mov qword [0x1808da520], rax
mov eax, dword [rsp + 0x50]
mov ecx, dword [0x1807446d0]
add eax, 0x297
mov dword [rbp - 0x38], eax
mov qword [rbp - 0x50], rcx
mov dword [rsp + 0x50], ecx
movzx eax, word [rsp + 0x34]
mov eax, dword [rsp + 0x50]
add eax, 0xef9d
mov dword [rbp - 0x70], eax
movabs rax, 0xb0173eafac3bb
movsx rcx, word [rsp + 0x34]
imul rcx, rax
mov qword [0x18004e808], rcx
mov eax, dword [rsp + 0x50]
add eax, 0x83
mov dword [rbp - 0x70], eax
mov eax, dword [reloc.mozglue.dll_export_full.dll_Ordinal_116]
mov ecx, dword [rsp + 0x48]
sub ecx, eax
mov dword [rsp + 0x48], ecx
mov eax, dword [rsp + 0x50]
add eax, 0x4d
mov dword [rbp - 0x58], eax
mov eax, 0x5582
add ax, word [0x18004e7ec]
mov ecx, dword [rsp + 0x64]
mov word [0x18004e814], ax
mov eax, dword [rsp + 0x64]
sub ecx, eax
mov edx, dword [rsp + 0x40]
mov eax, dword [rsp + 0x40]
add edx, eax
mov eax, dword [rbp - 0x58]
add eax, 0x8a
imul edx, ecx
xor eax, 0x2c0
add eax, edx
mov dword [rbp - 0x20], eax
mov eax, dword [rsp + 0x48]
test eax, eax
movzx ecx, word [0x18004e7e0]
cmovne cx, word [0x18004e818]
movzx eax, word [0x18004e7f0]
sub eax, 0x2609b9f8
mov word [0x18004e804], cx
cmp byte [0x18004e7ce], bl
mov ecx, 0x3aad
mov dword [0x18004e828], eax
mov eax, dword [0x1807446d0]
mov dword [rsp + 0x40], eax
mov rax, rbx
sete al
movsx ecx, cx
mov qword [rbp - 0x80], rax
mov rax, qword [rsp + 0x70]
cwde
imul eax, ecx
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x40]
add eax, 0xcf
cmp qword [0x18004e830], rbx
mov dword [rsp + 0x64], eax
je 0x18001b3e5
cmp dword [0x18004e818], ebx
mov rcx, rbx
mov rax, qword [rbp - 0x50]
mov edx, 0x1a9
sete cl
sub ax, cx
mov word [0x18004e82c], ax
movsx rcx, word [rsp + 0x34]
movabs rax, 0x8bd418ed7608e
add rcx, rax
mov qword [0x18004e840], rcx
sub rdx, rdi
jne 0x18001b399
jmp 0x18001b403
cmp word [0x18004e81c], bx
je 0x18001b21e
mov eax, dword [0x18004e7d8]
mov r8d, 4
mov esi, r8d
lea ecx, [r15 + rax*2]
mov dword [0x18004e7d8], ecx
jmp 0x18001b224
cmp dword [0x18004e84c], ebx
je 0x18001b403
movsx ecx, word [0x18004e7f4]
mov eax, dword [0x18004e828]
imul eax, ecx
mov dword [0x18004e828], eax
mov eax, dword [rsp + 0x40]
mov ecx, 0x3b
add eax, 0xb8
mov dword [rbp - 0x58], eax
mov eax, dword [rsp + 0x40]
add eax, 0x4c
mov dword [0x18004e85c], r8d
mov dword [rbp - 0x70], eax
mov edx, dword [0x18004e774]
movzx eax, r12b
add edx, 0xaa
sub ecx, eax
mov qword [rbp - 0x48], rdx
mov eax, dword [0x18004e85c]
mov dword [0x18004e84c], ecx
test eax, eax
je 0x18001b4b7
sub eax, edi
je 0x18001b4a9
sub eax, edi
je 0x18001b48f
sub eax, edi
je 0x18001b477
cmp eax, edi
jne 0x18001b4e6
mov cl, byte [0x18004e6fe]
mov al, byte [0x18004e6ff]
add cl, cl
add al, cl
mov byte [0x18004e6fe], al
jmp 0x18001b4e6
movsx eax, byte [rsp + 0x31]
add word [0x18004e7dc], ax
mov dword [0x18004e7d8], 0xad6a4f3b
jmp 0x18001b4e6
movzx eax, word [0x18004e804]
mov word [0x18004e804], ax
mov eax, 0xffffb929
mov word [rsp + 0x44], ax
jmp 0x18001b4e6
mov al, byte [0x18004e6fe]
mov byte [0x18004e7ce], al
jmp 0x18001b4e6
movsx eax, byte [rsp + 0x30]
mov edx, dword [0x18004e860]
mov r15d, dword [0x18004e83c]
sub edx, eax
mov eax, dword [0x18004e860]
shl r15d, 7
xor eax, edx
mov dword [rsp + 0x7c], r15d
mov rdx, qword [rbp - 0x48]
mov dword [0x18004e860], eax
mov cl, byte [0x18004e7e7]
mov al, byte [rsp + 0x31]
cmp cl, al
je 0x18001b529
movsd xmm0, qword [str.form_post]
lea rcx, [rbp - 0x10]
movzx eax, word [reloc.mozglue.dll_export_full.dll_Ordinal_116]
movsd qword [rbp - 0x10], xmm0
mov word [rbp - 8], ax
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov r10, qword [rbp - 0x68]
mov r11d, 2
mov word [0x18004e7f4], ax
jmp 0x18001b545
test esi, esi
jne 0x18001b533
mov eax, dword [0x18004e838]
movsx rax, word [0x18004e810]
add rax, rdx
or rdx, rax
mov qword [rbp - 0x48], rdx
mov ecx, dword [rbp - 0x58]
mov eax, dword [rsp + 0x64]
imul ecx, eax
sub ecx, 0x92e5
mov dword [rbp - 0x70], ecx
mov rax, qword [rbp - 0x80]
movsx rcx, byte [0x18004e7cf]
sub cx, ax
mov dword [0x18004e7d8], r11d
mov eax, dword [0x1807446d0]
mov word [rsp + 0x40], cx
mov dword [rsp + 0x64], eax
movsx rcx, word [rsp + 0x40]
mov rax, qword [rbp - 0x80]
sub rax, rcx
mov qword [rbp - 0x80], rax
mov eax, dword [rsp + 0x64]
add eax, 0x7839
cmp word [0x18004e81c], bx
mov dword [rbp - 0x3c], eax
je 0x18001b61d
mov cl, byte [0x18004e7dc]
call fcn.1800233e4
cmp al, 0x51
mov byte [0x18004e7e6], al
mov edx, ebx
mov ecx, ebx
sete dl
test al, al
sete cl
cmp ecx, edx
jb 0x18001b678
movsx rcx, byte [rsp + 0x32]
mov r12b, 2
sub rcx, 0x6a3cfb4c
mov byte [rsp + 0x38], r12b
mov qword [rsp + 0x70], rcx
mov rax, qword [rsp + 0x70]
movsxd rcx, r15d
sub rcx, rax
mov rax, qword [rsp + 0x70]
add rax, rcx
mov ecx, 0xffffffb4
mov qword [rsp + 0x70], rax
mov eax, dword [rsp + 0x48]
sub ecx, eax
mov eax, dword [0x18004e868]
mov edx, dword [0x1807446d0]
add eax, ecx
mov dword [0x18004e868], eax
jmp 0x18001b67c
mov al, byte [0x18004e726]
mov edx, ebx
test al, al
mov r8d, ebx
mov eax, ebx
mov ecx, ebx
sete dl
cmp word [0x18004e81c], bx
sete al
or eax, esi
movsx eax, byte [0x18004e7cf]
sete r8b
cmp edx, eax
mov rdx, qword [rbp - 0x28]
mov eax, ebx
sete cl
sub r8w, cx
test r13, r13
sete al
lea r15d, [rax + r8]
mov rax, r10
add r15w, dx
and eax, 0xf2
mov dword [rsp + 0x50], r15d
mov qword [rbp - 0x50], rax
jmp 0x18001b681
mov rdx, qword [rbp - 0x28]
mov r15d, dword [rsp + 0x50]
mov eax, dword [rsp + 0x64]
add eax, 0x9064
mov dword [rbp - 0x58], eax
mov al, byte [0x18004e726]
test al, al
je 0x18001b6ec
mov rcx, qword [rbp - 0x50]
movsx rax, word [rbp - 0x60]
cmp rax, rcx
jbe 0x18001b6bc
movsx ecx, byte [rsp + 0x32]
xor ecx, dword [0x18004e864]
mov al, byte [rsp + 0x32]
add al, cl
mov byte [rsp + 0x32], al
jmp 0x18001b6f2
movsx eax, word [rsp + 0x44]
cmp dword [0x18004e73c], eax
je 0x18001b6f2
movabs rax, 0xf36d7c374c41d
and rdx, rax
mov rax, qword [rbp - 0x48]
shl rax, 5
mov qword [0x18004e808], rdx
mov word [rsp + 0x34], ax
jmp 0x18001b6f2
mov eax, dword [0x18004e868]
mov eax, dword [rsp + 0x64]
xor ecx, ecx
add eax, 0xe8ef
mov dword [rsp + 0x64], eax
call fcn.1800233e4
mov r8, qword [rbp - 0x68]
mov r9d, dword [rbp - 0x74]
movzx eax, al
mov qword [0x18004e7d0], rax
mov rax, qword [0x18004e7d0]
test rax, rax
mov al, byte [rsp + 0x31]
jns 0x18001b73d
movsx eax, r15w
mov word [rsp + 0x44], ax
mov dword [0x18004e7d8], 0xbefb
jmp 0x18001b781
mov edx, dword [reloc.mozglue.dll_export_full.dll_Ordinal_116]
mov eax, ebx
movsx r13d, byte [rsp + 0x30]
not edx
cmp byte [0x18004e727], bl
movzx ecx, byte [0x18004e6fe]
sete al
not ecx
sub ecx, eax
movsx eax, word [rsp + 0x40]
add edx, ecx
add r13d, edx
movsx edx, byte [0x18004e7cf]
sub edx, eax
movzx eax, word [rsp + 0x40]
add ax, dx
mov word [rsp + 0x40], ax
mov ecx, dword [rbp - 0x58]
mov r15d, 0xff
mov eax, dword [rbp - 0x3c]
xor ecx, eax
mov al, byte [r14]
sub ecx, 0xe829
mov dword [rbp - 0x3c], ecx
cmp al, 0x90
jne 0x18001b7ec
cmp byte [r14 + 1], 0xe9
jne 0x18001bb3b
movsd xmm0, qword [str.dsreg.dll]
lea rcx, [rbp]
movzx eax, word [0x180036840]
movsd qword [rbp], xmm0
mov word [rbp + 8], ax
call qword [sym.imp.KERNEL32.dll_lstrlenA]
movsxd rcx, eax
mov qword [0x18004e808], rcx
movzx eax, word [rsp + 0x44]
mov rcx, qword [rbp - 0x30]
mov eax, 2
mov qword [rcx], rax
jmp 0x18001d0d4
cmp al, 0x8b
jne 0x18001b9d0
cmp byte [r14 + 1], r15b
jne 0x18001bb3b
cmp byte [r14 + 2], 0xe9
jne 0x18001bb3b
mov eax, 2
mov word [0x18004e7f4], ax
mov rdx, qword [0x18004e840]
movsx ecx, word [rsp + 0x40]
test rdx, rdx
movsx rdx, word [0x18004e7f4]
not ecx
mov al, byte [0x1807446d0]
mov byte [0x18004e7de], al
mov eax, ebx
cmove eax, ecx
movsxd rcx, eax
xor rdx, rcx
movsx rcx, word [rsp + 0x44]
xor rcx, rdx
mov qword [rsp + 0x70], rcx
movzx eax, word [0x18004e7f4]
cmp ax, di
jne 0x18001b878
movsx edx, byte [rsp + 0x31]
mov eax, 0xffffc669
cwde
imul edx, eax
mov eax, r9d
xor r8, rax
mov word [rsp + 0x44], dx
mov rax, qword [0x18004e840]
test rax, rax
je 0x18001b894
mov al, byte [0x18004e6ff]
sub al, 0x20
mov byte [0x18004e73b], al
jmp 0x18001b8c5
mov rcx, qword [0x18004e7d0]
movzx eax, byte [0x18004e6fe]
sub rcx, rax
mov rax, qword [0x18004e7d0]
sub rcx, rax
mov qword [0x18004e7d0], rcx
movsx ecx, byte [rsp + 0x30]
xor cl, byte [0x18004e79f]
mov byte [rsp + 0x30], cl
mov eax, dword [0x1807446d0]
mov r9d, 0x1544
mov dword [rsp + 0x64], eax
lea eax, [rsi + 0xd706]
mov dword [rsp + 0x48], eax
mov ecx, dword [rsp + 0x64]
mov eax, dword [rbp - 0x20]
add ecx, eax
mov dword [rsp + 0x60], ecx
movzx eax, word [rsp + 0x40]
mov ecx, dword [rsp + 0x64]
mov eax, dword [rbp - 0x70]
add ecx, eax
mov dword [0x18004e85c], 0x114b57db
mov dword [rsp + 0x60], ecx
mov rax, qword [rbp - 0x80]
mov al, byte [0x18004e727]
cmp byte [0x18004e7cf], al
jne 0x18001b92d
movzx eax, word [0x18004e7f4]
mov eax, dword [rsp + 0x48]
sub dword [0x18004e828], eax
jmp 0x18001b972
mov al, byte [rsp + 0x30]
mov rcx, rbx
cmp byte [0x18004e7e6], al
mov rax, qword [rbp - 0x80]
setl cl
cmp rcx, rax
jge 0x18001b972
cmp dword [0x18004e7ec], ebx
mov rax, rbx
mov rcx, qword [rbp - 0x50]
sete al
sub rcx, rax
mov al, r8b
add al, byte [0x18004e7ec]
movsx edx, al
movsx ecx, cl
imul edx, ecx
add dl, 0x31
mov byte [rsp + 0x30], dl
sub r9, rdi
jne 0x18001b90c
mov ecx, dword [rsp + 0x64]
mov eax, dword [rbp - 0x3c]
add ecx, eax
mov dword [rsp + 0x3c], ecx
mov ecx, dword [rsp + 0x3c]
mov eax, dword [rsp + 0x3c]
add ecx, 0xfffffd0f
cmp eax, ecx
je 0x18001d0d2
mov edx, 0x28d
mov al, byte [0x18004e7f0]
movzx ecx, word [0x18004e7e4]
sub al, 0x61
mov byte [0x18004e773], al
movzx eax, word [rsp + 0x40]
sub cx, ax
mov word [0x18004e7e4], cx
sub rdx, rdi
jne 0x18001b99f
lea eax, [rdx + 2]
jmp 0x18001d0c4
cmp al, 0x68
jne 0x18001bb3b
cmp byte [r14 + 5], 0xc3
jne 0x18001bb3b
movsxd rax, esi
cmp r8, rax
jae 0x18001ba16
movsx ecx, byte [0x18004e7de]
mov edx, ebx
movzx eax, r12b
add ecx, eax
movsx eax, byte [0x18004e7cf]
sete dl
add eax, 0xf0144a5f
add eax, edx
cdqe
mov qword [0x18004e7f8], rax
jmp 0x18001ba32
cmp dword [0x18004e85c], ebx
je 0x18001ba32
mov ecx, dword [rsp + 0x4c]
mov eax, dword [rsp + 0x4c]
sub ecx, eax
mov eax, dword [rsp + 0x4c]
sub ecx, eax
mov dword [rsp + 0x4c], ecx
mov edx, dword [rsp + 0x48]
mov r8d, 0x4a
xor ecx, ecx
call fcn.18002306c
mov dword [0x18004e860], eax
mov eax, dword [0x18004e860]
test eax, eax
jne 0x18001ba78
mov eax, dword [0x18004e860]
mov byte [0x18004e726], al
movsx eax, byte [0x18004e7ce]
mov ecx, dword [rsp + 0x48]
imul eax, ecx
cdqe
mov qword [0x18004e820], rax
jmp 0x18001ba92
mov al, byte [0x18004e6fe]
add al, 0x65
mov byte [0x18004e79f], al
mov eax, dword [rsp + 0x48]
sub eax, dword [rsp + 0x7c]
mov dword [rsp + 0x48], eax
mov eax, dword [0x1807446d0]
mov dword [rsp + 0x64], eax
mov word [rsp + 0x40], ax
mov eax, dword [rsp + 0x64]
add eax, 0x110
mov dword [rsp + 0x60], eax
movsx eax, word [rsp + 0x34]
cmp eax, dword [rbp - 0x74]
jb 0x18001baf0
movsx ecx, byte [0x18004e7e7]
movzx eax, byte [0x18004e79f]
cmp ecx, eax
je 0x18001baf0
cmp byte [0x18004e773], bl
mov ecx, ebx
movzx eax, r12b
sete cl
not eax
add ecx, eax
mov rax, rbx
sete al
test esi, esi
sete bl
sub rbx, rax
mov qword [rsp + 0x70], rbx
mov eax, dword [rsp + 0x64]
add eax, 0x324
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x64]
add eax, 0x3d
mov dword [rbp - 0x70], eax
mov edx, dword [rbp - 0x70]
mov eax, dword [rsp + 0x3c]
add edx, eax
mov eax, dword [rsp + 0x3c]
cmp eax, edx
je 0x18001d0d2
mov eax, dword [0x18004e838]
mov rcx, qword [rbp - 0x30]
sub al, 0xc
and byte [0x18004e7ce], al
mov eax, 3
mov qword [rcx], rdi
jmp 0x18001d0d4
mov eax, dword [rbp - 0x6c]
mov ecx, 0x41
mov edx, dword [rsp + 0x5c]
sub ecx, eax
add edx, ecx
mov ecx, dword [rsp + 0x5c]
mov eax, dword [rsp + 0x5c]
sub ecx, eax
cmp edx, ecx
je 0x18001d0d2
movsx ecx, byte [rsp + 0x31]
mov eax, dword [0x18004e774]
cmp eax, ecx
jae 0x18001bb92
movzx ecx, word [rsp + 0x40]
movzx eax, word [rsp + 0x44]
cmp ax, cx
je 0x18001bb92
movzx eax, word [0x18004e814]
imul r12d, esi, 0x57
mov word [rsp + 0x34], ax
mov dword [rsp + 0x78], r12d
jmp 0x18001bb97
mov r12d, dword [rsp + 0x78]
mov eax, dword [0x1807446d0]
mov edx, ebx
mov r9d, dword [rbp - 0x60]
mov ecx, ebx
mov dword [rsp + 0x5c], eax
mov r8d, 4
movzx eax, word [0x18004e82c]
cmp ax, word [0x18004e814]
movzx eax, word [0x18004e82c]
setne dl
cmp ax, r8w
setne cl
cmp edx, ecx
je 0x18001bbeb
mov rax, qword [0x18004e7d0]
mov rax, qword [0x18004e808]
mov al, r9b
xor al, 0x91
mov byte [0x18004e726], al
mov eax, dword [rsp + 0x5c]
add eax, 0x7039
cmp dword [0x18004e84c], ebx
mov dword [rbp - 0x6c], eax
je 0x18001bc44
mov al, byte [0x18004e7df]
test al, al
je 0x18001bc0d
mov al, byte [rsp + 0x31]
mov rax, qword [rbp - 0x80]
mov edx, ebx
movsxd rcx, esi
cmp rax, rcx
sete dl
test edx, edx
je 0x18001bc5c
mov al, byte [0x18004e7cf]
add al, 0xb
movsx ecx, r9w
mov byte [0x18004e7de], al
movsx eax, byte [rsp + 0x32]
add ax, di
cwde
imul ecx, eax
mov word [rbp - 0x60], cx
jmp 0x18001bc5c
movzx ecx, word [0x18004e82c]
mov eax, dword [0x18004e774]
cmp ecx, eax
je 0x18001bc5c
movzx eax, word [0x18004e800]
mov eax, dword [rsp + 0x5c]
mov edx, 0xf1
add eax, 0x7a71
xor r8d, r8d
mov dword [rbp - 0x6c], eax
mov eax, dword [rsp + 0x5c]
movzx r9d, byte [0x18004e773]
lea ecx, [rdx - 0x22]
add eax, 0x32bf
mov dword [rsp + 0x5c], eax
mov rax, qword [0x18004e7f8]
mov qword [rsp + 0x20], rax
call fcn.180023998
cmp qword [0x18004e850], rbx
mov word [0x18004e804], ax
je 0x18001bd22
mov rcx, qword [0x18004e840]
mov edx, ebx
movsxd r9, dword [rsp + 0x7c]
mov rax, qword [0x18004e840]
cmp rcx, r9
mov ecx, ebx
setne dl
cmp rax, 0x22
setne cl
cmp edx, ecx
jne 0x18001bd27
movsx r8d, word [0x18004e810]
mov ecx, ebx
mov eax, dword [reloc.mozglue.dll_export_full.dll_Ordinal_116]
not esi
movzx edx, byte [reloc.mozglue.dll_export_full.dll_Ordinal_116]
not eax
imul edx, r8d
and r8w, dx
mov edx, ebx
cmp byte [0x18004e7de], bl
mov word [0x18004e810], r8w
sete cl
add eax, ecx
movsx ecx, word [0x18004e7e4]
mov eax, ebx
sete dl
add ecx, esi
sete al
and eax, edx
mov dword [rsp + 0x4c], eax
jmp 0x18001bd27
mov r9d, dword [rsp + 0x7c]
cmp qword [0x18004e7f8], rbx
je 0x18001bd9c
movsx ecx, byte [0x18004e727]
movzx eax, word [rsp + 0x34]
cmp ax, cx
je 0x18001bd49
mov r8d, edi
test r9d, r9d
je 0x18001bd4c
mov r8d, ebx
movsx eax, word [rbp - 0x60]
not eax
test eax, eax
jne 0x18001bd62
mov al, byte [0x18004e6ff]
mov edx, edi
test al, al
je 0x18001bd64
mov edx, ebx
mov al, byte [rsp + 0x31]
mov ecx, ebx
xor ecx, edx
cmp r8d, ecx
ja 0x18001bdf9
movsx edx, word [0x18004e804]
mov ecx, 0xffff87db
movsx ecx, cx
imul edx, ecx
mov word [0x18004e800], dx
mov al, byte [rsp + 0x32]
add al, 0x31
mov byte [0x18004e7e7], al
jmp 0x18001bdf9
mov eax, dword [0x18004e868]
test eax, eax
je 0x18001bdb9
mov eax, dword [reloc.mozglue.dll_export_full.dll_Ordinal_116]
add eax, r12d
or r12d, eax
mov dword [rsp + 0x78], r12d
jmp 0x18001bdf9
mov al, byte [0x18004e7df]
movzx ecx, word [0x18004e82c]
mov eax, dword [rsp + 0x4c]
sub ecx, eax
movzx eax, word [0x18004e82c]
add ax, cx
mov word [0x18004e82c], ax
movsx eax, word [rsp + 0x34]
movsx edx, word [0x18004e810]
imul edx, eax
movzx eax, word [rsp + 0x34]
sub ax, dx
mov word [rsp + 0x34], ax
mov edx, dword [rsp + 0x5c]
mov eax, dword [rsp + 0x5c]
or edx, 0xa2
imul ecx, eax, 0x96
mov eax, dword [0x1807446d0]
mov byte [0x18004e7cf], al
add ecx, edx
xor ecx, 0x1deceb
mov dword [rbp - 0x20], ecx
mov dword [rsp + 0x5c], eax
movsx eax, byte [0x18004e7e6]
sub eax, 0xe4
cdqe
mov qword [rbp - 0x28], rax
mov eax, dword [rsp + 0x4c]
add eax, 0x4eda
mov dword [rsp + 0x7c], eax
mov eax, dword [rsp + 0x5c]
add eax, 0x9e
mov word [0x18004e7f0], di
mov dword [rbp - 0x6c], eax
mov eax, dword [0x18004e838]
movzx ecx, word [0x18004e7f0]
mov dword [0x18004e828], 0x2afb
test ecx, ecx
je 0x18001be80
cmp ecx, edi
jne 0x18001bea3
mov rax, qword [rsp + 0x70]
jmp 0x18001bea3
movsx rax, byte [0x18004e7cf]
movsx ecx, word [rsp + 0x40]
mov qword [0x180744710], rax
movzx eax, byte [0x18004e73b]
add ax, cx
mov word [rsp + 0x40], ax
mov eax, dword [rsp + 0x5c]
mov ecx, ebx
add eax, 0x9bd0
mov dword [rbp - 0x70], eax
movsx r12d, byte [rsp + 0x31]
movsx rax, byte [0x18004e7e6]
neg rax
shl r12d, 5
mov qword [0x18004e850], rax
mov eax, dword [rsp + 0x5c]
add eax, 0xe7a7
mov dword [rbp - 0x3c], eax
mov al, byte [rsp + 0x31]
mov eax, dword [rsp + 0x4c]
movsx edx, word [0x18004e810]
xor edx, ebx
test eax, eax
movzx eax, byte [0x18004e79f]
sete cl
add r12d, 0x4d
and eax, ecx
add r12d, r13d
movsx ecx, byte [rsp + 0x32]
sub eax, edx
mov dword [rsp + 0x5c], eax
add ecx, 0x5225
mov dword [reloc.mozglue.dll_export_full.dll_Ordinal_116], ecx
mov edx, 0x3e3
mov eax, dword [rsp + 0x3c]
imul ecx, eax, 0x3e3
mov eax, dword [rsp + 0x3c]
imul r8d, eax, 0x3e3
xor r8d, ecx
mov ecx, dword [rbp - 0x38]
mov eax, dword [rsp + 0x3c]
xor ecx, eax
mov eax, dword [rbp - 0x38]
sub edx, ecx
add edx, eax
mov eax, dword [rbp - 0x6c]
or eax, 0x42
imul edx, r8d
add edx, 0xffff67ab
sub edx, eax
mov eax, dword [rbp - 0x70]
add eax, edx
cmp byte [r14], 0x90
mov dword [rbp - 0x6c], eax
jne 0x18001bffd
cmp byte [r14 + 1], 0x68
jne 0x18001bffd
cmp byte [r14 + 6], 0xc3
jne 0x18001bffd
movsx eax, word [rsp + 0x44]
sub edi, eax
mov qword [0x18004e830], 0xfa66
mov eax, dword [0x18004e83c]
imul eax, edi
mov dword [0x18004e83c], eax
mov eax, dword [0x1807446d0]
mov dword [rsp + 0x3c], eax
mov word [0x18004e7f4], ax
mov ecx, dword [rsp + 0x3c]
mov eax, dword [rbp - 0x20]
add ecx, eax
mov dword [rsp + 0x60], ecx
mov ecx, dword [rsp + 0x3c]
mov eax, dword [rbp - 0x6c]
add ecx, eax
mov dword [rsp + 0x5c], ecx
mov eax, dword [rsp + 0x3c]
add eax, 0x154
mov dword [rsp + 0x60], eax
mov ecx, dword [rsp + 0x5c]
mov eax, dword [rsp + 0x5c]
imul ecx, eax
mov eax, dword [rsp + 0x5c]
xor ecx, 0xed
cmp eax, ecx
je 0x18001d0d2
mov esi, 3
jmp 0x18001c28a
mov eax, dword [rsp + 0x68]
imul ecx, eax, 0xee00
mov eax, dword [rsp + 0x68]
cmp eax, ecx
je 0x18001d0d2
mov esi, 2
mov edx, 0xe3
mov r8d, esi
lea ecx, [rsi + 0x64]
call fcn.18002306c
mov byte [0x18004e79f], al
test al, al
je 0x18001c0a0
movzx ecx, word [0x18004e7f0]
mov edx, ebx
cmp rcx, qword [0x18004e7f8]
mov eax, ebx
setg dl
cmp ecx, 0x50
seta al
cmp edx, eax
je 0x18001c061
mov eax, dword [rsp + 0x58]
mov ecx, dword [rsp + 0x48]
sub ecx, eax
mov dword [rsp + 0x48], ecx
jmp 0x18001c0de
cmp byte [0x18004e727], bl
mov r9d, 4
je 0x18001c087
mov ecx, dword [rsp + 0x4c]
mov eax, dword [rsp + 0x4c]
sub ecx, r12d
sub ecx, eax
mov dword [rsp + 0x4c], ecx
mov qword [rsp + 0x70], r9
jmp 0x18001c0e4
mov rax, qword [0x18004e7d0]
mov r8, qword [rbp - 0x68]
test rax, rax
je 0x18001c0e8
add byte [0x18004e7ce], r8b
jmp 0x18001c0e8
movzx eax, word [0x18004e804]
mov ecx, ebx
test ax, ax
mov eax, dword [rsp + 0x58]
not eax
sete cl
cmp eax, ecx
je 0x18001c0de
mov ecx, dword [0x18004e73c]
movabs rax, 0xb6e78c31f41b9
not ecx
sub rcx, qword [rbp - 0x28]
add rcx, 0x14
imul rcx, rax
mov qword [0x18004e830], rcx
mov r9d, 4
mov r8, qword [rbp - 0x68]
mov eax, dword [0x1807446d0]
mov ecx, 0xf85
mov dword [rsp + 0x3c], eax
mov edx, ebx
mov eax, dword [rsp + 0x3c]
add eax, 0x3aa
mov dword [rsp + 0x68], eax
movzx eax, word [0x18004e7f4]
add ax, cx
mov word [rsp + 0x40], ax
mov eax, dword [rsp + 0x3c]
movzx ecx, byte [0x18004e6fe]
add eax, 0x183
cmp rcx, r8
mov dword [rbp - 0x6c], eax
mov eax, ebx
sete dl
cmp cl, sil
sete al
cmp edx, eax
jae 0x18001c17f
movsx rcx, word [rsp + 0x40]
mov edx, ebx
mov rax, qword [rsp + 0x70]
mov sil, byte [rsp + 0x38]
cmp rax, rcx
mov rax, qword [rsp + 0x70]
mov ecx, ebx
setge dl
cmp rax, 0x41
setge cl
cmp edx, ecx
jb 0x18001c1e8
movsx eax, byte [0x18004e7cf]
mov ecx, dword [0x18004e83c]
sub ecx, eax
not ecx
mov dword [rsp + 0x58], ecx
jmp 0x18001c1e8
movzx eax, word [0x18004e7e4]
test ax, ax
jne 0x18001c1a3
mov qword [0x18004e808], rsi
movzx eax, word [0x18004e804]
add rax, 0xe
mov qword [rbp - 0x68], rax
jmp 0x18001c1e3
movsx eax, byte [rsp + 0x32]
cmp r12d, eax
jne 0x18001c1c5
movzx eax, word [0x18004e82c]
movzx esi, byte [rsp + 0x38]
mov byte [reloc.mozglue.dll_export_full.dll_Ordinal_116], al
mov qword [rbp - 0x48], rsi
jmp 0x18001c1e8
movsx rcx, byte [rsp + 0x31]
mov rax, qword [rsp + 0x70]
add rax, rcx
je 0x18001c1e3
movzx eax, word [0x1807446d0]
mov word [0x18004e7e4], ax
mov sil, byte [rsp + 0x38]
mov eax, dword [rsp + 0x3c]
add eax, 0x37d
mov dword [rbp - 0x6c], eax
cmp byte [r14], r15b
jne 0x18001c29c
cmp byte [r14 + 1], 0x25
jne 0x18001c29c
cmp byte [r14 + 2], bl
jne 0x18001c29c
mov cl, byte [rsp + 0x31]
mov al, byte [0x18004e6fe]
mov edx, dword [0x18004e84c]
inc edx
mov byte [0x18004e79f], al
mov al, cl
add al, al
add cl, al
add cl, cl
mov byte [0x18004e7de], cl
movzx ecx, byte [0x18004e73b]
add edx, ecx
not edx
cmp r12d, edx
je 0x18001c267
movsx eax, byte [0x18004e7ce]
add eax, 0x48641313
add r12b, 0x5b
mov dword [0x18004e84c], eax
mov byte [0x18004e7e7], r12b
jmp 0x18001c287
movsx ecx, byte [0x18004e7e7]
mov eax, dword [rsp + 0x58]
not ecx
add eax, ecx
je 0x18001c287
movsx eax, byte [rsp + 0x30]
imul eax, eax, 0x2d5
mov dword [rsp + 0x4c], eax
mov esi, r9d
mov rcx, qword [rbp - 0x30]
mov qword [rcx], 2
mov eax, esi
jmp 0x18001d0d4
mov ecx, dword [rsp + 0x54]
mov eax, dword [rsp + 0x54]
or ecx, eax
mov eax, dword [rbp - 0x40]
sub ecx, eax
mov edx, dword [rsp + 0x54]
add edx, ecx
mov ecx, dword [rsp + 0x54]
mov eax, dword [rbp - 0x78]
sub ecx, eax
cmp edx, ecx
je 0x18001d0d2
movzx r9d, byte [0x18004e6ff]
xor r8d, r8d
mov qword [rsp + 0x20], rbx
lea edx, [r8 + 0x36]
lea ecx, [rdx - 0xf]
call fcn.180023998
mov qword [0x18004e7f8], rax
test rax, rax
js 0x18001c2fa
mov ecx, dword [0x18004e85c]
add ecx, 0xde84749f
sub qword [rbp - 0x48], rcx
mov eax, dword [0x1807446d0]
xor r9d, r9d
mov dword [rsp + 0x3c], eax
mov edx, 0xf4
mov eax, dword [rsp + 0x3c]
add eax, 0x66b3
mov qword [rsp + 0x20], rbx
mov dword [rbp - 0x78], eax
lea r8d, [r9 + 0x2d]
mov al, byte [0x1807446d0]
mov byte [0x18004e79f], al
mov eax, dword [rsp + 0x3c]
add eax, 0x3d90
mov dword [rbp - 0x40], eax
movsx ecx, word [rsp + 0x44]
mov al, byte [rbp - 0x48]
add ecx, 0x7fdc04ba
sub al, 0x55
mov dword [0x18004e84c], ecx
and sil, al
lea ecx, [rdx - 0x62]
mov eax, dword [rsp + 0x3c]
add eax, 0x10d1
mov byte [rsp + 0x38], sil
mov dword [rbp - 0x78], eax
call fcn.180023998
mov word [0x18004e800], ax
movzx eax, word [0x18004e800]
test ax, ax
jle 0x18001c39b
mov eax, dword [0x18004e838]
mov dword [0x18094efec], eax
mov al, byte [rsp + 0x30]
sub al, 5
mov byte [0x18004e7ce], al
jmp 0x18001c423
mov al, byte [rsp + 0x30]
test al, al
je 0x18001c3ce
movsxd rcx, dword [0x18004e860]
mov eax, dword [0x18004e860]
add eax, dword [0x18004e7f8]
mov sil, byte [rsp + 0x50]
add eax, ecx
sub sil, 0x2d
mov dword [0x18004e860], eax
mov byte [rsp + 0x38], sil
jmp 0x18001c423
movsx eax, word [0x18004e7f4]
mov edx, ebx
cmp dword [0x18004e7d8], eax
mov ecx, ebx
movzx eax, byte [reloc.mozglue.dll_export_full.dll_Ordinal_116]
setne dl
cmp qword [0x18004e7f8], rax
setne cl
test edx, ecx
je 0x18001c423
cmp byte [0x18004e7e6], bl
mov ecx, ebx
movsx edx, word [rsp + 0x40]
movzx eax, word [rsp + 0x34]
sete cl
add edx, ecx
mov ecx, ebx
test ax, ax
not edx
sete cl
add ecx, dword [rbp - 0x68]
xor ecx, edx
mov dword [0x18004e7d8], ecx
movzx ecx, word [0x18004e804]
mov edx, 0xffffb4ab
mov eax, dword [rsp + 0x48]
sub eax, ecx
mov dword [rsp + 0x48], eax
mov ecx, dword [rsp + 0x68]
mov eax, dword [rsp + 0x68]
xor ecx, eax
sub edx, ecx
mov ecx, dword [rbp - 0x78]
mov eax, dword [rbp - 0x40]
add ecx, edx
add eax, ecx
cmp byte [r14], 0x8b
mov dword [rbp - 0x78], eax
jne 0x18001c55e
cmp byte [r14 + 1], r15b
jne 0x18001c55e
cmp byte [r14 + 2], r15b
jne 0x18001c55e
cmp byte [r14 + 3], 0x25
jne 0x18001c55e
movzx eax, word [rsp + 0x40]
mov edx, 0xfb
movsx r9d, byte [0x18004e7de]
mov r8d, 8
mov word [rsp + 0x20], ax
lea ecx, [rdx + 1]
call fcn.1800237f8
mov eax, dword [0x1807446d0]
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x3c]
add eax, 0x2ae
mov dword [rsp + 0x60], eax
mov ecx, dword [rsp + 0x3c]
mov eax, dword [rbp - 0x78]
add ecx, eax
mov al, byte [0x1807446d0]
mov dword [rsp + 0x68], ecx
mov ecx, ebx
mov byte [0x18004e726], al
mov rax, qword [rsp + 0x70]
test rax, rax
sete cl
add cx, word [0x18004e810]
mov word [0x18004e82c], cx
mov eax, dword [rsp + 0x3c]
add eax, 0x33e
mov dword [rsp + 0x3c], eax
mov edx, dword [rsp + 0x3c]
mov eax, dword [rsp + 0x3c]
or edx, eax
mov ecx, dword [rsp + 0x3c]
mov eax, dword [rsp + 0x68]
imul ecx, eax
mov eax, dword [rsp + 0x68]
add ecx, edx
cmp ecx, eax
je 0x18001d0d2
mov eax, dword [0x18004e860]
test eax, eax
jne 0x18001c552
mov eax, dword [rsp + 0x78]
cmp dword [0x18004e83c], eax
setg bl
add rbx, 0xfffffffffffffffe
cmp rbx, qword [0x18004e820]
jbe 0x18001c552
mov rax, qword [rbp - 0x50]
mov ecx, dword [0x18004e85c]
imul ecx, eax
mov dword [0x18004e85c], ecx
mov eax, 4
mov esi, eax
jmp 0x18001cf6d
mov eax, dword [rbp - 0x5c]
mov esi, 0x39
movsx rcx, byte [rsp + 0x30]
xor r9d, r9d
xor edx, edx
mov qword [rsp + 0x20], 0xd3
mov r8d, 0xe2
call fcn.180023998
cmp ax, 0xf
mov edx, ebx
mov ecx, ebx
mov r15, rax
setle dl
test ax, ax
setle cl
cmp ecx, edx
je 0x18001c5b6
cmp byte [0x18004e7cf], bl
je 0x18001c5b6
movsx ecx, word [rsp + 0x40]
imul ecx, ecx, 0xdee8cda3
mov dword [0x18004e838], ecx
mov rax, qword [rbp - 0x50]
add rax, rdi
mov qword [rbp - 0x50], rax
sub rsi, rdi
jne 0x18001c566
mov sil, byte [rsp + 0x38]
lea eax, [r13 - 0x45]
mov byte [0x18004e7df], al
mov edx, ebx
mov eax, dword [0x1807446d0]
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x3c]
movzx ecx, byte [reloc.mozglue.dll_export_full.dll_Ordinal_116]
add eax, 0x7e
cmp ecx, dword [0x18004e84c]
mov qword [0x18004e830], rdi
setg dl
mov dword [rbp - 0x5c], eax
cmp cl, 0x21
mov eax, ebx
seta al
cmp edx, eax
jb 0x18001c637
mov edx, dword [rsp + 0x58]
mov r9b, 9
mov r8b, 0x97
mov cl, 0x44
call fcn.180023524
mov byte [0x18004e6ff], al
mov al, byte [0x18004e6ff]
mov rax, qword [rbp - 0x80]
mov dword [0x18004e73c], eax
jmp 0x18001c689
mov al, byte [0x18004e7df]
cmp sil, al
jne 0x18001c689
mov eax, dword [rsp + 0x5c]
mov r8d, ebx
neg eax
movsx eax, byte [0x18004e7cf]
sbb ecx, ecx
not ecx
and ecx, 0x93
cmp eax, ecx
movzx eax, word [0x18004e830]
not ax
mov ecx, ebx
sete r8b
cmp word [0x18004e7dc], bx
cmove cx, ax
movsx eax, r13w
movsx r15d, cx
imul r15d, eax
xor r15w, r8w
mov eax, dword [rsp + 0x3c]
mov r9d, 0x5b
add eax, 0x9519
mov dword [rsp + 0x68], eax
mov ecx, dword [rsp + 0x4c]
movsx r8, word [0x18004e800]
movsx rdx, word [0x18004e7f4]
mov qword [rsp + 0x20], rcx
mov rcx, qword [0x18004e840]
call fcn.180023998
mov qword [0x18004e840], rax
mov rax, qword [0x18004e840]
test rax, rax
je 0x18001c6ec
mov r10d, dword [rsp + 0x78]
mov eax, r10d
shl eax, 6
mov byte [rsp + 0x30], dil
mov dword [0x18004e868], eax
jmp 0x18001c727
mov al, byte [0x18004e726]
test al, al
je 0x18001c700
cmp byte [0x18004e7cf], bl
mov ecx, edi
jne 0x18001c702
mov ecx, ebx
movzx eax, word [0x18004e7f0]
mov r10d, dword [rsp + 0x78]
cmp ecx, eax
jbe 0x18001c727
movsx eax, byte [0x18004e727]
mov ecx, dword [rsp + 0x58]
imul eax, ecx
mov qword [0x18004e850], rax
mov eax, dword [rsp + 0x3c]
mov edx, ebx
mov rcx, qword [0x18004e850]
add eax, 0xdc
mov dword [rbp - 0x5c], eax
mov rax, qword [rbp - 0x80]
cmp rcx, rax
mov eax, ebx
setbe dl
cmp rcx, 0x1a
setbe al
cmp edx, eax
je 0x18001c78d
movzx ecx, byte [0x18004e73b]
mov eax, dword [0x18004e7e0]
not ecx
xor rcx, rax
mov qword [rbp - 0x80], rcx
movabs rcx, 0xd0a7c93c7d75a
movsx rdx, byte [rsp + 0x32]
mov rax, qword [0x18004e7f8]
add rax, rcx
add rax, rdx
mov qword [0x18004e7f8], rax
mov ecx, dword [rsp + 0x68]
mov esi, 3
mov eax, dword [rsp + 0x68]
or ecx, eax
mov al, byte [r14]
sub ecx, 0x9132
mov dword [rbp - 0x5c], ecx
cmp al, 0xb8
jne 0x18001ccc2
mov r9d, 0xff
cmp byte [r14 + 5], r9b
jne 0x18001ca53
cmp byte [r14 + 6], 0xe0
jne 0x18001cf7f
mov rax, qword [0x18004e808]
movzx ecx, byte [0x18004e6fe]
mov word [rsp + 0x34], ax
movsx eax, byte [0x18004e7e6]
cmp ecx, eax
jg 0x18001c85b
cmp word [0x18004e7f0], bx
je 0x18001c835
mov eax, dword [0x18004e858]
test eax, eax
je 0x18001c835
mov ecx, dword [reloc.mozglue.dll_export_full.dll_Ordinal_116]
mov eax, dword [0x18004e85c]
not eax
xor ecx, eax
imul ecx, dword [0x18004e7e0]
test ecx, ecx
sete al
sub r9b, al
mov al, byte [rsp + 0x30]
add r9b, al
movsxd rax, r10d
sub qword [0x18004e830], rax
mov byte [0x18004e7df], r9b
jmp 0x18001c880
mov r10, qword [rbp - 0x68]
mov r13, qword [0x18004e7f8]
test r10, r10
jne 0x18001c84b
movsx r13, byte [rsp + 0x31]
mov r8b, byte [rsp + 0x38]
shl r8b, 4
mov byte [rsp + 0x30], r8b
jmp 0x18001c884
cmp dword [rsp + 0x7c], ebx
jne 0x18001c880
mov al, byte [0x18004e7e7]
movsx ecx, word [0x18004e810]
test al, al
cmovne ecx, dword [0x18004e828]
mov eax, ecx
mov qword [0x18004e830], rax
mov r10, qword [rbp - 0x68]
mov eax, dword [0x1807446d0]
mov dword [rsp + 0x3c], eax
mov rax, rbx
mov rcx, qword [rbp - 0x80]
imul rcx, qword [rbp - 0x28]
cmp word [0x18004e81c], bx
sete al
cmp rax, rcx
je 0x18001c8db
movsx eax, word [0x18004e7f4]
cmp r12d, eax
jne 0x18001c8c9
mov r12d, dword [0x18004e7e0]
movzx eax, word [0x18004e82c]
shr r12d, 4
jmp 0x18001c8db
mov eax, dword [rsp + 0x48]
sub eax, 0x69e0dc0d
cdqe
mov qword [0x18004e7f8], rax
mov eax, dword [rsp + 0x3c]
mov ecx, ebx
add eax, 0x6e
cmp r15w, word [rsp + 0x50]
mov dword [rbp - 0x78], eax
mov eax, ebx
setne cl
cmp r15w, 0x19
setne al
cmp ecx, eax
jae 0x18001c93e
mov dword [rsp + 0x58], ebx
mov ecx, dword [rsp + 0x48]
add ecx, 0x21b6
sar r15w, 5
add ecx, r12d
mov byte [0x18004e73b], r15b
mov dword [rsp + 0x48], ecx
mov eax, dword [rsp + 0x58]
movzx eax, word [0x18004e810]
mov word [0x18004e804], ax
movsx eax, word [rsp + 0x44]
add dword [0x18004e85c], eax
jmp 0x18001c97e
mov eax, dword [0x18004e774]
mov rcx, rbx
test eax, eax
setne cl
lea rax, [rcx + r13]
not rax
test rax, rax
je 0x18001c97e
mov al, byte [0x18004e6ff]
movsx ecx, r15w
test al, al
mov eax, ecx
jne 0x18001c96c
mov eax, dword [rsp + 0x48]
mov dword [0x18004e868], eax
mov al, byte [rsp + 0x31]
add al, 0x3e
add al, cl
mov byte [rsp + 0x31], al
mov eax, dword [rsp + 0x3c]
add eax, 0x28a
sar r13, 6
mov dword [rsp + 0x68], eax
mov rdx, qword [rsp + 0x70]
mov dword [0x18004e838], r13d
xor edx, 0xfffffff7
mov eax, dword [rsp + 0x3c]
add eax, 0x1ce
mov dword [rbp - 0x5c], eax
mov ecx, dword [rsp + 0x68]
mov eax, dword [rsp + 0x68]
imul ecx, eax
mov eax, dword [rbp - 0x5c]
imul eax, ecx
imul ecx, eax, 0x16e
mov eax, dword [rbp - 0x78]
add eax, 0x162
cmp ecx, eax
je 0x18001d0d2
mov ecx, 0x11a
not edx
movzx eax, byte [0x18004e773]
add eax, edx
cdqe
add rax, r10
je 0x18001c9f4
mov al, byte [0x1807446d0]
mov byte [rsp + 0x32], al
jmp 0x18001c9fe
cmp byte [0x18004e73b], bl
mov al, byte [rsp + 0x30]
sub ecx, edi
test ecx, ecx
jg 0x18001c9d8
mov r9b, 0x3f
mov byte [rsp + 0x20], bl
mov r8b, 0xd9
mov dl, r10b
xor ecx, ecx
call fcn.1800236a4
movzx eax, al
mov word [rsp + 0x34], ax
movzx eax, word [rsp + 0x34]
test ax, ax
je 0x18001ce71
movzx eax, word [0x18004e7f4]
mov ecx, 0x7594
add ax, cx
mov word [0x18004e81c], ax
mov eax, dword [rsp + 0x58]
add eax, edi
mov dword [rsp + 0x58], eax
jmp 0x18001ce71
cmp byte [r14 + 5], 0x50
jne 0x18001cf7f
cmp byte [r14 + 6], 0xc3
jne 0x18001cf7f
movsx eax, byte [0x18004e7de]
test r15w, r15w
mov edx, ebx
mov ecx, ebx
cmove ecx, eax
test ecx, ecx
movsx ecx, byte [rsp + 0x31]
mov eax, dword [0x18004e7d8]
sete dl
sub eax, ecx
add eax, edx
mov eax, ebx
sete al
mov dword [0x18004e85c], eax
mov al, byte [0x18004e726]
test al, al
je 0x18001cabe
movzx ecx, word [0x18004e7dc]
mov eax, dword [rsp + 0x58]
and ax, cx
sub cx, ax
mov word [0x18004e7dc], cx
jmp 0x18001cade
mov rax, qword [rsp + 0x70]
not rax
test rax, rax
je 0x18001cade
mov eax, dword [rsp + 0x58]
mov ecx, 0x643b
sub ax, cx
mov word [0x18004e804], ax
mov eax, dword [0x1807446d0]
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x58]
and eax, dword [0x1808ab220]
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x3c]
add eax, 0xda
cmp byte [0x18004e6fe], bl
mov dword [rsp + 0x60], eax
je 0x18001cb25
mov al, byte [0x1807446d0]
mov byte [0x18004e7df], al
movzx eax, word [rsp + 0x34]
mov word [0x18004e7e8], ax
jmp 0x18001cb54
mov eax, dword [0x18004e774]
not eax
test eax, eax
je 0x18001cb54
mov eax, 0x7e36
mov qword [0x18004e7f8], 0x56
xor r15w, ax
movzx eax, word [rsp + 0x44]
add r15w, ax
mov word [rsp + 0x44], r15w
mov eax, dword [rsp + 0x3c]
add eax, 0x10c
mov dword [rbp - 0x40], eax
movsx eax, word [rsp + 0x40]
cmp dword [0x18004e7ec], eax
jne 0x18001cb79
mov eax, dword [0x1809540d4]
sub dword [0x18004e84c], eax
mov eax, dword [rsp + 0x3c]
add eax, 0x394
mov dword [rbp - 0x78], eax
mov ecx, dword [rbp - 0x5c]
mov eax, dword [rbp - 0x78]
imul ecx, eax
mov eax, dword [rbp - 0x40]
sub eax, 0x4f
cmp eax, ecx
je 0x18001d0d2
movzx r8d, byte [rsp + 0x38]
mov edx, ebx
mov ecx, dword [0x18004e838]
mov eax, ebx
cmp r8d, ecx
setge dl
cmp r8b, 0x5a
setae al
cmp edx, eax
jbe 0x18001cc0c
mov ecx, dword [rsp + 0x4c]
mov eax, ebx
cmp word [0x18004e810], bx
mov edx, dword [0x18004e828]
sete al
imul ecx, eax
movzx eax, byte [0x18004e73b]
sub ax, dx
sub ax, word [0x18004e7e0]
sub ax, cx
mov ecx, 0x66fd
add ax, cx
mov word [0x18004e7e8], ax
mov eax, dword [0x18004e864]
add eax, 0xc5b34892
mov dword [0x18004e83c], eax
jmp 0x18001cc19
mov rax, qword [0x18004e7d0]
mov edx, dword [0x18004e828]
cmp dword [rsp + 0x5c], ebx
not edx
mov eax, ebx
mov byte [0x18004e79f], sil
sete al
mov r8d, ebx
and eax, r10d
add eax, edx
mov edx, ebx
cmp eax, 0x52
movsx eax, word [rsp + 0x34]
movzx ecx, byte [0x18004e79f]
sete r8b
cmp word [rsp + 0x50], bx
sete dl
add edx, r10d
imul edx, eax
sub edx, r8d
mov dword [0x18004e868], edx
test ecx, ecx
je 0x18001cc9e
sub ecx, edi
je 0x18001cc87
sub ecx, edi
je 0x18001cc75
cmp ecx, edi
jne 0x18001ce71
jmp 0x18001ccb9
movzx eax, byte [0x18004e6fe]
mov dword [0x1809672f4], eax
jmp 0x18001ce71
movsx ecx, word [rbp - 0x48]
mov eax, 0x51a
cwde
imul ecx, eax
mov word [rsp + 0x40], cx
jmp 0x18001ce71
mov ecx, dword [rsp + 0x4c]
movzx eax, word [0x18004e82c]
xor ecx, 0x8de4056b
sub ax, cx
mov word [0x18004e82c], ax
mov al, byte [rsp + 0x32]
jmp 0x18001ce71
cmp al, 0xa1
jne 0x18001ce7d
mov r9d, 0xff
cmp byte [r14 + 5], r9b
jne 0x18001cde9
cmp byte [r14 + 6], 0xe0
jne 0x18001cf7f
cmp dword [rsp + 0x7c], ebx
je 0x18001cd51
mov cl, byte [0x18004e828]
call fcn.1800233e4
movzx eax, al
mov edx, ebx
mov qword [0x18004e7f8], rax
mov ecx, ebx
mov al, byte [rsp + 0x31]
movzx eax, word [0x18004e7e8]
movsx rax, byte [0x18004e7de]
imul rax, qword [0x18004e820]
test rax, rax
mov al, byte [rsp + 0x32]
sete dl
cmp byte [0x18004e7de], al
sete cl
sub edx, ecx
not edx
test edx, edx
je 0x18001cdca
movsx eax, byte [rsp + 0x31]
shl eax, 3
cdqe
mov qword [0x18004e850], rax
jmp 0x18001cdca
movzx eax, word [0x18004e7e4]
test ax, ax
je 0x18001cd8c
mov al, byte [rsp + 0x31]
movzx ecx, word [0x18004e82c]
mov rax, qword [0x18004e840]
add ax, cx
mov word [0x18004e82c], ax
movsx ecx, word [rsp + 0x34]
mov eax, dword [rsp + 0x4c]
sub cx, ax
mov word [rsp + 0x34], cx
jmp 0x18001cdca
cmp dword [rsp + 0x5c], ebx
je 0x18001cda2
movsx ecx, byte [0x18004e726]
sar ecx, 6
mov dword [rsp + 0x48], ecx
jmp 0x18001cdca
mov al, byte [0x18004e7e7]
test al, al
jne 0x18001cdb5
cmp word [0x18004e7dc], bx
je 0x18001cdca
mov dword [0x18004e73c], 0xe30
mov qword [0x18004e808], 0x29c0c1ea
movzx eax, word [rsp + 0x34]
mov rcx, qword [rbp - 0x30]
sar ax, 5
mov word [0x18004e7dc], ax
mov rax, rsi
mov qword [rcx], rdi
jmp 0x18001d0d4
cmp byte [r14 + 5], 0x50
jne 0x18001cf7f
cmp byte [r14 + 6], 0xc3
jne 0x18001cf7f
movzx ecx, word [0x18004e814]
mov eax, dword [0x18004e838]
cmp ecx, eax
jle 0x18001ce28
movsx ecx, word [rsp + 0x40]
movzx eax, word [rsp + 0x40]
sub ecx, dword [rsp + 0x7c]
add ax, cx
mov word [rsp + 0x40], ax
jmp 0x18001ce71
movsx rax, byte [0x18004e7de]
imul rax, qword [0x18004e850]
test rax, rax
je 0x18001ce71
mov rax, qword [0x18004e7d0]
test rax, rax
sete al
sub al, byte [0x18004e727]
add al, byte [0x18004e7cf]
not al
movzx eax, al
mov byte [reloc.mozglue.dll_export_full.dll_Ordinal_116], al
imul eax, eax, 0x1f93a9b4
movsxd rcx, eax
mov qword [0x18004e820], rcx
mov rcx, qword [rbp - 0x30]
mov qword [rcx], rdi
jmp 0x18001c295
cmp al, 0x90
jne 0x18001cf79
cmp byte [r14 + 1], al
jne 0x18001cf79
cmp byte [r14 + 3], 0xe9
jne 0x18001cf79
mov r9d, 0x3a
mov word [rsp + 0x20], bx
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.1800237f8
movsx edx, ax
mov dword [0x18004e7d8], edx
test edx, edx
je 0x18001cf0a
mov cl, byte [rsp + 0x38]
call fcn.1800233e4
movzx eax, al
mov dword [0x18004e828], eax
test eax, eax
je 0x18001cf5a
mov rcx, qword [0x18004e7d0]
add rcx, 0xffffffffffffe1a7
add rcx, qword [0x18004e820]
mov qword [0x18004e7d0], rcx
movsx edx, word [rsp + 0x34]
mov eax, dword [rsp + 0x4c]
movsx ecx, ax
imul ecx, edx
mov word [rsp + 0x34], cx
jmp 0x18001cf5a
mov r8d, dword [0x18004e838]
mov ecx, ebx
mov eax, dword [rsp + 0x4c]
movsx edx, byte [rsp + 0x30]
cmp byte [0x18004e73b], bl
not edx
sete cl
xor edx, dword [rsp + 0x7c]
xor ecx, dword [0x18004e7e0]
add r8d, eax
and r8d, ecx
movsx ecx, word [0x18004e7e4]
or ecx, edx
sub ecx, r8d
mov dword [rsp + 0x58], ecx
mov ecx, 0x34f3
mov eax, dword [0x18004e860]
add ax, cx
mov word [rsp + 0x40], ax
mov al, byte [0x18004e726]
test al, al
je 0x18001cf68
mov eax, dword [rsp + 0x58]
mov eax, 4
mov rcx, qword [rbp - 0x30]
mov qword [rcx], rax
jmp 0x18001c295
mov r9d, 0xff
mov edx, dword [rbp - 0x1c]
mov eax, dword [rbp - 0x18]
add edx, eax
mov r8d, dword [rbp - 0x1c]
mov eax, dword [rsp + 0x60]
or r8d, edx
imul ecx, eax, 0x2fd
cmp ecx, r8d
je 0x18001d0d2
cmp byte [r14 + 5], r9b
jne 0x18001cfef
cmp byte [r14 + 6], 0x25
jne 0x18001cfef
mov edx, 0x1c
mov al, byte [rsp + 0x31]
sub edx, edi
mov eax, 0x40
mov word [0x18004e81c], ax
mov al, byte [rsp + 0x32]
test edx, edx
jg 0x18001cfb3
mov rcx, qword [rbp - 0x28]
mov eax, edi
add ecx, 0xffff1762
mov dword [0x18004e868], ecx
mov rcx, qword [rbp - 0x30]
mov qword [rcx], 7
jmp 0x18001d0d4
cmp byte [r14], 0x48
jne 0x18001d0d2
cmp byte [r14 + 1], r9b
jne 0x18001d0d2
cmp byte [r14 + 2], 0x25
jne 0x18001d0d2
mov edx, 0x2e
mov r8d, 0xdd
lea ecx, [rdx - 0x20]
call fcn.18002306c
mov word [0x18004e7e4], ax
movzx eax, word [0x18004e7e4]
test ax, ax
je 0x18001d082
movzx eax, byte [0x18004e773]
cmp dword [0x18004e818], eax
ja 0x18001d05a
movzx ecx, word [0x18004e814]
mov rax, qword [rbp - 0x80]
add ecx, 0x59
add rax, rcx
mov qword [rbp - 0x80], rax
jmp 0x18001d0c2
movsx ecx, word [0x18004e7f4]
mov eax, dword [0x18004e838]
imul eax, ecx
mov dword [0x18004e838], eax
movsxd rcx, dword [rsp + 0x48]
mov rax, qword [rbp - 0x50]
sub rax, rcx
mov qword [rbp - 0x50], rax
jmp 0x18001d0c2
mov al, byte [0x18004e7df]
mov rcx, qword [rbp - 0x80]
test al, al
mov dl, byte [0x18004e850]
not cl
sete al
not dl
add dl, al
movzx eax, word [0x18004e804]
xor al, cl
movsx ecx, dl
movsx edx, al
mov eax, dword [rsp + 0x78]
imul edx, ecx
movsx eax, al
movsx ecx, dl
imul ecx, eax
mov byte [0x18004e727], cl
mov eax, edi
mov rcx, qword [rbp - 0x30]
mov esi, 3
mov qword [rcx], rsi
jmp 0x18001d0d4
xor eax, eax
mov rcx, qword [rbp + 0x28]
xor rcx, rsp
call fcn.18002a1d0
lea r11, [rsp + 0x130]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret