Function at 0x1800164c8
Capabilities:
Contain obfuscated stackstrings
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x400]
sub rsp, 0x500
mov rax, qword [0x18004ed78]
xor rax, rsp
mov qword [rbp + 0x3f0], rax
mov rax, qword [rbp + 0x460]
xor edi, edi
mov qword [rbp + 8], rax
movzx eax, word [0x18004e804]
movzx eax, word [0x18004e850]
movsxd r14, dword [0x18004e7e0]
mov word [rsp + 0x60], ax
mov r13d, dword [0x18004e838]
mov qword [rbp + 0x20], r9
mov r9, qword [0x18004e840]
movsx rax, word [0x18004e810]
movsx r15, byte [0x18004e7e6]
mov qword [rsp + 0x78], rax
mov eax, 0xffff8b20
mov word [rsp + 0x58], ax
mov eax, 0xb3
mov word [rsp + 0x54], ax
movzx eax, byte [0x18004e6ff]
mov dword [rsp + 0x64], eax
mov eax, dword [0x18004e838]
movzx esi, byte [0x18004e73b]
mov byte [rsp + 0x50], al
movabs rax, 0xe8fcd080151e5
mov dword [rsp + 0x5c], 0x48ab
mov qword [rbp + 0x28], r8
mov r8d, dword [0x18004e7ec]
mov byte [rsp + 0x51], 0xa2
mov rbx, qword [0x18004e7d0]
mov dword [rsp + 0x6c], 0x73f9c927
mov qword [rbp - 0x80], rax
mov al, byte [0x18004e83c]
mov byte [rsp + 0x52], 0x32
mov qword [rbp - 0x30], 0xfe1b
mov byte [rsp + 0x5c], 0x1e
mov byte [rsp + 0x5c], al
movsx rax, word [0x18004e810]
mov qword [rbp + 0x48], rax
movzx eax, word [0x18004e800]
mov byte [rsp + 0x5c], al
mov byte [rsp + 0x5c], 0x4d
mov al, byte [0x18004e7e7]
movzx eax, byte [0x18004e73b]
mov word [rsp + 0x5c], ax
mov eax, 0x49c6
mov byte [rsp + 0x5c], 7
mov word [rsp + 0x5c], ax
movzx eax, word [0x18004e864]
mov word [rsp + 0x5c], ax
movsx eax, byte [0x18004e7e7]
mov dword [rbp - 0x64], eax
movzx eax, word [0x18004e850]
mov word [rsp + 0x5c], ax
movzx eax, byte [0x18004e6fe]
mov word [rsp + 0x5c], ax
mov dword [rbp - 0x64], 0xabc1
movsx eax, byte [0x18004e726]
mov word [rsp + 0x5c], ax
mov eax, dword [0x1807446d0]
mov dword [rbp - 0x64], 0x2ba65b26
mov dword [rsp + 0x5c], eax
mov eax, dword [0x18004e838]
mov qword [rbp - 0x20], rdx
mov qword [rbp], rcx
mov dword [rsp + 0x70], r14d
mov byte [rsp + 0x53], 0x21
mov dword [rbp - 0x68], 0x831d
mov dword [rsp + 0x74], r15d
mov dword [rbp - 0x78], reloc.mozglue.dll_export_full.dll_Ordinal_116
test eax, eax
je 0x18001668d
mov eax, dword [0x18004e860]
jmp 0x180016693
mov eax, dword [0x18004e838]
cdqe
sub r13w, 0xc
mov qword [rbp - 0x80], rax
mov ecx, 0x12b
mov eax, dword [reloc.mozglue.dll_export_full.dll_Ordinal_116]
mov r12d, 1
add r13w, ax
mov eax, dword [rsp + 0x5c]
add eax, 0x6e7d
mov dword [rbp - 0x64], eax
mov eax, 0xe0
sub al, r9b
add byte [0x18004e6fe], al
mov eax, dword [rsp + 0x5c]
add eax, 0x51
mov dword [rsp + 0x68], eax
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x1800166f6
movzx eax, word [rsp + 0x60]
mov edx, 0x82
sub ax, dx
mov word [0x18004e814], ax
movzx eax, word [0x18004e7f4]
add ax, r12w
mov word [0x18004e7f4], ax
sub rcx, r12
jne 0x1800166d8
mov eax, dword [rsp + 0x5c]
add eax, 0xe244
mov qword [0x18004e820], 0xebe9
mov dword [rbp - 0x50], eax
mov ecx, dword [rbp - 0x50]
mov eax, dword [rsp + 0x68]
add ecx, 0xf
imul edx, eax, 0xfa3a
or edx, ecx
xor edx, 0x4fed77
mov dword [rbp - 0x48], edx
movsx ecx, byte [rsp + 0x50]
mov eax, dword [0x1807446d0]
add ecx, 0x43
mov dword [rsp + 0x5c], ecx
mov dword [rbp - 0x70], eax
mov eax, dword [rbp - 0x70]
add eax, 0x1e8
mov dword [rbp - 0x64], eax
movsx rcx, byte [rsp + 0x50]
mov eax, dword [rbp - 0x70]
add rcx, r9
add eax, 0x205
mov dword [0x18004e85c], 2
mov dword [rbp - 0x28], eax
and r9, rcx
movsx eax, byte [rsp + 0x51]
mov ecx, 0x182
sub eax, 0x7573
mov qword [rbp - 0x38], r9
cdqe
add r8, rax
mov qword [rbp - 0x58], r8
mov eax, dword [rsp + 0x6c]
add byte [0x18004e6fe], r12b
sub rcx, r12
jne 0x18001679c
mov eax, dword [rbp - 0x70]
add eax, 0x1af
mov dword [rbp - 0x28], eax
mov eax, 0xf4
xor ax, word [0x18004e810]
jne 0x1800167d4
mov ecx, dword [rsp + 0x6c]
movsx eax, r13w
imul ecx, eax
test ecx, ecx
je 0x1800167e1
movzx eax, word [rsp + 0x54]
add r13w, r13w
sub r13w, ax
movzx ecx, word [rsp + 0x58]
mov r9d, 2
xor r8d, r8d
mov qword [rbp - 8], rdi
xor edx, edx
mov word [rsp + 0x20], di
call fcn.180023820
movsx rcx, ax
mov qword [rsp + 0x78], rcx
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x18001681e
mov dword [0x18004e818], 0x97014866
jmp 0x18001684b
movzx eax, word [0x18004e800]
movzx ecx, byte [0x18004e6fe]
sub cx, ax
mov eax, dword [rsp + 0x64]
add ax, cx
mov ecx, dword [rsp + 0x64]
add cx, ax
add cx, r12w
not cx
mov word [0x18004e81c], cx
mov eax, 4
mov dword [rbp - 0x50], edi
mov byte [0x18004e7e7], al
mov word [rsp + 0x54], ax
movzx eax, word [0x18004e82c]
shl ax, 6
mov word [rsp + 0x58], ax
movsx eax, byte [0x18004e7e7]
mov ecx, eax
test al, al
je 0x1800168f5
sub ecx, r12d
je 0x1800168e3
sub ecx, r12d
je 0x1800168c2
sub ecx, r12d
je 0x1800168ac
cmp ecx, r12d
jne 0x18001691f
mov rcx, qword [rbp - 0x80]
movsx rax, byte [0x18004e7e6]
not rcx
add rax, rcx
mov qword [rsp + 0x78], rax
jmp 0x18001691f
mov rax, qword [0x18004e840]
mov ecx, 0x29
sub cl, al
add byte [0x18004e773], cl
jmp 0x18001691f
mov rax, qword [0x18004e7d0]
test rax, rax
je 0x1800168d6
mov eax, dword [0x18004e858]
jmp 0x1800168dc
mov eax, dword [0x18004e7d8]
mov word [rsp + 0x60], ax
jmp 0x18001691f
imul eax, dword [0x18004e7f8], 0xffff904e
add dword [0x18004e7d8], eax
jmp 0x18001691f
movzx eax, word [0x18004e82c]
mov ecx, 0x5f8f
add ax, cx
mov word [rsp + 0x54], ax
mov eax, dword [0x18004e864]
lea edx, [rax + rax]
movsx eax, word [rsp + 0x54]
sub edx, eax
mov dword [0x18004e864], edx
mov dl, byte [0x18004e84c]
mov r8b, 0x61
mov cl, 0xed
mov qword [rbp + 0x10], rdi
call fcn.180023244
xor r10d, r10d
movzx r12d, al
mov qword [rbp - 0x10], r12
test al, al
je 0x18001699a
movzx ecx, word [0x18004e7e4]
movzx eax, word [rsp + 0x54]
cmp ax, cx
jge 0x18001696a
movsx rbx, word [rsp + 0x54]
mov eax, dword [rsp + 0x6c]
mov qword [0x18004e850], rax
sar rbx, 8
jmp 0x1800169b8
cmp byte [0x18004e773], r10b
jne 0x18001697a
movzx eax, word [0x18004e7e8]
mov al, byte [rsp + 0x50]
mov eax, dword [0x18004e868]
movsx ecx, word [0x18004e7e4]
add eax, 0x7436b980
add eax, ecx
mov dword [0x18004e868], eax
jmp 0x1800169b8
movzx eax, word [rsp + 0x54]
mov ecx, 0xc0
cmp cx, ax
jne 0x1800169b8
mov rax, qword [0x18004e7d0]
add al, 0x49
add byte [0x18004e7de], al
movsx eax, byte [0x18004e7e7]
mov edx, r10d
cmp ax, word [0x18004e810]
mov ecx, r10d
mov al, byte [0x18004e7e7]
setle dl
mov qword [rbp - 0x40], r10
cmp al, 0x3a
setle cl
cmp edx, ecx
ja 0x180016a0c
movsxd rcx, dword [0x18004e858]
mov eax, dword [0x18004e858]
sub rcx, rbx
sub ecx, eax
mov dword [0x18004e858], ecx
mov r9d, dword [reloc.mozglue.dll_export_full.dll_Ordinal_116]
sub r9d, 0xc4
mov qword [rbp - 0x38], r9
mov al, byte [rsp + 0x51]
mov r11d, 1
mov rcx, qword [rbp - 0x80]
mov eax, 0xb3f1cdaf
not cx
movsx ebx, r13w
and rbx, rax
mov qword [rbp + 0x38], r10
mov eax, r10d
mov qword [rbp + 0x40], r10
cmove ax, cx
mov word [0x18004e82c], ax
mov rcx, qword [rbp - 0x80]
mov eax, dword [0x18004e7d8]
sub rcx, r14
sar eax, 4
mov dword [0x18004e7e0], eax
mov qword [rbp - 0x80], rcx
movzx eax, word [0x18004e82c]
add byte [0x18004e773], al
cmp qword [0x18004e830], r15
je 0x180016acb
mov eax, dword [0x1807446d0]
mov qword [rbp - 0x58], rax
mov qword [rbp - 0x80], 4
mov rax, qword [rbp - 0x80]
dec rax
sub rax, 2
je 0x180016ac2
cmp rax, r11
jne 0x180016acb
mov rax, qword [0x18004e7d0]
movabs rcx, 0xd9afbb384acde
add rcx, rax
movzx eax, word [rsp + 0x54]
and ax, cx
mov word [rsp + 0x54], ax
lea eax, [rbx - 0x2bb73100]
mov dword [0x18004e83c], eax
jmp 0x180016acb
movsx rax, word [rsp + 0x60]
xor rbx, rax
mov byte [rsp + 0x50], 2
mov ecx, dword [0x18004e774]
movzx eax, word [0x18004e7e8]
add byte [0x18004e73b], 0x1d
add cx, ax
mov word [0x18004e7f0], cx
movsx ecx, byte [rsp + 0x50]
sub ecx, r11d
je 0x180016b40
cmp ecx, r11d
jne 0x180016b54
movsx eax, byte [rsp + 0x51]
movzx edx, byte [reloc.mozglue.dll_export_full.dll_Ordinal_116]
movsx rcx, word [rsp + 0x54]
not edx
add rcx, qword [0x18004e820]
sub edx, eax
movsxd rdx, edx
xor rcx, rdx
mov qword [0x18004e830], rcx
test r15d, r15d
je 0x180016b32
mov eax, dword [rsp + 0x64]
jmp 0x180016b38
mov eax, dword [0x18004e838]
mov byte [0x18004e7de], al
jmp 0x180016b54
mov eax, dword [rsp + 0x5c]
mov rcx, r10
cmp eax, 0x40372998
sete cl
mov qword [rsp + 0x78], rcx
mov dword [rbp + 0x88], 0x1c6b6a38
mov rax, r10
mov dword [rbp + 0x8c], 0x61695d6a
mov word [rbp + 0x90], 0x3a
add byte [rbp + rax + 0x88], 4
add rax, r11
cmp rax, 9
jb 0x180016b74
lea rax, [rbp + 0x88]
mov qword [rbp + 0x18], rax
movsx eax, byte [0x18004e726]
movzx eax, ax
imul ecx, eax, 0x74
cmp byte [0x18004e6fe], r10b
mov eax, dword [0x1807446d0]
mov qword [rbp - 0x18], r10
mov word [0x18004e7dc], cx
mov dword [rsp + 0x64], eax
je 0x180016c6e
mov r9b, byte [0x18004e820]
mov r8b, 0x58
xor edx, edx
xor ecx, ecx
call fcn.18002354c
mov byte [0x18004e6fe], al
xor r10d, r10d
movzx eax, word [rsp + 0x58]
movsx rcx, word [0x18004e810]
cmp cx, ax
jne 0x180016c5d
mov rax, qword [0x18004e840]
mov r8d, r10d
cmp rax, rcx
mov edx, r10d
movsx rcx, word [rsp + 0x54]
mov rax, qword [rsp + 0x78]
setle r8b
add r8d, 0xfffffffe
cmp rcx, rax
setne dl
add edx, r8d
jne 0x180016c5d
cmp byte [0x18004e6fe], r10b
lea r11d, [r10 + 1]
je 0x180016c49
movsx r15d, byte [0x18004e727]
lea eax, [r12 + 0x5f]
test rbx, rbx
mov byte [0x18004e79f], al
cmovne r15d, ebx
mov dword [rsp + 0x74], r15d
jmp 0x180016c6e
mov al, byte [rsp + 0x51]
movzx eax, word [0x18004e7f4]
mov rax, qword [0x18004e808]
jmp 0x180016c6e
mov esi, dword [0x18091f598]
mov r11d, 1
mov byte [rsp + 0x50], 0xb1
mov rax, qword [rsp + 0x78]
mov dword [0x18004e84c], eax
mov eax, dword [0x18004e820]
add eax, 0xffff1a00
mov qword [rbp - 0x60], r10
add esi, eax
mov eax, 0x831d
cmp ax, word [0x18004e7f0]
jbe 0x180016cd2
mov eax, dword [reloc.mozglue.dll_export_full.dll_Ordinal_116]
test r13w, r13w
jne 0x180016cab
movsx eax, byte [0x18004e7e7]
mov word [rsp + 0x58], ax
mov edx, 0x99a
movsx ecx, byte [0x18004e7e7]
mov eax, dword [0x18004e84c]
imul eax, ecx
mov dword [0x18004e84c], eax
sub rdx, r11
jne 0x180016cb5
jmp 0x180016cfc
mov eax, dword [rsp + 0x6c]
not eax
test eax, eax
je 0x180016cfc
movzx eax, word [0x18004e7f4]
sar ax, 7
mov byte [rsp + 0x52], al
movsx eax, word [rsp + 0x60]
imul eax, eax, 0xce77
mov dword [0x18004e7d8], eax
mov al, byte [rsp + 0x51]
mov ecx, r10d
add al, byte [0x18084fa18]
mov r8d, r10d
mov byte [rsp + 0x51], al
mov eax, dword [0x18004e73c]
not eax
mov dword [rsp + 0x5c], eax
mov edx, dword [rsp + 0x64]
imul edx, dword [0x18004e828]
mov al, byte [0x18004e727]
sub al, 0x34
mov byte [0x18004e79f], al
movsx eax, word [rsp + 0x54]
test edx, edx
cmove r8d, eax
mov rax, qword [rsp + 0x78]
test rax, rax
movsx eax, byte [rsp + 0x51]
sete cl
sub r8d, ecx
mov ecx, r10d
sub r8d, eax
movsx eax, word [0x18004e7e8]
add eax, r8d
cdqe
mov qword [0x18004e808], rax
mov al, byte [rsp + 0x51]
sub al, byte [0x18004e864]
cmp dword [0x18004e85c], r10d
mov byte [rsp + 0x51], al
movzx eax, word [0x1807446d0]
sete cl
mov word [0x18004e82c], ax
movzx eax, byte [0x18004e773]
cmp eax, ecx
jbe 0x180016dca
mov edx, 0xd6
movzx ecx, byte [0x18004e6ff]
mov eax, dword [rsp + 0x6c]
imul eax, ecx
mov dword [rsp + 0x6c], eax
mov rax, qword [0x18004e808]
add rax, r11
mov qword [0x18004e808], rax
sub rdx, r11
jne 0x180016da2
cmp byte [0x18004e727], r10b
je 0x180016e07
xor r9d, r9d
mov byte [rsp + 0x20], r10b
mov r8b, 0x5b
xor edx, edx
xor ecx, ecx
call fcn.1800236cc
xor r10d, r10d
movzx eax, al
cmp dword [0x18004e85c], 0xbede
mov word [rsp + 0x58], ax
je 0x180016e37
mov rax, qword [0x18004e840]
jmp 0x180016e37
mov edx, dword [0x18004e858]
movsx eax, word [0x18004e7e4]
not edx
cmp edx, eax
jle 0x180016e37
movzx eax, word [0x1807446d0]
mov word [0x18004e7e4], ax
imul rax, qword [rbp - 0x38], 0x50a6
mov qword [0x18004e840], rax
mov rax, qword [rbp + 8]
mov rbx, qword [rbp]
mov dword [rax], r10d
cmp rbx, 0xffffffffffffffff
je 0x180017103
movsx eax, byte [0x180943fac]
mov r14d, 0x400
add r15d, eax
mov edx, 1
mov ecx, r14d
mov dword [rsp + 0x74], r15d
call sub.mozglue.dll_export_full.dll_Ordinal_127
mov r8, qword [rbp - 0x20]
xor r9d, r9d
mov rcx, qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rdi, rax
mov qword [rsp + 0x40], r9
mov rdx, rbx
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x30], r9
mov r9, rdi
mov qword [rbp + 0x38], rax
lea rax, [rbp + 0x10]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r14
call fcn.18000b68c
mov r8d, 0x2b
lea r10d, [r8 - 0x2a]
movzx eax, word [0x18004e820]
sub ax, 0x49
mov word [rbp - 0x78], ax
movsx eax, word [0x18004e800]
movsx ecx, byte [rsp + 0x52]
or ecx, eax
mov dword [reloc.mozglue.dll_export_full.dll_Ordinal_116], ecx
mov eax, dword [rsp + 0x6c]
add eax, r10d
mov dword [rsp + 0x6c], eax
sub r8, r10
jne 0x180016eb5
movzx edx, word [rsp + 0x58]
xor r9d, r9d
movzx ecx, word [0x18004e828]
mov r8, r10
imul edx, ecx
lea rcx, [sub.mozglue.dll_export_full.dll_Ordinal_127]
mov word [0x18004e7dc], dx
movsxd rbx, dword [rdi + 0x3c]
add rbx, rdi
xor edi, edi
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rdi
mov edx, dword [rbx + 0x50]
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rdi
call fcn.18000b68c
mov ecx, dword [rbx + 0x50]
mov r14, rax
mov r8, qword [rbp - 0x20]
mov r9, r14
mov rdx, qword [rbp]
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x38], rdi
mov qword [rbp + 0x40], rax
lea rax, [rbp + 0x10]
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
mov rcx, qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
call fcn.18000b68c
mov ecx, edi
mov qword [rbp - 0x40], r14
test r13w, r13w
mov eax, 0xae64
mov word [0x18004e7f0], ax
movsxd rdi, dword [r14 + 0x3c]
sete cl
mov word [rsp + 0x54], cx
add rdi, r14
movabs rcx, 0xffffffff3f08570e
add rcx, qword [0x18004e820]
mov qword [rbp - 0x80], rcx
xor r9d, r9d
mov r8d, 0x831d
cmp dword [rdi + 0x88], r9d
je 0x180017f70
mov rcx, qword [rbp - 0x30]
mov edx, r15d
mov rax, qword [rsp + 0x78]
not rcx
mov r14d, dword [0x18004e818]
sub edx, dword [0x18004e818]
and rcx, r14
sub rdx, rcx
mov qword [rbp - 0x70], r14
mov cl, r8b
mov ebx, r8d
sub cl, al
movzx eax, dl
test cl, 0x77
mov ecx, r9d
cmove ecx, eax
mov eax, dword [0x1807446d0]
mov byte [0x18004e7e7], cl
mov cl, 0xff
mov dword [rsp + 0x68], eax
call fcn.18002340c
movzx eax, al
xor r9d, r9d
mov qword [rbp - 0x80], rax
mov eax, dword [rsp + 0x64]
lea r10d, [r9 + 1]
test eax, eax
jne 0x1800173ba
movzx ecx, byte [0x18004e773]
mov eax, dword [rsp + 0x64]
cmp eax, ecx
jge 0x18001731c
mov eax, dword [0x18004e860]
sub eax, dword [0x18004e850]
mov dword [0x18004e860], eax
mov r8b, byte [rsp + 0x53]
mov ebx, dword [rsp + 0x70]
mov eax, dword [rsp + 0x68]
movsx edx, byte [0x18004e7e6]
add eax, 0x345
mov dword [rbp - 0x48], eax
not edx
movsx ecx, word [0x18004e800]
movzx eax, byte [0x18004e73b]
add edx, eax
mov eax, r9d
cmp edx, ecx
movsx edx, byte [0x18004e7ce]
sete al
add edx, 0x795e
not edx
sub edx, eax
movsx eax, word [rsp + 0x58]
mov ecx, dword [0x18004e85c]
sub edx, eax
mov eax, dword [rsp + 0x68]
add ecx, 0x1c138d9a
add eax, 0x1ae
mov qword [0x18004e820], rcx
not edx
mov dword [0x18004e7e0], edx
mov dword [rbp - 0x48], eax
movsx eax, word [rsp + 0x58]
cmp eax, r15d
jl 0x1800173fe
movzx eax, word [0x18004e84c]
sub ax, 0x32
mov word [0x18004e810], ax
mov rax, qword [0x18004e840]
test rax, rax
sete al
xor al, r8b
mov byte [0x18004e7e6], al
jmp 0x180017451
mov al, byte [rsp + 0x50]
mov ebx, 1
sub al, bl
mov byte [rsp + 0x50], al
movsxd rcx, dword [rsp + 0x64]
mov rax, qword [rbp - 0x58]
imul rcx, rax
and rax, rcx
cmp byte [0x18004e7ce], r10b
mov qword [rbp - 0x58], rax
sete al
xor ecx, ecx
add al, byte [0x18004e7f0]
mov byte [0x18004e73b], al
mov eax, dword [rsp + 0x64]
mov byte [0x18004e773], al
mov eax, dword [0x1807446d0]
mov dword [rbp - 0x70], eax
mov eax, dword [rbp - 0x70]
add eax, 0x27c
mov dword [rsp + 0x68], eax
call fcn.18002340c
mov byte [0x18004e73b], al
cmp al, 0x26
jb 0x1800171e8
mov dl, byte [0x18004e7de]
mov r9b, 0xf6
mov r8b, 0x2f
mov cl, 0x5b
call fcn.18002354c
xor r9d, r9d
movzx eax, al
cmp dword [0x18004e7ec], r9d
mov dword [rsp + 0x64], eax
je 0x1800171d5
cmp r14d, 0x21
je 0x1800171ac
movsx ecx, byte [rsp + 0x52]
mov eax, 0x2b68
sub ax, cx
mov word [rsp + 0x60], ax
jmp 0x1800171fc
movsxd rcx, dword [0x18004e838]
mov eax, dword [0x18004e838]
imul rcx, r12
add eax, ecx
mov dword [0x18004e838], eax
movzx eax, word [rsp + 0x54]
shl ax, 3
mov word [rsp + 0x54], ax
jmp 0x1800171fc
mov eax, dword [0x18004e73c]
not eax
test eax, eax
je 0x1800171fc
mov byte [rsp + 0x53], 0x46
jmp 0x1800171fc
mov eax, dword [rsp + 0x5c]
xor r9d, r9d
movzx eax, word [0x18004e7e8]
mov byte [0x18004e79f], al
mov ecx, dword [rbp - 0x70]
mov eax, dword [rbp - 0x48]
add ecx, eax
mov dword [rbp - 0x48], ecx
movsx eax, byte [rsp + 0x52]
cmp dword [0x18004e818], eax
jne 0x18001722f
movsx edx, byte [0x18004e726]
movsx eax, byte [0x18004e7e7]
add eax, edx
cdqe
mov qword [0x18004e7f8], rax
jmp 0x180017244
movsx ecx, byte [rsp + 0x51]
xor ecx, dword [0x18004e73c]
mov al, byte [rsp + 0x51]
add al, cl
mov byte [rsp + 0x51], al
mov eax, dword [rbp - 0x70]
add eax, 0x263
mov dword [rbp - 0x70], eax
mov eax, dword [rsp + 0x68]
imul ecx, eax, 0x1e8
mov eax, dword [rsp + 0x68]
mov edx, dword [rbp - 0x48]
sub ecx, eax
add edx, ecx
mov ecx, dword [rbp - 0x70]
mov eax, dword [rsp + 0x68]
add ecx, eax
cmp ecx, edx
je 0x180016fb0
movzx eax, word [rsp + 0x60]
cmp dword [0x18004e828], ebx
jbe 0x1800172ec
mov al, byte [0x18004e7e7]
cmp al, 0x74
je 0x180017290
mov al, byte [rsp + 0x51]
mov rax, qword [0x18004e840]
mov ecx, r9d
mov r8d, dword [rsp + 0x5c]
test rax, rax
mov rdx, qword [0x18004e840]
not r8d
movzx eax, word [0x18004e7f0]
sete cl
xor eax, ecx
sub r8d, 0xe5
not eax
imul r8d, eax
mov rax, qword [rbp - 0x80]
movsx rcx, word [rsp + 0x58]
imul rdx, rax
mov eax, r9d
add rcx, rdx
sete al
add eax, r8d
lea r8d, [r15 + 0x41]
mov byte [rsp + 0x53], r8b
mov dword [rsp + 0x64], eax
mov rcx, qword [rbp - 0x20]
mov r8d, 8
movzx eax, word [0x18004e814]
shl ax, 5
mov word [0x18004e7e8], ax
movsxd rdi, dword [rcx + 0x3c]
add rdi, rcx
mov qword [rbp - 0x40], rcx
mov dword [rbp - 0x68], r8d
jmp 0x180016fb6
mov al, byte [rsp + 0x50]
test al, al
je 0x180017365
cmp word [0x18004e810], r9w
mov eax, dword [rbp - 0x78]
mov ebx, dword [rsp + 0x70]
mov r8b, byte [rsp + 0x53]
mov byte [0x18004e73b], al
je 0x180017352
movzx r15d, byte [0x18004e773]
mov dword [rsp + 0x74], r15d
jmp 0x18001705c
movsx eax, byte [0x18004e726]
mov r15d, eax
mov dword [rsp + 0x74], eax
jmp 0x18001705c
mov r8d, dword [0x18004e774]
mov edx, r9d
movzx eax, byte [0x18004e73b]
not r8d
cmp qword [0x18004e850], rax
mov ecx, r9d
movzx eax, word [0x18004e7f0]
setb dl
cmp r8d, eax
mov r8b, byte [rsp + 0x53]
setne cl
cmp edx, ecx
je 0x180017058
mov al, byte [0x18004e820]
sub r12, rbx
xor al, 0xa0
mov qword [rbp - 0x10], r12
mov byte [0x18004e773], al
jmp 0x180017058
movsx ecx, byte [rsp + 0x52]
mov edx, r9d
movzx eax, byte [0x18004e773]
cmp ecx, eax
setg dl
cmp edx, r10d
jb 0x180017053
mov r8b, byte [rsp + 0x53]
test esi, esi
movzx eax, word [rsp + 0x58]
mov ebx, r12d
cmovne ebx, dword [0x18004e7d8]
add r8b, al
mov byte [rsp + 0x53], r8b
mov dword [rsp + 0x70], ebx
jmp 0x18001705c
test r12, r12
jne 0x18001740f
cmp byte [0x18004e79f], r9b
mov rdx, r9
je 0x180017412
mov rdx, r10
mov eax, dword [rsp + 0x64]
mov rcx, r9
test eax, eax
mov rax, r14
sete cl
sub rax, rcx
cmp rax, rdx
jge 0x180017451
mov eax, dword [rbp - 0x68]
add dword [0x18004e83c], eax
mov eax, dword [rsp + 0x6c]
movzx edx, byte [0x18004e6fe]
not eax
movsx ecx, byte [rsp + 0x52]
imul edx, eax
add cx, dx
mov word [0x18004e7e4], cx
mov eax, dword [rsp + 0x68]
add eax, 0x21e
mov dword [rsp + 0x68], eax
mov edx, dword [rsp + 0x68]
mov eax, dword [rbp - 0x48]
add edx, eax
mov eax, dword [rsp + 0x68]
or eax, 0x95
cmp edx, eax
je 0x180017f70
mov r8b, byte [0x18004e7d8]
mov r9b, 0xe9
mov dl, byte [rbp - 0x38]
xor ecx, ecx
call fcn.18002354c
movzx eax, al
mov dword [0x18004e7e0], eax
cmp eax, 0x39
jae 0x18001774d
movsx eax, byte [rsp + 0x50]
mov word [0x18004e804], ax
mov eax, dword [rsp + 0x6c]
movsx ecx, ax
imul eax, ecx, 0x13
mov word [rsp + 0x60], ax
mov r8d, 1
movzx eax, word [0x18004e804]
add word [0x18004e81c], ax
mov r12d, dword [rdi + 0x88]
mov rdi, qword [rbp - 0x40]
mov eax, dword [0x18004e774]
add r12, rdi
cmp qword [0x18004e820], rax
mov qword [rbp + 0x50], r12
jae 0x1800174fd
movsx eax, r13w
sub eax, 0xd1c5
cdqe
mov qword [rbp - 0x30], rax
movzx eax, word [0x18004e7e4]
mov ecx, 0xbb0
mov r10d, dword [r12 + 0x1c]
sub ax, cx
mov word [0x18004e7f4], ax
add r10, rdi
movzx eax, word [0x18004e820]
mov word [0x18004e7dc], ax
mov eax, dword [0x18004e7e0]
mov r11d, dword [r12 + 0x20]
mov r9d, dword [r12 + 0x24]
add r11, rdi
imul eax, esi
add r9, rdi
xor esi, esi
mov qword [rbp + 0x30], r10
mov qword [rbp + 0x48], r11
mov qword [rbp - 0x48], r9
mov dword [rsp + 0x68], esi
mov dword [0x18004e7e0], eax
movzx eax, word [rsp + 0x60]
sub ax, r8w
mov r8d, esi
mov word [rsp + 0x60], ax
cmp dword [r12 + 0x18], esi
jbe 0x180017f72
movsx edx, word [0x18004e7f4]
mov ecx, 0x42da
mov eax, dword [rsp + 0x5c]
movsx ecx, cx
imul edx, ecx
mov rcx, qword [rsp + 0x78]
movsx r13d, r13w
mov r14d, r8d
add ax, dx
movzx edx, byte [rsp + 0x53]
add cx, ax
movzx eax, r15w
not ax
movsx ecx, cx
add ax, bx
cwde
imul eax, ecx
mov ecx, dword [0x18004e774]
not ecx
sub ecx, r15d
cwde
imul r13d, eax
movzx eax, word [0x18004e81c]
add eax, 0x7bad7cca
imul eax, ecx
movzx ecx, word [0x18004e82c]
mov dword [0x18004e7e0], eax
movzx eax, word [0x18004e82c]
add dx, ax
add dx, cx
mov word [0x18004e82c], dx
movzx eax, word [r9 + r14*2]
mov r15d, dword [r10 + rax*4]
add r15, rdi
cmp r8d, dword [r12 + 0x18]
jae 0x180017612
mov eax, dword [r11 + r14*4]
add rax, rdi
mov qword [rbp + 0x18], rax
lea rdx, [rbp - 0x18]
mov rcx, r15
call fcn.18001a3bc
mov esi, eax
mov eax, 1
cmp esi, eax
jbe 0x180017f34
call fcn.18001d12c
xor r9d, r9d
mov qword [rbp - 0x60], rax
mov qword [rsp + 0x40], r9
lea rcx, [fcn.18002b7e0]
mov qword [rsp + 0x38], r9
xor r8d, r8d
mov qword [rsp + 0x30], r9
lea rdx, [rax + 0x18]
mov qword [rsp + 0x28], r9
mov rdi, rax
mov qword [rsp + 0x20], r9
mov r9d, 0x104
call fcn.18000b68c
mov r8, qword [rbp + 0x18]
lea rdx, [rdi + 0x18]
xor eax, eax
lea rcx, [0x18002c9f0]
mov qword [rsp + 0x40], rax
mov r9d, 0x103
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rax
call fcn.18000b68c
mov rcx, qword [rbp - 0x48]
lea rbx, [rdi + 0x10]
mov rax, qword [rbp - 0x20]
mov qword [rdi], rax
movzx eax, word [rcx + r14*2]
mov word [rdi + 8], ax
movzx eax, word [rcx + r14*2]
mov rcx, qword [rbp + 0x30]
mov r14, qword [rbp - 0x20]
mov ecx, dword [rcx + rax*4]
add rcx, r14
mov qword [rbx], rcx
cmp esi, 2
jne 0x1800177a4
xor r9d, r9d
mov r8b, 0x33
mov dl, 0xb7
xor ecx, ecx
call fcn.18002354c
movzx ecx, al
xor r9d, r9d
cmp ecx, 0x4a
mov edx, r9d
mov eax, r9d
movzx esi, cx
seta dl
mov dword [rbp - 0x78], esi
test cx, cx
setne al
cmp eax, edx
ja 0x18001772f
movsx rax, byte [rsp + 0x52]
movabs rcx, 0x1f0ce77bb2519
mov rdi, qword [rbp - 0x60]
sub rax, rcx
mov qword [rbp - 0x70], rax
mov qword [rsp + 0x78], 0x2b30
mov rcx, qword [rbp - 0x18]
movsxd rax, dword [rcx + r15]
add rax, 4
add rax, qword [rbx]
add rax, rcx
mov qword [rdi + 0x220], rax
jmp 0x1800177da
mov rax, qword [rbp - 0x80]
test rax, rax
je 0x1800174b9
movzx ecx, byte [reloc.mozglue.dll_export_full.dll_Ordinal_116]
mov r8d, 1
movzx eax, word [0x18004e814]
imul eax, ecx
mov ecx, dword [0x18004e838]
add cx, r14w
add cx, ax
add cx, r8w
mov word [rsp + 0x58], cx
movsx edx, byte [rsp + 0x50]
movsx eax, byte [rsp + 0x50]
sub edx, eax
mov eax, dword [0x18004e838]
sub dl, al
mov byte [rsp + 0x50], dl
jmp 0x1800174bf
cmp esi, 3
jne 0x180017864
mov eax, dword [rsp + 0x6c]
movabs rcx, 0x643ccdd34852c
mov rdi, qword [rbp - 0x60]
add rax, rcx
mov rcx, qword [rbx]
mov qword [rbp - 0x80], rax
mov rax, qword [rbp - 0x18]
mov edx, dword [rcx + rax]
mov qword [rdi + 0x220], rdx
mov esi, dword [rbp - 0x78]
xor r15d, r15d
mov rdx, qword [rdi + 0x220]
lea r8, [rbp + 0x58]
mov rcx, qword [sym.imp.KERNEL32.dll_VirtualQuery]
mov r9d, 0x30
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], r15
call fcn.18000b68c
test rax, rax
jne 0x1800179c0
mov ecx, dword [0x18004e860]
mov ebx, dword [rsp + 0x74]
movsx eax, si
mov rsi, qword [rbp - 0x58]
cmp eax, ecx
jle 0x1800178d7
mov rax, qword [rsp + 0x78]
cmp rax, rsi
jle 0x1800178c4
mov eax, dword [0x18004e838]
movsx ecx, byte [rsp + 0x52]
imul ebx, eax
sub ecx, 0x12
movsxd rsi, ecx
mov qword [rbp - 0x58], rsi
mov dword [rsp + 0x74], ebx
jmp 0x1800178f1
cmp esi, 4
jne 0x1800177d7
movsx rcx, byte [0x18004e726]
xor r15d, r15d
mov esi, dword [rbp - 0x78]
movabs rax, 0xfff3cd0ea167a361
add rax, rcx
movzx r13d, r15w
mov cl, byte [rsp + 0x51]
xor cl, al
mov byte [rsp + 0x51], cl
mov rax, qword [rbp - 0x80]
mov rdi, qword [rbp - 0x60]
add eax, 0x5bca60b7
mov dword [0x18004e73c], eax
mov rdx, qword [rbx]
mov rax, qword [rbp - 0x18]
mov ecx, dword [rdx + rax]
mov rax, qword [rcx + rdx + 6]
mov qword [rdi + 0x220], rax
jmp 0x1800177dd
mov rax, qword [rbp - 0x30]
mov ecx, 0xa206c128
add rax, rcx
mov qword [rsp + 0x78], rax
jmp 0x1800178f1
mov al, byte [0x1807446d0]
mov byte [0x18004e727], al
movsx eax, byte [0x18004e7ce]
add word [0x18004e7dc], ax
mov rdx, qword [rbp - 8]
cmp rdx, qword [rbp + 0x20]
jae 0x180017934
mov rcx, qword [rbp + 0x28]
mov rax, qword [rbp - 0x60]
mov qword [rcx + rdx*8], rax
mov ecx, r15d
mov rax, qword [0x18004e850]
mov qword [rbp - 0x70], rax
mov eax, dword [rsp + 0x64]
test eax, eax
mov eax, dword [rsp + 0x64]
sete cl
sub ecx, eax
movsxd r14, ecx
inc rdx
mov qword [rbp - 0x38], r14
mov qword [rbp - 8], rdx
jmp 0x180017938
mov r14, qword [rbp - 0x38]
mov al, byte [0x18004e83c]
mov r9b, sil
mov r8b, 0x3d
mov byte [rsp + 0x20], al
mov dl, 0x21
xor ecx, ecx
call fcn.1800236cc
movzx edi, al
mov qword [rbp - 0x10], rdi
test al, al
je 0x180017984
movsx ecx, word [rsp + 0x58]
sar ecx, 4
mov dword [rsp + 0x64], ecx
test ebx, ebx
je 0x180017977
movsx rbx, word [rbp - 0x78]
mov qword [rbp - 0x58], rbx
jmp 0x180017998
mov rax, qword [0x18004e840]
mov qword [rbp - 0x58], rax
jmp 0x180017998
mov eax, dword [rsp + 0x6c]
mov rax, qword [rbp - 0x80]
lea rax, [r14 + 0x38042af7]
mov qword [rsp + 0x78], rax
mov rsi, qword [rbp + 8]
lea rcx, [rbp - 0x60]
mov eax, 1
mov dword [rbp - 0x50], 4
add dword [rsi], eax
call fcn.1800184f8
mov ebx, dword [rsp + 0x70]
mov rdi, qword [rbp - 0x40]
jmp 0x180017f43
cmp qword [rbp + 0x60], r14
jne 0x180017a22
mov rcx, qword [rbp - 0x80]
xor r8d, r8d
xor edx, edx
call fcn.180023244
mov byte [rsp + 0x51], al
xor esi, esi
mov al, byte [rsp + 0x51]
test al, al
je 0x180017a03
mov eax, dword [rbp - 0x68]
mov ecx, 0x9b
sub eax, dword [0x18004e7ec]
mov dword [rbp - 0x68], eax
mov rax, qword [rbp - 0x80]
add ax, cx
mov word [0x18004e800], ax
jmp 0x180017a0c
mov eax, 1
mov dword [rsp + 0x74], eax
lea rcx, [rbp - 0x60]
call fcn.1800184f8
mov ebx, dword [rsp + 0x70]
mov rdi, qword [rbp - 0x40]
jmp 0x180017f45
xor esi, esi
lea rdx, [rbp + 0x1d0]
mov qword [rsp + 0x40], rsi
lea rcx, [fcn.18002b7e0]
mov qword [rsp + 0x38], rsi
mov ebx, 0x104
mov qword [rsp + 0x30], rsi
mov r9d, ebx
mov qword [rsp + 0x28], rsi
xor r8d, r8d
mov qword [rsp + 0x20], rsi
call fcn.18000b68c
mov ecx, dword [0x18004e838]
lea r8, [rbp + 0x1d0]
movzx eax, word [0x18004e7f0]
mov r9d, ebx
mov rdi, qword [rbp]
sub ecx, eax
mov eax, dword [0x18004e838]
mov rdx, r14
sub ecx, eax
mov dword [0x18004e838], ecx
mov rcx, rdi
mov dword [0x18004e868], 0x86a5640
call fcn.1800186dc
mov qword [rsp + 0x40], rsi
lea rdx, [rbp + 0x2e0]
mov qword [rsp + 0x38], rsi
lea rcx, [fcn.18002b7e0]
mov qword [rsp + 0x30], rsi
mov r9d, ebx
mov qword [rsp + 0x28], rsi
xor r8d, r8d
mov qword [rsp + 0x20], rsi
call fcn.18000b68c
mov r15d, dword [rbp - 0x68]
sub r15d, dword [rbp - 0x38]
mov word [0x18004e7e8], si
movzx eax, word [0x18004e7e8]
mov dword [rsp + 0x74], r15d
test ax, ax
jne 0x180017b14
mov eax, dword [0x18004e85c]
movzx ecx, word [0x18004e81c]
lea ecx, [rcx + rax*2]
movsx eax, word [0x18004e7f4]
add eax, 0x76
mov dword [0x18004e85c], ecx
cdqe
mov qword [rsp + 0x78], rax
mov rdx, qword [rbp + 0x60]
lea r8, [rbp + 0x2e0]
mov r9d, ebx
mov rcx, rdi
call fcn.1800186dc
mov rax, rsi
mov dword [rbp + 0x98], 0x928e9997
mov dword [rbp + 0x9c], 0xcecf9099
mov ebx, 1
mov dword [rbp + 0xa0], 0x909098d2
mov byte [rbp + 0xa4], sil
xor byte [rbp + rax + 0x98], 0xfc
add rax, rbx
cmp rax, 0xc
jb 0x180017b57
lea rdx, [rbp + 0x98]
lea rcx, [rbp + 0x1d0]
call qword [sym.imp.SHLWAPI.dll_StrStrIA]
test rax, rax
je 0x180017c09
mov dword [rbp + 0xa8], 0x6a6e6167
mov rax, rsi
mov dword [rbp + 0xac], 0x5d5e6861
mov dword [rbp + 0xb0], 0x602a616f
mov word [rbp + 0xb4], 0x6868
mov byte [rbp + 0xb6], sil
add byte [rbp + rax + 0xa8], 4
add rax, rbx
cmp rax, 0xe
jb 0x180017bb6
lea rdx, [rbp + 0xa8]
lea rcx, [rbp + 0x2e0]
call qword [sym.imp.SHLWAPI.dll_StrStrIA]
test rax, rax
je 0x180017c09
movzx eax, word [rbp - 0x10]
mov ecx, 0x62b3
sub ax, cx
mov word [0x18004e81c], ax
lea rcx, [rbp - 0x60]
call fcn.1800184f8
mov ebx, dword [rsp + 0x70]
mov rdi, qword [rbp - 0x40]
jmp 0x180017f4a
mov qword [rsp + 0x40], rsi
lea rdx, [rbp + 0xc0]
mov qword [rsp + 0x38], rsi
lea rcx, [fcn.18002b7e0]
mov qword [rsp + 0x30], rsi
mov ebx, 0x104
mov qword [rsp + 0x28], rsi
mov r9d, ebx
xor r8d, r8d
mov qword [rsp + 0x20], rsi
call fcn.18000b68c
movsx eax, byte [rsp + 0x52]
lea r8, [rbp + 0xc0]
mov rdx, qword [rbp + 0x60]
add eax, 0x562f
cdqe
mov r9d, ebx
mov rcx, rdi
mov qword [rbp - 0x30], rax
call fcn.1800186dc
mov rbx, qword [rbp - 0x60]
lea r8, [rbp + 0xc0]
mov qword [rsp + 0x40], rsi
lea rcx, [0x18002c9f0]
mov qword [rsp + 0x38], rsi
add rbx, 0x11c
mov qword [rsp + 0x30], rsi
mov rdx, rbx
mov qword [rsp + 0x28], rsi
mov r9d, 0x103
mov qword [rsp + 0x20], rsi
call fcn.18000b68c
mov qword [rsp + 0x40], rsi
lea rcx, [0x18002cec0]
mov qword [rsp + 0x38], rsi
xor r9d, r9d
mov qword [rsp + 0x30], rsi
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov rdx, rbx
mov qword [rsp + 0x20], rsi
call fcn.18000b68c
test rax, rax
je 0x180017e8c
mov qword [rsp + 0x40], rsi
lea rdx, [rbp + 0xc0]
mov qword [rsp + 0x38], rsi
lea rcx, [fcn.18002b7e0]
mov qword [rsp + 0x30], rsi
mov r9d, 0x104
mov qword [rsp + 0x28], rsi
xor r8d, r8d
mov qword [rsp + 0x20], rsi
call fcn.18000b68c
movzx edx, word [0x18004e7e8]
lea r8, [rbp + 0xc0]
movzx eax, word [rsp + 0x54]
mov r9d, 0x104
sub dx, ax
mov rcx, rdi
movzx eax, word [0x18004e7e8]
add dx, ax
mov word [0x18004e7e8], dx
mov rdx, r14
mov rax, qword [rbp - 0x80]
add byte [0x18004e7de], al
call fcn.1800186dc
lea rdx, [rbp + 0xc0]
mov rcx, rbx
call fcn.180018118
test eax, eax
je 0x180017e8c
xor r8d, r8d
xor edx, edx
mov ecx, 0xdc
call fcn.180023094
mov eax, eax
mov qword [rbp - 0x10], rax
test rax, rax
je 0x180017bf3
mov edx, 0x3a
mov word [rsp + 0x20], si
xor ecx, ecx
mov r8d, 0xc8
movzx r9d, r13w
call fcn.180023820
movsx rcx, ax
mov edx, esi
mov qword [0x18004e840], rcx
mov ecx, esi
mov rax, qword [0x18004e840]
cmp rax, 0x36
mov rax, qword [0x18004e840]
setge dl
test rax, rax
setns cl
cmp ecx, edx
jne 0x180017e76
movzx eax, word [0x18004e7f0]
mov r10d, 0x9d4
mov r12, qword [rbp - 0x70]
add ax, 0x30
mov r15, qword [rbp - 0x58]
mov esi, 1
mov word [rsp + 0x58], ax
movsx ecx, word [rsp + 0x60]
mov r9b, byte [0x18004e7ce]
sub ecx, 0x6ce0
mov dword [0x18004e83c], ecx
movsx ecx, word [rsp + 0x54]
mov eax, 0xf8
movsx r8, byte [rsp + 0x50]
sub eax, ecx
add r9b, byte [0x18004e7de]
mov dl, byte [0x18004e7e6]
movsxd rcx, eax
sub dl, r15b
imul r8, rcx
mov byte [0x18004e7ce], r9b
mov r9b, byte [0x18004e7ce]
mov al, r9b
not al
movsx ecx, al
imul r8, r12
movsx eax, dl
imul eax, ecx
or al, r8b
mov byte [rsp + 0x51], al
sub r10, rsi
jne 0x180017e11
mov r12, qword [rbp + 0x50]
xor esi, esi
mov r15d, dword [rsp + 0x74]
jmp 0x180017bf3
movzx ecx, byte [0x18004e7df]
sub ecx, 0x3b438c90
mov dword [rsp + 0x5c], ecx
jmp 0x180017bf3
mov rdx, qword [rbp - 8]
cmp rdx, qword [rbp + 0x20]
jae 0x180017f13
movzx eax, word [0x18004e7f4]
test ax, ax
je 0x180017ec7
movzx ecx, byte [0x18004e7df]
mov eax, dword [rsp + 0x6c]
cmp ecx, eax
jne 0x180017ecc
mov al, byte [rbp - 0x58]
add al, 0x42
mov byte [rsp + 0x52], al
mov rax, qword [rsp + 0x78]
mov dword [0x18004e838], eax
jmp 0x180017ecc
mov rax, qword [rsp + 0x78]
mov rcx, qword [rbp + 0x28]
mov rax, qword [rbp - 0x60]
mov ebx, dword [rsp + 0x70]
mov qword [rcx + rdx*8], rax
mov ecx, esi
mov eax, dword [rsp + 0x6c]
cmp ebx, eax
mov eax, esi
setbe cl
cmp ebx, 0x63
setle al
cmp ecx, eax
je 0x180017f04
mov eax, 0xc7
sub al, byte [0x18004e814]
mov byte [reloc.mozglue.dll_export_full.dll_Ordinal_116], al
mov r8d, 1
add rdx, r8
mov qword [rbp - 8], rdx
jmp 0x180017f1d
mov ebx, dword [rsp + 0x70]
mov r8d, 1
mov al, byte [rsp + 0x52]
sub al, r8b
mov byte [rsp + 0x52], al
mov rax, qword [rbp + 8]
add dword [rax], r8d
jmp 0x180017c00
mov eax, 0x6e08
add eax, r13d
mov word [0x18004e81c], ax
xor esi, esi
mov r15d, dword [rsp + 0x74]
mov r8d, dword [rsp + 0x68]
mov r9, qword [rbp - 0x48]
inc r8d
mov r10, qword [rbp + 0x30]
mov r11, qword [rbp + 0x48]
mov dword [rsp + 0x68], r8d
cmp r8d, dword [r12 + 0x18]
jb 0x180017576
jmp 0x180017f72
xor esi, esi
mov ecx, dword [rbp - 0x28]
mov eax, dword [rbp - 0x64]
add ecx, 0x2d7
cmp eax, ecx
je 0x1800180eb
cmp qword [rbp], 0xffffffffffffffff
je 0x1800180eb
mov eax, dword [0x18004e7d8]
not eax
test eax, eax
jne 0x180017fdc
movsx eax, byte [0x18004e727]
not eax
test eax, eax
jne 0x180017fdc
mov rax, qword [0x18004e840]
imul rcx, rax, 0xede4
movabs rax, 0x84ecac1111882
mov qword [0x18004e820], rcx
movsx rcx, byte [rsp + 0x50]
and rcx, rax
mov qword [rsp + 0x78], rcx
jmp 0x18001808d
movsx r8, byte [0x18004e7ce]
mov r9d, 0x95
mov rdx, qword [rsp + 0x78]
xor ecx, ecx
mov qword [rsp + 0x20], rsi
call fcn.1800239c0
cmp word [0x18004e81c], si
mov qword [rbp - 0x80], rax
je 0x18001806a
movsx ecx, byte [rsp + 0x50]
mov edx, esi
mov eax, dword [0x18004e774]
cmp ecx, eax
mov al, byte [rsp + 0x50]
mov ecx, esi
setb dl
cmp al, 0x54
setl cl
cmp edx, ecx
jb 0x180018050
movsx rax, byte [0x18004e7cf]
mov rcx, qword [0x18004e820]
imul rcx, rax
mov eax, 1
add byte [0x18004e7de], al
mov qword [0x18004e820], rcx
jmp 0x18001808d
movzx eax, word [rsp + 0x58]
test ax, ax
je 0x18001808d
movsx eax, byte [0x18004e727]
mov word [0x18004e7dc], ax
jmp 0x18001808d
movsx ecx, byte [0x18004e7e7]
mov eax, dword [0x18004e7ec]
lea edx, [rax + rax]
movsx eax, byte [rsp + 0x50]
add ecx, edx
mov dword [0x1808ab258], eax
mov dword [0x18004e7ec], ecx
mov rdx, qword [rbp + 0x38]
lea rcx, [sub.mozglue.dll_export_full.dll_Ordinal_128]
mov qword [rsp + 0x40], rsi
xor r9d, r9d
mov qword [rsp + 0x38], rsi
xor r8d, r8d
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rsi
call fcn.18000b68c
mov rdx, qword [rbp + 0x40]
lea rcx, [sub.mozglue.dll_export_full.dll_Ordinal_128]
mov qword [rsp + 0x40], rsi
xor r9d, r9d
mov qword [rsp + 0x38], rsi
xor r8d, r8d
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rsi
call fcn.18000b68c
mov eax, dword [rbp - 0x50]
mov rcx, qword [rbp + 0x3f0]
xor rcx, rsp
call fcn.18002a1f0
mov rbx, qword [rsp + 0x558]
add rsp, 0x500
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret